如何重置emacs以utf-8-unix字符编码保存文件?

我有个问题。我发现emacs最近停止使用默认字符集“ ”

保存所有新文件。我不知道自己做了什么,但是当我打开文件时,在迷你缓冲区上方,我看到的是“-:—”而不是“ ”,其中“

U”表示文件用utf-8-unix字符集保存。如何重置emacs以将文件保存在正确的编码系统中???

回答:

这是我的设置:

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ENCODING ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

;; C-h C RET

;; M-x describe-current-coding-system

(add-to-list 'file-coding-system-alist '("\\.tex" . utf-8-unix) )

(add-to-list 'file-coding-system-alist '("\\.txt" . utf-8-unix) )

(add-to-list 'file-coding-system-alist '("\\.el" . utf-8-unix) )

(add-to-list 'file-coding-system-alist '("\\.scratch" . utf-8-unix) )

(add-to-list 'file-coding-system-alist '("user_prefs" . utf-8-unix) )

(add-to-list 'process-coding-system-alist '("\\.txt" . utf-8-unix) )

(add-to-list 'network-coding-system-alist '("\\.txt" . utf-8-unix) )

(prefer-coding-system 'utf-8-unix)

(set-default-coding-systems 'utf-8-unix)

(set-terminal-coding-system 'utf-8-unix)

(set-keyboard-coding-system 'utf-8-unix)

(set-selection-coding-system 'utf-8-unix)

(setq-default buffer-file-coding-system 'utf-8-unix)

;; Treat clipboard input as UTF-8 string first; compound text next, etc.

(setq x-select-request-type '(UTF8_STRING COMPOUND_TEXT TEXT STRING))

;; mnemonic for utf-8 is "U", which is defined in the mule.el

(setq eol-mnemonic-dos ":CRLF")

(setq eol-mnemonic-mac ":CR")

(setq eol-mnemonic-undecided ":?")

(setq eol-mnemonic-unix ":LF")

(defalias 'read-buffer-file-coding-system 'lawlist-read-buffer-file-coding-system)

(defun lawlist-read-buffer-file-coding-system ()

(let* ((bcss (find-coding-systems-region (point-min) (point-max)))

(css-table

(unless (equal bcss '(undecided))

(append '("dos" "unix" "mac")

(delq nil (mapcar (lambda (cs)

(if (memq (coding-system-base cs) bcss)

(symbol-name cs)))

coding-system-list)))))

(combined-table

(if css-table

(completion-table-in-turn css-table coding-system-alist)

coding-system-alist))

(auto-cs

(unless find-file-literally

(save-excursion

(save-restriction

(widen)

(goto-char (point-min))

(funcall set-auto-coding-function

(or buffer-file-name "") (buffer-size))))))

(preferred 'utf-8-unix)

(default 'utf-8-unix)

(completion-ignore-case t)

(completion-pcm--delim-wild-regex ; Let "u8" complete to "utf-8".

(concat completion-pcm--delim-wild-regex

"\\|\\([[:alpha:]]\\)[[:digit:]]"))

(cs (completing-read

(format "Coding system for saving file (default %s): " default)

combined-table

nil t nil 'coding-system-history

(if default (symbol-name default)))))

(unless (zerop (length cs)) (intern cs))))

以上是 如何重置emacs以utf-8-unix字符编码保存文件? 的全部内容, 来源链接: utcz.com/qa/413277.html

回到顶部