summaryrefslogtreecommitdiff
path: root/util
diff options
context:
space:
mode:
authorA. Wilcox <AWilcox@Wilcox-Tech.com>2024-09-27 23:17:33 -0500
committerA. Wilcox <AWilcox@Wilcox-Tech.com>2024-10-05 06:32:10 -0500
commitd56707af8b9c856776b546952a23686b210f22d8 (patch)
tree760052750a417f7b30ed03b5d582e7719bb15001 /util
parent4e77d86d6fc118f0dd1ec83c55c21e05e727d084 (diff)
downloadhorizon-d56707af8b9c856776b546952a23686b210f22d8.tar.gz
horizon-d56707af8b9c856776b546952a23686b210f22d8.tar.bz2
horizon-d56707af8b9c856776b546952a23686b210f22d8.tar.xz
horizon-d56707af8b9c856776b546952a23686b210f22d8.zip
Add friendly names for keymaps
This allows users to choose the "friendly name" for their keyboard layout instead of the internal XKB name. Closes: #386 Suggested-by: Jesse Smith <distro@distrowatch.com> Reviewed-by: Zach van Rijn <me@zv.io> In-memory-of: Sammie the Cat
Diffstat (limited to 'util')
-rw-r--r--util/keymaps.hh42
1 files changed, 32 insertions, 10 deletions
diff --git a/util/keymaps.hh b/util/keymaps.hh
index 91171dd..1ef9bec 100644
--- a/util/keymaps.hh
+++ b/util/keymaps.hh
@@ -13,18 +13,40 @@
#ifndef HORIZON_KEYMAPS_HH_
#define HORIZON_KEYMAPS_HH_
-#include <set>
+#include <map>
#include <string>
-const std::set<std::string> valid_keymaps = {
- "us", "ad", "af", "ara", "al", "am", "at", "az", "by", "be", "bd", "in",
- "ba", "br", "bg", "ma", "mm", "ca", "cd", "cn", "hr", "cz", "dk", "nl",
- "bt", "ee", "ir", "iq", "fo", "fi", "fr", "gh", "gn", "ge", "de", "gr",
- "hu", "is", "il", "it", "jp", "kg", "kh", "kz", "la", "latam", "lt", "lv",
- "mao", "me", "mk", "mt", "mn", "no", "pl", "pt", "ro", "ru", "rs", "si",
- "sk", "es", "se", "ch", "sy", "tj", "lk", "th", "tr", "ua", "gb", "uz",
- "vn", "kr", "ie", "pk", "mv", "za", "epo", "np", "ng", "et", "sn", "brai",
- "tm", "ml", "tz", "ke", "bw", "ph"
+const std::map<std::string, std::string> valid_keymaps = {
+ {"us", "English (US)"}, {"af", "Afghani"}, {"ara", "Arabic"},
+ {"al", "Albanian"}, {"am", "Armenian"}, {"at", "German (Austria)"},
+ {"au", "English (Australian)"}, {"az", "Azerbaijani"}, {"by", "Belarusian"},
+ {"be", "Belgian"}, {"bd", "Bangla"}, {"in", "Indian"}, {"ba", "Bosnian"},
+ {"br", "Portuguese (Brazil)"}, {"bg", "Bulgarian"},
+ {"dz", "Kabylian (azerty layout, no dead keys)"}, {"ma", "Arabic (Morocco)"},
+ {"cm", "English (Cameroon)"}, {"mm", "Burmese"}, {"ca", "French (Canada)"},
+ {"cd", "French (Democratic Republic of the Congo)"}, {"cn", "Chinese"},
+ {"hr", "Croatian"}, {"cz", "Czech"}, {"dk", "Danish"}, {"nl", "Dutch"},
+ {"bt", "Dzongkha"}, {"ee", "Estonian"}, {"ir", "Persian"}, {"iq", "Iraqi"},
+ {"fo", "Faroese"}, {"fi", "Finnish"}, {"fr", "French"}, {"gh", "English (Ghana)"},
+ {"gn", "French (Guinea)"}, {"ge", "Georgian"}, {"de", "German"}, {"gr", "Greek"},
+ {"hu", "Hungarian"}, {"is", "Icelandic"}, {"il", "Hebrew"}, {"it", "Italian"},
+ {"jp", "Japanese"}, {"kg", "Kyrgyz"}, {"kh", "Khmer (Cambodia)"}, {"kz", "Kazakh"},
+ {"la", "Lao"}, {"latam", "Spanish (Latin American)"}, {"lt", "Lithuanian"},
+ {"lv", "Latvian"}, {"mao", "Maori"}, {"me", "Montenegrin"}, {"mk", "Macedonian"},
+ {"mt", "Maltese"}, {"mn", "Mongolian"}, {"no", "Norwegian"}, {"pl", "Polish"},
+ {"pt", "Portuguese"}, {"ro", "Romanian"}, {"ru", "Russian"}, {"rs", "Serbian"},
+ {"si", "Slovenian"}, {"sk", "Slovak"}, {"es", "Spanish"}, {"se", "Swedish"},
+ {"ch", "German (Switzerland)"}, {"sy", "Arabic (Syria)"}, {"tj", "Tajik"},
+ {"lk", "Sinhala (phonetic)"}, {"th", "Thai"}, {"tr", "Turkish"}, {"tw", "Taiwanese"},
+ {"ua", "Ukrainian"}, {"gb", "English (UK)"}, {"uz", "Uzbek"}, {"vn", "Vietnamese"},
+ {"kr", "Korean"}, {"nec_vndr/jp", "Japanese (PC-98)"}, {"ie", "Irish"},
+ {"pk", "Urdu (Pakistan)"}, {"mv", "Dhivehi"}, {"za", "English (South Africa)"},
+ {"epo", "Esperanto"}, {"np", "Nepali"}, {"ng", "English (Nigeria)"},
+ {"et", "Amharic"}, {"sn", "Wolof"}, {"brai", "Braille"}, {"tm", "Turkmen"},
+ {"ml", "Bambara"}, {"tz", "Swahili (Tanzania)"}, {"tg", "French (Togo)"},
+ {"ke", "Swahili (Kenya)"}, {"bw", "Tswana"}, {"ph", "Filipino"}, {"md", "Moldavian"},
+ {"id", "Indonesian (Arab Melayu, phonetic)"}, {"jv", "Indonesian (Javanese)"},
+ {"my", "Malay (Jawi, Arabic Keyboard)"}
};
#endif /* !HORIZON_KEYMAPS_HH_ */