[haiku-development] About native keymap switching solution. (Was: Looking for feedback on enhancements for dealing with Mac keyboards with Haiku)

  • From: Siarzhuk Zharski <zharik@xxxxxx>
  • To: haiku-development@xxxxxxxxxxxxx
  • Date: Mon, 07 Nov 2011 23:47:55 +0100

Hallo John,

Am 13.10.2011 19:32, schrieb John Scipione:
On Thu, Oct 13, 2011 at 6:11 AM, Siarzhuk Zharski <zharik@xxxxxx <mailto:zharik@xxxxxx>> wrote:

    As far as I remember, the Keymap Preflet sooner or later will be
    scheduled for a big refactoring - we need a native keymaps
    switching solution instead of ancient KeymapSwitcher optional
    package. So, probably, the motivation do not apply patches is just
    low significance of this work?


In all seriousness I'd like to hear more about this native keymaps switching solution.

Unfortunately there are nothing to say, besides the fact that we still have no stock possibility to switch keymaps on the fly. But there are some words about "non-native" one.

It may be strange to hear for lating-languages speaker but the first question in the cyrillic world about Haiku is "Hey, dude, how can I switch keymaps here?" At the moment we have to use the ancient utility from the BeOS ages. Its name is KeymapSwitcher, it was written more than 12 years ago and has long, troublesome existence and croocked way of life. It's design is rather eccentrical - the input filter watches for key events and send corresponding switch messages to the replicant in Deskbar that overwrites the ~/config/settings/Key_map file and forces input_server to reload current keymap. Because of such "unoptimal" design it has no chance ever to settle in the Haiku tree.

Another problem this package tries to solve is shortcuts mapping. Haiku has inherited from BeOS the character-based shortcuts and user have to press different keys combinations on different keymaps for the same shortcut. Many people found this annoying - because this breaks the whole idea of shortcuts as "muscle memory using". And needless to say that cyrillic keymaps have no latin characters at all so russian guys are not just annoyed but in the great fury. To calm them, KeymapSwitcher select one of configured keymaps as "base" one and use it to substitute shortcut characters on the fly in the input filter so they looking like from latin-based keymap.

I hope you like the story. :-)

---
Kind Regards,
  S.Zharski

Other related posts: