Hi folks!
Now that I am working on the Keyboard Controller I am re-implementing all
aspects of the keyboard, but in the form of a controller. One of those aspects
is supporting multiple keyboard layouts for different languages and choosing
the right one depending on the current locale.
Currently we have 12 different files, one file per keyboard layout
(en_US.kbd.cfg, es_ES.kbd.cfg, etc), from which one is loaded in while booting
Mixxx (if custom mapping isn't found). But now, if the keyboard is a controller
and is listed under "preferences -> controllers", it is suddenly possible to
change keyboard mapping (KeyboardControllerPresets) at runtime by clicking on
the preset dropdown menu.
Now here is the thing. If we keep having one file per language, that means that
me, having a en_US keyboard layout, I will also get the russian keyboard layout
listed as an option. As a user I shouldn't be amused (no offense to the
Russians ^^, the same goes for other foreign layouts), especially considering
that I just wanted to go and choose the default mapping. But oh, wait.. there
are 12 default mapping presets?
I would say that if those 12 different presets, which actually represent the
same mapping, where just in one file: Default.kbd.xml, that would be a lot
clearer. I propose to make the new keyboard presets multi-language compatible
and ship just one file, containing default mappings for all languages. When the
user selects a preset and the XML is parsed, it would only load in the mapping
for the current local keyboard layout or default to en_US if the selected
preset doesn't support your layout. If the keyboard layout was changed at
runtime, the keyboard controller would go and see if the current preset has
mappings for the new keyboard layout, and if found, load them in.
What do you think?
--Jordi
------------------------------------------------------------------------------
Attend Shape: An AT&T Tech Expo July 15-16. Meet us at AT&T Park in San
Francisco, CA to explore cutting-edge tech and listen to tech luminaries
present their vision of the future. This family event has something for
everyone, including kids. Get more information and register today.
http://sdm.link/attshape
_______________________________________________
Get Mixxx, the #1 Free MP3 DJ Mixing software Today
http://mixxx.org
Mixxx-devel mailing list
Mixxx-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mixxx-devel