Emacs Shell模式:如何让TAB角色通过?

时间:2011-06-08 23:50:48

标签: emacs

有没有办法让TAB在Emacs“Shell-mode”中传递给shell?我在Emacs内部的Shell中启动交互式控制台,它通常打印候选列表以响应TAB

我尝试了M-x local-set-key RET C-z self-insert-command,但只是在 Shell 缓冲区中插入了TAB

3 个答案:

答案 0 :(得分:3)

Ç-Q TAB

通常, C-q 允许您在Emacs中引用以下字符(不仅仅是shell模式),绕过可能绑定到它的任何函数。

答案 1 :(得分:0)

Shell模式可帮助您在emacs中构建命令,并在按Enter键时将其发送到某个进程。在Bourne shell等旧版shell和其他不允许行编辑的交互式命令中非常有用。

另一方面,所有按键都由emacs处理,因此您运行的命令一次只能看到整行。如果你想立即发送标签,而不是按Enter键,我认为shell模式不会这样做。

你试过 M-x ansi-term吗?

答案 2 :(得分:0)

所以问题是你想要标签完成,但你没有得到它?

什么 C-h k TAB 告诉您何时处于shell模式?

默认情况下,它应该绑定到comint-dynamic-complete,它应该提供制表符完成,但有些东西可能会破坏那种绑定。

您还可以运行emacs -Q以查看在没有加载任何自定义或站点配置文件的情况下会发生什么。

相关问题