Siguiente: Comandos para el movimiento
Subir: Indicación del ámbito en
Anterior: Seleccionar texto en Vim:
  Índice General
Indicación manual de rangos
En Vim un rango es una selección de líneas indicada manualmente. Algunos
comandos admiten este procedimiento para determinar su ámbito de actuación.
El formato para indicar un rango es sencillo: se indica el número de la
primera línea afectada y el número de la última línea, separando ambos
números por una coma (,); aunque también puede indicarse sólo una línea, si
no se quiere que el comando afecte a ninguna otra.
A las líneas podemos referirnos por su valor absoluto, empezando por ``1''
(primera línea del documento), pero también podemos referirnos a algunas
líneas concretas mediante ciertos símbolos que las representan.
Concretamente:
- --
- % (tanto por ciento) Representa todas las líneas del
documento.
- --
- $ (dólar) Representa la última línea del documento.
- --
- . (punto) Representa la línea en la que actualmente está el
cursor.
Aunque una de las características más poderosas de la indicación de rangos
es que en ellos podemos referirnos a las dos líneas delimitadoras mediante
los siguientes procedimientos:
- Una expresión regular. En realidad dos expresiones regulares: una
para la primera línea del rango y otra para la segunda.
- Marcas manuales, que se explican en la sección
, página
.
Las marcas se identifican por la letra que se les asoció en el momento de
su creación, precedida de un apóstrofe. Así, por ejemplo, la expresión
0 0«:'t,'b0 0» se refiere a un rango entre la línea donde se encuentra la
marca ``t'' y aquella en la que se encuentra la marca ``b''. Entre las
marcas utilizables están las predefinidas por Vim, incluidas las que
acabamos de ver que se insertan en el modo visual. Así por ejemplo
el rango 0 0«:'>,$0 0» se refiere a todas las líneas desde el fin de la
selección hasta el final del fichero.
- Un número concreto de líneas: La indicación de la línea final puede
hacerse mediante una operación aritmética simple. Por ejemplo una suma a
partir de la línea inicial. Eso no tiene mucho sentido si la línea inicial
es un número fijo, pero sí lo tiene si la línea inicial es un número
variable. Por ejemplo: si queremos hacer una operación en cuatro líneas a
partir de la línea 10 (es decir, hasta la línea 13), podríamos escribir
como rango 0 0«:10,10+30 0», pero eso es una tontería: es preferible escribir
0 0«:10,130 0». Ahora bien, si la línea inicial es la actual, sea cual sea,
escribir 0 0«.,.+30 0» tiene bastante más sentido. De hecho un argumento
numérico para el comando 0 0«:0 0» siempre se interpreta de esta manera y si,
por ejemplo, en el modo normal, tecleamos 0 0«4:0 0», el cursor se trasladará
a la línea final de la pantalla y se escribirá automáticamente el rango
0 0«.,.+30 0»2.10.
Al indicar rangos la primera línea del documento se numera como línea 1.
Por otra parte cuando el comando provoca que en nuestro buffer se inserte
texto, la línea indicada representa la línea bajo la cual se insertará el
texto. Por ello en estos comandos se admite como rango la línea 0, cuando
se quiere indicar que el texto debe insertarse exactamente al principio del
documento.
Siguiente: Comandos para el movimiento
Subir: Indicación del ámbito en
Anterior: Seleccionar texto en Vim:
  Índice General
Cancerbero
2005-02-12