Ricardo Wurmus (2017-01-07 08:25 +0100) wrote: > Alex Kost wrote: > >> All that stuff can work without 'emacs-guix' (if the line with >> 'guix-devel-mode' scheme hook will be removed), but in this case the >> package may not be indented properly. > > Guix still comes with a “.dir-locals.el” that specifies the indentation > rules, doesn’t it? Can we use that?
Oof, it took me some time to figure it out :-) So here is the version that requires only emacs and ".dir-locals.el" file from the git repo:
indent-package-expr.el
Description: application/emacs-lisp
Emacs can be run like this: emacs -Q --batch -l indent-package-expr.el package-file.scm package-name The only downside of ".dir-locals.el", is that it doesn't contain indentation rules for 'modify-phases' keywords (replace, add-after, add-before). Maybe they should be added there, but OTOH "replace" looks like a too general name, so if a user has some code with "replace" procedure, (s)he wouldn't be pleased when it will be indented strangely. That's why "guix-devel.el" has a code that indents these keywords only when they are inside 'modify-phases'. -- Alex