漢字かな変換プログラム KAKASI の v2.2.5 をお送りします。 前半には KAKASI のプログラムとドキュメント、異体字の変換辞書等が 含まれます。後半には SKK の辞書に JIS 第 2 水準漢字の読みを加え、 若干の修正をほどこした KAKASI 専用の辞書が含まれます。 ○ 前回のポストからの変更点 1. ファイルからではなく標準入力から読み込むようにしました。この ために全面的に書き直しました。これによって % rn | kakasi -JH というような使い方も可能です。 2. 入出力に複数の漢字コードが使えるようにし、漢字コードの変換も 行えるようになりました。また半角カナを含んでいなければコード の自動判別も行うようになりました。サポートしているのは以下の コードです。 旧JIS, 新JIS, EUC, DEC, SHIFTJIS 3. 辞書の形式として従来の SKK フォーマットの辞書に加えて、多くの 辞書が使えるようになりました。Wnn の辞書も ASCII フォーマット に変換すればそのまま読むことができます。また、JUNET で過去に ポストされた辞書はすべて利用でき、r-dic を除いて、そのまま使 うことができます。 4. 以下のオプションを設定しました。 -rk ローマ字への変換様式をヘボン式から訓令式に変更します。 -p 辞書中で照合したものが複数ある時に、その全てを表示します。 -s 漢字からの変換で変換ごとに空白等の区切を入れるようにします。 -f ふりがなモード。つまり変換前の漢字の脇にその読みを差し込みます。 -c"文字列" 漢字熟語中に含まれる、空白や改行を除いて読むようにします。 -C 漢字のローマ字変換で先頭の文字を大文字にします。 -U 漢字のローマ字変換で大文字にします。 -u 文字の出力ごとに fflush を呼びます。 KAKASI 2.2.4 での変更点 Sun Apr 24 15:35:18 JST 1994 1. jisx0208 のカタカナの出力の仕方を変更しました。 KAKASI 2.2.3 での変更点 Wed Aug 5 22:13:35 JST 1992 1. バグフィックスとコードの効率化を図りました。 2. -s オプションによって文字種の変化した部分にも空白が入るように変更しまし た。 3. 専用の基本辞書 kakasidict を作りました。 KAKASI 2.2 での変更点 Sun Jul 19 08:53:47 JST 1992 1. 漢字からカナへの変更の単位に送りがなの部分を含めるようにしました。空白 を -s オプションによって挿入したり、フリガナモードにすると若干異なる動作 をします。 2. 試験的に -U と -C のオプションを付けました。 3. karasu の辞書を標準辞書として配布に含めています。これは 2.1 までの標準の 辞書に若干の変更を加えたものです。 KAKASI 2.1 での変更点 Sun Jul 19 08:53:47 JST 1992 1. 利用できる辞書の対象を広げました。KAKASI や MKKANWA が読める辞書は従来の SKK フォーマットに加えて、WNN の辞書を dtoa で変換したものを読むことができ ます。また UJIS に限定していた漢字のコーディングを JIS でも読めるようにし ました。 2. 上記の変更で JUNET 上で過去に配布された辞書のほとんどをそのまま読めるよう になっています。 r-dic では行の最初に別のコードが来るのでそのためのツール を作成しました。また、動作は未確認ですが atok 等からの辞書を変換するツール を作成しました。 3. G2 G3 から GL GR へのシングルシフトをサポートしました。また EUC 端末への半 角カナの出力を G2 に半角カナを指示し、ESC-N で呼ぶように変更しました。 4. 多くのバグフィックスとコードの整理を行いました。 KAKASI 2.0 での変更点 Tue Jul 14 03:37:01 JST 1992 1. ファイルからではなく標準入力から読み込めるようにしました。これに伴い、辞書 の部分を除いて全面的に書き直しました。 2. 入出力に複数の漢字コードが使えるようにようになりました。現在サポートしてい るのは以下のものです。 旧JIS, 新JIS, EUC, DEC, SHIFTJIS 3. 内部で使用できる文字セットとして半角カナとグラフィックキャラクタを加えまし た。またこれらのエンコーディングシステムとして G0 G1 G2 G3, GL GR で呼び出 しや指示のためのコントロールコードを理解するようにしました。また、78, 83 の文字の交換について考慮しています。 4. 指定がない場合には、入力の漢字コードの自動識別を行います。半角カナや、第2 水準の一部が他の漢字より先に来なければ判別できます。また、出力コードが指定 されていない場合には、入力と同じ漢字コードを採用します。 5. 漢字カナ変換を使わない場合には辞書の機能を呼ばないようにして、他の目的のフィ ルターとして使ってもそれなりのパーフォーマンスが出るようにしました。(漢字 コード変換、ローマ字への変換、半角カナとの相互変換、、、) 6. オプションで文字セットの変換を指示するようにしました。文字セットのうち全角 文字については便宜上以下のように分割しました。これらについては簡単なヘルプ メニューが -h オプションで表示されます。 a - ASCII j - JIS-ROMAN g - (DEC?) Graphic k - 半角カナ E - 全角記号 K - 全角カタカナ H - 全角ひらがな J - 漢字 例えば -JH とコマンド行に書けば漢字をひらがなに変えます。-Ja なら romaji 読み、-Jk なら半角カナに変換します。以下の変換が使用可能です。 ASCII -> JISROMAN, 全角記号 JISROMAN -> ASCII, 全角記号 GRAPHIC -> ASCII, JISROMAN, 全角記号 半角カナ -> ASCII, JISROMAN, 全角カタカナ, 全角ひらがな 全角記号 -> ASCII, JISROMAN 全角カタカナ -> ASCII, JISROMAN, 半角カナ, 全角ひらがな 全角ひらがな -> ASCII, JISROMAN, 半角カナ, 全角カタカナ 漢字 -> ASCII, JISROMAN, 半角カナ, 全角カタカナ, 全角ひらがな 7. 要望が多かったので以下のオプションを追加しました。 -rk ローマ字への変換様式をヘボン式から訓令式に変更します。 -p 辞書中で照合したものが複数ある時に、その全てを表示します。 -s 漢字からの変換で変換ごとに空白等の区切を入れるようにします。 -f ふりがなモード。つまり変換前の漢字の脇にその読みを差し込みます。 -c"文字列" 漢字熟語中に含まれる、空白や改行を除いて読むようにします。 default は{改行 タブ 空白}ですが、任意の ascii 文字が追加できます。 -u 文字の出力ごとに fflush を呼びます。 system V などで interactive に使う時に必要になります。