binary-start-process
Daiki Ueno
ueno @ bug.org
2000年 12月 22日 (金) 23:59:46 JST
>>>>> In [emacs-mime-ja : No.00764]
>>>>> tomo @ kanji.zinbun.kyoto-u.ac.jp (守岡 知彦 / MORIOKA Tomohiko) wrote:
守岡> 良くは把握してないのですが、原理的に考えれば、言語というのは nest
守岡> すると思うので、大本の emacs 全体の locale が必要なのは当然だと思
守岡> います。これにかぶさる形で、buffer の言語があり、buffer 内の文書の
守岡> 中でまた別の言語の文や単語を引用してたり含んでたりするというような
守岡> 階層構造になると思います。
「言語というのは nest する」という部分でくらくら来てしまったのですが、
;; この程度の階層構造の存在を論じるのなら nest しないものなど、
;; この世にあるのでしょうか?
akr さんの翻訳により、少しだけ理解できた気がするので、一通りまとめておきます。
現在の Emacs の language environment は POSIX locale model と比較して
大雑把すぎるため、将来的には java.util.Locale のような、言語コード、
国別コード、バリアントコード程度は表現できるような実装が現れることを、
期待している。新しい界面は以下のようであるべき:
Variable: default-language-environment
環境変数から決定する locale に対応する言語環境。
Function: set-default-language-environment (OBJECT)
default-language-environment を locale object (OBJECT) に設定する。
Variable: current-language-environment
buffer 毎に決定される言語環境。
Function: set-language-environment (OBJECT)
current-language-environment を locale object (OBJECT) に設定する。
Function: make-language-environment (LANGUAGE &optional COUNTRY VARIANT)
locale object を生成する。
Function: language-environment-language-code (OBJECT)
locale object の言語コードを取得する。
Function: language-environment-country-code (OBJECT)
locale object の国別コードを取得する。
Function: language-environment-variant-code (OBJECT)
locale object のバリアントコードを取得する。
Function: language-environment-list ()
利用可能な locale object の一覧を取得する。
現状の "Japanese", "English", ... のような言語環境名は、将来導入される
locale object への alias として実装される。
外部コマンドを起動する際には、その文脈における言語環境が、
process-environment に影響を与える。coding-priority-list に関しても適宜
変更を受ける。
mime-play-entity や pgg-scheme-verify のような、外部プログラムを呼ぶ可能
性のあるあらゆるモジュールは、将来、このような界面が実現した暁に容易に移
行できるような形にしておきたい。
[...]
と、ここまでは理解可能なのですが、
このような架空の言語環境に関する API を前提としているにも関わらず、
現状の language-info-alist を利用して解決を図るのはいかがなものかと思います。
もしこのような界面を私が設計するとしたら、language-info-alist は撤廃する
でしょう。これは、現在でいうところの file-coding-system-alist や
gnus-posting-styles のようなものにすぎないと思います。また個人的にも、
pgg.el に 29 以上の言語環境における設定を入れたくはありません。
もし、以上が、完全な誤解であるとしたら申し訳ありません。
--
Daiki Ueno
More information about the Emacs-mime-ja
mailing list