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

Re: encode-coding-string からの CCL 呼出し



In article <87r75jy7i0.fsf@xxxxxxxxxxxxxxx>, ARISAWA Akihiro <ari@xxxxxxxxxxxxxxxx> writes:

> Emacs23 にて encode-coding-string で CCL な coding-system を
> 指定した時に、最後まで出力されない(?)ことがあります。

報告ありがとうございます。CCL での encoding はほとんどテスト
していませんでした。^.^;;;

修正を commit しました。

> ついでにお聞きしたいのですが、define-ccl-program の DOC-STRING で

> 	;; character.  If the dimension of charset is two, set REG_1
> 	;; to ((CODE0 << 7) | CODE1), where CODE0 is the first code
> 	;; point and CODE1 is the second code point.
> 	| (read-multibyte-character REG_0 REG_1)

> とありますが、REG_1 には ((CODE0 << 8) | CODE1) が入るようです。
> これは仕様変更でしょうか?

ここは悩ましいところで、今は ((CODE0 << 8) | CODE1) というよ
りも (encode-char CHAR CHARSET) の結果がそのまま入るようになっ
ています。Emacs22 では全ての文字セットの code-point は
0x20..0x7F に収まっていたのですが、 Emacs23 ではそうとは限ら
ないので、少なくとも ((CODE0 << 7) | CODE1) ではどうしようも
ないからです。

---
半田@AIST