Система кодирования utf-8 на Mac - какая и почему по умолчанию?


9

Я хочу изменить систему кодирования по умолчанию с неопределенной на UTF-8 (думаю, это было бы полезно). Теперь я видел много разных систем кодирования UTF-8:

mule-utf-8        mule-utf-8-dos
mule-utf-8-mac    mule-utf-8-unix
prefer-utf-8      prefer-utf-8-dos
prefer-utf-8-mac  prefer-utf-8-unix
utf-8             utf-8-auto
utf-8-auto-dos    utf-8-auto-mac
utf-8-auto-unix   utf-8-dos
utf-8-emacs       utf-8-emacs-dos
utf-8-emacs-mac   utf-8-emacs-unix
utf-8-hfs         utf-8-hfs-dos
utf-8-hfs-mac     utf-8-hfs-unix
utf-8-mac         utf-8-unix
utf-8-with-signature     utf-8-with-signature-dos
utf-8-with-signature-mac utf-8-with-signature-unix

Я использую Mac, и меня еще больше смущают эти разные системы кодирования hfs и mac.

На данный момент я решил использовать 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)
(unless (eq system-type 'windows-nt)
  (set-selection-coding-system 'utf-8))
(prefer-coding-system 'utf-8)

Но я хотел бы еще немного понять, что я делаю и почему другой utf-8 будет лучше в качестве системы кодирования по умолчанию?


1
Этот ответ дает хорошее представление о различных вариантах UTF-8.
Хуанчо

Я не вижу utf-8-hfsи друзей на моем Emacs, но есть utf-8-nfdвместо этого. Это кодировка, используемая OS X для кодирования имен файлов. NFD для канонической декомпозиции нормализованной формы. NFC чаще используется (C для Композиции). Одно из отличий состоит в том, что буква, подобная å, кодируется как одна кодовая точка в NFC, но две в NFD (буква a, за которой следует символ составления для кольца выше). Вы, вероятно, должны забыть об этих кодировках; просто надеюсь, что имена файлов автоматически все равно будут правильно закодированы.
Харальд Ханче-Олсен

@Juancho Спасибо - так что я предполагаю, что я в порядке, когда я использую utf-8 в качестве общей настройки. Спасибо.
Райнер

@ HaraldHanche-Olsen OK - так как я использую только ASCII для имен файлов, я должен быть в порядке. Спасибо.
Райнер

2
AFAIK, utf-8 - это система кодирования, используемая в macos для большинства вещей, и Emacs уже должен выбрать свои системы кодирования соответственно для вас. Я думаю, вам вообще не нужно ничего настраивать . Пожалуйста, уточните, почему вы «хотите изменить мою систему кодирования по умолчанию». Может быть, вы просто попали в ошибку Emacs.
Стефан

Ответы:


0

В Emacs есть [Menu]->[Options]->[Multilingual Environment]->[Describe Coding System...]или C-h Cдля объяснения различий, и для устранения неоднозначности различных систем кодирования.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.