我倾向于在emacs中运行我的shell,但是当我使用它来ssh到另一台计算机时,这会破坏tab-completion.有没有办法来解决这个问题?
尝试:
M-x cd /hostname:/current/path/in/the/shell
这应该设置ange-ftp(或tramp),然后路径的TAB完成应该适用于该shell - 直到你登录到另一台机器.
您可以设置一个comint进程过滤器来识别您何时键入ssh
以自动为您执行此操作,但这很难正确,因为它应该在您退出ssh
会话时还原,但不会被其他用途欺骗exit
.
对于自动化解决方案,我建议扩充我个人使用的方法,以使Emacs与shell缓冲区的当前工作目录保持同步.只需在主机名中添加一些额外的信息,然后使用它来设置主机名和路径,如上所示.