Vim: печать строк из скрытых буферов

Vim: печать строк из скрытых буферов

Я хотел бы получить эхо-строку из скрытого буфера без перемещения курсора. Что-то вроде этого:

:redir! > /tmp/myfile
:1,$print 3
:redir end

(Я хочу проверить скрытые буферы, не меняя макет окна или положение курсора.)

Вышеприведенный пример отлично работает для текущего буфера, но :printне принимает буфер в качестве аргумента.

Есть ли команда vim, которая печатает строки в буфере?

(И кстати, я не могу его использовать, :wпотому что это также изменяет имена и номера открытых буферов.)

решение1

С помощью функции можно получить доступ к строкам из любого буфера getbufline(). Пример:

for line in getbufline(3, 1, '$')
    echo line
endfor

Связанный контент