Emacs 512

Emacs標準のパッケージ管理機能 package.el は、もはやこれなしではEmacsを使うことはできない、というぐらい重要な機能になっています。

以前ならユーザーが手動でlispをインストールしていましたが、もはやそれも過去のもの。

iPhoneのAppStoreぐらいに手軽に機能を追加・削除ができるので、「こんな機能がほしい!」と思ったら、まっさきに確認するのがオススメです。

(追記) 標準パッケージを探す方法はこちら → Emacsの散策:知らない標準パッケージと出会う方法

package.elとは何か?

package.el とは、Emacsに標準で組込まれているパッケージ管理のシステムです。パッケージをリポジトリから自動でダウンロードしバイトコンパイルまでし、依存するパッケージまで自動でインストールしてくれます。

できることは、パッケージ一覧の表示、パッケージのインストール、削除、アップデートぐらいなので、使いかたを覚えるのは簡単です。

別に設定等が必要でない限り、インストール完了後、すぐに使い始めることができます。素晴しい・・・。

MELPAリポジトリ

初期設定では、GNUのリポジトリ http://elpa.gnu.org/packages/ だけが登録されています。

まずは M-x list-packages を実行してみてください。次のような一覧が表示されるかと思います。

GNUの謹製?のパッケージだけでもかなり試しがいはありそうで、おもしろそうなパッケージが登録されています。

ただ、さらに package.el を活用するためには、外部のリポジトリである、MELPA(Milkypostman’s Emacs Lisp Package Archive)を追加で登録しておいたほうがいいでしょう。こちらのリポジトリは、大半がGitHub.comから自動でパッケージ化してるようで膨大なパッケージが登録されています。人気のあるパッケージが多数登録されているのでおすすめです。

MELPAを追加登録する場合、

M-x customize-option で package-archives に次のURLを追加します。

http://melpa.org/packages/

これで再度、 M-x list-packages を実行するとパッケージの数が増えていると思います。

ちなみに、 package.el を使うと、Emacsの初期化ファイル(init.el等)の先頭に、次の関数が自動で追加されるようになっているようです。

(package-initialize)

パッケージの探しかた

自分がほしい機能を探すには、パッケージの一覧で概要を見ながら探すのがいいでしょう。興味のあるパッケージがあれば、その行でエンターキーを押せば、詳細画面が表示されます。

また一覧で f キーを押すと絞り込みができるので、例えば、”org-mode”でフィルタリングすると便利です。

それでわからなければ、実際にインストールして試すか、ネットを検索するのがいいと思います。

残念ながら、iPhoneのAppStoreのようにレビューがあるわけでもランキングがあるわけでもないので、人気のあるパッケージがどれなのか、ということはわかりません。

しかし、MELPAの場合は、http://melpa.org サイトへアクセスすると、パッケージのダウンロード数が公開されています。一覧をダウンロード数でソートすることで、人気のあるパッケージを知る手掛かりにはなります。

また package.el を拡張した paradox というパッケージをインストールしておくと、パッケージの一覧にGitHub.comでの評価(星の数)が表示されるようになるので、これも参考になります。(要GitHubアカウント)

注意点

簡単にインストールができると説明してきましたが、残念ながら簡単でないものもあります。

パッケージによっては、コマンドラインに依存しているものがありますが、そのコマンドまでは自動でインストールしてくれないからです。またddskkの辞書ファイルのように別にインストールが必要なファイルもあります。

またパッケージをアップデートしたら、エラーが出て使えなくなったこともありました。自力でデバッグできないとつらいときがあるかもしれません。残念ながら。

使いかた

詳しい使いかたはEmacsのInfoを読んでもらうのがいいと思いますが、一応、簡単に説明しておきます。

まずは M-x list-pacages を実行して一覧を表示します。

気になるパッケージがないかを調べます。パッケージにカーソルを移動しエンターキーを押せば、詳細画面が開きます。

/assets/2015/emacs-packages-usage/package-detail.jpg

ここでインストールボタンを押せば、インストールが始まります。

また一覧上での代表的な操作はこんなところです。

iを押下: インストールするパッケージに、Iマークがつく
dを押下: 削除するパッケージに、Dマークがつく
xを押下: マークを実行する
uを押下: マークを消す
Uを押下: アップデートできるパッケージに、Iマークがつき、古いバージョンにはDマークがつく
fを押下: 一覧をフィルタリングをする

インストールしたいパッケージがわかっている場合は

M-x package-install

を実行してパッケージ名を指定するだけでOKです。

最後に

Emacsは一度、自分の環境を構築して満足してしまうと、あんまりいじらなくなりませんか? たまにはパッケージ一覧を眺めて新しいlispを試すことも大事かな、と思う今日この頃です。