Quiero contar líneas en un rango, no importa qué rango, pero que sea, digamos, un bloque visual. Cuál es la forma más corta de hacerlo. Todo lo que me viene a la mente es algo como: '<,'>s/.//n
pero no creo que sea el camino más corto.
Entonces, ¿alguien puede darme una pista? Gracias por adelantado.
:call
? Tu pregunta no mencionó eso.:h functions
;)getpos()
(que puede aceptar una marca como entrada y devuelve la posición, incluido el número de línea) y un poco de resta.:perl $curbuf->Count
(devuelve el número de líneas)Establezca la opción
showcmd
(:h 'sc'
), y nunca necesitará escribir nada para saber cuántas líneas están seleccionadas; al principio, como olvidé que configuré esta opción, no entendí el punto de su pregunta. ^^ 'De lo contrario, si desea obtener ese número mediante programación, es simplemente:
Desde dentro de una función de rango, también se puede obtener mediante
a:lastline-a:firstline+1
. (:h function-range-example
)fuente
'<,'>s///n
es un carácter más corto. :-)Si solo quiero saber el número de líneas en una selección visual, por lo general, simplemente lo tiro (golpeo
y
). Dirá "5 líneas arrancadas" o "bloque de 5 líneas arrancadas" según el tipo de selección.fuente