Commit graph

457 commits

Author SHA1 Message Date
Nathaniel Nicandro
8784b9fcc3 Update comments and documentation 2018-02-04 17:58:11 -06:00
Nathaniel Nicandro
09ef799535 Use jupyter-inhibit-handlers 2018-02-04 17:57:18 -06:00
Nathaniel Nicandro
4a0cff991d Add jupyter-ioloop-wait-until to wait for events from ioloop subprocess 2018-02-04 17:55:47 -06:00
Nathaniel Nicandro
2ffbf74149 Flush stdout after sending all messages in ioloop subprocess 2018-02-04 17:44:27 -06:00
Nathaniel Nicandro
fe323cf623 Properly stop channels in ioloop subprocess 2018-02-04 17:43:59 -06:00
Nathaniel Nicandro
290f3a2d96 Block until channel is alive in jupyter-start-channel for async channels 2018-02-04 17:43:20 -06:00
Nathaniel Nicandro
b72713b00c Remove the special behavior when dropping requests 2018-02-04 17:41:48 -06:00
Nathaniel Nicandro
74ccc47a6e Get the kernel language from the kernel-info slot of a jupyter-kernel-client 2018-02-04 17:41:13 -06:00
Nathaniel Nicandro
c6d78872cb Refactor the injection of render parameters when inserting results 2018-02-04 17:40:01 -06:00
Nathaniel Nicandro
84cf20c863 Simplify adding results 2018-02-04 17:38:24 -06:00
Nathaniel Nicandro
0dec139a3a Simplify synchronous output in org-babel-execute:jupyter 2018-02-04 17:36:29 -06:00
Nathaniel Nicandro
9fa2d34ec5 Add org-babel-jupyter-aliases-from-kernelspecs 2018-02-04 17:35:34 -06:00
Nathaniel Nicandro
7bc3021302 Unset require-final-newline when writing image files 2018-02-04 00:01:02 -06:00
Nathaniel Nicandro
1a4739fa19 Save the match data when searching html results 2018-02-03 23:48:42 -06:00
Nathaniel Nicandro
b680aee309 Set the default header args for Jupyter src block aliases 2018-02-03 23:48:14 -06:00
Nathaniel Nicandro
d15ba28956 Remove the need for the src block info in org-babel-execute:jupyter 2018-02-03 23:47:18 -06:00
Nathaniel Nicandro
f804f6fbfd Remove the need to pass the src block info to org-babel-jupyter-insert-results 2018-02-03 23:34:31 -06:00
Nathaniel Nicandro
562d6643e4 Remove the need for passing the src block info to orb-babel-jupyter-prepare-result 2018-02-03 23:31:10 -06:00
Nathaniel Nicandro
dae244f146 Fix mispelled word 2018-02-03 21:51:01 -06:00
Nathaniel Nicandro
84cc6d1b12 Add jupyter-repl-connected-p 2018-02-03 21:49:46 -06:00
Nathaniel Nicandro
aff2a6e925 Heavily refactor org-babel integration
- Externalize some of the functions implemented within the body of
  `org-babel-execute:jupyter`

- Use the `:status` callback to finalize the collected results

- Handle the `:display-data` messages
2018-02-03 21:14:53 -06:00
Nathaniel Nicandro
8d2272e75b Change group of ob-jupyter to org-babel 2018-02-03 21:10:21 -06:00
Nathaniel Nicandro
db485268c8 Simplify jupyter-repl-cell-line-p 2018-02-03 20:59:57 -06:00
Nathaniel Nicandro
265b6b874b Document jupyter-session and jupyter-request 2018-02-03 19:25:50 -06:00
Nathaniel Nicandro
05c7f73e8f Update README 2018-02-03 19:25:29 -06:00
Nathaniel Nicandro
91da143fb1 Simplify making jupyter-request objects when sending a message 2018-02-03 19:16:16 -06:00
Nathaniel Nicandro
80509f275c Only allow stdin messages when the stdin channel is alive 2018-02-03 19:15:28 -06:00
Nathaniel Nicandro
019309efcd Cleanup indentation 2018-02-03 19:14:24 -06:00
Nathaniel Nicandro
95a5cfbd74 Add jupyter--get-channel 2018-02-03 19:10:30 -06:00
Nathaniel Nicandro
aa054178b7 Refactor jupyter-start-new-kernel 2018-02-03 19:06:10 -06:00
Nathaniel Nicandro
8627c4892a Fix mispelled variable name 2018-02-03 19:06:10 -06:00
Nathaniel Nicandro
91be45df3a Add declare spec for client handlers 2018-02-03 19:06:10 -06:00
Nathaniel Nicandro
43a59ba74d Update channel implementation
- Distinguish between an asynchronous channel and a synchronous one

  - `jupyter-async-channel` :: Messages are sent and received through an ioloop
                               subprocess that the channel has access to. The
                               subprocess uses the `jupyter-sync-channel` for
                               sending and receiving messages.

  - `jupyter-sync-channel` :: Messages are sent and received through a
                               `zmq-socket` in the current Emacs session.

  - Define `jupyter-send` and `jupyter-recv` methods for channels.

  - Update `jupyter-kernel-client` and ioloop interfaces to take into account
    changes with channels.
2018-02-03 19:06:10 -06:00
Nathaniel Nicandro
c2c62329cb Take into account a narrowed buffer 2018-02-03 19:06:10 -06:00
Nathaniel Nicandro
14276c74f9 Don't let bind jupyter-repl-current-client
This gets rid of a warning when locally setting a let binded variable
2018-02-03 19:06:10 -06:00
Nathaniel Nicandro
d77f17be8f Remove the rest of the uses of jupyter-repl-same-lang-mode 2018-02-03 19:06:10 -06:00
Nathaniel Nicandro
82f0701a94 Be clearer when starting a kernel interactively or non-interactively in run-jupyter-repl 2018-02-03 19:06:10 -06:00
Nathaniel Nicandro
0504bf36e0 Update documentation and comments 2018-02-03 19:06:10 -06:00
Nathaniel Nicandro
d9f99de7bb Change ob-jupyter to specific language aliases instead of checking the kernel argument 2018-02-03 19:06:09 -06:00
Nathaniel Nicandro
a55079f5fd Add ob-jupyter.el 2018-02-03 19:06:09 -06:00
Nathaniel Nicandro
778a97aa2f Externalize payload handling to jupyter-repl--handle-payload 2018-02-03 19:06:09 -06:00
Nathaniel Nicandro
57353c0f86 Silence checkdoc warnings 2018-02-03 19:06:09 -06:00
Nathaniel Nicandro
78174f4334 Use the execute-reply callback to check for errors
This seems to be the more general way to check for errors.
2018-02-03 19:06:09 -06:00
Nathaniel Nicandro
b2d8dfc2a7 Add documentation 2018-02-03 19:06:09 -06:00
Nathaniel Nicandro
ab3debe0e6 Add key-binding to call jupyter-repl-eval-file 2018-01-22 19:54:26 -06:00
Nathaniel Nicandro
a0d8b25846 Fix number of characters to look for in looking-back 2018-01-22 19:53:50 -06:00
Nathaniel Nicandro
47395455e5 Allow completion with other backends 2018-01-22 19:53:29 -06:00
Nathaniel Nicandro
d150ffdde9 Fix mispelled function name 2018-01-22 19:52:56 -06:00
Nathaniel Nicandro
edca6b7835 Set jupyter-repl-current-client to a proper value before jupyter-repl--inspect 2018-01-22 19:47:53 -06:00
Nathaniel Nicandro
ee2877df71 Use put-text-property instead of add-text-properties 2018-01-22 19:46:10 -06:00