22

Внезапно некоторые из моих текстовых файлов, которые я редактирую с помощью Emacs изменились, и специальные символы были показаны странным образом, например

\344 вместо ä
\374 вместо ü ... и так далее.

В другом файле у меня сейчас есть

ü для ü
ä для ä ....

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

Я хотел бы преобразовать документ обратно в исходное состояние (моя стандартная кодировка - UTF-8), чтобы он правильно отображался с помощью ä, ö, ü, ... но я не знаю, как это сделать с помощью emacs. ,

2 ответа2

26

Если вы не изменили файл, вы можете попробовать M-x revert-buffer-with-coding-system . Один из latin-1 или utf-8 должен работать, в зависимости от файла.

Вы также можете пометить весь файл с помощью C-x h а затем попробовать M-x recode-region . Он спросит вас, действительно ли Text was really in But was interpreted as . Для первого файла в вашем вопросе, похоже, что это должны быть latin-1 и utf-8 , а для второго примера это, вероятно, должны быть наоборот, utf-8 и latin-1 .

После того, как вы все сделали правильно, вы можете выбрать, какую систему кодирования сохранить файл, используя M-x set-buffer-file-coding-system (или C-x C-m f для краткости).

0

Самый простой способ, который я нашел, это:

Cx RET r utf-8 RET

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .