Nathaniel Nicandro
842c920760
Be more robust when checking the jupyter-lang
method specializer
2018-10-25 23:17:27 -05:00
Nathaniel Nicandro
67e8844e31
jupyter-completion-prefix: Include \ in completion prefix for Julia kernels
2018-10-25 23:17:27 -05:00
Nathaniel Nicandro
4c6fee45b9
jupyter-completion-at-point: Check for a non-nil `jupyter-current-client' later
...
Since, as a hack, the `jupyter-org-client' sets the `jupyter-current-client'
based on the source code block at `point' in its `jupyter-completion-prefix`
function, check for it after calling `jupyter-completion-prefix`.
2018-10-25 23:17:27 -05:00
Nathaniel Nicandro
5a4e50266c
Move defvar
to top-level
2018-10-25 23:17:27 -05:00
Nathaniel Nicandro
52f32f7c6a
Update jupyter-channels
tests for changes in zmq
2018-10-25 23:17:27 -05:00
Nathaniel Nicandro
e02bed9a50
Add jupyter-hb-consider-dead-periods
2018-10-25 23:17:27 -05:00
Nathaniel Nicandro
56477b2eae
jupyter-client.el: Add jupyter-startup-timeout
2018-10-25 23:17:27 -05:00
Nathaniel Nicandro
43c34ddffc
jupyter-handle-input-request: Do not display the prompt and value
2018-10-25 23:17:27 -05:00
Nathaniel Nicandro
288fb17ece
Update comments
2018-10-25 23:17:27 -05:00
Nathaniel Nicandro
0807fd7b83
jupyter-repl-associate-buffer: Fix interactive spec
2018-10-25 23:17:27 -05:00
Nathaniel Nicandro
673747dc03
Add kill-emacs-hook
functions for cleaning up clients and managers
...
If `kill-emacs` is called while the kernel process or client channel processes
are still alive, the process sentinels do not run and thus the cleanup of the
clients and managers does not happen. Thus we need to explicitly do this
cleanup when `kill-emacs` is called.
2018-10-25 23:17:27 -05:00
Nathaniel Nicandro
7b68acbe69
Small refactoring to REPL evaluation functions
...
* Ensure that a REPL result is displayed correctly if it contains format
specifiers in `jupyter-repl-eval-string`
* Use `jupyter-with-message-data` in `jupyter-repl-eval-line-or-region` and
ensure that ANSI color codes are not shown when displaying results.
* Add a `C-x C-e` binding to `jupyter-repl-interaction-map`
2018-10-25 23:17:27 -05:00
Nathaniel Nicandro
477b1ceeb1
ob-jupyter.el: Ensure that macros are available when compiling
2018-10-25 23:17:27 -05:00
Nathaniel Nicandro
d2d0452c82
org-babel-jupyter-initiate-session-by-key: Take into account changes to run-jupyter-repl
2018-10-25 23:17:27 -05:00
Nathaniel Nicandro
8247714cb5
jupyter-repl-associate-buffer: Verify the client after ensuring its a client
2018-10-25 23:17:27 -05:00
Nathaniel Nicandro
09951544ed
jupyter-completion-grab-symbol-cons: Handle edge case
2018-10-25 23:17:27 -05:00
Nathaniel Nicandro
c66ff6e943
Enable font-lock-mode
in the company-doc-buffer
2018-10-25 23:17:27 -05:00
Nathaniel Nicandro
c3690eb2ea
Use accept-process-output
2018-10-25 23:17:27 -05:00
Nathaniel Nicandro
6d48406eb5
jupyter-repl-client: Fix class hierarchy
2018-10-25 23:17:27 -05:00
Nathaniel Nicandro
c1248442f6
jupyter-repl-interaction-map: A more convenient jupyter-inspect-at-point
binding
2018-10-25 23:17:27 -05:00
Nathaniel Nicandro
5505bc2532
Add jupyter-repl-eval-defun
2018-10-25 23:17:27 -05:00
Nathaniel Nicandro
a7023078cc
jupyter-code-context: Update documentation
2018-10-25 23:17:27 -05:00
Nathaniel Nicandro
4f53240e24
Use the default jupyter-code-context' for
jupyter-repl-mode` buffers
...
Previously an invisible character would be added in the
buffer to prevent the margin from inheriting any text
properties but this is unneeded since the default margin
does not contain any text that can inherit the properties.
2018-10-25 23:17:27 -05:00
Nathaniel Nicandro
c51d3b3a6c
jupyter-start-kernel: Remove ANSI color codes in process output
2018-10-25 23:17:27 -05:00
Nathaniel Nicandro
6d3b326124
jupyter-shutdown-kernel: Fix wording of documentation
2018-10-25 23:17:27 -05:00
Nathaniel Nicandro
c7ec4613be
jupyter-repl-insert-banner: Use font-lock-fontified
to avoid syntactic fontification
2018-10-25 23:17:27 -05:00
Nathaniel Nicandro
e06e61e9fd
jupyter-messages.el: Small documentation changes
2018-10-25 23:17:27 -05:00
Nathaniel Nicandro
799c9ea2aa
jupyter-repl-eval-string: Add stream and error handlers
2018-10-25 23:17:27 -05:00
Nathaniel Nicandro
3bfa393596
jupyter-repl-eval-string: Allow a custom callback when evaluating results
2018-10-25 23:17:27 -05:00
Nathaniel Nicandro
f6698d8bc1
Add convenience macro jupyter-repl-with-output-buffer
2018-10-25 23:17:27 -05:00
Nathaniel Nicandro
948fa6adfc
Rename jupyter-with-doc-buffer
to jupyter-repl-with-doc-buffer
...
Also rename `jupyter-get-doc-buffer` to `jupyter-repl-get-special-buffer`
2018-10-25 23:17:27 -05:00
Nathaniel Nicandro
e43c6597ad
Add convenience macros for working with messages
2018-10-25 23:17:27 -05:00
Nathaniel Nicandro
4374d9dd2c
jupyter-repl-eval-string: Don't store history when evaluating silently
...
We still want to display the results so we can't pass the
silent key to the kernel.
2018-10-25 23:17:27 -05:00
Nathaniel Nicandro
56a90717a1
Add jupyter-repl-display-traceback
2018-10-25 23:17:27 -05:00
Nathaniel Nicandro
ed8603f845
jupyter-completion-prefix: Remove type specifier
...
This is not needed and it seems to create issues when the
method is called without arguments.
2018-10-25 23:17:27 -05:00
Nathaniel Nicandro
6dc9f0cc89
run-jupyter-repl, connect-jupyter-repl: Allow specifying a new REPL name with a prefix argument
2018-10-25 23:17:27 -05:00
Nathaniel Nicandro
f0c5f002c4
jupyter-repl-propagate-client: Propagate clients regardless of the current-buffer
2018-10-25 23:17:26 -05:00
Nathaniel Nicandro
4a7e95eb18
jupyter-repl-available-repl-buffers: Refactor
...
Also give an option to return the first found REPL buffer
that can be used for a major mode.
2018-10-25 23:17:26 -05:00
Nathaniel Nicandro
6c836bd3d8
jupyter-completion-symbol-beginning: Allow operator completions
2018-10-25 23:17:26 -05:00
Nathaniel Nicandro
7d824f4915
Add new :input-request
message type
...
This replaces the behavior of the `:input-reply` message
type. A kernel sends an `:input-request` to the frontend
and the client sends an `:input-reply`.
2018-10-25 23:17:26 -05:00
Nathaniel Nicandro
84fce2cd08
Silence byte compiler about undefined variables
2018-10-25 23:17:26 -05:00
Nathaniel Nicandro
e4b820d07c
jupyter-repl-eval-string: Pass the silent argument to jupyter-send-execute-request
2018-10-25 23:17:26 -05:00
Nathaniel Nicandro
0afa562a5e
jupyter-repl-insert-html: Remove javascript tags
...
`shr` does not handle javascript so there is no point in
keeping it. It also slows down `libxml-parse-html-region`.
2018-10-25 23:17:26 -05:00
Nathaniel Nicandro
03769a9b01
Don't test for certain html tags
2018-10-25 23:17:26 -05:00
Nathaniel Nicandro
1705c48167
Add jupyter-repl-persistent-mode
...
Instead of advising `switch-to-buffer` whenever
`jupyter-repl` is required, introduce the global minor mode
which attempts to handle all different scenarios where you
would like to propagate the `jupyter-current-client` to
another buffer or keep `jupyter-repl-interaction-mode`
enabled.
2018-10-25 23:17:26 -05:00
Nathaniel Nicandro
29ede2f44a
jupyter-repl-interaction-mode: Handle buffer reverts
2018-10-25 23:17:26 -05:00
Nathaniel Nicandro
f81d77c4d2
jupyter-repl-propagate-client: Add as before advice instead of around
2018-10-25 23:17:26 -05:00
Nathaniel Nicandro
3734b2d3a4
jupyter-repl-associate-buffer: Fix interactive argument
2018-10-25 23:17:26 -05:00
Nathaniel Nicandro
ac053e16d4
jupyter-repl-scratch-buffer: Create a scratch buffer for every unique client
...
Also insert a message when creating a buffer to give hints
on keybindings.
2018-10-25 23:17:26 -05:00
Nathaniel Nicandro
5276193502
Add jupyter-repl-interaction-mode
bindings
2018-10-25 23:17:26 -05:00