KAKASI(1) | General Commands Manual | KAKASI(1) |
KAKASI - Kanji kana simple inverter (漢字かな読み上げ)
kakasi [options] [jisyo1 [jisyo2 [jisyo1,,]]]
KAKASI は漢字かな混じり文をかなだけの文やローマ字表記に変換することを 目的として作られました。 漢字の読めない端末を使った時や、 漢字に不慣れな外国人や子供に文章を紹介したい時などに使えるかもしれません。 標準入力から日本語の文章を入力すると、 指定された文字セットに変換されて出力されます。
例えば次の例では文中の漢字がひらがなに変換されます。
バージョン 2.3.0
からは、分かち書き機能が追加されました。
例えば次の例では、日本語文が分かち書きされて出力されます。
バージョン 2.3.5
からは、学年別ひらがな変換機能が追加されました。
例えば次の例では、小学4年生までに習った漢字は漢字のまま表示し、
それ以外の難しい漢字はひらがなに開いて出力されます。
KAKASI は文字をローマ字に変換したり、 JIS x0201 のかたかな文字や、 JIS x0208 のひらがな、 かたかなの間で相互に変換できます。 KAKASI では文字セットとして次のものを理解します。 (カッコの中は KAKASI のオプションとして指定する文字を表します。)
次の文字セット間の変換が指定できます。
漢字からの変換では読み上げによって変換します。 JISx0201かたかな、かたかな、ひらがな、漢字から ASCII と JISROMAN への 変換ではローマ字変換を行います。
1. 漢字をひらがなに読み上げる
kakasi -JH
2. すべての JISx0208 で定義された文字をおきかえる。
kakasi -Hk -Kk -Jk -Ea
3. すべての文字を JISx0208 の文字におきかえる。
kakasi -aE -jE -gE -kK
4. ローマ字変換
kakasi -Ha -Ka -Ja -Ea -ka
5. かたかなとひらがなを交換
kakasi -HK -KH
KAKASI では次の漢字コーディングシステムが使えます。
JIS, OLDJIS, EUC, DEC, SJIS, UTF8
1. ESC-$-B
JIS
コーディングと解釈します。
またこれ以降は G0 に
新JIS
が指示されたものとします。
2. ESC-$-@
旧JIS
コーディングと解釈します。
またこれ以降は G0 に
旧JIS
が指示されたものとします。
3. 0x80 以上の値
この時さらに 1 Byte
を入力して、 この 2 Byte
で シフトJIS の JISx0208
文字として解釈できる場合、
新JIS
コーディングと解釈します。
またこれ以降は GR
は使えず シフトJIS
の文字として解釈されます。
4. 0x80
で上記に該当しない
以降は EUC
コーディングを仮定します。
なお、オプションで指定する以外に
DEC
コーディングが指定されることはありません。
最初にJISx0201のかたかなを表現する
0xa0
以上のコードに遭遇した場合と、
EUC コードなのに SJIS
としても解釈され得る文字に遭遇すると誤って解釈します。
つまり `燹' から `螢'
までの 945
文字のいずれかが EUC
で表現されていても
SJIS
に解釈されてしまいます。
漢字のコーディングのモデルとしては、 以下のように文字セットの指示と呼出しがされているものとします。
JIS:
GL -- G0 -- ASCII
GR -- G1 -- JISx0201のかたかな
G2 -- JISx0201のかたかな
G3 -- JISx0201のかたかな
JISx0208 の文字は ESC-$-B を用いて G0 に指示をして出力します。
OLDJIS:
GL -- G0 -- JISROMAN
GR -- G1 -- JISx0201のかたかな
G2 -- JISx0201のかたかな
G3 -- JISx0201のかたかな
JISx0208 の文字は ESC-$-@ を用いて G0 に旧JISを指示をして出力します。
EUC:
GL -- G0 -- ASCII
G1 -- JISx0201のかたかな
G2 -- JISx0201のかたかな
GR -- G3 -- JISx0208 の文字
JISx0201のかたかなの表示には ESC-N (シングル シフト)を使って、 GR に G2 を呼出して出力します。
DEC:
GL -- G0 -- ASCII
G1 -- GRAPHIC
G2 -- JISx0201のかたかな
GR -- G3 -- JISx0208 の文字
JISx0201のかたかなの表示には ESC-} を使って GR に G2 を呼出して出力します。
SJIS:
GL -- G0 -- ASCII
G1 -- JISx0201のかたかな
G2 -- JISx0201のかたかな
G2 -- JISx0201のかたかな
GR -- SHIFTJIS
JISx0201のかたかなとJISx0208 の文字の表示は GR で行います。
入力側では次のようにエスケープシークエンスを解釈します。
呼出し:
G0 G1 G2 G3
GL: SI SO ESC-n ESC-o
GR: ESC-~ ESC-} ESC-|
シングルシフト:
G0 G1 G2 G3
ESC-N ESC-O
(SS2) (SS3)
指示:
ASCII JISROMAN GRAPHIC かたかな 旧JIS
新JIS
G0: ESC-(-B ESC-(-J ESC-(-0 ESC-(-I ESC-$-@ ESC-$-B
G1: ESC-)-B ESC-)-J ESC-)-0 ESC-)-I ESC-$-)-@ ESC-$-)-B
G2: ESC-*-B ESC-*-J ESC-*-0 ESC-*-I ESC-$-*-@ ESC-$-*-B
G3: ESC-+-B ESC-+-J ESC-+-0 ESC-+-I ESC-$-+-@ ESC-$-+-B
-Jx あるいは -w
を使って漢字からの変換にのみ適用されるオプションです。
他の変換には影響しません。
素子 -> {もとこ|そし}
"漢字かな混じり文をローマ字に変換"
" kan'zi kana ma ziri bun' woro-ma zi ni hen'kan' "
"漢字かな混じり文を"
が、
"漢字__かな__混__じり__文__を"
となります。あるいは、-s -S"<sep>" とすれば、
"漢字<sep>かな<sep>混<sep>じり<sep>文<sep>を"
となります。
"変換前の漢字の脇に"
"変換前[へんかんまえ]の漢字[かんじ]の脇[わき]に"
"変換前(へんかんまえ)の漢字(かんじ)の脇(わき)に"
あるいは、-JF -f -Fl"<ruby>" -Fr"</ruby>" のように指定すると、 以下のようにできます。
"変換前<ruby>へんかんまえ</ruby>の漢字<ruby>かんじ</ruby>の脇<ruby>わき</ruby>に"
>>
このバグについてはこれから検
>> 討してみます。
谷_山__浩_子
>>
このバグについてはこれからけんとう
>> してみます。
たにやま___ひろこ_
KAKASI ではユーザの辞書を任意に追加することができます。使用できる辞書は SKK の辞書に準じたフォーマットか Wnn の ASCII 形式などのように、 1 行に読みと熟語の順に並んでいて、 空白、タブ、カンマ等で区切られているものが使えます。 辞書の漢字コーディングは JIS または EUC に限ります。 詳細については JISYO というファイルを参照してください。
高橋 裕信 <takahasi@tiny.or.jp>
辞書にトラブルがあれば 0 以外の値を返します。
何かありましたら、高橋さんにではなく、KAKASI プロジェクト <kakasi-dev@namazu.org> までお知らせ下さい。
LOCAL | 4.3 Berkeley Distribution |