Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 14 May 2000 11:03:02 +0930
From:      Greg Lehey <grog@lemis.com>
To:        gh <grasshacker@linkfast.net>
Cc:        FreeBSD Questions <questions@FreeBSD.org>
Subject:   Re: DEL key acts like BackSpace
Message-ID:  <20000514110301.H847@freebie.lemis.com>
In-Reply-To: <035c01bfbc9f$582bca30$b864aad0@kickme>
References:  <20000512233212.A443@casimirhost.kasby> <20000513114953.I31094@freebie.lemis.com> <035c01bfbc9f$582bca30$b864aad0@kickme>

next in thread | previous in thread | raw e-mail | index | archive | help
On Saturday, 13 May 2000 at  0:51:54 -0500, gh wrote:
>
>
>> On Friday, 12 May 2000 at 23:32:12 +0200, Francesco Casadei wrote:
>>> Why the DEL key deletes the character before the cursor (just like
>>> BackSpace) instead of deleting the character after the cursor?
>>
>> Because that's its purpose.
>>
>>> Only in Netscape Navigator's location bar DEL deletes the characters
>>> to the right of the cursor.
>>
>> I consider this incorrect.
>
> Would you mind pointing me toward some explanation of why that behavior is
> considered incorrect?
> To me, it seems logical.
>
> Backspace -> back...space.
> Delete -> why have another backspace?

Delete was there first, on the ASR33/35.  Backspace didn't make it
until the mid-70s.  And, indeed, we said "why have another
backspace?".

> Is there some historical explanation? Is it just a "geeky-hacker"
> thing?

Well, there are a few things:

1.  As mentioned, the original Teletypes used in just about all
    machines of the late 60s/early 70s had a DEL button but no
    BS/Backspace button.  All the software I know of used DEL to
    delete the previous character.  It had the additional advantage of
    being able to overwrite the character after it had been punched on
    tape: DEL is all bits set, and the paper tape reader just ignored
    this particular sequence.

    At this time, of course, there was no concept of a cursor or a
    following character, so we only needed one character.

2.  After video terminals arrived, nothing much changed.  Most editors
    and command line editing schemes were the same as before.
    Gradually, though, people started using ctrl-H as the erase
    character, because that's what ANSI decreed.  The result was what
    we have today: two characters for the same function.

3.  Independently, real full-screen text editors started to appear.
    vi decided that control characters were Evil, so it used normal
    characters.  Emacs decided that modes were Evil, so it used all
    control characters for some purpose.  It decided on ctrl-d for the
    delete forward key.  It also decided on DEL for the delete
    backward key and ctrl-h for the Help key, a problem that we still
    have today.

    Later, shells appeared with command line editing.  With the
    exception of csh's remarkably primitive editing, they all followed
    either vi or Emacs.

4.  Meanwhile, in Washington State, a company reinvented everything
    and used completely different characters from what other people
    were using.  That's their choice, of course, but it doesn't mean
    anybody else is going to follow them, especially when most of
    their choices appear to be suboptimal.

Greg
--
When replying to this message, please copy the original recipients.
For more information, see http://www.lemis.com/questions.html
Finger grog@lemis.com for PGP public key
See complete headers for address and phone numbers


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-questions" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20000514110301.H847>