Además de la respuesta de rangerchris, puede considerar el uso de modelos. Modelines dicen el editor de cómo configurar sí:
#!/usr/bin/perl
# vi: ts=4 sw=4 ht=4 et textwidth=76 :
use strict;
use warnings;
print "hello world\n";
Eso modeline dice vi a utilizar 4 fichas de personajes y autoindentación, utilizar espacios en lugar de tabuladores, y que debe insertar un salto de línea cuando el cursor llega a 76 caracteres.
Puede controlar cómo Vim lee modelines con dos variables (más probable establecidos en su .vimrc):
set modeline
set modelines=5
La variable modeline
le dice a Vim que buscar modelines si está establecido. La variable modelines
le dice a Vim cuántas líneas desde la parte superior e inferior buscar buscando la línea de modo (en este caso, encontrará la línea de modo si está en la primera o las últimas cinco líneas del archivo).
Como cualquier sistema que toma instrucciones de fuentes que no son de confianza, las modelos pueden ser security threat, por lo que el usuario root
nunca debe usar modelos y debe mantener su copia de Vim actualizada.
El beneficio real para las modelos es que son por archivo. La mayoría de las personas de Perl son cuatro espacios como personas sangrantes, pero soy una persona de ocho caracteres. Cuando trabajo con el código de otras personas, utilizo una línea de modo que refleja su uso. El resto del tiempo uso el mío.
No anule la configuración predeterminada. Use 'setlocal' (o 'setl') en lugar de 'set'. No desea que la configuración del último salto de autocmd entre en otros almacenamientos intermedios. –
@Maxim - Buena captura ... :-) –
El comando 'set' acepta múltiples opciones. Entonces, es más fácil escribir: 'set tabstop = 4 shiftwidth = 4 expandtab' –