我在使用term-mode
时注意到了奇怪的行为如果我使用shell快捷键(Alt-d)在termmode中删除单词,单词就会消失,但实际上并没有被杀死。 这是一个例子
andrey@localhost:~ yes no-such-file
# press Alt-d
andrey@localhost:~ no-such-file
no-such-file
no-such-file
no-such-file
而不是
andrey@localhost:~ no-such-file
bash: no-such-file: command not found
谢谢
答案 0 :(得分:4)
您遇到的行为是映射到作用于缓冲区的emacs函数的关键笔划,而不是传递给shell。您应该通过执行C-h k Alt-d
并查看是否将映射报告为kill-word
来确认。
如果有想要传递给shell的密钥而不是让emacs(term-mode)接受它们,请向term-mode-hook
添加一个函数,包括
(define-key term-raw-map [(meta ?d)] 'term-send-raw)
发送原始击键。
要记住的选项是在term-line-mode
和term-char-mode
之间切换。