Коды символов
Однобайтовые и многобайтовые текстовые представления используют разные коды символов. Допустимые коды символов для однобайтового представления находятся в диапазоне от 0 до #xFF (255) — значения, которые помещаются в один байт. Допустимые коды символов для многобайтового представления находятся в диапазоне от 0 до #x3FFFFF. В этом пространстве кодов значения от 0 до #x7F (127) предназначены для символов ASCII, а значения от #x80 (128) до #x3FFF7F (4194175) — для символов, не относящихся к ASCII.
Коды символов Emacs являются надмножеством стандарта Unicode. Значения от 0 до #x10FFFF (1114111) соответствуют символам Unicode с той же кодовой точкой; значения от #x110000 (1114112) до #x3FFF7F (4194175) представляют символы, не унифицированные с Unicode; а значения от #x3FFF80 (4194176) до #x3FFFFF (4194303) представляют необработанные восьмибитные байты.
- Функция: characterp charcode
-
Эта функция возвращает
t, если charcode является допустимым символом, иnilв противном случае.(characterp 65) ⇒ t(characterp 4194303) ⇒ t(characterp 4194304) ⇒ nil
- Функция: max-char &optional unicode
-
Эта функция возвращает наибольшее значение, которое может иметь допустимая кодовая точка символа в Emacs. Если необязательный аргумент unicode не равен
nil, функция возвращает наибольшую кодовую точку символа, определённую стандартом Unicode (она меньше максимальной кодовой точки, поддерживаемой Emacs).(characterp (max-char)) ⇒ t(characterp (1+ (max-char))) ⇒ nil
- Функция: char-from-name string &optional ignore-case
-
Эта функция возвращает символ, имя Unicode которого — string. Если ignore-case не равен
nil, регистр символов в string игнорируется. Эта функция возвращаетnil, если string не является именем символа.;; U+03A3 (= (char-from-name "GREEK CAPITAL LETTER SIGMA") #x03A3) ⇒ t
- Функция: char-to-name char
Эта функция возвращает имя Unicode символа char. Она возвращает
nil, если char не является символом или не имеет имени Unicode.
- Функция: get-byte &optional pos string
-
Эта функция возвращает байт в позиции символа pos в текущем буфере. Если текущий буфер однобайтовый, это буквально байт в указанной позиции. Если буфер многобайтовый, значения байтов символов ASCII совпадают с кодовыми точками символов, тогда как необработанные восьмибитные байты преобразуются в свои 8-битные коды. Функция сигнализирует об ошибке, если символ в позиции pos не относится к ASCII.
Необязательный аргумент string указывает, что значение байта следует получить из этой строки, а не из текущего буфера.
Copyright © 1990-1996, 1998-2026 Free Software Foundation, Inc.
Licensed under the GNU GPL license.
https://www.gnu.org/software/emacs/manual/html_node/elisp/Character-Codes.html