当我用emacs打开文件时,它在顶部添加了12;rgb:1c1c/1c1c/1c1c
。我该如何预防呢?
我已经在一个干净的debian系统上安装了emacs。
Emacs: GNU Emacs 24.4.1
Terminal Emulator: MobaXterm Personal Edition v7.7
System (local): Windows 7 Ultimate
System (remote): Debian 8.0 "jessie" stable
如前所述,"MobaXterm"不是"xterm"。根据其网页,它是
基于PuTTY/MinTTY与抗锯齿字体和宏支持
缺乏详细的变更历史,OP报告的问题,MobaXterm似乎是基于PuTTY的,并且没有实现PuTTY所做的所有控制序列,更不用说xterm了。
未被识别的特定序列(参考XTerm控制序列)可能是:
OSC Ps ; Pt ST
OSC Ps ; Pt BEL
...
Ps = 1 2 -> Change text cursor color to Pt.
这是在xterm中支持ANSI颜色之前的一组控件的一部分,称为动态颜色。
根据其他地方的评论,似乎问题可能在于OP的Emacs配置,通过使用脚本对TERM
进行临时测试来决定它是否可以做颜色,而不是检查终端功能。参见终端emacs颜色仅适用于TERM=xterm-256color,其中有人通过修改他们的init.el
来添加rxvt
和xterm
的特殊情况来解决此问题。
TERM=xterm
提供颜色已经有一段时间了。所以在典型的配置中,color应该"just work"。
但是,有不同的方法来配置Emacs。尝试重用某些256色脚本可能会落入开发人员所挖的陷阱,他们认为每个终端都与他们面前的终端一样。参见Emacs wiki页面X Term Colors的示例。
!!在mobaxterm 8.2版解决!!
看起来您的终端设置不同步。您的终端设置需要与服务器上的termcap/terminfo设置一致。尝试将服务器上shell中的TERM
变量设置为与终端的终端仿真功能更匹配的值(常见的值是xterm
、xterm-color
、vt520
和vt102
),或者相应地更改终端的设置以匹配当前的TERM
值。(如果终端有bug,您可能需要一些试验和错误来找到适合您的模式。)
VT220工作正常;编辑会话/终端设置/类型:vt220