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

From: Juri Linkov <[email-masked]>
Date: Mon, 24 Oct 2011 08:17:31 +0300

>>> But
>>> (define-key function-key-map [β] [?b])
>>> does that already.
>> function-key-map applies only to (suffixes of) unbound key sequences.
>
> Right, which is exactly what he was asking for, AFAIK.
> I'm obviously missing something, but I still haven't seen a concrete
> example where the function-key-map binding doesn't do what we want (or
> maybe I've seen it, but I didn't understand it, if so please spell it
> out for me).

Let's consider `Info-mode' instead of `dired-mode' for testing purposes
because `b' is unbound in Dired, but in Info it's bound to
`beginning-of-buffer'.

After evaluating

  (define-key function-key-map [?β] [?b])

typing `β' in Info has no effect, it doesn't call `beginning-of-buffer'.

When typing in Info `C-h k β', it says:

  β is undefined

What is expected for `C-h k β' to say is that `b' is translated from `β'.

OTOH, after evaluating

  (define-key function-key-map [?\C-χ] [?\C-x])
  (define-key function-key-map [?β] [?b])

`C-χ β' runs `switch-to-buffer' correctly,
and `C-h k C-χ β' says:

  C-x b (translated from C-χ β) runs the command switch-to-buffer