latest version of vi messes up bash for me

Stephen Biggs yyyyy50@hotpop.com
Tue Jun 10 00:57:00 GMT 2003


After some very lucid and comprehensive help from Jon LaBadie, I have 
found that my stty settings are, indeed, messed up after returning from 
VI.

Here is the output of 'stty -a' from a bash prompt just invoked:
speed 38400 baud; rows 50; columns 80; line = 0;
intr = ^C; quit = ^\; erase = ^H; kill = ^U; eof = ^D; eol = <undef>;
eol2 = <undef>; start = ^Q; stop = ^S; susp = ^Z; rprnt = ^R; werase = 
^W;
lnext = ^V; flush = ^O; min = 1; time = 0;
parenb -parodd cs8 -hupcl -cstopb cread -clocal -crtscts
-ignbrk brkint -ignpar -parmrk -inpck -istrip -inlcr -igncr icrnl ixon  -
ixoff
-iuclc -ixany -imaxbel
opost -olcuc -ocrnl onlcr -onocr -onlret -ofill -ofdel nl0 cr0 tab0 bs0 
vt0 ff0
isig icanon iexten echo -echoe -echok -echonl -noflsh -tostop -echoctl -
echoke

stty -g gives:
502:9:bf:107:0:f:0:0:4:8:3:15:16:1:1c:12:11:13:1a:1a:0:17

... 

whereas from a messed up prompt after coming back from VI:
stty -a:
speed 38400 baud; rows 50; columns 80; line = 0;= ^C; quit = ^\; erase = 
^H; kill = ^U; eof = ^D; eol = <undef>;
eol2 = <undef>; start = ^Q; stop = ^S; susp = ^Z; rprnt = ^R; werase = 
^W;
lnext = ^V; flush = ^O; min = 1; time = 0;
-parenb -parodd cs8 -hupcl -cstopb cread -clocal -crtscts
-ignbrk -brkint -ignpar -parmrk -inpck -istrip -inlcr -igncr -icrnl -ixon
-ixoff -iuclc -ixany -imaxbel
opost -olcuc -ocrnl onlcr -onocr -onlret -ofill -ofdel nl0 cr0 tab0 bs0 
vt0 ff0
isig -icanon -iexten -echo -echoe -echok -echonl -noflsh -tostop -echoctl
-echoke

What I can see is that icanon and echo are now turned off, explaining the 
blindness.

Running stty -g gives me a user id of '0' (that is what I assume the 
first number is in the output) instead of the user id that I have in my 
passwd file.

Trying to run 'stty sane' gives back:
stty: standard input: unable to perform all requested operations
... which is the same response I get when I try to spit back an argument 
list given from stty -g on an OK terminal.

I would supply the output from cygcheck -v -s -r but it hangs on ID.  
Running 'id' from the bash prompt works, either messed up or not.

Maybe it is relevant to say that I am invoking cygwin by the shortcut of:
C:\WINDOWS\COMMAND.COM /E:4096 /c C:\cygwin\bin\login steve
with the /etc/passwd file entries:
user::400:401:user:/home/user:/bin/bash
steve::502:100:steve:/home/steve:/bin/bash
sshd::545:545:sshd::/bin/false

and /etc/group:
all::544:
users::100:
user::401:

... instead of the normal batch file since this is the only way I could 
think of to log myself on as another user into Cygwin on Windows 98.

Perhaps this is what is messing me up, but can anybody tell me a better 
way to 
do it?  I need the user steve so I can use ssh to a different machine.  
Again, 
this all worked before I updated my VI package.

What is going on??  Bummer.


--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Problem reports:       http://cygwin.com/problems.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/



More information about the Cygwin mailing list