Emacs:当前缓冲区的编码系统

7
我曾经使用过两台电脑来开发Erlang程序,一台是Mac OS X 10.6,另一台是Mac OS X 10.7。
在这两台电脑的".emacs"文件中,都包含了以下代码。
;;handle emacs utf-8 input
(set-terminal-coding-system 'utf-8)
(set-keyboard-coding-system 'utf-8)
(prefer-coding-system 'utf-8)

但是,当我在一台电脑上输入包含中文字符的备注并保存后,在下载到另一台电脑时,中文字符无法正确显示。反向操作也是同样的情况。

我想知道如何检查当前文件的编码类型?是否有任何命令可以做到这一点?

3个回答

10

我相信你正在寻找 buffer-file-coding-system。通过执行命令 M-x describe-variable,可以了解更多有关它的信息,并可以使用 M-x eval-expression 以及使用 (setq buffer-file-coding-system 'coding-system-i-want) 来设置它。这将为单个缓冲区设置选项;一旦你将其设置好后,你可以添加条目到 file-coding-system-alist 中来永久设置选项。


1

你也可以设置

编写的编码系统 读取的编码系统


1
为了使用编码系统chinese-iso-8bit读取和写入所有“.txt”文件,您可以执行以下Lisp表达式来修改编码系统:
(modify-coding-system-alist 'file "\\.txt\\'" 'chinese-iso-8bit)

欲了解更多信息,请参阅识别编码系统


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接