Я пытаюсь определить команду, которая может принять диапазон и передать его функции. Это то, что я думал, что должен:
function! PrintGivenRange() range
echo "firstline ".a:firstline." lastline ".a:lastline
" Do some more things
endfunction
command! -range PassRange call PrintGivenRange()
Однако это не работает, кажется, что он проходит только первую строку.
например.
:1,5PassRange "outputs firstline 1 lastline 1
:1,5call PrintGivenRange() "outputs firstline 1 lastline 5
" if you select lines in visual mode, same thing for both
Я уже читал :help command-range
, но до сих пор не смог понять это. Должен ли я передавать диапазон в префиксе на call
? Как это исправить?