Spec-Zone.ru › Elisp

Кодовые таблицы символов

Представления текста с одним и несколькими байтами используют разные кодовые таблицы. Допустимые кодовые точки для однобайтового представления варьируются от 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

Эта функция возвращает наибольшее значение, которое может иметь допустимая кодовая точка символа.

(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
Функция: get-byte &optional pos string

Эта функция возвращает байт в позиции символа pos в текущем буфере. Если текущий буфер является однобайтовым, это буквально байт в этой позиции. Если буфер многобайтовый, значения байтов символов ASCII такие же, как кодовые точки символов, в то время как необработанные восьмибитные байты преобразуются в их восьмибитные коды. Функция сигнализирует об ошибке, если символ в позиции pos не является ASCII.

Необязательный аргумент string означает получение значения байта из этой строки, а не из текущего буфера.

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/Character-Codes.html

Spec-Zone.ru

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