I'd like echo line from a hidden buffer without moving my cursor. Something like this:

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

(I want to inspect hidden buffers without changing the window layout or the cursor position.)

The above works great for the current buffer, but :print doesn't take a buffer as an argument.

Is there some vim command that prints the lines in a buffer?

(And FWIW, I can't use :w because that also changes the names and numbers of the open buffers.)

  • No. Buffer numbers never change. Why don't you simply :b to that hidden buffer?
    – romainl
    Feb 6, 2013 at 19:34

1 Answer 1


You can access lines from any buffer via the getbufline() function. Example:

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

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.