如何學習 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,也許會對 Doom Emacs 入門套件感興趣,它整合了由 evil-mode 驅動的 vim 模擬功能。

要在終端機安裝 Doom Emacs,請執行:

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

並記得查看安裝指南,以取得進一步的說明。

設定語法檢查與 Lint

建議使用 Flycheck 來設定語法檢查與 Lint。

如果你的 Emacs 還沒加入 MELPA 套件庫,請把以下內容加進你的初始化檔案:

(require 'package)

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

不使用 use-package 時,安裝與設定 Flycheck 的方式是把以下內容加進你的初始化檔案:

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

使用 use-package 時,安裝與設定 Flycheck 的方式是把以下內容加進你的初始化檔案:

(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 的程式碼撰寫慣例。GitHub 上還有一份由社群維護的風格指南。