Next: Language Environments, Previous: International Intro, Up: International
Emacs全体やバッファごとにマルチバイト文字の使用可/使用不可を設定できます。 バッファでマルチバイト文字を使用不可にすると、 そのバッファ内の各バイトは1つの文字を表します。 たとえコードが0200から0377のあいだであってもそうです。 ヨーロッパの文字集合であるISO Latin-1とISO Latin-2を扱う古い機能は、 Emacs 19で動作していたように動き、 他のISO 8859文字集合に対しても動作します。
しかし、ISO Latinを使うために、 マルチバイト文字を使用不可にする必要はありません。 Emacsのマルチバイト文字集合にはこれらの文字集合のすべての文字が含まれ、 EmacsはこれらのISOコードと相互に自動的に変換できます。
特定のファイルをユニバイト表現で編集するには、
find-file-literally
を使ってファイルを訪問します。
See Visiting。
マルチバイト表現のバッファを同じ文字の1バイト表現に変換するには、
もっとも簡単な方法は、内容をファイルに保存してから、バッファを削除し、
find-file-literally
でそのファイルを訪問し直します。
C-x <RET> c(universal-coding-system-argument
)を使って、
ファイルを探したり保存するときのコーディングシステムとして
‘raw-text’を指定することもできます。
See Specify Coding。
‘raw-text’としてファイルを探しても、
find-file-literally
のようには、
書式変換、圧縮の展開、モードの自動選択を禁止しません。
デフォルトでマルチバイト文字を使用不可にするには、
‘--unibyte’オプション(see Initial Options)を
指定してEmacsを始めるか、あるいは、
環境変数‘EMACS_UNIBYTE’を設定します。
‘--unibyte’と同等な効果を得るには、
enable-multibyte-characters
をカスタマイズするか、
これと等価に、初期化ファイル内で、
変数default-enable-multibyte-characters
を直接設定します。
環境変数の値、/etc/passwdの内容などの非ASCII 8ビット文字からの 初期化中にはマルチバイト文字列は作られません。 しかし、‘--unibyte’を指定したとしても、 一般のLispファイルのように、初期化ファイルは、通常、 マルチバイトとして読み込みます。 それらに含まれる非ASCII文字からマルチバイト文字列が生成されるのを防ぐには、 1行目の注釈に‘-*-unibyte: t;-*-’を入れておきます。 gnusなどのパッケージの初期化ファイルでも同じことをします。
モード行には、カレントバッファでマルチバイト文字が使用可かどうか表示されます。 使用可ならば、モード行の先頭付近のコロンのまえに 2文字か数文字(ほとんどの場合ダッシュ2個)があります。 マルチバイト文字が使用不可ならば、コロンのまえにはダッシュが1個だけです。