mirror of
https://github.com/vale981/py-vterm-interaction.el
synced 2025-03-05 10:01:41 -05:00
50 lines
2.6 KiB
Org Mode
50 lines
2.6 KiB
Org Mode
# -*- eval: (visual-line-mode 1) -*-
|
|
#+STARTUP: showall
|
|
|
|
* julia-repl-vterm-mode.el
|
|
|
|
The julia-repl-vterm-mode.el provides a major-mode for inferior [[https://julialang.org/][Julia]] process that runs in [[https://github.com/akermu/emacs-libvterm][vterm]], and a minor-mode that extends [[https://github.com/JuliaEditorSupport/julia-emacs][julia-mode]] for interaction with the inferior Julia process.
|
|
|
|
** Why? Should I use this?
|
|
|
|
There's already [[https://github.com/tpapp/julia-repl][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 only 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 [[https://github.com/tpapp/julia-repl/pull/84][support vterm]] soon.
|
|
|
|
** Installation
|
|
|
|
Install [[https://github.com/JuliaEditorSupport/julia-emacs][julia-mode]] first. Download [[https://raw.githubusercontent.com/shg/julia-repl-vterm.el/master/julia-repl-vterm.el][julia-repl-vterm.el]] into your Emacs load-path, and add the following line to your Emacs init file.
|
|
|
|
#+BEGIN_SRC emacs-lisp
|
|
(require 'julia-repl-vterm)
|
|
#+END_SRC
|
|
|
|
** How to use
|
|
|
|
In julia-mode buffer, =M-x inferior-julia-repl-vterm-switch-to-script-buffer= (or =C-c C-z=) to open an inferior julia 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= |
|