【Emacs/msys2】migemoを有効にし、ローマ字のまま日本語検索する

スポンサーリンク

前記事で、Emacs(macOS)での migemo の設定ついて紹介したが、msys2(Windows環境)のEmacsで、migemoインクリメンタル検索を使えるようにしたので備忘録を残す。
migemo はローマ字のまま日本語を検索するためのツール。

cmigemoをmsys2にインストール

migemo は元々 Ruby で書かれていたようですが,最近の Ruby では動かないので C 言語で再実装された cmigemo を使うのが一般的のよう。
msys2のパッケージ(pacman)には、cmigemoは準備されていないようなので、ソースからビルドする。nkfコマンドも必要なようなので、先にビルドする。

nkfのビルド

任意フォルダで、下記URLから nkf のソースを取得し展開する。
https://ja.osdn.net/projects/nkf/downloads/64158/nkf-2.1.4.tar.gz/

$ wget https://ja.osdn.net/projects/nkf/downloads/64158/nkf-2.1.4.tar.gz
$ tar xvf nkf-2.1.4.tar.gz

展開したフォルダに移動し、コンパイル&インストール

$ cd nkf-2.1.4/
$ make
$ make install

実行確認

$ nkf --help

cmigemoのビルド

任意のフォルダに、GitHubから cmigemo のソースを取得

$ git clone https://github.com/koron/cmigemo

取得したフォルダに移動し、コンパイル&インストール

$ cd cmigemo
$ ./configure --prefix=/usr/local
$ make mingw-install

インストール完了したら、下記コマンドで実行できる事を確認

$ cmigemo --help

Emacsに migemo.el をインストール

パッケージ化されているので、Emacsで下記を実行。

M-x package-install<RET>
migemo

Emacsの設定

下記を初期設定に追加。
尚、私はinit-loaderを利用しており、~/.emacs.d/inits/windows-03_migemo.elファイルを作成。

;;
;; migemo.elの設定 (for msys2)
;;
(when (and (executable-find "cmigemo")
           (require 'migemo nil t))
  (setq migemo-command "cmigemo")
  (setq migemo-options '("-q" "--emacs"))

  ;; Set your installed path (msys2では~からの相対で書かないとダメ)
  (setq migemo-dictionary
      (file-truename "~/../../usr/local/share/migemo/utf-8/migemo-dict"))

  (setq migemo-user-dictionary nil)
  (setq migemo-regex-dictionary nil)
  (setq migemo-coding-system 'utf-8-unix)
  (load-library "migemo")
  (migemo-init)
)

インクリメンタル検索してみる

C-s キー押すと、下記画面のように [MIGEMO]と表示される。

画面

ここで tokyo とローマ字入力すると 東京 の日本語文字を検索する。便利便利!!

補足

  • cmigemoの辞書ファイルは、/usr/local/share/migemo/utf-8/migemo-dict にインストールされる。
  • 最初は、macOS/msys2/Linuxで共通の設定ファイルにしようとしたが、辞書ファイルの位置や動きが異なるところがあったので、機種別の設定ファイルにした。

参照記事

参考

  1. msys2 を使用して Windows 10 に Emacs 25.0.94.2 (IMEパッチ適用) を導入した
  2. migemoを使ってEmacsライフを快適に
  3. Windowsでの Emacsでmigemo を有効にする設定方法
  4. Windows環境でEmacs+C/Migemoの設定に詰まったのでメモ
  5. macにEmacsの検索が楽になるmigemoをインストール

コメント

タイトルとURLをコピーしました