Общая синтаксис экранирования
В дополнение к специфическим последовательностям экранирования для специальных важных управляющих символов, Emacs предоставляет несколько типов синтаксиса экранирования, которые вы можете использовать для указания символов текста, не являющихся ASCII.
- Вы можете указать символы по их именам в Unicode, если таковые имеются.
?\N{NAME}представляет собой символ Unicode с именем NAME. Таким образом, ‘?\N{LATIN SMALL LETTER A WITH GRAVE}’ эквивалентно?àи обозначает символ Unicode U+00E0. Для упрощения ввода многострочных строк вы можете заменить пробелы в именах непустыми последовательностями пробелов (например, новыми строками). - Вы можете указать символы по их значениям в Unicode.
?\N{U+X}представляет символ с кодовым значением Unicode X, где X — шестнадцатеричное число. Также?\uxxxxи?\Uxxxxxxxxпредставляют кодовые точки xxxx и xxxxxxxx соответственно, где каждый x — одна шестнадцатеричная цифра. Например,?\N{U+E0},?\u00e0и?\U000000E0все эквивалентны?àи ‘?\N{LATIN SMALL LETTER A WITH GRAVE}’. Стандарт Unicode определяет кодовые точки только до ‘U+10ffff’, поэтому если вы укажете кодовую точку выше этого значения, Emacs сообщит об ошибке. - Вы можете указать символы по их шестнадцатеричным кодам. Шестнадцатеричная последовательность экранирования состоит из обратной косой черты, ‘x’, и шестнадцатеричного кода символа. Таким образом, ‘?\x41’ — это символ A, ‘?\x1’ — символ C-a, и
?\xe0— это символ à (a с диакритическим знаком). Вы можете использовать любое количество шестнадцатеричных цифр, чтобы таким образом представить любой код символа. - Вы можете указать символы по их коду в восьмеричной системе. Восьмеричная последовательность экранирования состоит из обратной косой черты, за которой следует до трёх восьмеричных цифр; таким образом, ‘?\101’ для символа A, ‘?\001’ для символа C-a, и
?\002для символа C-b. Только символы с восьмеричным кодом до 777 могут быть указаны таким образом.
Эти последовательности экранирования также могут быть использованы в строках. См. Не-ASCII в строках.
Copyright © 1990-1996, 1998-2022 Free Software Foundation, Inc.
Licensed under the GNU GPL license.
https://www.gnu.org/software/emacs/manual/html_node/elisp/General-Escape-Syntax.html