はじめに,検索結果画面を:
当ブログとサブブログ(かけ算の順序の昔話)のそれぞれで,記事をタイトルや日付から検索したり,はてな記法でリンクを貼り付けたりするため,1行1記事でテキストファイル(上記ではtakehikoMultiply_title.txt)を作成していて,Emacsでファイルを開き,検索を行っています.下段(ミニバッファ)で表示されているように,打ち込んだのは「reiwa」です.インクリメンタルサーチの機能により,ファイル内の「令和」を表示しています.
ローマ字入力で日本語インクリメンタルサーチを行うソフトウェアといえば,Migemoです.
しかしそこでダウンロードできるソフトウェアでは,辞書に「令和」が含まれていません.ただし,辞書がSKKベースであることを知っていれば,Migemoで「reiWa」とタイプすることで,(「れい」と「わ」の並びとしての)「令和」にヒットすることはできていました.
「reiwa」で「令和」を検索できるといいなあ,新語をMigemoの辞書に取り入れたいなあと思いながら,今年になってGoogle検索をしていると,その方法や,辞書ファイルのURLが,公開されているのを知りました*1.
L辞書と,jinmei,geo,propernoun,stationの各専門辞書を取り入れることとしました.コマンドは以下の通りです.C/Migemoは事前に~/bin/cmigemoにインストール済みです.
$ cd ~ $ git clone https://github.com/koron/cmigemo.git $ cd cmigemo $ ./configure $ make gcc $ make gcc-dict $ cd dict $ for n in jinmei geo propernoun station; do wget "https://skk-dev.github.io/dict/SKK-JISYO.${n}.gz" ; gzip -d "SKK-JISYO.${n}.gz" ; done $ perl ../tools/skk2migemo.pl < SKK-JISYO.{L,jinmei,geo,propernoun,station} > dict.tmp $ perl ../tools/optimize-dict.pl < dict.tmp > base-dict2 $ nkf -x -s < base-dict2 > migemo-dict2 $ mkdir -p migemo-dict-enriched-20240327 $ iconv -t utf-8 -f cp932 < migemo-dict2 > migemo-dict-enriched-20240327/migemo-dict $ mv ~/bin/cmigemo/share/migemo/utf-8/migemo-dict{,.bak} $ cp migemo-dict-enriched-20240327/migemo-dict ~/bin/cmigemo/share/migemo/utf-8/migemo-dict
Emacsを起動し直して,テキストファイルを開き,C-sのあとreiwaで,記事冒頭の表示を得ることができました.
コマンドラインで,新旧辞書の違いを確認しておきましょう.
$ cd ~/cmigemo $ ./build/cmigemo -d ~/bin/cmigemo/share/migemo/utf-8/migemo-dict -e migemo_open("略/migemo-dict")=略 clock()=0.102628 QUERY: reiwa PATTERN: \(レ\s-*イ\s-*ワ\|レ\s-*イ\s-*ワ\|例\s-*話\|令\s-*和\|れ\s-*い\s-*わ\|r\s-*e\s-*i\s-*w\s-*a\|r\s-*e\s-*i\s-*w\s-*a\) QUERY: ^C $ ./build/cmigemo -d ~/bin/cmigemo/share/migemo/utf-8/migemo-dict.bak -e migemo_open("略/migemo-dict.bak")=略 clock()=0.053427 QUERY: reiwa PATTERN: \(レ\s-*イ\s-*ワ\|レ\s-*イ\s-*ワ\|例\s-*話\|れ\s-*い\s-*わ\|r\s-*e\s-*i\s-*w\s-*a\|r\s-*e\s-*i\s-*w\s-*a\) QUERY: ^C
migemo-dictを指定して,「reiwa」を与えると,PATTERNの行に「令\s-*和」が出現するのに対し,migemo-dict.bakには含まれていません.これで,バッチリです.
*1:今回使用していませんが,各辞書ファイルのサイズや作成日などを一覧するには,http://openlab.ring.gr.jp/skk/dic/がおすすめです.