next up previous contents
Siguiente: Métodos de sangrado Subir: Sangrado de líneas Anterior: Sangrado de líneas   Índice General

Comandos para controlar el sangrado

La indentación o sangrado de líneas es el espacio en blanco que se deja a la izquierda de una línea. Tiende a confundirse con el tabulador debido a que normalmente se inserta con esa tecla, pero su función es diferente, ya que el tabulador se limita a desplazar el cursor cierto espacio a la derecha, en cualquier lugar de la línea, y el sangrado se produce sólo en la parte izquierda de la línea y su función es destacar una línea o párrafo, o facilitar la apreciación visual de la estructura interna de un documento. Esto último ocurre sobre todo en la escritura de programas de ordenador, en donde el sangrado permite ver con claridad las relaciones entre los distintos bloques de código.

En materia de sangrado, por lo tanto, la idea de nivel es muy importante. El nivel representa la cantidad de veces que una línea ha sido sangrada.

En Vim el ancho del sangrado no depende del valor de ninguna de las opciones que controlan a los tabuladores, sino que depende de una opción específica que se denomina ``shiftwidth''. Cada vez que se aumenta el nivel de sangrado, se añaden tantos espacios en blanco como indique esta opción.

El comando 0 0«>0 0» aumenta el nivel de sangrado del ámbito al que se aplique. 0 0«»0 0» aumenta el nivel de sangrado de la línea actual, mientras que 0 0«<0 0» y 0 0««0 0» reducen el nivel de sangrado. Cada vez que se ejecutan estos comandos el nivel de sangrado aumenta o disminuye en un valor igual al fijado en la opción shiftwidth.

Por defecto cuando se ejecutan estos comandos Vim inserta tantos espacios en blanco como indique shiftwidht. No obstante, si se establece la opción ``shiftround'', entonces Vim tratará al sangrado de modo similar a las marcas del tabulador e insertará sólo los espacios necesarios para alcanzar la próxima marca de sangrado.

La diferencia se ve clara en el siguiente ejemplo. Imaginemos que estamos trabajando con un valor para shiftwidth igual a 4 y que en una línea vacía hemos introducido dos espacios en blanco. Si en ese momento ejecutamos el comando 0 0«»0 0» sin haber establecido ``shiftround'' se insertarán cuatro espacios adicionales, que sumados a los dos que había suman 6. Pero si se había establecido la opción ``shiftround'' sólo se insertarán los espacios necesarios para llegar a los cuatro requeridos por ``shiftwidth''.


next up previous contents
Siguiente: Métodos de sangrado Subir: Sangrado de líneas Anterior: Sangrado de líneas   Índice General
Cancerbero 2005-02-12