Spec-Zone.ru › Elisp

Синтаксис управления символами

Символы управления могут быть представлены с использованием еще одного синтаксиса чтения. Он состоит из вопросительного знака, за которым следуют обратная косая черта, символ «^» и соответствующий символ без управления, в верхнем или нижнем регистре. Например, как ‘?\^I’, так и ‘?\^i’ являются допустимым синтаксисом чтения для символа C-i, символа, значение которого равно 9.

Вместо ‘^’ можно использовать ‘C-’; таким образом, ‘?\C-i’ эквивалентно ‘?\^I’ и ‘?\^i’:

?\^I ⇒ 9     ?\C-I ⇒ 9

В строках и буферах разрешены только те символы управления, которые существуют в ASCII; но для целей ввода с клавиатуры можно преобразовать любой символ в символ управления с помощью ‘C-’. Коды символов этих не-ASCII символов управления включают 2**26 бит, а также код соответствующего символа без управления. Не все текстовые терминалы могут генерировать не-ASCII символы управления, но их просто генерировать с помощью X и других систем окон.

По историческим причинам Emacs обрабатывает символ DEL как символ управления, эквивалентный ?:

?\^? ⇒ 127     ?\C-? ⇒ 127

В результате в настоящее время невозможно представить символ Control-?, который является значимым символом ввода в X, с использованием ‘\C-’. Изменить это нелегко, так как различные файлы Lisp ссылаются на DEL таким образом.

Для представления символов управления, которые можно найти в файлах или строках, рекомендуется использовать синтаксис ‘^’; для символов управления во вводе с клавиатуры предпочтительнее синтаксис ‘C-’. Использование того или иного синтаксиса не влияет на значение программы, но может помочь понять его читателям.

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/Ctl_002dChar-Syntax.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API