非ASCIIである国際化文字を文字列に含めるには、 その文字をそのまま書きます。 Emacsの文字列(および、バッファ)では、 非ASCIIの表現方法が2つあります。 ユニバイトとマルチバイトです。 マルチバイトバッファやマルチバイト文字列、あるいは、 マルチバイトとして訪問しているファイルなどの マルチバイトのソースから文字列定数を読み取るときには、 文字をマルチバイト文字として読み取り、 マルチバイト文字列にします。 ユニバイトのソースから文字列定数を読み取るときには、 文字をユニバイト文字として読み取り、 文字列はユニバイトになります。
マルチバイトの非ASCII文字は、 必要な桁数の16進エスケープ‘\xnnnnnnn’を用いて 書くこともできます。 (マルチバイトの非ASCII文字のコードは、256より大きい。) 16進数字として正しくない文字で16進エスケープを終端します。 16進数字の文字があとに続く場合には、‘\ ’(バックスラッシュと空白)と 書いて16進エスケープを終端します。 たとえば、‘\x8e0\ ’は、グレーブアクセント付きの‘a’を表します。 文字列定数内の‘\ ’は、バックスラッシュ+改行と同じです。 文字列内の文字には含まれませんが、先行する16進エスケープを終えます。
マルチバイトの16進エスケープを使うと、 文字列はマルチバイトになります。 ユニバイトの非ASCIIを文字コードで表現することもできますが、 文字コードは128(8進0200)から255(8進0377)の範囲である必要があります。 こうすると、文字列はユニバイトになります。
2種類のテキストの表現方法について詳しくは、See Text Representations。