Yo uso una utilidad que escribí en C llamada autotab
. Analiza los primeros miles de líneas de un archivo que carga y determina los valores para los parámetros de Vim shiftwidth
, tabstop
y expandtab
.
Esto se compila utilizando, por ejemplo, gcc -O autotab.c -o autotab
. Las instrucciones para integrarse con Vim se encuentran en el encabezado del comentario en la parte superior.
Autotab es bastante inteligente, pero puede confundirse de vez en cuando, en particular porque se ha mantenido de manera inconsistente utilizando diferentes estilos de sangría.
Si un archivo evidentemente usa pestañas, o una combinación de pestañas y espacios, para la sangría, Autotab descubrirá qué tamaño de pestaña se está usando considerando factores como la alineación de elementos internos a través de líneas sucesivas, como comentarios.
Funciona para una variedad de lenguajes de programación, y es indulgente con los elementos "fuera de banda" que no obedecen a los incrementos de sangría, como las directivas de preprocesamiento C, las etiquetas de instrucción C, sin mencionar las obvias líneas en blanco.