This is the mail archive of the cygwin mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: un-indenting doesn't work with vim


> It is only in Unix that often the backspace key does not perform the function > of moving backward a space and deleting the previously character. I have
> never, I repeat never had backspace not do a back space except under
> Unix - have you?

I've had such issues on many systems. VMS.  MVS.  NOS and NOS/VE.  Not
to mention several BBSes...

You're forgetting that UNIX predates PC's.  When not in a GUI, or when
focus is in a terminal window, pressing the backspace key doesn't
"perform" any "function" except to transmit a character to the input
stream, just as if you were using a serial terminal.

ASCII control characters were developed for printing teletypes, on
which ASCII BS (chr(8)) would back the carriage up a character
position (without deleting anything) while ASCII DEL (chr(127) a.k.a.
RUBOUT) would delete (white out or X out) the character under the
cursor without moving the carriage.

Just as with CR/LF, CRT terminal behavior didn't match either of the
definitions exactly, and different terminal manufacturers chose
different ways of indicating to the host system that the terminal user
had pressed the "undo that last keystroke" key.  Most sent either BS
or DEL, but some sent multibyte sequences ("escape sequences", even if
they didn't involve the ASCII ESC code) or other values (the Commodore
PET character set used CTRL-T for this; the Atari used a high-bit
value [155, IIRC]).

So UNIX software grew up in an environment of variable terminals.  It
is designed to be flexible about such things for that reason, and
doesn't assume (the way other PC software does) that you're on the
console of a PC with a local keyboard.  Which means it is entirely
possible to set things up so that it doesn't work as you expect.
This is not UNIX's fault.

The default configuration on Cygwin works as expected; you seem to
have blindly imported a configuration file from some other UNIX
environment, and poof, things broke.  That's the price of using stuff
without understanding it.

--
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/


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]