あれこれ備忘録@はてなブログ

勉強したことやニュースや出来事を備忘録として書いていきます

このブログには広告が含まれます

Puppy LinuxのAnthyの辞書を強化する

Puppy Linuxでは日本語変換エンジンはAnthyである。

以前はMozcをビルドしてくれる有志の人がいたが、今はいないので新しいものがない。

日本語化パッチや日本語化ビルドに入っているのはAnthyなのである。

変換の仕組みに違いがあるせいもあるが、辞書が貧弱なために変換効率が悪いと言われている。

以前、Anthyの辞書を強化することを試みた。

今回は別の辞書を使って、辞書の強化を図ってみる。

まず、作業は単純なものなのだが、Rubyなどをインストールする必要があるため、UbuntuやLinux MintなどPuppy Linux以外のディストリビューションで行う方が簡単である。

ここではLinux Mintを使ったが、Debian/Ubuntuベースのディストリビューションなら手順は同じはずである。

Mozc辞書型式への変換プログラム #ユーザー辞書 - Qiita

この記事にある変換プログラムと方法を使ってSudachiDictというものをMozc用辞書に変換する

Releases · phoepsilonix/dict-to-mozc · GitHub

2026/02/21現在の最新版である

https://github.com/phoepsilonix/dict-to-mozc/releases/download/v0.6.27/dict-to-mozc-x86_64-unknown-linux-gnu.tar.xz

をダウンロードする

解凍してdict-to-mozcを適当な作業用ディレクトリにコピーする。

ここではdicという名前にする。

Sudachi Dictionary Sources (CSV)

次に上のリンクから

  • small_lex.zip
  • core_lex.zip
  • notcore_lex.zip

をダウンロードして解凍する。

中身はCSVファイルである。

これらもdicディレクトリにコピーする。

https://github.com/google/mozc/raw/refs/heads/master/src/data/dictionary_oss/id.def

上のリンクをブラウザで開いて保存する。

以下のコマンドでも良い。というかこれが通常の方法なのだが、コマンドを使いたくない人は上の方法で。

curl -LO https://github.com/google/mozc/raw/refs/heads/master/src/data/dictionary_oss/id.def

そして

./dict-to-mozc -U -s -i ./id.def -f small_lex.csv > small_lex.txt

としてMozcのユーザー辞書に変換する。

同様に

./dict-to-mozc -U -s -i ./id.def -f core_lex.csv > core_lex.txt
./dict-to-mozc -U -s -i ./id.def -f notcore_lex.csv > notcore_lex.txt

も実行する。

※このツールの使い方の記事には何かをビルドするコマンドがあったのだが、それはせずに単純に実行ファイルをそのまま実行したが良かったのかよくわからない。

次に

userdic - 日本語入力ユーザー辞書変換スクリプト

から日本語入力ユーザー辞書変換スクリプトをダウンロードする。

http://startide.jp/comp/im/userdic/userdic

をダウンロードする。

これはRubyのスクリプトなのでRubyをインストールする。

sudo apt install ruby

インストールができたら次のコマンドを実行する。

ruby userdic mozc anthy < small_lex.txt > small_lex_unsort.t

同様に

ruby userdic mozc anthy < core_lex.txt > core_lex_unsort.t
ruby userdic mozc anthy < notcore_lex.txt > notcore_lex_unsort.t

これが終わったら、ソートする。

env LC_ALL=C sort small_lex_unsort.t > small_lex.t
env LC_ALL=C sort core_lex_unsort.t > core_lex.t
env LC_ALL=C sort notcore_lex_unsort.t > notcore_lex.t

これで準備は整った。

できた.tファイルをUSBメモリなどにコピーして、Puppy Linuxに移動する。

Puppy Linuxを起動して~/.anthy/imported_words_default.d/ディレクトリに入れるとユーザー辞書登録が完了である。

システム辞書にする方が良いのであるが、少し手間なので今回は割愛する。

やってみたい人は、以下の私の記事を見てほしい。

XenialDog(Puppy Linux系)Anthyの辞書をできる限り強化してみた(かなり頭が良くなった) - あれこれ備忘録@はてなブログ

以上。