8

How do I use the Control key while using Eshell to send that command to the remote server -- e.g., when creating a cat file and I need to press Control+d to save and exit, or when using Nano edit and I need to exit with Control+x.

3
  • Did you try to use C-q C-d? C-q is for "raw" insert.
    – Daimrod
    Apr 20, 2014 at 1:58
  • @Daimrod -- thanks, I just tried, and that does indeed insert a raw ^D. In this particular case, however, I am hoping to send a command to cat that says -- "I'm done so please save and exit." On a regular terminal, C-d does just that. Emacs uses the Control key as a modifier, so I'm not sure how to temporarily disable the behavior of C-d or find another means of exiting out of cat. The same problem exists for other programs running in the terminal through Emacs (e.g., Eshell) that need a command beginning with the Control key followed by a letter.
    – lawlist
    Apr 20, 2014 at 2:15
  • As I don't use Eshell I don't know if it's even possible with it. However, I know it works in term-mode (M-x term).
    – Daimrod
    Apr 21, 2014 at 2:52

1 Answer 1

11

For the specific case of C-d, you can use C-c C-d, which is bound to eshell-send-eof-to-process. Otherwise, use C-q for quoted-insert, to force the following character to be inserted into the buffer even if it has a key binding in Emacs.

1
  • Yes, that works well -- thank you very much! :)
    – lawlist
    Apr 30, 2014 at 15:07

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .