Emacs 入門: emacs lisp package 管理ツール (package.el) を使う

Emacs にはアドオン機能がマクロ言語(Emacs Lisp)で書かれている

Emacs にはアドオン機能※の管理ツールがあります。それが”package.el”です。 Emacsは Lisp(「リスプ」)と呼ばれる言語がマクロ言語として使われます。 と言うか、マクロ言語で拡張しないとEmacsはかなり使いづらいのです。

※あまり正確な言い方ではないかも知れませんが、ChromeやFirefoxのアドオンみたいなものです。

マクロ言語Lispで書かれたEmacsの拡張がすでにたくさんあります。 それらをEmacs Lisp Package と呼んでいます。それを管理するEmacs Lisp Packageが”package.el”です。

Emacs version 24から導入されていますので、24以降を使います。

設定

以下の設定を “~/.emacs.d/init.el”に書きます:
;(setq load-path (cons "/usr/share/emacs/24.1.50/lisp/emacs-lisp/" load-path))

(require 'package)
(add-to-list 'package-archives '("melpa" . "https://melpa.org/packages/"))
(add-to-list 'package-archives '("marmalade" . "http://marmalade-repo.org/packages/"))
(add-to-list 'package-archives '("org" . "http://orgmode.org/elpa/") t)
(package-initialize)

使う

上記の設定を有効にするには、Emacsを再起動するか、上記領域を選択してミニバッファーでM-x eval-region (RET)をします。

hogeというpackageをインストールするには

hogeというpackageをインストールするには M-x package-refresh-contents (RET) M-x package-install (RET) hoge とします。

packageの一覧リストを得るには

packageの一覧リストを得るには M-x package-list-package とします。

一覧でのキーとその概要・意味は以下の通りです:

キー概要・意味
iインストール (install)のマークをつける
d削除 (delete)のマークをつける
C-m? packageの概要を表示
r refresh-contents パッケージ一覧の更新
x execute マークの実行
U 更新(Upgrade)された package にマークをつける
~ obsolete for deletion 古いパッケージに削除マークをつける
u unmark マークを取り消す
n next line 次の行へ移動
p previous line 前の行へ移動
h quick help (ヘルプを表示)
g 表示を更新する
f filter フィルターする
H hide package (packageを隠す)
( toggle hidden (隠したpackageを再表示する)
q, z終了

参考

https://www.emacswiki.org/emacs/ELPA