34.5 文字コード

ユニバイトやマルチバイトによるテキスト表現は異なる文字コードを使用します。ユニバイト表現にたいして有効な文字コードの範囲は0から#xFF(255)でこれは1バイト範囲に収まる値です。マルチバイト表現にたいして有効な文字コードの範囲は0から#x3FFFFFです。このコード空間では値0から#x7F(127)がASCII文字用、値#x80(128)から#x3FFF7F(4194175)が非ASCII文字用になります。

Emacsの文字コードは、Unicode標準のスーパーセット(superset: 上位集合)です。値0から#x10FFFF(1114111)は同じコードポイントのUnicode文字に対応します。値#x110000(1114112)から#x3FFF7F(4194175)はUnicodeに統一されていない文字、値#x3FFF80(4194176)から#x3FFFFF(4194303)は8ビットrawバイトを表します。

Function: characterp charcode

これはcharcodeが有効な文字ならt、それ以外はnilをリターンする。

(characterp 65)
     ⇒ t
(characterp 4194303)
     ⇒ t
(characterp 4194304)
     ⇒ nil
Function: max-char &optional unicode

この関数はEmacsにおいて有効な文字コードポイントとしてもつことができる最大値をリターンする。オプション引数unicodeが非nilの場合には、Unicode標準(Unicode Standard)によって定義される文字コードポイントの最大値をリターンする。

(characterp (max-char))
     ⇒ t
(characterp (1+ (max-char)))
     ⇒ nil
Function: char-from-name string &optional ignore-case

この関数はUnicode名がstringであるような文字をリターンする。ignore-caseが非nilならstringのcase(大文字小文字)は無視する。stringが文字の名前でなければ、この関数はnilをリターンする。

;; U+03A3
(= (char-from-name "GREEK CAPITAL LETTER SIGMA") #x03A3)
     ⇒ t
Function: char-to-name char

この関数はcharのUnicode名をリターンする。charが文字、またはUnicode名がなければnilをリターンする。

Function: get-byte &optional pos string

この関数はカレントバッファー内の文字位置posにあるバイトをリターンする。カレントバッファーがユニバイトなら、その位置のバイトをそのままリターンする。バッファーがマルチバイトなら、8ビットrawバイトは8ビットコードに変換される一方で、ASCII文字のバ値は文字コードポイントと同じになる。この関数はposにある文字が非ASCIIならエラーをシグナルする。

オプション引数stringはカレントバッファーのかわりに文字列からバイト値を得ることを意味する。

This page has generated for branch:work/emacs-30_69b16e5c63840479270d32f58daea923fe725b90, commit:5e3f74b56ff47b5bcef2526c70f53f749bbd45f6 to check Japanese translation.