2010-09-16 12 views
10

¿Está listo el código/paquete de Emacs para establecer automáticamente el modo indent-tabs según el archivo que se está visitando? Es decir, si el archivo actualmente visitado usa pestañas para la sangría, indent-tabs-mode debe establecerse buffer-local en verdadero. En consecuencia, si se utilizan espacios, el modo sangría-pestañas debe establecerse en falso. El objetivo de esto es detectar automáticamente y usar el modo de pestaña de un proyecto existente (sin necesidad de anotaciones de variables de archivo específicas de Emacs), para mantener la coherencia con el estilo de tabulación del código existente.Código de Emacs para establecer automáticamente el modo indent-tabs según el código existente

Una versión aún más avanzada de esta detección podría acomodarse por el hecho de que un solo archivo podría tener pestañas y espacios mixtos. En este caso, una heurística razonable podría ser utilizar el modo de tabulación en la línea anterior al sangrar, en lugar de decidir sobre un modo de tabulación global para todo el archivo.

+0

http://www.emacswiki.org/emacs/FuzzyFormat –

Respuesta

7

También podría estar interesado en dtrt-indent, que detecta el desplazamiento cuando se utilizan espacios para la sangría, además de determinar si se utilizan pestañas.

http://savannah.nongnu.org/projects/dtrt-indent/

+1

Emacs24 ahora viene con M-x C-guess incluido. Lo cual parece adivinar la sangría correctamente, pero no habilitó las pestañas frente a los espacios. – maxy

Cuestiones relacionadas