Welcome to Software Development on Codidact!
Will you help us build our independent community of developers helping developers? We're small and trying to grow. We welcome questions about all aspects of software development, from design to code to QA and more. Got questions? Got answers? Got code you'd like someone to review? Please join us.
Post History
Unfortunately I think the simple answer is that you cannot do what you want with standard Vim (or NeoVim, which I also tested — although NeoVim is slightly more convenient in that you don't need to...
Answer
#1: Initial revision
Unfortunately I think the simple answer is that you cannot do what you want with standard Vim (or NeoVim, which I also tested — although NeoVim is slightly more convenient in that you don't need to give the `-` argument to read from stdin). Vim, like most text editors, is designed with the fundamental assumption that it is operating on a buffer of known size, rather than a stream of data which could be infinite in length. Once the input data is read, it is not read again unless you explicitly request another read operation with `:e` or similar. Although you can make Vim behave a bit like a pager using the `-` option, it is not really intended to be a replacement for `less` — it's more like a shortcut for `process > /tmp/somefile.txt; vim /tmp/somefile.txt` Presumably in theory there's nothing to stop somebody from producing a modified version of Vim which has more pager-like features, although they'd need to consider how operations like "Go to the 50% position" would work in a potentially-infinite data stream (would this need to read the whole stream in order to find the true 50% mark, or just jump to 50% of the currently known data?)