(内藤さん)
|落合さんの書かれた多国語のアイデアで疑問があります。
:
| > 私の考えた多国語化は、次のような物です。
| > API で使うコードは(1byte コードも入れた)TRONコードを使う。(固定長
| > 文字コードではない)
| > システムとして、デフォルト言語を持つ。(実行中は変更不可)
| > プロセス・ウインドウ・描画環境ごとにデフォルト言語を持つ。(変更可)
| > 文字列を使う場合、デフォルト言語のコードが使われる。
| > 文字列の場合で、デフォルト言語以外のコードが使いたい場合、
| > 言語指定コードを含めた文字列を使う。
:
|システムおよびプロセス・ウインドウ・描画環境ごとにデフォルト
|言語を持つということですが、次の場合はどうなるでしょうか?
|
|1) デフォルト言語が日本語の状態で日本語のファイルを作成
| (当然、言語指定コードはなし)
|
|2) 作成したファイルをデフォルト言語が中国語のシステムで
| オープン。
|
|このような場合には、アプリケーションは、中国語として読んで
|しまうのではないでしょうか? 日本語と中国語の文字コードは
|違いますから、ゴミが表示されてうまくないです。
TAD の形式でファイルに書くのであれば大丈夫です。
TAD で文字列(文字コードの並び)を入れる場合、
必ず文章開始セグメントと文章終了セグメントに
挟まれたところに入れなければならない事になってます。
文章開始セグメントにはデフォルト言語の指定がありますから、
そこにプロセスのデフォルト言語を入れておけばいいです。
もし UNIX のプレーンテキストのようなデータを使うのであれば
内藤さんの言うような問題が起きますが、
TAD の規格に反しますので
プレーンテキストを使うことのほうが問題です。
もともと私がプロセス等のデフォルト言語を言い出したのは、
TAD の文章開始セグメントのデフォルト言語や
ファイルシステムのデフォルト言語を見たからなので、
結構無難な線じゃないでしょうか。
落合秀俊 名古屋大学工学部電気電子情報工学科
h953046b@ice.nuie.nagoya-u.ac.jp