Como aprender Emacs Lisp

Uma visão geral de como começar do zero com Emacs Lisp


Começando com o Emacs

Então você instalou o Emacs. E agora?

Bem, você pode começar o tutorial pressionando C-h t, e esse não é um mau lugar para começar. O tutorial vai te ensinar o básico de edição, busca e navegação no Emacs.

Se você está começando agora com o Emacs, pode fazer sentido usar um kit inicial, que já vem com um conjunto de configurações e pacotes prontos.

O pacote Emacs Prelude oferece um bom conjunto de padrões sensatos e pacotes.

Para instalar o Emacs Prelude, rode o seguinte em um terminal:

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

e não deixe de conferir o guia de instalação para mais instruções.

Se você conhece o vim, pode se interessar pelo kit inicial Doom Emacs, que integra a emulação do vim com o evil-mode.

Para instalar o Doom Emacs, rode o seguinte em um terminal:

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

e não deixe de conferir o guia de instalação para mais instruções.

Configurando a verificação de sintaxe e o linting

Recomendamos configurar a verificação de sintaxe e o linting com o Flycheck.

Se você ainda não adicionou o repositório MELPA ao seu Emacs, faça isso adicionando o seguinte ao seu arquivo de inicialização

(require 'package)

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

A instalação e a configuração do Flycheck sem o use-package são feitas adicionando o seguinte ao seu arquivo de inicialização

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

A instalação e a configuração do Flycheck com o use-package são feitas adicionando o seguinte ao seu arquivo de inicialização

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

Para mais informações e solução de problemas, confira a documentação do Flycheck.

Aprendendo Emacs Lisp

A melhor documentação sobre Emacs Lisp é... distribuída com o próprio Emacs! Para acessar a Emacs Lisp Reference, digite C-h i e procure a entrada Elisp, ou selecione Help → More Manuals → Emacs Lisp Reference. Observe que o manual pode estar faltando em algumas distribuições; nesse caso, você pode encontrá-lo online.

Se você nunca teve contato com Elisp, pode ler a Introduction to Emacs Lisp, que é aberta da mesma forma.

Boas práticas e convenções do Emacs Lisp

O Manual do Emacs contém uma seção sobre Convenções de Código do Emacs Lisp. Há também um Guia de Estilo mantido pela comunidade no GitHub.