emacs中ansi-term中的奇怪字符

时间:2013-01-16 17:47:04

标签: emacs elisp ascii emacs23 emacs24

我编写了一个c ++程序,当我在ansi-term中使用g ++编译它时,我显示了一些奇怪的字符:

enter image description here

如果需要,错误是我没有声明变量n。我怎么能纠正这个?

3 个答案:

答案 0 :(得分:4)

啊!测试了这个...

 (setq locale-coding-system 'utf-8)
(set-terminal-coding-system 'utf-8-unix)
(set-keyboard-coding-system 'utf-8)
(set-selection-coding-system 'utf-8)
(prefer-coding-system 'utf-8)

问题解决了!!!

答案 1 :(得分:3)

看起来gcc输出包含UTF-8“智能引号”,并且您的终端未设置为显示UTF-8。简单的解决方法是使用不支持Emacs内部智能引号的locale,这应该强制gcc回退到简单的ASCII引号;更复杂的解决方法是修复Ansi-Term缓冲区中的终端模式以正确显示它们。

答案 2 :(得分:1)

这些很可能是颜色转义序列。 emacs具有您可以使用ansi-color-for-comint-mode-on功能启用的模式。