migemo.el は cmigemo などと通信して、日本語入力オフのままローマ字入力をして日本語検索ができるようにするパッケージ。
これとても便利で抜け出せない。
いつも通り el-get でインストール。
(el-get-bundle migemo)
(load "migemo")
load はする必要あるのかわからんけど、そういう設定が既に入ってるのでそのままにしている。
Homebrew で cmigemo を入れているのでそれに合わせて辞書の位置を指定している。
;; Mac
(let ((path "/usr/local/share/migemo/utf-8/migemo-dict"))
(if (file-exists-p path)
(setq migemo-dictionary path)))
apt で cmigemo を入れているのでそれに合わせて辞書の位置を指定している。
;; Ubuntu
(let ((path "/usr/share/cmigemo/utf-8/migemo-dict"))
(if (file-exists-p path)
(setq migemo-dictionary path)))
yay で cmigemo-git を入れているのでそれに合わせて辞書の位置を指定している。
;; Manjaro
(let ((path "/usr/share/migemo/utf-8/migemo-dict"))
(if (file-exists-p path)
(setq migemo-dictionary path)))
環境で PATH が変わるので which コマンドの結果を migemo-command に設定している。
(let ((path (s-chomp (shell-command-to-string "which cmigemo"))))
(if (s-ends-with? "not found" path)
(message "cmigemo not found")
(setq migemo-command path)))
裏側で動くのでうるさくならないように -q
を指定しているのと
Emacs から叩くから --emacs
を指定しているだけ。
(setq migemo-options '("-q" "--emacs"))
Mac と Ubuntu でしか使わないしそれらの環境だと統一で utf-8-unix でいいよねってことでそれを指定している。
(setq migemo-coding-system 'utf-8-unix)
今時なら euc とかにする必要もないだろうしね。
以上の設定を入れた上で初期化をしている。
(migemo-init)