Next: Ctl-Char Syntax, Previous: Basic Char Syntax, Up: Character Type [Contents][Index]
特に重要なコントロール文字にたいする特別なエスケープシーケンスに加えて、Emacsは非ASCIIテキスト文字の指定に使用できる、何種類かのエスケープ構文を提供します。
最初に、文字をUnicodeの値で指定することができます。?\unnnn
はUnicodeのコードポイント‘U+nnnn’の文字を表します。ここでnnnnは、(慣例により)正確に4桁の16進数です。バックスラッシュは、後続の文字がエスケープシーケンスを形成することを示し、‘u’はUnicodeエスケープシーケンスを指定します。
U+ffff
より大きなコードポイントをもつUnicode文字を指定するために、若干異なる構文が存在します。?\U00nnnnnn
はコードポイント‘U+nnnnnn’の文字を表します。ここでnnnnnnは6桁の16進数です。Unicode標準は‘U+10ffff’までのコードポイントだけを定義するので、これより大きいコードポイントを指定するとEmacsはエラーをシグナルします。
次に、文字を16進の文字コードで指定できます。16進エスケープシーケンスは、バックスラッシュ、‘x’、および16進の文字コードにより構成されます。したがって‘?\x41’は文字A、‘?\x1’は文字C-a、?\xe0
は
grave accentつきの文字‘a’を表します。
任意の数の16進数を使用できるので、この方法により任意の文字コードを表すことができます。
最後に、8進の文字コードにより文字を指定できます。8進エスケープシーケンスは、3桁までの8進数字をともなうバックスラッシュにより形成されます。したがって‘?\101’は文字A、‘?\001’は文字C-a、?\002
は文字C-bを表します。この方法で指定できるのは、8進コード777までの文字だけです。
これらのエスケープシーケンスは文字列内でも使用されます。Non-ASCII in Stringsを参照してください。