Emacs Lispの学び方

Emacs Lispをゼロから始める方法を紹介します


Emacsを始める

Emacsをインストールしたのはいいけれど、次は何をすればいいのでしょうか?

まずはC-h tを押してチュートリアルを始めるのがよいでしょう。ここから始めるのは悪くない選択です。チュートリアルでは、Emacsでの編集・検索・移動の基本を学べます。

Emacsがまったく初めてなら、設定やパッケージがあらかじめ用意されたスターターキットを手に入れるのもよいでしょう。

Emacs Preludeパッケージには、理にかなったデフォルト設定とパッケージがひとそろい用意されています。

Emacs Preludeをインストールするには、ターミナルで次を実行します。

curl -L https://github.com/bbatsov/prelude/raw/master/utils/installer.sh | sh

詳しい手順については、インストールガイドを確認してください。

vimに慣れているなら、evil-modeによるvimエミュレーションを組み込んだスターターキットのDoom Emacsも興味深いかもしれません。

Doom Emacsをインストールするには、ターミナルで次を実行します。

git clone --depth 1 https://github.com/doomemacs/doomemacs ~/.emacs.d
~/.emacs.d/bin/doom install

詳しい手順については、インストールガイドを確認してください。

構文チェックとリントの設定

Flycheckを使って構文チェックとリントを設定することをおすすめします。

まだMELPAリポジトリをEmacsに追加していない場合は、initファイルに次を追加してください。

(require 'package)

(add-to-list 'package-archives
             '("MELPA Stable" . "https://stable.melpa.org/packages/") t)
(package-initialize)
(package-refresh-contents)

use-packageを使わずにFlycheckをインストールして設定するには、initファイルに次を追加します。

(package-install 'flycheck)
(add-hook 'after-init-hook #'global-flycheck-mode)

use-packageを使ってFlycheckをインストールして設定するには、initファイルに次を追加します。

(use-package flycheck
  :ensure t
  :init (global-flycheck-mode))

さらに詳しい情報やトラブルシューティングについては、Flycheckのドキュメントを確認してください。

Emacs Lispを学ぶ

Emacs Lispについての最高のドキュメントは…実はEmacs自体に付属しています! Emacs Lisp Referenceを開くには、C-h iと入力してElispの項目を探すか、Help → More Manuals → Emacs Lisp Referenceを選びます。ディストリビューションによってはマニュアルが含まれていないこともありますが、その場合はオンラインで読むことができます。

Elispがまったく初めてなら、Introduction to Emacs Lispを読むとよいでしょう。これも同じ方法で開けます。

Emacs Lispのベストプラクティスと規約

Emacsマニュアルには、Emacs LispのCoding Conventionsというセクションがあります。GitHubでは、コミュニティ主導のStyle Guideも管理されています。