5.1 文字コードの変更

Windows では、Shift-JIS、UNIX では、EUC-JP と日本語の文字コードには、 いくつか種類があり、 OS によってこのように通常使う文字コードが異なっていたりします。 また、改行コードも異なります。Windows では CR/LF 改行、 Mac では CR 改行、UNIX では LF 改行と、すべてばらばらです。 Windows 上でメモ帳でファイルを開いたら改行されずに横へずらずらと テキストが表示された経験は多くの人があると思います。 これは、改行コードの違いのためです。あるいは、 文字が変なカタカナや漢字、記号が並んだように表示されたことはないでしょうか ? これは文字コードの違いのためです。Emacs では、日本語文字コードだけでなく、 各国の文字コードが使用できます。したがって、日本語の場合なら、 Shift-JIS、EUC-JP, JIS などの間で変換が可能です。 現在の編集中のファイルの文字コードは、モード行 ( Emacs のウィンドウ ( フレーム ) の下のほうの反転した行 ) をみることでわかります。モード行の [--] の右側のアルファベットが あらわします。E : EUC-JP、S : Shift_JIS、J : JIS です。 これらの変更方法は、Mule と Meadow では、異なります。 ようは、Emacs のバージョンで異なるということです。

Emacs 20.x での文字コードの変更

新しい Emacs ( Meadow 含む ) では、次の方法を使用します。 文字コードを変更したいファイルを開き (バッファを訪問し)、 以下のコマンドを打ちます。
M-x set-buffer-file-coding-system
M-x は、Esc キーを押した後、x を入力することを表します。 その後、set-buffer-file-coding-system と入力し、Enter を押せば、 そのコマンドが実行されます。 Coding system for visited file: と聞かれるので、 適当なものを入力します。ここで space を押すと、ファイル名の補間のときのように、 候補が表示されます。EUC なら、euc-japan-dos、Shift-JIS なら、 shift_jis-dos のようになります。この文字コード名の後の dos や unix、mac というのがそれぞれの改行コードを意味します。 変更後ファイルに保存すれば、ファイルの文字コードは置き換えられます。 試しにメモ帳で正しく表示されないテキストファイルがあれば、 Emacs で shift_jis-dos に変換して、メモ帳で開いてみてください。 きっと正しく表示されるはずです。 ちなみにモード行の文字コードを表すアルファベットの後ろに、 改行コードを表す記号 Windows の改行なら \、あるいは UNIX 改行なら (Unix) のように表示されているでしょう。


EUC-JP コードであり、改行は Unix 改行を示す。

Mule での文字コードの変更

Mule のように古いものでは、次のコマンドを実行します。 set-file-coding-system コマンドの実行 は上記同様、M-x とタイプして上のコマンドを入力、 Enter でおこないます。そうすると、 File-coding-system: と聞いてくるので、指定したい文字コードを入力します。 やはりスペースキーを押すと候補が表示されるので、適切なものを探します。 ここで候補を表示させると、文字コード ( *euc-japan* ) などの後に、 unix や dos 、mac といったものが表示されますが、これは改行コードを表します。 そこで文字コード以外に改行コードを指定する必要があります。 Windows 上のファイルに、unix 等を指定すると、 メモ帳でそのファイルを開くと、改行が変な文字に置き換わってしまいます。 メモ帳は Windows 改行にしか対応していないからです。 現在のコードが何に設定されているかを知りたい場合は、 モード行をみればよく、[--] の後に、E とあれば EUC 、 S なら Shift-JIS です。また、改行コードは、アルファベットの後に . (ピリオド) なら UNIX の改行コード、 : (コロン) なら Windows の改行コードになっています。

4. 機能拡張     5. 応用だけど知ってると便利編     With Emacs     6. リンク集

[ Last modified: Fri Jan 04 00:12:39 2002 ]