https://github.com/yewton/.emacs.d に移行しました。
yewton の .emacs.d
です。
- GNU Emacs - 24.4.x が必要です
- Mac の場合は
brew install emacs --with-glib --with-gnutls --with-imagemagick
でインストールするとよいですbrew linkapps
を忘れずに。
- Mac の場合は
- C/Migemo — KaoriYa - 日本語をローマ字で検索する
- GNU Aspell - スペルチェッカ
以下は依存パッケージのビルドに必要です。
- automake
- cvs
- git
- python
このリポジトリをクローンします。
gitsubmodule
で管理しているモノもあるので、 --recursive
を使えるなら使いましょう。
使えない場合は git submodule init
、 git submodule update
で。
git clone --recursive https://github.com/yewton/dot-emacs.git ~/yewton.emacs.d
brew でインストールしたものとします。
そうでない場合、主に emacsclient
の場所が違ったりすると思うので、適宜読み替えてください。
シェルスクリプトと Automator を使います。
まず、 /usr/local/bin/myemacs
として、以下の様なシェルスクリプトを置いてください:
#!/bin/sh
open -a /Applications/Emacs.app --args -q --debug-init -l ~/dot-emacs/init.el --chdir ~ "$@"
次に、Automator でアプリケーションを新規作成し、
シェルスクリプトを実行
を選択して、以下のように書いてください:
/usr/local/bin/myemacs
これを /Applications
に保存して、Dock にでも入れておきましょう。
ここでは MyEmacs.app
という名前で保存したとします。
各種アプリケーションから MyEmacs.app
を利用できるように、
Automator でアプリケーションを新規作成し、
シェルスクリプトを実行
を選択して、以下のように書いてください:
/usr/local/bin/emacsclient -n "$1" --alternate-editor /usr/local/bin/myemacs "$1"
例えば、It’s All Text! などにこのアプリケーションを指定すると、 すでに起動している Emacs の frame で、あるいは新しく Emacs を起動して編集することが出来ます。
また、以下の様なシェルスクリプトを作って VISUAL
に指定しておけば、
ターミナルからの編集作業( sudo -e
とか)にも利用することが出来ます。
#!/bin/sh
set -e
if [ "$#" -eq 0 ]; then
# Emacs doesn't activate itself when there's no filename.
/usr/local/bin/emacsclient -c -a /usr/local/bin/myemacs &
sleep 0.1
osascript -e "tell application \"Emacs\" to activate"
wait
else
/usr/local/bin/emacsclient -c -a /usr/local/bin/myemacs "$@"
fi
ショートカットを使います。
--debug-init -l ~/yewton.emacs.d/init.el
という起動オプションつきのショートカットを作成してください。
GNU Win 32 版の TexInfo に付属の install-info
でないと、
el-get
が動かないので注意しましょう(参考)。
色々やりようはあると思いますが、一例としてショートカットを使うことにします。
/usr/bin/emacs24 -q --debug-init -l ~/yewton.emacs.d/init.el
とかで動くと思います。
- 初回起動時は依存パッケージを落としたりなんだりで結構時間がかかります
- なんだかよくわからない理由でたまに初期化処理が止まったりします(Mac OS X だと起こりやすい?)。 なんだかよくわからないですが、Emacs のフレームをアクティブにして、 その上でマウスポインタを動かすと復帰する場合があるみたいです(参考)
- 予期せぬことが起こって、初期化が中途半端に終わってしまった場合などに、
el-get
がバグった.loaddefs.el
を生成してしまい、無限ループに陥る場合が稀にあります。 その場合は、el-get
のディレクトリ内の.loaddefs.el
を消すか、 それでも直らない場合は、clean.sh
を実行してまっさらにしてから再度実行しましょう。
GNU Emacs 24.4.1 (x86_64-apple-darwin14.0.0, NS apple-appkit-1343.16)