Edit2: http://unixhelp.ed.ac.uk/CGI/man-cgi?stty can help with regard to the stty output.
I'd particularly look at your "min = 1" and the different echo* settings
You may wish to try some invocatoin of stty (your example looks a bit like a "stty cbreak" or "raw" mode). Try entering : stty sane
once fixed (if it works) you'll have an easier time to investigate
Edit1: After you added your stty -a
settings, I'll show you what differs between yours and mine.
(note that I do mine on an old AIX xterm, so of course there are many differences! But it could point out the relevant one... I let you do the work to see which could be the culpript, as I don't have time right now, sorry!)
To do that, I listed all the keywords stty shows us in "WELIST", and then added a " " in front of every lines of each stty, and displayed them with :
for i in $( cat WELIST) ; do
I_Have=$(grep "[ -]$i " IHAVE)
You_Have=$(grep "[ -]$i " YOUHAVE)
if [ "$I_Have" = "$You_Have" ]
then
printf "%-20s : %s\n" "$I_Have" "BOTH"
else
if [ -z "$I_Have" ]
then
printf "%-20s : %s\n" "$You_Have" "ONLY you"
continue
fi
if [ -z "$You_Have" ]
then
printf "%-20s : %s\n" "$I_Have" "ONLY me"
continue
fi
printf "%-20s : %s\n" "$I_Have" "me"
printf "%-20s : %s\n" "$You_Have" "you"
fi
done
and it gives:
brkint : me
-brkint : you
bs0 : ONLY you
cdtrdsr : ONLY you
-clocal : BOTH
179 columns : me
columns 160 : you
cr0 : ONLY you
cread : BOTH
-crtscts : ONLY you
cs8 : BOTH
-cstopb : BOTH
discard = ^O : ONLY me
dsusp = ^Y : ONLY me
echo : BOTH
-echoctl : me
echoctl : you
-echoe : me
echoe : you
-echok : me
echok : you
-echoke : me
echoke : you
-echonl : BOTH
-echoprt : BOTH
eof = ^D : BOTH
eol = <undef> : BOTH
eol2 = <undef> : BOTH
erase = ^? : BOTH
eucw 1:1:0:0 : ONLY me
ff0 : ONLY you
flush = ^O : ONLY you
-flusho : ONLY me
-hupcl : me
hupcl : you
icanon : BOTH
icrnl : BOTH
-iexten : me
iexten : you
-ignbrk : BOTH
-igncr : BOTH
-ignpar : BOTH
-imaxbel : BOTH
-inlcr : BOTH
-inpck : BOTH
intr = ^C : BOTH
isig : BOTH
-istrip : BOTH
-iuclc : BOTH
iutf8 : ONLY you
-ixany : BOTH
-ixoff : BOTH
ixon : BOTH
kill = ^U : BOTH
line = 0 : ONLY you
lnext = ^V : BOTH
min = 1 : ONLY you
nl0 : ONLY you
-noflsh : BOTH
-ocrnl : BOTH
-ofdel : BOTH
-ofill : BOTH
-olcuc : BOTH
onlcr : BOTH
-onlret : BOTH
-onocr : BOTH
opost : BOTH
-parenb : BOTH
-parext : ONLY me
-parmrk : BOTH
-parodd : BOTH
-pending : ONLY me
quit = ^\ : BOTH
reprint = ^R : ONLY me
60 rows : me
rows 64 : you
rprnt = ^R : ONLY you
scrw 1:1:0:0: : ONLY me
speed 38400 baud : BOTH
start = ^Q : BOTH
stop = ^S : BOTH
susp = ^Z : BOTH
swtch = <undef> : ONLY you
tab0 : ONLY you
tab3 : ONLY me
time = 0 : ONLY you
-tostop : BOTH
vt0 : ONLY you
werase = ^W : BOTH
-xcase : BOTH
ps
on the console, or log in remotely and runps -t tty1
.