我应该在Emacs中使用哪种编码系统?

时间:2010-05-25 02:05:47

标签: emacs character-encoding

我刚刚尝试保存一个简单的* .rtf文件,其中包含一些网站以及如何使用emacs的提示,我得到了

  

这些默认编码系统是   试图在缓冲区中编码文本   `notes.rtf':( iso-latin-1-dos(315。   8216)(338.8217)(1514.8220)(1525   。 8221))然而,他们每个人   遇到的字符却无法实现   编码:iso-latin-1-dos不能   编码这些:''“”   ....
  等,等等

现在是什么?现在它要我选择一个编码系统

  

选择编码系统(默认   中国异8位):

我甚至不知道编码系统是什么,我宁愿不必每次尝试保存文档时都选择一个...有什么方法可以设置一个适用于所有编码系统的编码系统我的文件所以我不必担心这个?

我在本网站的其他地方(see it here)看到了另一个问题和回答,如果我输入以下内容似乎

  

(defun set-coding-system()(setq   缓冲文件编码系统   'utf-8-unix))(加挂钩   'find-file-hook'set-coding-system)

然后我可以让Emacs这样做,但我不确定......有人可以向我证实这一点吗?

3 个答案:

答案 0 :(得分:32)

这是一个非常全面的魔术调用组,可以让Emacs默认使用UTF-8:

  (setq utf-translate-cjk-mode nil) ; disable CJK coding/encoding (Chinese/Japanese/Korean characters)
  (set-language-environment 'utf-8)
  (set-keyboard-coding-system 'utf-8-mac) ; For old Carbon emacs on OS X only
  (setq locale-coding-system 'utf-8)
  (set-default-coding-systems 'utf-8)
  (set-terminal-coding-system 'utf-8)
  (set-selection-coding-system
    (if (eq system-type 'windows-nt)
        'utf-16-le  ;; https://rufflewind.com/2014-07-20/pasting-unicode-in-emacs-on-windows
      'utf-8))
  (prefer-coding-system 'utf-8)

答案 1 :(得分:6)

你应该使用UTF8;它可以处理你需要的所有角色

答案 2 :(得分:0)

以防它可以补充Vivi对SLacks答案的评论,关于"如何永久选择emacs中的编码系统进行打开和保存?"这里是一个永久选择编码系统的方法,只需一个文件: 在文件的最顶部写下-*- coding: NAME OF THE CODING SYSTEM -*-,您必须在其中指定“编码系统的名称”。

您可以通过键入M-x list-coding-systems <RET>找到编码系统的名称。可以通过键入C-h C NAME OF THE CODING SYSTEM <RET>来获取有关编码系统的信息。

我在这里提到的所有内容当然都在Emacs手册中进行了解释。

请注意,您可以像编码系统一样设置特定文件的模式,只需将-*- mode: NAME OF THE MODE -*-放在文件的顶部即可。