Nathaniel Nicandro
39382227e7
Take into account newer versions of zmq
2018-10-25 23:17:25 -05:00
Nathaniel Nicandro
a9246fcecb
Rename with-jupyter-*
to jupyter-with
...
Ensure that all functions and macros have the same
pseudo-namespace
2018-10-25 23:17:25 -05:00
Nathaniel Nicandro
31d7cfe34f
Do not supply new arguments for obtaining the completion prefix
2018-10-25 23:17:25 -05:00
Nathaniel Nicandro
a26655c66f
Handle python kernels specially when constructing completion candidates
...
The python kernel includes every attribute up to the parent
object, we need to split on the dots to only have the last
attribute or method since that is what the bounds are in
the completion mechanism.
2018-10-25 23:17:25 -05:00
Nathaniel Nicandro
c9e8b952eb
Consider packages like smartparens when expanding argument snippets
2018-10-25 23:17:25 -05:00
Nathaniel Nicandro
603ab12444
Ensure lock files are enabled when testing them
2018-10-25 23:17:25 -05:00
Nathaniel Nicandro
394a82a5c2
Update note on injecting render parameters for displaying org-mode
results
2018-10-25 23:17:25 -05:00
Nathaniel Nicandro
34e52de1d4
Simplify inspect requests
...
* Rename `jupyter-repl-inspect-at-point` -> `jupyter-inspect-at-point`
* Refactor inspection
2018-10-25 23:17:25 -05:00
Nathaniel Nicandro
3d8049da6d
Reduce the use of deprecated functions
2018-10-25 23:17:25 -05:00
Nathaniel Nicandro
4bb716e401
Update test to remove old jupyter-request
slot
2018-10-25 23:17:25 -05:00
Nathaniel Nicandro
da6587f5f6
Only modify the result parameters if needed in jupyter-org-add-result
2018-10-25 23:17:25 -05:00
Nathaniel Nicandro
1198965d57
Documentation changes
2018-10-25 23:17:25 -05:00
Nathaniel Nicandro
ac812a8599
Add a custom method generalizer for a kernel language
2018-10-25 23:17:25 -05:00
Nathaniel Nicandro
be06102c99
Explicitly make REPL variables buffer local
2018-10-25 23:17:25 -05:00
Nathaniel Nicandro
c48d5ca814
Fix jupyter-repl-fixup-font-lock-properties
2018-10-25 23:17:25 -05:00
Nathaniel Nicandro
854f660bd3
jupyter-find-kernelspecs
allows a regular expression instead of a prefix
2018-10-25 23:17:25 -05:00
Nathaniel Nicandro
21ca6ead04
Use filter-buffer-substring-function
to extract cell code
2018-10-25 23:17:25 -05:00
Nathaniel Nicandro
b00b28490f
Handle terminal control codes in REPL output
2018-10-25 23:17:25 -05:00
Nathaniel Nicandro
6e59813dc4
Add to CAPF for code block completion when org-mode is enabled
2018-10-25 23:17:25 -05:00
Nathaniel Nicandro
f0fe7ff5e8
Document the status slot of jupyter-async-channel
2018-10-25 23:17:25 -05:00
Nathaniel Nicandro
ceed853658
Convert jupyter-hb-on-kernel-dead
to a method
2018-10-25 23:17:25 -05:00
Nathaniel Nicandro
b6428b441f
Fix the heartbeat channel implementation
...
* Actually set the paused slot to nil when un-pausing the
heartbeat channel
* Ensure the heartbeat socket is actually a socket when
receiving. This is to handle edge cases when the
heartbeat channel is stopped, but there still is a timer
left in the `timer-list`.
2018-10-25 23:17:25 -05:00
Nathaniel Nicandro
0735198579
Update channel tests
2018-10-25 23:17:25 -05:00
Nathaniel Nicandro
35433ea68d
Update jupyter-hb-channel
test
2018-10-25 23:17:25 -05:00
Nathaniel Nicandro
58078c4e69
Document behavior of jupyter-repl-associate-buffer
2018-10-25 23:17:25 -05:00
Nathaniel Nicandro
14ef40acd4
Reduce priority of jupyter-land
method context
2018-10-25 23:17:25 -05:00
Nathaniel Nicandro
6ca612168a
Handle edge case when obtaining completion prefix
2018-10-25 23:17:25 -05:00
Nathaniel Nicandro
9cd52d25c3
Cleanup CAPF when jupyter-repl-interaction-mode
is disabled
2018-10-25 23:17:25 -05:00
Nathaniel Nicandro
cccc680a6c
Always finalize the previous cell on kernel restart
2018-10-25 23:17:25 -05:00
Nathaniel Nicandro
327bbede75
Only attempt to complete at point if jupyter-current-client
is non-nil
2018-10-25 23:17:25 -05:00
Nathaniel Nicandro
3cd573f5c3
Fix jupyter-repl-fixup-font-lock-properties
...
This function is only used to update the face property,
have it reflect this.
2018-10-25 23:17:25 -05:00
Nathaniel Nicandro
90f2878617
Fix code beginning position of completion context for org-mode
source blocks
2018-10-25 23:17:24 -05:00
Nathaniel Nicandro
e7719163e4
Fix jupyter-repl-after-init
...
* Add a context rewriter `jupyter-repl-mode` which checks
that the variable `jupyter-repl-lang-mode` is of the
right mode.
* Remove the check for `jupyter-repl-mode` since major
modes do not have a mode variable.
* Add `jupyter-repl-after-init` to `jupyter-repl-mode-hook`
* Move the special case of syntax highlighting for javascript kernels that
use `js2-mode` to its own `jupyter-repl-after-init`
specialized method.
2018-10-25 23:17:24 -05:00
Nathaniel Nicandro
3c6b45e53f
Fix jupyter-repl-cell-finalized-p
...
`point-max` is now considered the end of a cell but if the
end of a cell is `point-max`, then it is by definition
un-finalized. Also return t if the current line is not a
cell line since those parts of the buffer that are not
cells are finalized.
2018-10-25 23:17:24 -05:00
Nathaniel Nicandro
bc6d067d26
Use org-preview-latex-image-directory
when inserting LaTeX fragments
2018-10-25 23:17:24 -05:00
Nathaniel Nicandro
0c4dc0fa42
Don't scan for font lock properties twice
2018-10-25 23:17:24 -05:00
Nathaniel Nicandro
19abd9a5c6
Define and use the jupyter-lang
method context specializer
...
* Define the `jupyter-lang` method context specializer that
specializes against the kernel language of
`jupyter-current-client`
* Remove the kernel support API
* Replace the kernel support API with methods that can be
specialized using the `jupyter-lang` context specializer.
2018-10-25 23:17:09 -05:00
Nathaniel Nicandro
c0c9d8dd70
Ensure the return value of jupyter-org-prepare-result
has a non-nil car and cdr
2018-10-25 23:07:46 -05:00
Nathaniel Nicandro
276c02cfce
Add more documentation
2018-10-25 23:07:46 -05:00
Nathaniel Nicandro
f13f18b12b
Rename jupyter-completion-floating-point-p
to jupyter-completion-number-p
...
* Add tests for `jupyter-completion-number-p`
* Simplify functions that use `jupyter-completion-number-p`
2018-10-25 23:07:46 -05:00
Nathaniel Nicandro
2492ce3143
Use buffer-substring-no-properties
to avoid copying properties
2018-10-25 23:07:46 -05:00
Nathaniel Nicandro
a8231db79b
Rename jupyter-repl-current-client
to jupyter-current-client
...
Also move `jupyter-current-client` to `jupyter-client.el`
2018-10-25 23:07:46 -05:00
Nathaniel Nicandro
8bb43e6c68
Rename jupyter-repl-language
to jupyter-kernel-language
...
Also move `jupyter-kernel-language` to `jupyter-client.el`
2018-10-25 23:07:46 -05:00
Nathaniel Nicandro
d1588b2fd9
Define jupyter-completion-prefix
as a method to use it in different contexts
2018-10-25 23:07:04 -05:00
Nathaniel Nicandro
34aaaf2a66
Update documentation of jupyter-start-channels
2018-10-25 22:57:33 -05:00
Nathaniel Nicandro
44d1af31bb
Generalize retrieving the code context
...
* Rename `jupyter-code-context-at-point` to `jupyter-code-context`
* Use `cl-defmethod` and specializers to handle the
different kinds of contexts
* Move the newly defined code context methods to their
appropriate locations
2018-10-25 22:57:33 -05:00
Nathaniel Nicandro
883197074e
Move the kernel-info slot of jupyter-repl-client' to
jupyter-kernel-client'
...
* Define new method `jupyter-kernel-info` which takes care
of caching the result of a kernel info request. All
access of the kernel info plist should happen through
this method.
* Do not return the kernel info plist in
`jupyter-start-new-kernel`, callers should access the
kernel info through `jupyter-kernel-info`
2018-10-25 22:57:33 -05:00
Nathaniel Nicandro
d03270c7ed
Update commentary
2018-10-25 22:57:33 -05:00
Nathaniel Nicandro
2d5a854e2f
Fix typo
2018-10-25 22:57:33 -05:00
Nathaniel Nicandro
beef9471f0
Use with-jupyter-repl-doc-buffer
where appropriate
2018-10-25 22:57:31 -05:00