moonshine factory
© 1996-2003 SUIKYO All rights Reserved.
main site:
Speakeasy
「伺か。」及び互換システム向けモジュール「華和梨」に関することを中心とした、
DA(Desktop Agent)全般に関するページです。
-
公式華和梨関係は全てkawari.sf.netに移管しました。
-
sky版華和梨リリース予定は今の所ありません。
カスタマイズ要望は随時受け付けますが、素早いレスポンスは期待しないで下さい。
- 華和梨i18n化作業中。
- 華和梨上独自レイヤ作成中。
▲国際化問題メモ
過去メール、チーム内wikiからのサルベージ
▲機能仕様吟味
ゴースト(+処理系)に求められることは?
- 母国語で表示したい
- 母国語で辞書を書きたい
- たまに外国語を表示させたい
- たまに外国語が混じる辞書を書きたい
- 外国語のゴーストと通信したい
- 外国語のデータを広く一般に使いたい
- ロカールレベルで対応して欲しい
複雑なことは工数的に無理。
自動翻訳のような非現実的なことは考えなくて良い。
ただし、Unicodeへ統一するコード変換は考えるべきかも知れない。
ロカールは無駄。
一般的に「環境の言語」「ゴーストの言語」「ゴーストの通信相手の言語」の三つが問題になる。例えば日本人のマシン上で、韓国語のゴーストと中国語のゴーストが会話をするシチュエーションになった場合、お互いのゴーストは何を送受信するのか、ユーザには何が表示されるのか。Unicodeに統一する場合、誰がどの段階でコード変換するのか。CJKローカルコードで書かれたゴーストは、他のゴーストとは会話不能か。ひいては他の環境では表示不能か。
単独の場合においては通信相手は本体であり、
その場合の本体の言語は大抵環境の言語と合致する。
一般的な注意点
- M17N/I18N for Ruby
- charsetとcharencodingは、本来別物
- CCS(Coded Character Set) 符号化文字集合
- CES(Character Encoding Scheme) 文字符号化方式。一つまたは複数のCCSから特定のバイト列への写像。
- Language/charset指定のシンボル名はPOSIX? ISO lang+country? IANA? MS codepage? 他には?
- Languageって意味あるのか? Charsetでいいじゃん。慣習は恐ろしい。
華和梨で考慮しなければならないこと
- 華和梨は、1プロセス内に複数インスタンスを保持
- dynamismレベルの選択肢: 固定バイナリ、プロセス単位、インスタンス単位、辞書単位、メッセージ単位、エントリ単位、単語単位
- 辞書ファイルのエンコーディング
- プロセス入出力(ファイル、メッセージI/O)のエンコーディング
- エンコーディング変換(SJIS<>UTF8など)の必要性
- 内部データのエンコーディング
- 置換の展開
- 演算式
- エントリ名
- イベント名(今の所日本語イベントは無いみたいだが、仕様書に「ASCII限定」とは書いてない)
- 華和梨単独では、ローカルコードのエントリ名はよく使う。
- KISコマンド
- 文字列操作
- 文字列比較(現状、バイト順であることに注意)
- ファイルI/O
- regexへのステップ
- 高速化(低速化阻止)
- ファイルサイズ膨張を抑える
- コンソール(幸水)
- 日本語WinではW31Jのみだろうが、MacならUnicodeが出る。その他諸々。
持たなければならない内部機能
- 1文字の正しい認識
- ポインタの送り・戻し
- 文字の比較
- 文字集合の判断。大文字・小文字・空白・漢字・その他……
- Unicodeの合成文字はどうする?
いやさすがにリガチャはフォローできん。
▲周辺ソフトウェア事情サーベイ
本体
環境、モノによって、UTF-8のメッセージを要求することがあるのだろう。きっと。
SJIS以外のローカルエンコードを要求することはどのぐらいあるのだろうか。
- 日本人以外が、SSP国際版でゴーストを作った時
- ninix(-aya)?で動く場合
SHIORI/2.6?
求む具体例、リンク、情報。
- テキストファイル1行目の「Charset,XXXX」でそのファイルの文字コードを明示するSSP由来の規格。
明示されていないが、MATERIAにも引き継がれている。CharsetヘッダもSHIORI/2.6由来?調査中(さとー)
さおり
求む具体例、リンク、情報。
偽AI
他の連中の対応状況は?
- 里珠は内部でUTF-8に変換との記述あり(Perlだし…)
- 里々は本質的に国際化困難
- 文は関連記述発見できず
- ninix上ではi18nらしいが、これはpython実装のクローンなので関係なし
- 偽林檎上では、華和梨を除いてjava実装のクローンなので関係なし
- SSPは国際版をリリース済み
→非Win OS上互換環境+華和梨、SSP+華和梨だけが非対応かつ対応要求あり(さとー)
▲i18n/Unicode関連一般情報
歴史、比較、入門、総合
紹介
議論
実装
CJK
規格
未整理
▲せろり(仮)
好き嫌いをなくそう。
▲サンプル
▲機能
スクリプト抽象化
コンテキスト補完