gcv / julia-snail

An Emacs development environment for Julia
GNU General Public License v3.0
231 stars 21 forks source link

Emacs hangs when changing Evil mode states in JuliaSnail buffer #74

Closed zornsllama closed 2 years ago

zornsllama commented 2 years ago

This is a minor issue, but it's been bugging me lately as I've lost some work a few times from it (though this speaks more to my brittle, disorganized workflow than anything else).

I have Caps Lock remapped to Esc, so sometimes when I am typing in the Julia REPL buffer, I accidentally hit Esc and trigger a switch from Insert state to Normal state in Evil mode. If I then press I to return to Insert state, so that I can continue working in the REPL, JuliaSnail freezes and Emacs hangs -- at this point nothing but restarting Emacs seems to work.

I realize this is a very niche annoyance, but any help would be greatly appreciated!

gcv commented 2 years ago

Your description sounds like an interaction problem between Evil and vterm. Can you reproduce it in a shell vterm buffer (i.e., M-x vterm rather than a Julia Snail REPL)? If so, try updating your vterm or evil packages, maybe the problem goes away. The emacs-libvterm repository has an open ticket discussing Evil integration, maybe that has some hints? A total freeze is bad, and the emacs-libvterm maintainers probably want to know about it.

If you're sure the problem is in Snail REPL mode, then please give me as much detail as you can about your Evil setup (as I don't use it) so I can try to reproduce it.

zornsllama commented 2 years ago

Thanks for your reply. It looks like it is in fact an issue with vterm/Evil integration, as opening a Julia REPL directly from a vterm buffer (rather than via julia-snail) and performing the described sequence of actions leads again to a total freeze. I'll open a ticket on the emacs-libvterm repository.