Es gibt noch einige andere Möglichkeiten:
elint-defun
, elint-file
Und Freunde, die Emacs-in gebaut werden. elint sucht hauptsächlich nach undefinierten Variablen, Rechtschreibfehlern und falschen Funktionsaufrufen. Ich fand es wenig nützlich, da der Byte-Compiler heutzutage auch die meisten (wenn nicht alle) dieser Fehler abfängt. Es ist auch schmerzhaft langsam, da es auch alle abhängigen Bibliotheken analysiert und, noch schlimmer, regelmäßig Makros verschluckt. Zum Beispiel pcase
liefert das Anwenden von elint auf Code, der viel Gebrauch macht, eine Menge falsch positiver Ergebnisse .
- Das flycheck-Paket bietet einige nette Lints jenseits des Byte-Compilers und des Checkdocs. MELPA-Betreuer verwenden es, soweit ich weiß, um eingereichte Pakete zu überprüfen, und ich selbst verwende es in meinen Paketen, um mich vor Formatierungsfehlern in Paket-Headern zu schützen.
Davon abgesehen steht für Emacs Lisp jedoch nichts auf dem Flusentisch. Insbesondere vermissen wir Linters, die nach unidiomatischem Code, falscher API-Verwendung, fehlenden Dingen usw. ~/.emacs.d
suchen . Zum Beispiel gibt es nichts, was Ihnen sagt, dass Sie Verweise in Ihrem Elisp-Code durch user-emacs-directory
oder noch besser ersetzen sollten locate-user-emacs-file
, oder warnt vor defcustom
s durch fehlendes :type
oder :group
, usw.