No description
Find a file
Shigeaki Nishina 11a8703e1c Add GPL v3 text
2020-10-09 12:08:09 +09:00
COPYING Add GPL v3 text 2020-10-09 12:08:09 +09:00
julia-repl-vterm.el Fix autoload magic comment 2020-10-09 10:02:50 +09:00
README.org Update README 2020-10-09 12:08:06 +09:00

julia-repl-vterm.el

The julia-repl-vterm.el provides a major-mode for inferior Julia process that runs in vterm, and a minor-mode that extends julia-mode for interaction with the inferior Julia process.

Should I use this?

There's already julia-repl. It works well in most cases, but I sometimes encountered problems when I used very large DataFrame, which seemed to be caused by the limited performance of term.el. I wrote this simple REPL mode using vterm and found the performance problems were resolved.

This code has the minimum functions that suffice my use. For most general users, julia-repl may be the better choice. The julia-repl seems also going to support vterm soon.

Installation

Install julia-mode and emacs-libvterm first. Download julia-repl-vterm.el into somewhere in your local directory and install it with the following.

(package-install-file "/path-to-download-dir/julia-repl-vterm.el")

Next, evaluate the following add-hook line to turn on julia-with-repl-vterm-mode in newly opened julia-mode buffers. A symbol "⁂" in the mode line indicates that the julia-mode buffer is ready to interact with the vterm-powered Julia REPL. Add this line to your init file to enable this in future sessions.

(add-hook 'julia-mode-hook #'julia-with-repl-vterm-mode)

How to use

In a julia-mode buffer, M-x inferior-julia-repl-vterm-switch-to-script-buffer (or C-c C-z) to open an inferior Julia REPL buffer associated with the julia-mode buffer.

Key bindings

julia-mode with julia-with-repl-vterm-mode enabled

Key Binding
C-c C-z julia-with-repl-vterm-switch-to-repl-buffer
C-<return> julia-with-repl-vterm-send-region-or-current-line
C-c C-b julia-with-repl-vterm-send-buffer

inferior-julia-repl-vterm-mode

Key Binding
C-c C-z inferior-julia-repl-vterm-switch-to-script-buffer
M-k inferior-julia-repl-vterm-clear-buffer
C-c C-t inferior-julia-repl-vterm-copy-mode

inferior-julia-repl-vterm-mode (copy mode)

Key Binding
C-c C-t inferior-julia-repl-vterm-copy-mode
<return> inferior-julia-repl-vterm-copy-mode-done
C-c C-r vterm-reset-cursor-point