我一直在尝试在我的emacs会话中使用Zsh,而没有emacs重新映射所有Zsh键.我发现ansi-term对此很好,但是,我仍然有一些问题.我输出了很多垃圾字符,我能够解决它:
## Setup proper term information for emacs ansi-term mode
[[ $TERM == eterm-color ]] && export TERM=xterm
Run Code Online (Sandbox Code Playgroud)
但一切仍然不能很好地完成.现在我无法在屏幕外绘制输出,特别是在使用Cr等搜索时.
有什么想法吗.其他人有Zsh + Ansi术语正常工作?
ben*_*erd 14
试试MultiTerm.
它是唯一一款似乎与zsh配合使用的Emacs终端模式.它允许您轻松设置要由emacs捕获的命令以及您希望路由到终端的命令.到目前为止,默认设置对我来说已经足够了.
此外,将以下内容添加到.zshrc中,以允许emacs在您浏览时跟踪当前目录.
if [ -n "$INSIDE_EMACS" ]; then
chpwd() { print -P "\033AnSiTc %d" }
print -P "\033AnSiTu %n"
print -P "\033AnSiTc %d"
fi
Run Code Online (Sandbox Code Playgroud)
嗯。我认为我从未见过任何花哨的编辑在 ansi-term 中表现良好,尽管我可能已经有 20 年没有尝试过了。顺便问一下,您是否尝试过 shell 模式(Mx shell),因为无论如何,使用 EMACS 会更自然。
也就是说,通读 term.el 文件,看起来 ansi-term 正在做很多自己的管理。您可能需要查看术语“原始模式代码”,从第 1230 行左右开始,至少在 EMACS 22.3 中是这样。