On Fri, 01 Dec 2000, Lourens Veen <[EMAIL PROTECTED]> wrote:
> Olivier Lecarme wrote:
> [snip]
> > Although the PC keyboard is by far the dominant keyboard in the world,
> > it is a design mistake to have put a large Backspace key in place of the
> > Delete key of all the preceding keyboards (note that computers and
> > keyboards existed before the advent of the PC).
> Okay, now if I understand all this correctly, keyboards (and computers)
> did not have a delete-to-the-right key or keycode. Indeed,
> www.asciitable.com shows ascii 8 as Backspace and ascii 127 as DEL. If
> DEL is interpreted as delete-to-the-left, then we have two codes that
> mean the same, and no code for delete-to-the-right, correct?

OK, I'll bite...  (you may want to delete this message right now...)

A bit of history from my (young) point of view: the first computer
keyboards that I used were DEC keyboards (for VT2x0 terminals and
DECStations) and Sun keyboards (the ones attached to sun3 and sun4
machines, not the newer ones).  They had the Delete key in the upper
right corner and it meant delete-backwards.  The only common
applications that supported delete-forward were Emacs and some
command-line shells, using Ctrl-D.  Then some PC keyboards appeared
(with Backspace in the top right corner, meaning delete-backwards
under DOS).  Later, the new type of Sun keyboards appeared, also with
the Backspace key in the right corner (above the Return key).

Working in heterogeneous environments was sometimes confusing because
the applications were associating different meanings to Delete and
Backspace, depending on who programmed them and how they were used
(some applications behaved differently if they were used in a telnet
session, under X or under SunView).  So I used a set of login scripts
that were calling stty and xmodmap to remap the keys in order to get a
consistent behaviour.  First I was enforcing the traditional
conventions (Delete means delete-backwards).  That was working fine
with Emacs and some other applications, but more and more graphical
applications started to rely on the PC style.  So after a couple of
years I modified my login scripts to remap the old keyboards to the
new meanings.  That led to some inconsistencies when Emacs was used in
windowed or non-windowed mode, but most of the other applications
worked better.

Today, all the old Sun and DEC machines that were still using the old
layout (maybe more correct, but not used by the rest of the world)
have been discarded.  I have even removed the keyboard detection code
and calls to stty and xmodmap from my login scripts.  I am typing this
message in Emacs on a Sun workstation that has the PC-style keyboard.
Emacs and my shell are the only applications that are still using the
Delete key as delete-backwards, and Ctrl-D for delete-forward.  All
other applications are using the PC style and use Ctrl-D for other
actions ("add bookmark", anyone?).

I think that the world has changed and it is better to use Delete as
delete-to-the-right, because this is what most keyboards are designed
for, and this is what most users are expecting.  Using the old
meaning, even if it is more "correct", will only confuse the users who
have never seen any other type of keyboard.

Now, for those who still have a keyboard that has the Delete key in
the top right corner of the keyboard, there are three solutions:
- use xmodmap so that the Delete key sends the Backspace code
  (but this may break some applications that rely on the old style)
- modify GTK+ (not the Gimp) so that the remapping will only be done
  for GTK+ applications (the legacy applications will still work).
- replace the old keyboard by a new keyboard that use the incorrect
  but de facto standard meaning for Backspace and Delete.

In any case, I do not think that the problem is specific to the Gimp.


Reply via email to