Ich suche nach einer Möglichkeit, Code innerhalb einer Funktion abhängig vom Vorhandensein von Text in der bearbeiteten Datei unter bestimmten Bedingungen auszuführen. Ich habe einen Weg gefunden, der funktioniert, sich aber nicht sehr "sauber" anfühlt.
Folgendes habe ich:
function! foo()
(...)
let v:errmsg = 'ok'
execute "silent! normal! :/" . l:pattern . "\r"
if v:errmsg == 'ok'
(... do stuff ...)
else
(... do other stuff ...)
endif
endfunction
Die Frage ist: Kann das gleiche Ergebnis irgendwie ohne die umständliche Verwendung von v: errmsg erzielt werden ?
Was ich vorhabe, ist etwas von der Form
function! foo()
(...)
if GrepInCurrentBuffer(l:pattern)
(... do stuff ...)
(...etc...)
:h function-list
search()
- siehe:h search()