虽然在编辑的时候能输入中文,但gdb
或终端调试的时候中文不能显示,像这样
chdir () at ../sysdeps/unix/syscall-template.S:78
78 ../sysdeps/unix/syscall-template.S: 没有那个文件或目录.
有什么解决方案吗??
虽然在编辑的时候能输入中文,但gdb
或终端调试的时候中文不能显示,像这样
chdir () at ../sysdeps/unix/syscall-template.S:78
78 ../sysdeps/unix/syscall-template.S: 没有那个文件或目录.
我猜是你终端默认使用了中文编码(GB18030),而Emacs里使用的是UTF8;试着修改一下终端的lang变量,看看能不能解决这个问题吧
怎么在配置文件 下修改??
假如你用zsh,就到.zshrc
下修改;倘若是bash,就到.bash_profile
➜ books git:(master) ✗ echo $LANG
zh_CN.UTF-8
我觉得是其他原因吧
那估计是你Emacs配置的原因?
导出的中文是GB18030的格式,但buffer是按UTF8显示的,所以中文会乱码,你试试M-x revert-buffer-with-coding
(大概是这个名字,电脑不在身边记不清是啥,快捷键是C-x RET r
),把gbd buffer的编码改成GB18030的格式,看看中文是不是显示正常了?
啊这,试试C-x RET t
呢?
你看到的 3 byte 为一个汉字是 UTF-8 编码,也就是你的终端没有使用 UTF-8 编码,Emacs 下用 M-x describe-current-coding-system
查看当前 Buffer 的编码,貌似如此,我也不是100%清楚。
(decode-coding-string (unibyte-string #o346 #o262 #o241
#o346 #o234 #o211
#o351 #o202 #o243
#o344 #o270 #o252
#o346 #o226 #o207
#o344 #o273 #o266
#o346 #o210 #o226
#o347 #o233 #o256
#o345 #o275 #o225)
'utf-8)
;; => "没有那个文件或目录"
Try setting gdb-mi-decode-strings
to utf-8
.
Reference:
这个好像可以诶