はじめに
Mac(Catalina)の日本語 IME があんまりにもひどいので1、Google 日本語入力を試してみることにしました。
しかしインストールしてもユーザ辞書を自動的にインポートしてくれたりはしませんでした。Chrome は Safari のブックマークをインポートするかどうか選べるのに。
2つの辞書の移行方法について調べると、別途 U-Dict というアプリのインストールが必要な手順が出てきました。
- Macの日本語入力にGoogle日本語入力を使うためにユーザ辞書を移植する - tomi_kun’s blog
- Mac OS 日本語辞書をGoogle辞書に移行する方法 – むくどりのブログ 69bird.jp
なんで .plist(つまりただの XML)からプレーンテキストに変換するのにワザワザ別のアプリを使わにゃならんのだ。
PHP でコマンドラインツールを作る
つまり XML からデータを抽出するだけなので、かんたんなスクリプトでできるでしょう。
使い方のイメージはこんな感じです。ターミナルです。
> cat ユーザ辞書.plist | php tool.php > 変換後.txt
PHP のソースコード
#!/usr/bin/php <?php $res = fopen('php://stdin', 'r'); $src = stream_get_contents($res); $xml = simplexml_load_string($src); $words = $xml->array->dict; foreach ($words as $word) { $tango = $word->string[0]; $yomi = $word->string[1]; echo $yomi . "\t" . $tango . "\t名詞\t\n"; }
おわりに
想像通りかんたんなスクリプトで書けました。
しかし Mac の UI から浮きまくっているので Google 日本語入力を使い続けるかどうか微妙です。メニューバーの右上にあるだけだから気にならないだろうと思いますか?ところが結構パカパカしてめっちゃ気になるんですよこれが。