ターミナル上でひらがなから漢字変換できるkkcコマンドを使ってみる

ターミナル上でひらがな⇔ローマ字変換はuconvを使うとできるのだけど、ひらがなからの漢字変換候補を得る方法が無いのかなー、と常々思っていた。
で、別件で調べ物をしていた時にkkcなるものを知った。これを使うことで、IMEから変換候補を取得することができるようだ。

Ubuntuであれば、以下のコマンドでインストールができる。

sudo apt install libkkc-utils

 

インストールできたら、以下のようにコマンドを実行することでIMEでの変換候補を取得できる。

echo 変換する文字列 取得数 | kkc
blacknon@BS-PUB-DEVELOP:~$ echo ひとのおかねでやきにくたべたい 10 | kkc
Type kana sentence in the following form:
SENTENCE [N-BEST [SEGMENT-BOUNDARY...]]
>> 0: <人/ひと><の/の><お/お><金/かね><で/で><焼肉/やきにく><食べ/たべ><た/た><い/い>
1: <ヒト/ひと><の/の><お/お><金/かね><で/で><焼肉/やきにく><食べ/たべ><た/た><い/い>
2: <人/ひと><の/の><お/お><金/かね><で/で><焼肉/やきにく><食べ/たべ><体/たい>
3: <ひと/ひと><の/の><お/お><金/かね><で/で><焼肉/やきにく><食べ/たべ><た/た><い/い>
4: <一/ひと><の/の><お/お><金/かね><で/で><焼肉/やきにく><食べ/たべ><た/た><い/い>
5: <妃/ひ><と/と><の/の><お/お><金/かね><で/で><焼肉/やきにく><食べ/たべ><た/た><い/い>
6: <費/ひ><と/と><の/の><お/お><金/かね><で/で><焼肉/やきにく><食べ/たべ><た/た><い/い>
7: <人/ひと><の/の><降鐘/おかね><で/で><焼肉/やきにく><食べ/たべ><た/た><い/い>
8: <比/ひ><と/と><の/の><お/お><金/かね><で/で><焼肉/やきにく><食べ/たべ><た/た><い/い>
9: <人/ひと><の/の><お/お><金/かね><で/で><焼肉/やきにく><食べ/たべ><た/た><位/い>
>>
Sponsored Links

残念ながら、変換結果のみをそのまま出力はできないようなので、以下のようにシェル芸をしてパースしてやる。
(perlの置換で先読み/後読みを使って最短一致した箇所以外を削除できるとよかったけど…ちょっとだめだったのでxargsで無理やり対処)

echo 変換する文字列 取得数 |kkc|xargs -I@ bash -c 'echo "@"|grep -oP "(?(?<=<).*?(?=/))"|xargs'|sed 's/ //g;/^$/d'
blacknon@BS-PUB-DEVELOP:~$ echo ひとのおかねでやきにくたべたい 10|kkc|xargs -I@ bash -c 'echo "@"|grep -oP "(?(?<=<).*?(?=/))"|xargs'|sed 's/ //g;/^$/d'
人のお金で焼肉食べたい
ヒトのお金で焼肉食べたい
人のお金で焼肉食べ体
ひとのお金で焼肉食べたい
一のお金で焼肉食べたい
妃とのお金で焼肉食べたい
費とのお金で焼肉食べたい
人の降鐘で焼肉食べたい
比とのお金で焼肉食べたい
人のお金で焼肉食べた位

 

なんやかんやで遊べそうな感じだ。

 


Written by blacknon

インフラエンジニア(…のつもり)。 仕事で使うならクライアントはWindowsよりはUNIXの方が好き。 大体いつも眠い。

Leave a Comment

メールアドレスが公開されることはありません。

*