Nathaniel Nicandro
6671904cee
Fix edge case in jupyter-repl-history--previous
...
If there is no history at all to go back to, return nil.
2018-10-25 23:17:25 -05:00
Nathaniel Nicandro
59eba9d3c4
Check for widget dependencies in jupyter-repl-insert-data
2018-10-25 23:17:25 -05:00
Nathaniel Nicandro
cadc26f32b
Prioritize mimetypes that have dependencies in jupyter-repl-insert-data
2018-10-25 23:17:25 -05:00
Nathaniel Nicandro
3d6d90d6da
Simplify jupyter-repl-insert-html
...
Insert the HTML directly into the REPL buffer and use
`shr-render-region`. This avoids copying the HTML to a
temporary buffer first and extracting the rendered HTML to
place in the REPL buffer.
2018-10-25 23:17:25 -05:00
Nathaniel Nicandro
f4d375a380
Add whitespace after inserting images
2018-10-25 23:17:25 -05:00
Nathaniel Nicandro
3145453d93
Fix svg image display
2018-10-25 23:17:25 -05:00
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