[CentOS] Feed a list of filenames to vim

Tue May 17 16:32:51 UTC 2011
Devin Reade <gdr at gno.org>

--On Tuesday, May 17, 2011 07:19:45 PM +0300 Jussi Hirvi
<listmember at greenspot.fi> wrote:

> [root at lasso2 tempdir]# cat list | xargs vim
> 3 files to edit
> Vim: Warning: Input is not from a terminal
> Ok, so far, so good. And after this, the file a opens, as expected. 
> However, the contents show as all uppercase. And everything I write is 
> uppercase too. I can move to the next file (:n) even though the command 
> shows as uppercase (:N). I cannot quit vim, however. When I do ":q", I 
> get blank screen, and I have to close the terminal window.

I don't *know* the answer, but my suspicion is that this is related
to very old compatibility code in the bowels of vim or its dependent
libraries (including other things in the call stack including getty),
having to do with terminals that are not capable of handling
lower case letters.

A piece of history:  Years back, there were upper-case-only terminals.
Later there was mixed case, but enough of the upper-case-only ones that
UNIX needed to allow for it.  For example, at the login prompt if you
put your login ID as all upper case the terminal will default to all
upper case (and do some case conversion of your password as well, iirc).

My suspicion is that since vim is detecting that its input is not a 
tty, something in it or its libraries is reverting back to this old
behavior.  However it's been so long since there was a signficant
(or any?) user base that used this feature, vim's capabilities in
this respect have suffered from bit rot due to lack of testing this