将EOF(^D)发送到emacs ansi术语

将EOF(^D)发送到emacs ansi术语,emacs,eof,evil-mode,ansi-term,Emacs,Eof,Evil Mode,Ansi Term,当我在Emacs中使用ansi term模式并运行诸如cat之类的程序时,^D不会像通常那样结束输入。事实上,它似乎什么也没做 ^C仍然有效 我安装了两个不同的输入子模式。要在默认(字符)模式下发送文字C-d,只需按C-d。但是,如果您处于线路模式,则需要C-C-d。或者您可以使用C-C-k切换到字符模式(使用C-C-j返回到行模式) 另请参见。ansi术语有两种不同的输入子模式。要在默认(字符)模式下发送文字C-d,只需按C-d。但是,如果您处于线路模式,则需要C-C-d。或者您可以使用C-C

当我在Emacs中使用ansi term模式并运行诸如
cat
之类的程序时,^D不会像通常那样结束输入。事实上,它似乎什么也没做

^C仍然有效


我安装了两个不同的输入子模式。要在默认(字符)模式下发送文字
C-d
,只需按
C-d
。但是,如果您处于线路模式,则需要
C-C-d
。或者您可以使用
C-C-k
切换到字符模式(使用
C-C-j
返回到行模式)


另请参见。

ansi术语有两种不同的输入子模式。要在默认(字符)模式下发送文字
C-d
,只需按
C-d
。但是,如果您处于线路模式,则需要
C-C-d
。或者您可以使用
C-C-k
切换到字符模式(使用
C-C-j
返回到行模式)


另请参见。

尝试将这些添加到配置中(在加载邪恶之后):


在进行此修改的emacs上,在ansi term char模式下,
cat
后跟
^D
结束输入并返回提示。确保您知道char模式和line模式之间的区别,就像tripleee提到的那样

尝试将这些添加到您的配置中(加载邪恶之后):


在进行此修改的emacs上,在ansi term char模式下,
cat
后跟
^D
结束输入并返回提示。确保您知道char模式和line模式之间的区别,就像tripleee提到的那样

不幸的是,C-C-d将我放入“列表目录(简写):”提示符,C-C-k将终止我的键盘输入。也许是邪恶势力把事情搞砸了(也许应该提到这一点)?无论如何,看起来我不会使用太多Emacs,但是谢谢你的回答!现在再看看这个答案在哪里更合适。不幸的是,C-C-d将我放入“列表目录(简写):”提示符,而C-C-k只是终止了我的键盘输入。也许是邪恶势力把事情搞砸了(也许应该提到这一点)?无论如何,看起来我不会使用太多Emacs,但是谢谢你的回答!我完全忘记了这个问题,很长时间没有使用Emacs了。不过,感谢您提供解决方案!这将在术语模式下完全禁用邪恶。若要更改“^D”在邪恶插入状态下插入该字符的行为(在任何模式下),请使用
(define key evil insert state map(kbd“C-D”)“self insert”命令)
。我完全忘记了这个问题,很久没有使用过Emacs。不过,感谢您提供解决方案!这将在术语模式下完全禁用邪恶。若要更改“^D”在恶意插入状态下插入该字符的行为(在任何模式下),请使用
(定义键恶意插入状态映射(kbd“C-D”)“self-insert命令)
(delete 'term-mode evil-insert-state-modes)
(add-to-list 'evil-emacs-state-modes 'term-mode)