In followup to Frans' review, please find here my current thoughts about possible ways to greatly simplify things when configuring console-setup *in D-I* as well as greatly reduce the size impact.
The general idea would be *selecting* a number of model|layout|variant that are well suited with respect to the languages we support in D-I. This, for each architecture... In short, mimic what we're currently doing in console-data. Each of these sets would be given their name as in xkeyboard-config. The general rule would then be: one language, one layout....with exceptions when established practice needs them. The starting point is then the language list. For each language, we would then list model|layout|variant combinations that are needed to "properly" support it and that is the "accepted enough" default for that language. Let's take a few examples: Albanian: there is currently no keymap for it in console-data. c-s has pc105|al|al named "Albania". We take this one Dutch: "us" is currently used by default. D-I also proposes "Dutch" as alternative. We thus take "pc105|us|us-intl" and "pc105|nl|nl" French: "fr-latin9" is used by default. D-I also proposes be2-latin1, cf, fr_CH-latin1. We thus take "pc105|fr|fr" and "pc105|be|be", "pc105|fr|ca-legacy" and "pc105|ch|fr" Gujarati: nothing by default now (so "us"). We can choose "pc105|in|guj" ...and so on... The general idea would then be to: -check what we currently have for that language in console-data udebs -if there is something specific for that language: - find the most appropriate corresponding model|layout|variant combination(s) - if there is more than one variant, try finding the most often used -if there is nothign for that language in c-d: - find the most appropriate corresponding model|layout|variant combination(s) Here is what I come with (to be completed...I stopped at Kazakh): Albanian;us;pc105|al|al; Amharic;us;pc105|et|et; Arabic;us;pc105|ara|ara;* Asturian;es;pc105|es|ast; Basque;es;pc105|es|es;* Belarusian;by;pc105|by|by;* Bengali;us;pc105|in|ben; Bosnian;croat;pc105|ba|ba;* Bulgarian;bg;pc105|bg|bg;* Catalan;es;pc105|es|cat; Chinese (Simplified);us;pc105|cn|cn;* Chinese (Traditional);us;pc105|cn|cn;* Croatian;croat;pc105|hr|hr;* Czech;cz-lat2;pc105|cz|cz;* Danish;dk-latin1;pc105|dk|dk;* Dutch;us;pc105|us|alt-intl;*;also add "nl|nl" Dzongkha;us;pc105|bt|bt English;us|uk;pc105|us|us;*;also add "uk"? Esperanto;us;pc105|epo|epo;* Estonian;et;pc105|ee|ee;* Finnish;fi-latin1;pc105|fi|fi;* French;fr-latin9|be2-latin1|cf|fr_CH-latin1;pc105|fr|fr;*;also add "be|be", "ca|fr-legacy" or "ca|multi", "ch|fr" Galician;es;pc105|es|es;* Georgian;us;pc105|ge|ge;* German;de-latin1-nodeadkeys|sg-latin1;pc105|de|nodeadkeys;*;also add "ch|de_nodeadkeys" Greek;gr;pc105|gr|gr;* Gujarati;us;pc105|in|guj; Hebrew;hebrew;pc105|il|il;* Hindi;us;pc105|in|in; Hungarian;hu;pc105|hu|hu;* Indonesian;us;pc105|us|us; Irish;uk;pc105|ie|ie;* Italian;it;pc105|it|it;* Japanese;us;jp106|us|us;* Kazakh;us;kz|kz|* The first column is the language name The second column is the default keymap for that language in c-d (for some langs, there might be more than one....see French above) The third column gives the model|layout|variant combination that seems best suited for that language The fourth column has an asterisk if other variants exist, which means we should ask to this language users for the most often used variant The fifth columns is for remarks (often the need to add another model|layout|variant combination) Once this analysis has been done for all supported language, we will end up with a list of model|layout|variant combinations that is quite sustainable (probably around 70 for i386|amd64 and much much less for arches where there is a need for a dedicated list)...and thus have only *one* question. Here is what I come as of now..... There is probably a lot to comment (particularly about the implementation) but I hope you get the picture enough now...:) Of course, once this is implemented, we would need to make this list live when adding|dropping languages (but somethign like this is already done in the new language process anyway).
signature.asc
Description: Digital signature