Emacs 24.5 で「作業ディレクトリ」を指定すると

過去の記事でまとめた通り、Windows8でEmacsを起動するショートカットに「%USERPROFILE%」を設定すると、find-file (C-x C-f でファイルを開く)でUNIXで言うところのホームディレクトリからスタートできた。4/11にリリースされたEmacs24.5では以下のようになり正常に起動できないことを3台のWindows8.1で確認。

  • 作業ディレクトリをデフォルトの、「C:\Program Files\emacs\bin」などrunemacs.exe があるディレクトリにする
  • find-file のデフォルトディレクトリは別途設定(参考)
    (setq command-line-default-directory "~/")

Emacs24.5 init Error
2016.6.6追記

initを綺麗にしたらWindows10で起動できないという事象は発生しないことを確認。

 

C/Migemo を Windows 8 にインストール (Emacs 24 に移行のため)

休みを利用して Emacs 24 に移行してみるの巻。今は Windows バイナリを解凍するだけで良くなった。

  1. ダウンロードと解凍
  2. emacsの実行ファイルのディレクトリをPATHに追加
  3. runemacs.exe へのショートカットの作成
    • 次のようにプロパティを設定しておく。%USERPROFILE% を作業フォルダにする。
  4. ショートカットをスタートメニューに表示
    • C:\ProgramData\Microsoft\Windows\Start Menu\Programs または%USERPROFILE%\Microsoft\Windows\Start Menu\Programsにショートカットを移動またはコピー
  5. DDSKKのインストール
  6. C/Migemoのインストール:基本はここの手順が基本でコンパイルを省略すれば良い
    • 必要なファイルは C/Migemo Windows バイナリmigemo.el
    • cmigemo.exe と migemo.dll はパスの通ったディレクトリに移動
    • migemo 辞書をコピーするため C/Migemo Windows バイナリを解凍した(残りの)ファイルをフォルダごと ~/emacs.d/site-lisp/ に移動
    • migemo.el も load-path の通った ~/emacs.d/site-lisp/ に移動
    • DOS窓で動作確認をしておくとよい
      (setq migemo-command "cmigemo")
      (setq migemo-options '("-q" "--emacs" "-i" "\a"))
      (setq migemo-dictionary (expand-file-name "~/.emacs.d/site-lisp/cmigemo-default-win64/dict/utf-8/migemo-dict"))
      (setq migemo-user-dictionary nil)
      (setq migemo-regex-dictionary nil)
      (setq migemo-use-pattern-alist t)
      (setq migemo-use-frequent-pattern-alist t)
      (setq migemo-pattern-alist-length 1000)
      (setq migemo-coding-system 'utf-8-unix)
      (load-library "migemo")
      (migemo-init)
 

Emacs 23 + migemo with Homebrew

マスタカさんが Homebrew の Formula を書いておられたので使わせてもらいました。ありがとうございます。私の環境の場合には、インストール後 init.el に次の記述が必要でした。

;; migemo
(setq migemo-command "migemo")
(setq migemo-options '("-t" "emacs"))
(setq migemo-dictionary (expand-file-name "/usr/local/share/migemo/migemo-dict"))
(setq migemo-user-dictionary nil)
(setq migemo-regex-dictionary nil)
(setenv "RUBYLIB" "/usr/loca/lib/ruby/")

(require 'migemo)