Emacs. Основы. Кодировка

Emacs. Основы. Кодировка

2021-01-03 · 2 мин. для прочтения

Настройка кодировки в Emacs.

Содержание

1 Настройка кодировки по-умолчанию

Обычно по-умолчанию устанавливают UTF-8:

 1(prefer-coding-system 'utf-8)
 2(set-default-coding-systems 'utf-8)
 3(set-terminal-coding-system 'utf-8)
 4(set-keyboard-coding-system 'utf-8)
 5(set-selection-coding-system 'utf-8)
 6(set-file-name-coding-system 'utf-8)
 7(set-clipboard-coding-system 'utf-8)
 8(set-buffer-file-coding-system 'utf-8)
 9
10(setq default-process-coding-system '(utf-8 . utf-8))
11
12;;; Backwards compatibility as default-buffer-file-coding-system is deprecated in 23.2.
13(if (boundp 'buffer-file-coding-system)
14    (setq-default buffer-file-coding-system 'utf-8)
15  (setq default-buffer-file-coding-system 'utf-8))
16
17;;; Treat clipboard input as UTF-8 string first; compound text next, etc.
18(setq x-select-request-type '(UTF8_STRING COMPOUND_TEXT TEXT STRING))

2 Кодировка для файла

Для каждого конкретного файла можно установить кодировку в локальных переменных, например, в первой строке файла (как комментарий):

1-*- coding: utf-8 -*-

3 Установка кодировки при операциях с файлами

3.1 Открыть файл с заданной кодировкой

Откройте файл в обычном режиме, затем нажмите M+x revert-buffer-with-coding-system, затем введите кодировку. Нажмите Tab для просмотра вариантов.

3.2 Установить кодировку для сохранения файла

Нажмите M+x set-buffer-file-coding-system, затем введите желаемую кодировку. Нажмите =Tab=для просмотра вариантов.

4 Информация по кодировке

4.1 Кодировка текущего файла

Проверьте значение переменной buffer-file-coding-system. Можно сделать это с помощью M+x description-variable (комбинация клавиш Ctrl+h v).

4.2 Какая кодировка используется для открытия и сохранения файлов

Наберите M+x describe-coding-system.

4.3 Какие кодировки поддерживает emacs

Наберите M+x list-coding-systems.

Дмитрий Сергеевич Кулябов
Authors
Профессор кафедры теории вероятностей и кибербезопасности
Мои научные интересы включают физику, администрирование Unix и сетей.