auto-install.elでEmacsLispパッケージを自動インストール→anything.el関連を一括インストール

Emacs Advent Calendar jp: 2009参加中!次はkiwanamiさん。

auto-install.el は拙作 install-elisp.el の後継バージョンである。サイトからEmacsLispファイルをダウンロードし、所定の位置に配置し、バイトコンパイルする。最大の違いはダウンロードが非同期になったことだ。 install-elisp ではダウンロード時に待たされるが、 auto-install ではダウンロード中も作業をすることができる。

ダウンロードはEmacsWikiから。install-elispが使えるならば、M-x install-elisp-from-emacswiki auto-install.el を実行する。
http://www.emacswiki.org/emacs/download/auto-install.el

そして、以下の設定を.emacsに加える。

(require 'auto-install)
(setq auto-install-directory "~/.emacs.d/auto-install/")
(auto-install-update-emacswiki-package-name t)
(auto-install-compatibility-setup)             ; 互換性確保

4行目の (auto-install-compatibility-setup) は install-elisp との互換性を確保するために必要だ。install-elispユーザはいつものコマンドが使えるし、このブログでもinstall-elispのコマンドを書いていくことにする。

いずれのコマンドもダウンロードした後、C-c C-cでバイトコンパイルする。C-c C-qでインストールを中止する。
C-c C-dを押すと、現在インストールされているバージョンとインストールしようとしているバージョンをediffで比較することができる。これはinstall-elispにはない新機能だ。変更点を手早く知ることができるぞ。

複数ファイルを一発でインストールする

上記だけだと、わざわざ乗り換える価値はないかもしれない。
auto-installのウリは、複数ファイルからなるEmacsLispをインストールすることができることだ。ただし、予め登録されているパッケージだけである。
現在、icicles、auto-complete development version、anything、sdcv、lazy-search、php-completion、perl-completionが登録されている。

M-x auto-install-batch パッケージ名

たとえば、anything.elとその関連ファイルをインストールするには M-x auto-install-batch anything を実行する。
ダウンロードが終わるとファイルが出てくるので C-c C-c を押す。すると次のファイルが出てくるので C-c C-c …というふうにファイルの数だけ C-c C-c を押す。最後に Installation is completed.というメッセージが出てくるのでインストール終了である。
anythingに関しては anything-startup.el という初期設定ファイルがインストールされるので、すぐに試すことが可能だ。

auto-install-batchに登録してほしいパッケージは募集中なので、気楽にコメントを!現状ではtarパッケージではなくて各ファイルにURLが存在するもののみ対応可能だ。

[2009/12/29]

auto-install.elのバッチインストールをText Translatorにも対応しました。