En una función vimscript, necesito asignar una cadena coincidente a una variable l:matched
después de llamar search()
y me pregunto si hay una forma más corta de lo que estoy haciendo actualmente:
let l:pattern = '\v^Foo: \zs.*'
let l:line = search(l:pattern)
let l:line_text = getline(l:line)
let l:matched = matchstr(l:line, l:pattern)
Idealmente, me gustaría algo como
let l:matched = search_text(l:pattern)
sin recurrir a getline()
. ¿Existe tal función vim que parezco incapaz de encontrar?
l:
declaración del espacio de nombres.
:let @/="pattern" | norm! ygn
y tener el contenido en el registro 0 disponible.