Vim es uno de los editores de texto basados en terminales más populares durante décadas.
Pero no importa cuánto tiempo haya estado usando Vim, siempre hay más consejos y trucos que no conocía.
Este se trata de configurar el ancho de sangría en Vim a 2 espacios o 4 espacios. Esto es particularmente útil si eres un programador, especialmente uno de Python.
En su archivo vimrc (ubicado en ~/.vimrc), agregue la siguiente línea para usar automáticamente 2 espacios en lugar de la pestaña en Vim.
set autoindent expandtab tabstop=2 shiftwidth=2
No te preocupes. Lo revisaré en detalle.
Establecer sangría automática
Imagina que estás escribiendo una línea de código y la siguiente línea de código necesita ser sangrada, presionas el botón Enter para ir a la línea siguiente pero la sangría no se aplica automáticamente.
Esto puede ser muy molesto. Para sangrar líneas automáticamente, agregue la siguiente línea a su ‘vimrc’.
set autoindent
Una vez que haya guardado esto en su ‘vimrc’, habilitará la sangría automática en su sesión de vim sin importar el lenguaje de programación o secuencias de comandos que utilice.
Usa espacios para sangrar
Si desea usar espacios para sangrar su código, agregue las siguientes líneas a su archivo ‘.vimrc’.
set expandtab
set tabstop=<NUM OF SPACES>
set shiftwidth=<NUM OF SPACES>
- La primera línea permite
expandtab
opción en Vim. Esta opción asegura que se utilicen espacios para sangrar las líneas, incluso cuando presiona la tecla ‘Tab’. - La segunda opción
tabstop
toma un valor numérico. Digamos que escribí set tabstop=2, esto insertará 2 espacios para una sangría de línea. - Finalmente, la tercera opción,
shiftwidth
administra la sangría cuando usa los operadores ‘>>’ o ‘<<' para agregar o quitar sangría a una línea/bloque de código ya existente.
Sugeriría usar 2 o 4 para tabstop
y shiftwidth
valores.
También te recomiendo que uses los mismos valores para tabstop
y shiftwidth
. El uso de valores diferentes puede estropear la sangría.
Así es como se ve el código sangrado en Vim:
?En casos excepcionales, si necesita usar el carácter de tabulación, presionar la tecla ‘Tab’ no funcionará con expandtab
activado. Para usar el carácter de tabulación, use la combinación de teclas ‘Ctrl + V’ y luego escriba el carácter de tabulación.
Viceversa: use tabulaciones para la sangría
Sirviendo a las personas que se encuentran a ambos lados de ‘tabulaciones frente a espacios’, ahora veamos cómo puede usar un carácter de tabulación para sangrar en lugar de espacios.
Agregue las siguientes líneas a su ‘vimrc’:
set noexpandtab
set tabstop=4
set shiftwidth=4
La única diferencia en estas 3 líneas para que su vimrc use tabulaciones en lugar de espacios es el uso de noexpandtab
en vez de expandtab
. los noexpandtab
La opción evita la conversión de tabulaciones a espacios.
Conclusión
Todo lo anterior funciona para archivos nuevos. Para convertir tabulaciones en espacios en el archivo actualmente abierto en Vim, ingrese al modo Normal presionando la tecla Esc. Ahora usa el retab
Comando presionando el carácter ‘:’ (dos puntos) y Vim convertirá las pestañas existentes en espacios.
Dejando a un lado la guerra de las pestañas contra los espacios, este tutorial tiene como objetivo ayudarlo a configurar la sangría según sus preferencias.
Si está interesado en aprender más que solo los conceptos básicos de Vim, use este programa de Jovica Ilic.