Il y a des moments où je modifie des fichiers (manifestes de marionnettes, par exemple) où je veux aligner le contenu du tampon à la volée. Par exemple, je sais que je peux utiliser align-regexp
ou align
pour aligner un code comme celui-ci, tant que je l'ai sélectionné:
# M-x align-regexp "=>" will line everything up nicely
file { "/etc/foo":
ensure => present,
mode => "0666",
source => "puppet:///modules/example/foo",
}
Mais ce que je veux vraiment, c'est que cela se produise à la volée - sans avoir à sélectionner une région ou la totalité du tampon. Existe-t-il un package ou un mode qui fera cela, ou est-ce quelque chose qui devrait être intégré au mode qui m'intéresse?
Edit: J'ai posé des questions sur Puppet et CFEngine, car c'est ce que je code la plupart du temps et j'ai une forte préférence pour le texte aligné. Cependant, j'étais également curieux (et je ne l'ai pas bien exprimé) de savoir si l'alignement à la volée est une fonctionnalité courante dans les modes Emacs (principalement dans les modes pour les langages de programmation), ou si la plupart des gens s'alignent lors de l'enregistrement ou à certains moments. autre point.
indent-region
par align-to-equals
et définissez cette fonction comme (defun align-to-equals (begin end) (interactive "r") (align-regexp begin end "\\(\\s-*\\)=" 1 1 nil))
; et emacs-lisp-mode-hook
avec puppet-mode-hook
.