¿Cómo cambio el tamaño de la pestaña en Vim?

Resuelto wyc asked hace 14 años • 8 respuestas

Cada vez que agrego un selector en CSS y presiono Enterpara definir las propiedades termina así:

#selector {
        property: value;
}

(pestañas de 8 espacios)

¿Cómo puedo configurar Vim para que sea así?

#selector {
    property: value;
}

(pestañas de 4 espacios)

wyc avatar Jan 13 '10 12:01 wyc
Aceptado
:set tabstop=4
:set shiftwidth=4
:set expandtab

Esto insertará cuatro espacios en lugar de un carácter de tabulación. Los espacios son un poco más "estables", lo que significa que el texto sangrado con espacios se mostrará igual en el navegador y en cualquier otra aplicación.

zoul avatar Jan 13 '2010 05:01 zoul

Para realizar el cambio para una sesión, use este comando:

:set tabstop=4

Para que el cambio sea permanente, agréguelo a ~/.vimrco ~/.vim/vimrc:

set tabstop=4

Esto afectará a todos los archivos, no sólo a CSS. Para afectar solo a archivos css:

autocmd Filetype css setlocal tabstop=4

como se indica en la respuesta de Michał .

ki9 avatar Oct 12 '2016 20:10 ki9

Ampliando la respuesta de zoul:

Si desea configurar Vim para usar configuraciones específicas al editar un tipo de archivo en particular, querrá usar comandos automáticos:

autocmd Filetype css setlocal tabstop=4

Esto hará que las pestañas se muestren como 4 espacios. La configuración expandtabhará que Vim realmente inserte espacios (el número de ellos está controlado por tabstop) cuando presione el tabulador; es posible que desee utilizar softtabstoppara hacer que el retroceso funcione correctamente (es decir, reducir la sangría cuando eso es lo que sucedería si se usaran tabulaciones, en lugar de eliminar siempre un carácter a la vez).

Para tomar una decisión completamente informada sobre cómo configurar las cosas, deberá leer los documentos de Vim en tabstop, y . La parte más interesante se encuentra en ( ):shiftwidthsofttabstopexpandtabexpandtab:help 'expandtab

Hay cuatro formas principales de usar pestañas en Vim:

  1. Mantenga siempre 'tabstop' en 8, establezca 'softtabstop' y 'shiftwidth' en 4 (o 3 o lo que prefiera) y use 'noexpandtab'. Luego, Vim usará una combinación de tabulaciones y espacios, pero al escribir se comportará como si apareciera una tabulación cada 4 (o 3) caracteres.

  2. Establezca 'tabstop' y 'shiftwidth' en lo que prefiera y use 'expandtab'. De esta manera siempre insertarás espacios. El formato nunca se estropeará cuando se cambie la "tabulación".

  3. Establezca 'tabstop' y 'shiftwidth' en lo que prefiera y use un |modeline| para establecer estos valores al editar el archivo nuevamente. Solo funciona cuando se usa Vim para editar el archivo.

  4. Establezca siempre 'tabstop' y 'shiftwidth' en el mismo valor y 'noexpandtab'. Esto debería funcionar (solo para sangrías iniciales) para cualquier configuración de tabulación que use la gente. Sin embargo, podría ser bueno tener pestañas después de la primera que no esté en blanco insertadas como espacios si haces esto. De lo contrario, los comentarios alineados serán incorrectos cuando se cambie la "tabulación".

Michał Marczyk avatar Jan 13 '2010 06:01 Michał Marczyk

Como una sola línea en vim :

:set tabstop=4 shiftwidth=4

Para una configuración permanente , agregue estas líneas a ~/.vimrc :

set tabstop=4
set shiftwidth=4
set expandtab    <-- (optional) 4-spaces instead of Tab indentation
oz19 avatar Aug 29 '2019 10:08 oz19