This is a (side?)effect of the changes from nvim v0.2.2 -> v0.3. Nvim did switch the default behaviour for text that is piped into it via stdin. Before it was used as commands (unless
- was given as an argument), now it is used as text in the initial buffer (even without the
Your file argument should be there just as the next buffer in the internal argument list of neovim. Try
:ls inside neovim.
You can verify that this behaviour is new with neovim v0.3 when you download the appimage for v0.2.2 and try the same with that.
EDIT: I confirmed that for version 0.3.1 it works as expected, you get file in the first buffer. You can download v0.3.1 from the release page. (thanks @jamessan for mentioning)