Next: , Previous: , Up: Character Type   [Contents][Index]


2.3.3.2 General Escape Syntax

特に重要なコントロール文字にたいする特別なエスケープシーケンスに加えて、Emacsは非ASCIIテキスト文字の指定に使用できる、何種類かのエスケープ構文を提供します。

最初に、文字をUnicodeの値で指定することができます。?\unnnnはUnicodeのコードポイント‘U+nnnn’の文字を表します。ここでnnnnは、(慣例により)正確に4桁の16進数です。バックスラッシュは、後続の文字がエスケープシーケンスを形成することを示し、‘u’はUnicodeエスケープシーケンスを指定します。

U+ffffより大きなコードポイントをもつUnicode文字を指定するために、若干異なる構文が存在します。?\U00nnnnnnはコードポイント‘U+nnnnnn’の文字を表します。ここでnnnnnnは6桁の16進数です。Unicode Standardは‘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を参照してください。