動機
アップフロントの偉い人、「やまざきなおき」さん(通称山ちゃん)の「やまざき」は「山﨑」と書くのです。この「﨑」をSKKからも入力したいなと思ったのが発端でした。
DDSKK
DDSKKでの対応は簡単でした。
(setq skk-extra-jisyo-file-list
(list ; いろいろ辞書指定
'("/usr/share/skk/SKK-JISYO.JIS3_4" . euc-jisx0213)
; いろいろ辞書指定
)
のように書くだけでした。
fcitx
こちらはいろいろ悩みました。「﨑」だけなら、SKK-JISYO.JIS3_4
をUTF-8に変換してやってエンコードを指定して辞書指定してあげればすみました。
でも「髙橋」「髙島屋」のような「はしご高」も入力できるようにしたくなりました。この「はしご高」はUTF-8にしかないようなので、よし、この際、SKKサーバをrskkservにして、Google CGI API for Japanese Inputにも対応しようと思ったのでした。SKKの辞書にはたぶん「はしご高」はないからです。(調べていません。)
rskkserv
- tarao/rskkserv をforkして現在の環境に合わせて改変し、ビルドできるようにした。
-
Google CGI API for Japanese Inputを使って日本語変換 - Qiita
を参考にして、rkkservにGOOGLEDic
というクラスを追加。(ありがとうございました。) - SKK辞書をUTF-8に変換して、rskkserv.confファイルに追加。
SKK-JISYO.JIS3_4はUTF-8に変換できない文字もあるようなので、
iconv -c -f EUC-JISX0213 -t UTF-8 /usr/share/skk/SKK-JISYO.itaiji.JIS3_4 > SKK-JISYO.itaiji.JIS3_4.utf-8
のように-c
オプションを指定して、無視してしまいました。
rskkservの修正はduloxetine/rskkservに置いておきました。
fcitx-skk
- duloxetine/fcitx-skk-plusのデフォルトの文字コードをUTF-8にしました。
-
~/.config/fcitx/skk/user.dict
をUTF-8に変換。このとき先頭行のマジックコメントもeuc-jp
からutf-8
に変更しておきましょう。
あとは
あとはそれぞれ/usr/local/sbin/skkserv.rb
を起動したり、
fcitx -r
で再起動したりすると、試行錯誤の上、使えるようになるかと思います。
効能
- 「山﨑」が変換できる。
- 「髙橋」「髙島屋」が変換できる。
- ▶や⏎なども変換できる。「扃る」(ひきこもる)も変換できる。
どれも必要な人には必要ですが、いらない人はいらない機能ではあります。
課題
- 毎回Googleにアクセスに行ってしまう。ローカルの辞書に候補がないときだけGoogleに行ってほしい。単語登録直前のところで、Googleにアクセスするのがいいと思うが、そのやり方がちょっとわからない。
- Googleにはhttpでアクセスしています。httpsではありません。
- メモリを多く消費します。でも現在の環境では悩むほどではないかもしれません。
課題が解消される見込みはありません。
補遺
SKKの皮をかぶったGoogle日本語入力ではないかという思いを禁じえません。でも有名人などの固有名詞の入力にはGoogle CGI API for Japanese Inputは便利なんですよね。痛し痒しです。