Il y a quelques autres options:
elint-defun
, elint-file
et amis intégrés à Emacs. elint recherche principalement des variables non définies, des fautes d'orthographe et des appels de fonction incorrects. Je l'ai trouvé de peu d'utilité, car le compilateur d'octets détecte de nos jours la plupart (sinon la totalité) de ces erreurs. Il est également extrêmement lent car il analyse également toutes les bibliothèques dépendantes et, pire encore, s'étouffe régulièrement avec les macros. Par exemple, appliquer elint sur du code qui fait un usage intensif de pcase
délivre énormément de faux positifs.
- flycheck-package fournit de jolies astuces au-delà du compilateur d'octets et de checkdoc. Les responsables de MELPA l'utilisent pour vérifier les packages soumis pour autant que je sache, et je l'utilise moi-même dans mes packages pour me protéger contre les défauts de formatage dans les en-têtes de packages.
À part cela, cependant, il n'y a rien sur la table à peluches pour Emacs Lisp. En particulier, nous manquons bourres que les prises pour le code unidiomatic, une mauvaise utilisation de l' API, les choses manquantes, etc. Par exemple, il n'y a rien qui vous indique que vous devez remplacer les références à ~/.emacs.d
votre code Elisp avec user-emacs-directory
ou mieux encore locate-user-emacs-file
, ou met en garde contre defcustom
s avec manquant :type
ou :group
, etc.