Subject: Re: bug#9751: 23.3; Alternative Keyboard Feature/Bug

From: Juri Linkov <[email-masked]>
Date: Tue, 25 Oct 2011 07:33:46 +0300

>> (define-key function-key-map [?*] [?b])
>> and typing `*' is expected to run `beginning-of-buffer' in Info.
>
> Oh, right because * is not bound to `undefined', instead it's bound to
> self-insert-command which is remapped to `undefined'.  Damn!
> The patch below at least works for this test case,

Thanks, now it works!  I tested it with single keys in Dired and Info
and it translates all single keys and runs commands bound to them.

The only case where it still doesn't work is `view-mode'.

For example, on Greek keyboards `;' corresponds to `q',
so it's easier to test with:

  (define-key function-key-map [?;] [?q])

Now typing `;' in Info quits it by running `Info-exit',
typing `;' in Dired quits it by running `quit-window'.

But typing `;' in View mode does nothing, it doesn't run `View-quit'.

`C-h k ;' in View mode says:

  ; runs the command self-insert-command

whereas in other modes (e.g. Dired and Help mode) it says:

  q (translated from ;) runs the command quit-window

as expected.