Re: Review of Keybindings [Re: Dia's user interface]
From: Adrien Beau <adrienbeau yahoo com>
To: dia-list gnome org
Subject: Re: Review of Keybindings [Re: Dia's user interface]
Date: Mon, 22 Apr 2002 12:24:28 -0700
On Monday 22 April 2002 12:01, Alan Horkan wrote:
>
> Taking a similar function as an example
> Ctrl++ and Ctrl+- are used for Zoom In/Out
> but some cleverer programs realise that + is in fact Shift =
> and allow both = and + (some programs allow only = which i
> find annoying)
>
> Or maybe i am imagining it and there are no programs that
> clever and they all use either = or + but not both.
Well, there are two mechanisms at work, and I'll take an
example on Vim. Plus you'll have a good sample of French
keyboard madness.
Vim supports tags, which means, once you've generated a
proper tag file with the ctags program, you can go over
most of the words in a source file, and type Ctrl+] to
jump to other places where the word is present. This is
immensely useful when you are exploring the source of a
complex program, because it allows you to quickly jump
from function call to function definition, and in a way,
"unwind" the code.
So, it's Ctrl+], a seemingly cool combination on a US
keyboard. Now, let's go on a French keyboard on Linux.
Doh! Now, you need to type
Ctrl + AltGr + )°]
AltGr is the right Alt key. As you can see it has a
different meaning on French keyboards, and on others
too. AltGr acts as a shift key, it allows to select the
third symbol printed on certain keys. Such as the ] on
the )°] key.
Now, what if we keep our French keyboard and go under
Windows. The Ctrl+] combination becomes...
Ctrl + $£¤
Surprising, no? What happens is that the $£¤ is located
at the same place as the ]} key on US keyboards, and it
uses the same keycode.
As a conclusion, I suspect a number of your cleverer
programs not to be so clever after all, in that their
assumptions are probably only valid for US keyboards
(the =+ key happens to be at the same place on French
keyboards, and probably lots others, so it quite works
well).
The right solution of course would be to have an API
which would allow you to express something like "tell
me if the key containing this symbol has been pressed".
> But let me think about this a bit more
> the functions are:
>
> Send to the very Back
> Send to the very Front
> but also
> Send Backwards
> Send Forwards
>
> would using the keys [] and {} clash with anything? (i see
> Tom also suggests this, should be okay on all the various
> Qwerty US/UK keyboards dont know about French AZERTY
> keyboards or anything else unfortunately).
Well, this would become
Ctrl + AltGr + (5[
Ctrl + AltGr + )°]
Ctrl + AltGr + '4{
Ctrl + AltGr + =+}
on French keyboards. Don't tell me the design of the keybord
is stupid, since I completely agree. It was likely designed
by text redactors for text redactors, and programmers have had
no say in that.
As for your four operations, what about
Ctrl+S, B (send to very back)
Ctrl+S, F (send to very front)
Ctrl+S, D (send down)
Ctrl+S, U (send up)
I don't like "send" very much.
--
adrienbeau@yahoo.com - Free account at http://mail.yahoo.com