KAKASIを使って漢字をひらがなに変換する

KAKASI - 漢字→かな(ローマ字)変換プログラム
インストール方法などは上記に記載されているがHomebrew上で見つけたのでそちらでインストールした。

$ brew install kakasi

Rubyで使いたいのでkakasi-rubyをインストールする。
GitHub - eitoball/kakasi-ruby: kakasi-ruby

なお、インストール方法に関してはこちらの記載を参考にさせていただいた。

Ruby2.0以降を使う場合はここでエラーがでるので、ソースを変更する。

mv kakasi.c kakasi.c.org # 元ソースバックアップのため
cat kakasi.c.org | sed "s/RSTRING\(([^)]*)\)->len/RSTRING_LEN\\1/" | sed "s/RSTRING\(([^)]*)\)->ptr/RSTRING_PTR\\1/" > kakasi.c
make
KAKASIとrubyの連携 - Qiita

ヘルプを参照すると変換前変換後をオプションでセットで指定するみたい。

Usage: kakasi -a[jE] -j[aE] -g[ajE] -k[ajKH] -E[aj] -K[ajkH] -H[ajkKH] -J[ajkKH]
-i{oldjis,newjis,dec,euc,sjis,utf8} -o{oldjis,newjis,dec,euc,sjis,utf8}
-r{hepburn,kunrei} -p -s -f -c"chars" [jisyo1, jisyo2,,,]

Character Sets:
a: ascii j: jisroman g: graphic k: kana (j,k defined in jisx0201)
E: kigou K: katakana H: hiragana J: kanji(E,K,H,J defined in jisx0208)

確認

irb(main):001:0> require 'kakasi'
=> true
irb(main):002:0> Kakasi.kakasi("-JH -KH", "機動戦士ガンダム")
=> "きどうせんしがんだむ"

[asin:B00K6PYEB0:detail]