Вышеуказанные решения небезопасны, если слово под курсором содержит специальные символы. Вы должны использовать
nnoremap <F2> :execute "!/path/to/script.pl ".shellescape(expand("<cword>"), 1)<CR>
вместо.
Для всей строки заменить expand("<cword>")
на getline('.')
. Для имени файла под курсором используйте expand("<cfile>")
.