这是我的设置:
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; 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))))


