Hay momentos en que estoy editando archivos (manifiestos de Puppet, por ejemplo) donde quiero alinear los contenidos del búfer sobre la marcha. Por ejemplo, sé que puedo usar align-regexp
o align
alinear código como este, siempre que lo tenga seleccionado:
# M-x align-regexp "=>" will line everything up nicely
file { "/etc/foo":
ensure => present,
mode => "0666",
source => "puppet:///modules/example/foo",
}
Pero lo que realmente quiero es que esto suceda sobre la marcha , sin tener que seleccionar una región o todo el búfer. ¿Hay un paquete o modo que haga esto, o es algo que debería integrarse en el modo que me interesa?
Editar: pregunté sobre Puppet y CFEngine, ya que eso es lo que codifico en la mayoría de estos días y tengo una gran preferencia por el texto alineado. Sin embargo, también tenía curiosidad (y no expresé esto bien) de saber si la alineación sobre la marcha es una característica común en los modos Emacs (principalmente en los modos para lenguajes de programación), o si la mayoría de las personas se alinean al guardar o en algún momento otro punto
indent-region
con align-to-equals
y defina esta función como (defun align-to-equals (begin end) (interactive "r") (align-regexp begin end "\\(\\s-*\\)=" 1 1 nil))
; y emacs-lisp-mode-hook
con puppet-mode-hook
.