[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Ctrl-g inside `guix shell --container emacs` broken

From: t
Subject: Ctrl-g inside `guix shell --container emacs` broken
Date: Tue, 04 Jan 2022 15:30:58 +0000
User-agent: mu4e 1.6.9; emacs 28.0.50

Hi Guix.

This one is both subtle and deadly given mussle memory we all develop with Emacs key bindings.

Tested with both Emacs 27 and 28:

$ guix shell --container --no-cwd --preserve='^TERM$' emacs -- emacs -nw -q -Q
$ guix shell --container --no-cwd --preserve='^TERM$' emacs-next -- emacs -nw -q -Q

Starts terminal Emacs fine. Now Ctrl-g or M-x followed by Ctrl-g which typically would send `keyboard-quit` and also abort-recursive-edit. You get kicked out of Emacs and shell ends up in a weird state, with Ctrl-D being the only way to kill it. Replicated in xterm and gnome-terminal.

This is specific to --container! The following works just fine:

$ guix shell --preserve='^TERM$' emacs -- emacs -nw -q -Q

For completness I also tried:

$ guix shell --container --no-cwd --preserve='^TERM$' emacs bash -- bash -c 'emacs -nw -q -Q'

Any idea where and why --container could be breaking things? Note that `abort-recursive-edit` works perfectly fine. How exactly --container starts those processes? Could it be running some weird "shell" version that treats C-g specially somehow? How do I make it stop?

$ guix describe
Generation 10   Dec 27 2021 15:36:01    (current)
 guix 9e9489f
   repository URL:
   branch: master
   commit: 9e9489fb11ac73e51abe293235738d70365affa9


reply via email to

[Prev in Thread] Current Thread [Next in Thread]