我编写了一个c ++程序,当我在ansi-term中使用g ++编译它时,我显示了一些奇怪的字符:
如果需要,错误是我没有声明变量n。我怎么能纠正这个?
答案 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
功能启用的模式。