emacs终端中奇怪的字符zsh

时间:2012-01-18 23:12:32

标签: macos emacs zsh

在MacOS下使用emacs(M-x term)中的终端由于某种原因,它总是在zsh的每一行之前4m发布字符,并且总是打印包含用户信息的2行,如

4m--(jesus@laptop:/dir)----
4m--(jesus@laptop:/dir)----
prompt>

这更令人烦恼,但我只是想知道是否有办法解决这个问题。我也似乎在Mac OS emacs终端模式下的Zsh中遇到问题,当很多输出被写入它时似乎将它全部减少到一行并且不断覆盖同一行(可能与4m相关可能只是一个特殊的emacs处理的字符可能会影响格式化。

如果需要,我可以发布我的.zshrc和.emacs文件。

3 个答案:

答案 0 :(得分:56)

您没有eterm-color terminfo。 首先,您尝试在配置文件中添加以下S-exp并进行评估。

;; Use Emacs terminfo, not system terminfo
(setq system-uses-terminfo nil)

如果问题未解决之前的设置,则应创建eterm-color terminfo 通过使用以下命令。 (terminfo路径可能与您的系统不同)

# If you use Cocoa Emacs or Carbon Emacs
tic -o ~/.terminfo /Applications/Emacs.app/Contents/Resources/etc/e/eterm-color.ti

答案 1 :(得分:8)

我需要在〜/ .zshrc

中设置以下环境变量
export LANG=en_US.UTF-8
export LC_ALL=en_US.UTF-8
export TERM=xterm-256color

答案 2 :(得分:1)

在OSX Mavericks 10.9.5上为我安装了eterm-color.ti

  1. eterm-color.ti上传到远程OSX服务器上的/tmp

  2. 在服务器上运行命令sudo tic -o /usr/share/terminfo /tmp/eterm-color.ti

  3. 就我而言,这会将文件eterm-color放在目录/usr/share/terminfo/65/