[Date Prev][Date Next][Thread Prev][][Date Index][Thread Index]

Re: Correct? Display Horizontal Ellipsis on UTF-8 env



>>>>> On Fri, 06 Apr 2007 00:44:07 +0900, Shinichiro HIDA <shinichiro@xxxxxxxxxxxxx> said:

> これ、Carbon のと微妙に異なるのですね。入ってるフォントの違いあたりが
> 関係しているのでしょうか?

すみませんが、「Carbon Emacs Package」と表記していただけないでしょうか。
前のメールにも書きましたが、Carbon Emacs 自体は
utf-translate-cjk-unicode-range の設定を素の Emacs から変えてません。

mule-ja 的な話をすると、Carbon Emacs では、テキスト入力やクリップボード
など、システム側との UTF-16 データのやりとりについては、UTF-16 →
emacs-mule のあいまいさの制御に、utf-translate-cjk-unicode-range とは別
の方法を使っています。(ファイルのデータなどは他のプラットフォームと一緒
です。) それは、Mac で伝統的に使われていたエンコーディングを一旦経由さ
せるというものです。すなわち、

  1. システム側の変換器(mac-code-convert-string)を使用して、 UTF-16 を
     一旦 japanese-shift-jis や chinise-iso-8bit などに変換。
  2. Emacs側の変換器を使用して、1 の結果を emacs-mule にデコード。
     もし 1 で失敗したら、元の UTF-16 データを直接 emacs-mule にデコード。

という2段階の変換を行うことになります。

経由させるエンコーディングは次のように決まります。

  a. テキスト入力: 入力文字列とともにスクリプトコードの情報が渡ってくる
     ので、それを手掛りに決める。
  b. クリップボード: selection-coding-system (デフォルト値は c と同じ)
  c. その他: システムの言語環境設定から定まるスクリプトコードを手掛りに
     決める(変数 mac-system-coding-system)。

これにより、例えば文字パレットから「骨」を入力する場合、日本語の文字パ
レットか簡体字中国語の文字パレットか(これは実行中に切り替え可能です)に
よって、emacs-mule としては別の文字が入力されます。

					山本 光晴
				mituharu@xxxxxxxxxxxxxxxxxxxx