Next: ファイル名にたいするコーディングシステム, Previous: ファイルのテキストにたいするコーディングシステムの指定, Up: 国際化文字セットのサポート [Contents][Index]
このセクションでは、他のプロセスと通信するときに使うコーディングシステムを指定する方法を説明します。
選択したテキストを、他のグラフィカルなアプリケーションと送受信するために、コーディングシステムcodingを使用します(set-selection-coding-system
)。
次回に選択するテキストを、他のグラフィカルなアプリケーションと送受信するために、コーディングシステムcodingを使用します(set-next-selection-coding-system
)。
カレントバッファーでのサブプロセスの入出力に、コーディングシステムinput-codingとoutput-codingを使用します(set-buffer-process-coding-system
)。
コマンドC-x RET x
(set-selection-coding-system
)は、選択したテキストを他のウィンドウアプリケーションに送信するとき、および他のアプリケーションで選択されたテキストを受信するときのコーディングシステムを指定します。このコマンドは、このコマンドを再度使って設定をオーバーライドするまで、以降のすべての選択に適用されます。コマンドC-x
RET X
(set-next-selection-coding-system
)は、Emacsで次に選択されるテキスト、または次に読み取られるテキストのためのコーディングシステムを指定します。
変数x-select-request-type
は、Xウィンドウシステムからのリクエストにより、他のアプリケーションで選択されたテキストを受信する際のデータタイプを指定します。値がnil
(デフォルト)の場合、EmacsはUTF8_STRING
、COMPOUND_TEXT
の順に試み、さらにさまざまな経験則を用いて、2つの結果からより適したものを選択します。どちらも成功しなかったとき、EmacsはSTRING
にフォールバックします。x-select-request-type
の値が、COMPOUND_TEXT
、UTF8_STRING
、STRING
、TEXT
のうちのどれかであった場合、Emacsはリクエストされたタイプだけを使用します。値がこれらのシンボルのリストだった場合、Emacsはリストのリクエストタイプを順に試行し、どれかが成功するか、すべてを試みるまで続けます。
コマンドC-x RET p
(set-buffer-process-coding-system
)は、サブプロセスの入出力のコーディングシステムを指定します。このコマンドはカレントバッファーに適用されます。サブプロセスは通常、それぞれ自身のバッファーをもっています。したがってサブプロセスに対応するバッファーでこのコマンドを実行することにより、特定のサブプロセスとの送受信に使用するコーディングシステムを指定できます。
サブプロセスを開始するコマンドの直前にC-x RET c
(universal-coding-system-argument
)を使うことにより、そのプロセスとの通信で使用するコーディングシステムを指定することもできます。ファイルのテキストにたいするコーディングシステムの指定を参照してください。
デフォルトでは、プロセス通信の入出力は現在の言語環境に依存します。
変数locale-coding-system
は、システムのエラーメッセージや、format-time-string
のフォーマットやタイムスタンプなどの、システム文字列のエンコードおよびデコードで使用するコーディングシステムを指定します。このコーディングシステムはXウィンドウシステムでの非ASCIIキーボードによる入力のデコードに使用されるかもしれず、バッチモードにおいて標準出力とエラーストリームに送るテキストのエンコードにも使用されるでしょう。通常は環境変数LC_ALL
、LC_CTYPE
、LANG
のうちの1つで指定される、背景にあるシステムのテキスト表現(text
representation)と互換性のあるコーディングシステムを選択するべきです(上記の順番で最初の環境変数の値が空でない場合、それはテキスト表現を決定します)。