/usr/share/X11/xkb/symbols
NameSizeModeActions
digital_vndr/-0755rm
fujitsu_vndr/-0755rm
hp_vndr/-0755rm
jolla_vndr/-0755rm
macintosh_vndr/-0755rm
nec_vndr/-0755rm
nokia_vndr/-0755rm
sgi_vndr/-0755rm
sharp_vndr/-0755rm
sony_vndr/-0755rm
sun_vndr/-0755rm
xfree68_vndr/-0755rm
af233840644editdlrm
al61570644editdlrm
altwin36700644editdlrm
am102840644editdlrm
apl521760644editdlrm
ara335990644editdlrm
at3580644editdlrm
au1780644editdlrm
az37840644editdlrm
ba6570644editdlrm
bd42890644editdlrm
be111010644editdlrm
bg234140644editdlrm
br167780644editdlrm
brai25100644editdlrm
bt45970644editdlrm
bw9960644editdlrm
by33430644editdlrm
ca214340644editdlrm
capslock20000644editdlrm
cd40380644editdlrm
ch72690644editdlrm
cm337870644editdlrm
cn373430644editdlrm
compose23030644editdlrm
ctrl39640644editdlrm
cz241860644editdlrm
de956480644editdlrm
dk24620644editdlrm
dz126970644editdlrm
ee41410644editdlrm
eg20610644editdlrm
empty1000644editdlrm
epo75980644editdlrm
es98590644editdlrm
et31330644editdlrm
eu52680644editdlrm
eurosign6290644editdlrm
fi248930644editdlrm
fo19890644editdlrm
fr969730644editdlrm
gb99140644editdlrm
ge129750644editdlrm
gh65610644editdlrm
gn21910644editdlrm
gr143370644editdlrm
group119810644editdlrm
hr25480644editdlrm
hu234570644editdlrm
id85300644editdlrm
ie202760644editdlrm
il166250644editdlrm
in1153060644editdlrm
inet788330644editdlrm
iq6410644editdlrm
ir124330644editdlrm
is131340644editdlrm
it174790644editdlrm
jp84610644editdlrm
jv34520644editdlrm
ke75480644editdlrm
keypad237580644editdlrm
kg60780644editdlrm
kh49950644editdlrm
kpdl33980644editdlrm
kr11680644editdlrm
kz163980644editdlrm
la55620644editdlrm
latam138110644editdlrm
latin146340644editdlrm
level22740644editdlrm
level365550644editdlrm
level547390644editdlrm
lk81980644editdlrm
lt235160644editdlrm
lv192800644editdlrm
ma125100644editdlrm
Makefile.in297610644editdlrm
mao5930644editdlrm
md51150644editdlrm
me17480644editdlrm
mk30700644editdlrm
ml33250644editdlrm
mm59120644editdlrm
mn42740644editdlrm
mt90920644editdlrm
mv26690644editdlrm
my68710644editdlrm
nbsp44060644editdlrm
ng62680644editdlrm
nl67220644editdlrm
no117160644editdlrm
np67490644editdlrm
olpc9300644editdlrm
parens3890644editdlrm
pc23880644editdlrm
ph759790644editdlrm
pk271510644editdlrm
pl271100644editdlrm
pt118330644editdlrm
ro116930644editdlrm
rs153630644editdlrm
ru679910644editdlrm
rupeesign1310644editdlrm
se169930644editdlrm
shift22400644editdlrm
si5900644editdlrm
sk68580644editdlrm
sn22190644editdlrm
srvr_ctrl23300644editdlrm
sy70760644editdlrm
terminate1990644editdlrm
tg48210644editdlrm
th103370644editdlrm
tj103870644editdlrm
tm14790644editdlrm
tr265770644editdlrm
trans160500644editdlrm
tw33050644editdlrm
typo45220644editdlrm
tz34280644editdlrm
ua160860644editdlrm
us1075050644editdlrm
uz41250644editdlrm
vn61530644editdlrm
za21080644editdlrm
Edit: /usr/share/X11/xkb/symbols/cm (33787B)
// ========== Cameroon Keyboards ========== // ---------------------------------------------------------------------------- // This comment was added by , on 18-Jun-2016: // // All comments below this one, were in the original cm file;they do not // apply to the Mmuock keyboard which is defined towards the end of this file. // ---------------------------------------------------------------------------- // ****** For Instructions, see "Use of Cameroon Keyboards" section below ****** // The XKB versions of these keyboards were developed by Matthew Lee, Jenni Beadle, and Bruce Cox of SIL Cameroon in association with Going Komputya, Uwe Yung of the Goethe Institute, Yaoundé, and Centre ANACLAC. // Cameroon is officially a bilingual country, using French and English, but there are over 270 minority languages. // * Cameroon Français is an exact copy of the French France keyboard intended for AZERTY users. // * Cameroon is an exact copy of the Basic US Keyboard. I can not currently name this "Cameroon English" due to a limitation of XKB. // * Cameroon QWERTY and Cameroon AZERTY are based largely on SIL Cameroon's Keyman and Microsoft keyboards of the same style already in wide use. These keyboards are designed to allow the user to type any of Cameroon's 270+ languages and dialects that use the approved orthography. This Approved Orthography was adopted in 1979 by the National Committee for the Unification and Harmonisation of Alphabets of Camerooninan Languages. // * Cameroon Dvorak is described below. // ===== Use of Cameroon Keyboards ===== // == Fonts == // These keyboards are fully Unicode (5.1), so we recommend using a good unicode font for diacritics to position correctly. Recommended fonts are: ttf-sil-charis, ttf-sil-doulos, ttf-sil-gentium and ttf-sil-andika (All of which are free for Linux, Mac, and Windows). // == Cameroon AZERTY == // Cameroon AZERTY uses the French France (AZERTY) layout, as french keyboards are widely used here. While this keyboard is designed for Cameroonian orthography, it still is possible but not recommended, to type French with minimal discomfort using this keyboard. // Cameroon AZERTY uses the "!" (exclamation) key as the "Cameroon" key. Pressing this key before another key allows you to access the special letters and diacritics needed in Cameroonian orthography. // For example, press "!" then "a" and get "ɛ" (small epsilon). "!" then "Shift" + "a" (A) will get an "Ɛ" (capital epsilon). Press the "!" key twice to get a "!". // If you prefer, you can hold the AltGr (and/or Shift) key to access the same letters, but we have found this to be much more awkward in practice. If you really don't like our Cameroon key, simply comment out "include "cm(exclamation_switch)"" and the exclamation key will return to normal. // All Diacritics (with the exception of French Trema and Circumflex) must be typed (in order of stacking) after the letter. // == Cameroon QWERTY == // Cameroon QWERTY uses the US QWERTY layout, as US keyboards are also widely used here. While this keyboard is designed for Cameroonian orthography, it is possible, but not recommended, to type English with minimal discomfort using this keyboard. // Cameroon QWERTY uses the ";" (semicolon) key as the "Cameroon" key. Pressing this key before another key allows you to access the special letters and diacritics needed in Cameroonian orthography. // For example, press ";" then "a" and get "ɛ" (small epsilon). ";" then "Shift" + "a" (A) will get an "Ɛ" (capital epsilon). Press ";" twice to get a ";", or press Shift + ; (:) twice to get a ":" (colon). // If you prefer, you can hold the AltGr (and/or Shift) key to access the same letters, but we have found this to be much more awkward in practice. If you really don't like our Cameroon key, simply comment out "include "cm(semicolon_switch)"" and the semicolon key will return to normal. // All Diacritics must be typed (in order of stacking) after the letter. // == Cameroon Dvorak == // Cameroon Dvorak is uses a similar system to Cameroon QWERTY. default partial alphanumeric_keys xkb_symbols "basic" { name[Group1]="English (Cameroon)"; key { [ grave, asciitilde ] }; key { [ 1, exclam ] }; key { [ 2, at ] }; key { [ 3, numbersign ] }; key { [ 4, dollar ] }; key { [ 5, percent ] }; key { [ 6, asciicircum ] }; key { [ 7, ampersand ] }; key { [ 8, asterisk ] }; key { [ 9, parenleft ] }; key { [ 0, parenright ] }; key { [ minus, underscore ] }; key { [ equal, plus ] }; key { [ q, Q ] }; key { [ w, W ] }; key { [ e, E ] }; key { [ r, R ] }; key { [ t, T ] }; key { [ y, Y ] }; key { [ u, U ] }; key { [ i, I ] }; key { [ o, O ] }; key { [ p, P ] }; key { [ bracketleft, braceleft ] }; key { [ bracketright, braceright ] }; key { [ a, A ] }; key { [ s, S ] }; key { [ d, D ] }; key { [ f, F ] }; key { [ g, G ] }; key { [ h, H ] }; key { [ j, J ] }; key { [ k, K ] }; key { [ l, L ] }; key { [ semicolon, colon ] }; key { [ apostrophe, quotedbl ] }; key { [ z, Z ] }; key { [ x, X ] }; key { [ c, C ] }; key { [ v, V ] }; key { [ b, B ] }; key { [ n, N ] }; key { [ m, M ] }; key { [ comma, less ] }; key { [ period, greater ] }; key { [ slash, U003F ] }; key { [ backslash, bar ] }; }; partial alphanumeric_keys xkb_symbols "french" { include "latin" name[Group1]="French (Cameroon)"; key { [ ampersand, 1, onesuperior, exclamdown ] }; key { [ eacute, 2, asciitilde, oneeighth ] }; key { [ quotedbl, 3, numbersign, sterling ] }; key { [apostrophe, 4, braceleft, dollar ] }; key { [ parenleft, 5, bracketleft, threeeighths ] }; key { [ minus, 6, bar, fiveeighths ] }; key { [ egrave, 7, grave, seveneighths ] }; key { [underscore, 8, backslash, trademark ] }; key { [ ccedilla, 9, asciicircum, plusminus ] }; key { [ agrave, 0, at, degree ] }; key { [parenright, degree, bracketright, questiondown ] }; key { [ equal, plus, braceright, dead_ogonek ] }; key { [ a, A, ae, AE ] }; key { [ z, Z, guillemotleft, less ] }; key { [ e, E, EuroSign, cent ] }; key { [dead_circumflex, dead_diaeresis, dead_diaeresis, dead_abovering ] }; key { [ dollar, sterling, currency, dead_macron ] }; key { [ q, Q, at, Greek_OMEGA ] }; key { [ m, M, mu, masculine ] }; key { [ ugrave, percent, dead_circumflex, dead_caron] }; key { [twosuperior, asciitilde, notsign, notsign ] }; key { [ asterisk, mu, dead_grave, dead_breve ] }; key { [ w, W, lstroke, Lstroke ] }; key { [ comma, U003F, dead_acute, dead_doubleacute ] }; key { [ semicolon, period, horizconnector, multiply ] }; key { [ colon, slash, periodcentered, division ] }; key { [ exclam, section, dead_belowdot, dead_abovedot ] }; include "level3(ralt_switch)" }; partial alphanumeric_keys xkb_symbols "azerty" { include "cm(basic)" name[Group1] = "Cameroon (AZERTY, intl.)"; key { [ w, W, U1E85, U1E84 ] }; // SMALL LETTER W, CAPITAL LETTER W, SMALL LETTER W WITH DIAERESIS, CAPITAL LETTER W WITH DIAERESIS key { [ x, X, U2039, U203A ] }; // SMALL LETTER X, CAPITAL LETTER X, SINGLE LEFT-POINTING ANGLE QUOTATION MARK, SINGLE RIGHT-POINTING ANGLE QUOTATION MARK key { [ c, C, U0327, copyright ] }; // SMALL LETTER C, CAPITAL LETTER C, COMBINING CEDILLA, COPYRIGHT SIGN key { [ v, V, UA78C, UA78B ] }; // SMALL LETTER V, CAPITAL LETTER V, SMALL LETTER GLOTTAL (SALTILLO), CAPITAL LETTER GLOTTAL (SALTILLO) key { [ b, B, U0253, U0181 ] }; // SMALL LETTER B, CAPITAL LETTER B, SMALL LETTER B WITH HOOK, CAPITAL LETTER B WITH HOOK key { [ n, N, U014B, U014A ] }; // SMALL LETTER N, CAPITAL LETTER N, SMALL LETTER ENG, CAPITAL LETTER ENG key { [ U002C, U003F, NoSymbol, U00D7 ] }; // COMMA, QUESTION MARK, , MULTIPLY key { [ semicolon, period, dead_acute, dead_grave ] }; // SEMICOLON, PERIOD key { [ colon, slash, U0323 ] }; // COLON, SLASH, COMBINING DOT BELOW key { [ exclam, U00A7 ] }; // EXCLAMATION MARK, SECTION SIGN key { [ q, Q, U2014, U2013 ] }; // SMALL LETTER Q, CAPITAL LETTER Q, EM DASH, EN DASH key { [ s, S, U201C, U201D ] }; // SMALL LETTER S, CAPITAL LETTER S, LEFT DOUBLE QUOTES, RIGHT DOUBLE QUOTES key { [ d, D, U0257, U018A ] }; // SMALL LETTER D, CAPITAL LETTER D, SMALL LETTER D WITH HOOK, CAPITAL LETTER D WITH HOOK key { [ f, F, U00E6, U00C6 ] }; // SMALL LETTER F, CAPITAL LETTER F, SMALL LIGATURE AE, CAPITAL LIGATURE AE key { [ g, G, U02BC, UA78B ] }; // SMALL LETTER G, CAPITAL LETTER G, CURVED GLOTTAL, CAPITAL LETTER GLOTTAL (SALTILLO) key { [ h, H, U0251, U2C6D ] }; // SMALL LETTER H, CAPITAL LETTER H, SMALL LETTER ALPHA, CAPITAL LETTER ALPHA key { [ j, J, leftarrow, U2122 ] }; //SMALL LETTER J, CAPITAL LETTER J, LEFT ARROW, TRADE MARK SIGN key { [ k, K, downarrow, uparrow ] }; // SMALL LETTER K, CAPITAL LETTER K, DOWN ARROW, UP ARROW key { [ l, L, rightarrow, U00A3 ] }; // SMALL LETTER L, CAPITAL LETTER L, RIGHT ARROW, POUND STERLING key { [ m, M, U00F9, U00B5 ] }; // SMALL LETTER M, CAPITAL LETTER M, SMALL LETTER U WITH GRAVE, MICRO SYMBOL key { [ U0300, U0302, U1DC5, U1DC4 ] }; // COMBINING LOW TONE, COMBINING FALLING TONE, COMBINING LOW-MID TONE, COMBINING MID-HIGH TONE key { [ a, A, U025B, U0190 ] }; // SMALL LETTER A, CAPITAL LETTER A, SMALL LETTER OPEN E, CAPITAL LETTER OPEN E key { [ z, Z, U2026, U2020 ] }; // SMALL LETTER Z, CAPITAL LETTER Z, ELLIPSIS, DAGGER key { [ e, E, U0259, U018F ] }; // SMALL LETTER E, CAPITAL LETTER E, SMALL LETTER SCHWA, CAPITAL LETTER SCHWA key { [ r, R, U25CC, U00AE ] }; // SMALL LETTER R, CAPITAL LETTER R, PLACEHOLDER SYMBOL, REGISTERED SIGN key { [ t, T, U0153, U0152 ] }; // SMALL LETTER T, CAPITAL LETTER T, SMALL LIGATURE OE, CAPITAL LIGATURE OE key { [ y, Y, U01B4, U01B3 ] }; // SMALL LETTER Y, CAPITAL LETTER Y, SMALL LETTER Y WITH HOOK, CAPITAL LETTER Y WITH HOOK key { [ u, U, U0289, U0244 ] }; // SMALL LETTER U, CAPITAL LETTER U, SMALL LETTER U BAR, CAPITAL LETTER U BAR key { [ i, I, U0268, U0197 ] }; // SMALL LETTER I, CAPITAL LETTER I, SMALL LETTER I BAR, CAPITAL LETTER I BAR key { [ o, O, U0254, U0186 ] }; // SMALL LETTER O, CAPITAL LETTER O, SMALL LETTER OPEN O, CAPITAL LETTER OPEN O key { [ p, P, U00F8, U00D8 ] }; // SMALL LETTER P, CAPITAL LETTER P, SMALL LETTER O BAR, CAPITAL LETTER O BAR key { [ U0301, U030C, dead_circumflex, dead_diaeresis ] }; // COMBINING HIGH TONE, COMBINING RISING TONE, DEAD CIRCUMFLEX, DEAD DIAERESIS key { [ U0330, U0303, U0304, U030D ] }; // COMBINING TILDE (NASAL) BELOW, COMBINING TILDE (NASAL), COMBINING MID TONE, COMBINING VERTICAL LINE ABOVE key { [ U0026, KP_1, U00B9, U2018 ] }; // AMPERSAND, 1, SUPERSCRIPT 1, LEFT SINGLE QUOTE key { [ eacute, KP_2, asciitilde, U2019 ] }; // SMALL LETTER E WITH ACUTE, 2, TILDE, RIGHT SINGLE QUOTE key { [ U0022, KP_3, U0025 ] }; // QUOTATION MARK, 3, PERCENT SIGN key { [ U0027, KP_4, U007B ] }; // APOSTROPHE, 4, LEFT CURLY BRACKET key { [ U0028, KP_5, U005B, numbersign ] }; // LEFT PARENTHESIS, 5, LEFT SQUARE BRACKET, NUMBER SIGN key { [ U002D, KP_6, U007C ] }; // HYPHEN/MINUS, 6, BAR key { [ U00E8, KP_7, U0300 ] }; // SMALL LETTER E WITH GRAVE, 7, COMBINING GRAVE key { [ underscore, KP_8, backslash, U20D6 ] }; // UNDERSCORE, 8, BACKSLASH, COMBINING LEFT ARROW ABOVE key { [ ccedilla, KP_9, U005E] }; // SMALL LETTER C WITH CEDILLA, 9, CIRCUMFLEX key { [ U00E0, KP_0, at, U20D7 ] }; // SMALL LETTER A WITH GRAVE key { [ U0029, U00B0, U005D ] }; // RIGHT PARENTHESIS, DEGREE, RIGHT SQUARE BRACKET key { [ U003D, U002B, U007D, U00B1 ] }; // EQUAL SIGN, PLUS SIGN, RIGHT CURLY BRACKET, PLUS-MINUS SIGN key { [ U1DC6, U1DC7, KP_Multiply, U00A4 ] }; // COMBINING MID-LOW, COMBINING HIGH-MID, MULTIPLY, CURRENCY SIGN key { [ U003C, U003E, U00AB, U00BB ] }; // LESS THAN, GREATER THAN, LEFT GUILLEMET, RIGHT GUILLEMET key { [ U0024, U20AC, U00B2, U00B3 ] }; // DOLLAR, EURO, SUPERSCRIPT 2, SUPERSCRIPT 3 include "cm(exclamation_switch)" include "level3(ralt_switch)" }; partial alphanumeric_keys xkb_symbols "qwerty" { include "cm(basic)" name[Group1] = "Cameroon Multilingual (QWERTY, intl.)"; key { [ z, Z, U2026, U2020 ] }; // SMALL LETTER Z, CAPITAL LETTER Z, ELLIPSIS, DAGGER key { [ x, X ] }; // SMALL LETTER X, CAPITAL LETTER X key { [ c, C, U0327, U00A9 ] }; // SMALL LETTER C, CAPITAL LETTER C, CEDILLA, COPYRIGHT key { [ v, V, UA78C, UA78B ] }; // SMALL LETTER V, CAPITAL LETTER V, SMALL LETTER GLOTTAL (SALTILLO), CAPITAL LETTER GLOTTAL (SALTILLO) key { [ b, B, U0253, U0181 ] }; // SMALL LETTER B, CAPITAL LETTER B, SMALL LETTER B WITH HOOK, CAPITAL LETTER B WITH HOOK key { [ n, N, U014B, U014A ] }; // SMALL LETTER N, CAPITAL LETTER N, SMALL LETTER ENG, CAPITAL LETTER ENG key { [ m, M, NoSymbol, U2122 ] }; // SMALL LETTER M, CAPITAL LETTER M, , TRADEMARK SIGN key { [ U002C, U003C, U2039, U00AB ] }; // COMMA, LESS THAN SIGN, LEFT SINGLE GUILLEMET, LEFT DOUBLE GUILLEMET key { [ U002E, U003E, U203A, U00BB ] }; // PERIOD, GREATER THAN SIGN, RIGHT SINGLE GUILLEMET, RIGHT DOUBLE GUILLEMET key { [ U002F, U003F, U00F7 ] }; // SLASH, QUESTION MARK, DIVISION SIGN key { [ a, A, U025B, U0190 ] }; // SMALL LETTER A, CAPITAL LETTER A, SMALL LETTER OPEN E, CAPITAL LETTER OPEN E key { [ s, S ] }; // SMALL LETTER S, CAPITAL LETTER S key { [ d, D, U0257, U018A ] }; // SMALL LETTER D, CAPITAL LETTER D, SMALL LETTER D WITH HOOK, CAPITAL LETTER D WITH HOOK key { [ f, F, U00E6, U00C6 ] }; // SMALL LETTER F, CAPITAL LETTER F, SMALL LIGATURE AE, CAPITAL LIGATURE AE key { [ g, G, U02BC, UA78B ] }; // SMALL LETTER G, CAPITAL LETTER G, CURVED GLOTTAL, CAPITAL LETTER GLOTTAL (SALTILLO) key { [ h, H, U0251, U2C6D ] }; // SMALL LETTER H, CAPITAL LETTER H, SMALL LETTER ALPHA, CAPITAL LETTER ALPHA key { [ j, J, U0330, U0323 ] }; // SMALL LETTER J, CAPITAL LETTER J, COMBINING TILDE (NASAL) BELOW, COMBINING DOT BELOW key { [ k, K, U1DC5, U1DC7 ] }; // SMALL LETTER K, CAPITAL LETTER K, COMBINING LOW-MID TONE, COMBINING HIGH-MID key { [ l, L, U1DC6, U1DC4 ] }; // SMALL LETTER L, CAPITAL LETTER L, COMBINING MID-LOW, COMBINING MID-HIGH TONE key { [ U003B, U003A ] }; // SEMICOLON, COLON key { [ U0300, U0302, U0027, U0022 ] }; // COMBINING LOW TONE, COMBINING FALLING TONE, APOSTROPHE, QUOTATION MARK key { [ q, Q, U2014, U2013 ] }; // SMALL LETTER Q, CAPITAL LETTER Q, EM DASH, EN DASH key { [ w, W, U1E85, U1E84 ] }; // SMALL LETTER W, CAPITAL LETTER W, SMALL LETTER W WITH DIAERESIS, CAPITAL LETTER W WITH DIAERESIS key { [ e, E, U0259, U018F ] }; // SMALL LETTER E, CAPITAL LETTER E, SMALL LETTER SCHWA, CAPITAL LETTER SCHWA key { [ r, R, U25CC, U00AE ] }; // SMALL LETTER R, CAPITAL LETTER R, PLACEHOLDER SYMBOL, REGISTERED SIGN key { [ t, T, U0153, U0152 ] }; // SMALL LETTER T, CAPITAL LETTER T, SMALL LIGATURE OE, CAPITAL LIGATURE OE key { [ y, Y, U01B4, U01B3 ] }; // SMALL LETTER Y, CAPITAL LETTER Y, SMALL LETTER Y WITH HOOK, CAPITAL LETTER Y WITH HOOK key { [ u, U, U0289, U0244 ] }; // SMALL LETTER U, CAPITAL LETTER U, SMALL LETTER U BAR, CAPITAL LETTER U BAR key { [ i, I, U0268, U0197 ] }; // SMALL LETTER I, CAPITAL LETTER I, SMALL LETTER I BAR, CAPITAL LETTER I BAR key { [ o, O, U0254, U0186 ] }; // SMALL LETTER O, CAPITAL LETTER O, SMALL LETTER OPEN O, CAPITAL LETTER OPEN O key { [ p, P, U00F8, U00D8 ] }; // SMALL LETTER P, CAPITAL LETTER P, SMALL LETTER O BAR, CAPITAL LETTER O BAR key { [ U0301, U030C, U005B, U007B ] }; // COMBINING HIGH TONE, COMBINING RISING TONE, LEFT SQUARE BRACKET, LEFT CURLY BRACKET key { [ U0327, U0308, U005D, U007D ] }; // COMBINING CEDILLA, COMBINING DIAERESIS, RIGHT SQUARE BRACKET, RIGHT CURLY BRACKET key { [ U0031, U0021, U00BC ] }; // 1, EXCLAMATION POINT, ONE QUARTER key { [ U0032, U0040, U00BD ] }; //2, AT SYMBOL, ONE HALF key { [ U0033, U0023, U00BE ] }; // 3, NUMBER SIGN, THREE QUARTERS key { [ U0034, U0024, NoSymbol, U20AC ] }; // 4, DOLLAR, , EURO SIGN key { [ U0038, U002A, NoSymbol, U00D7 ] }; // 8, ASTERISK, , MATH MULTIPLY key { [ U0039, U0028, U2018, U201C ] }; // 9, LEFT PARENTHESIS, LEFT SINGLE QUOTE MARK, LEFT DOUBLE QUOTE MARK key { [ U0030, U0029, U2019, U201D ] }; // 0, RIGHT PARENTHESIS, RIGHT SINGLE QUOTE MARK, LEFT DOUBLE QUOTE MARK key { [ U002D, U005F, U0304 ] }; // MINUS, UNDERSCORE, COMBINING MID TONE, COMBINING MID TONE key { [ U003D, U002B, NoSymbol, U00B1 ] }; // EQUAL, PLUS, , PLUS-MINUS key { [ U005C, U007C ] }; // BACKSLASH, BAR key { [ U030D, U0303, U0060, U007E ] }; // COMBINING VERTICAL LINE ABOVE, COMBINING TILDE ABOVE, GRAVE ACCENT, TILDE include "cm(semicolon_switch)" include "level3(ralt_switch)" }; partial alphanumeric_keys xkb_symbols "dvorak" { include "us(dvorak)" name[Group1] = "Cameroon (Dvorak, intl.)"; key { [ semicolon, colon ] }; // SEMICOLON, COLON key { [ q, Q, U2014, U2013 ] }; // SMALL LETTER Q, CAPITAL LETTER Q, EM DASH, EN DASH key { [ j, J, U0330, U0323 ] }; // SMALL LETTER J, CAPITAL LETTER J, COMBINING TILDE (NASAL) BELOW, COMBINING DOT BELOW key { [ k, K, U1DC5, U1DC7 ] }; // SMALL LETTER K, CAPITAL LETTER K, COMBINING LOW-MID TONE, COMBINING HIGH-MID key { [ x, X ] }; // SMALL LETTER X, CAPITAL LETTER X key { [ b, B, U0253, U0181 ] }; // SMALL LETTER B, CAPITAL LETTER B, SMALL LETTER B WITH HOOK, CAPITAL LETTER B WITH HOOK key { [ m, M, NoSymbol, U2122 ] }; // SMALL LETTER M, CAPITAL LETTER M, , TRADEMARK SIGN key { [ w, W, U1E85, U1E84 ] }; // SMALL LETTER W, CAPITAL LETTER W, SMALL LETTER W WITH DIAERESIS, CAPITAL LETTER W WITH DIAERESIS key { [ v, V, UA78C, UA78B ] }; // SMALL LETTER V, CAPITAL LETTER V, SMALL LETTER GLOTTAL (SALTILLO), CAPITAL LETTER GLOTTAL (SALTILLO) key { [ z, Z, U2026, U2020 ] }; // SMALL LETTER Z, CAPITAL LETTER Z, ELLIPSIS, DAGGER key { [ a, A, U025B, U0190 ] }; // SMALL LETTER A, CAPITAL LETTER A, SMALL LETTER OPEN E, CAPITAL LETTER OPEN E key { [ o, O, U0254, U0186 ] }; // SMALL LETTER O, CAPITAL LETTER O, SMALL LETTER OPEN O, CAPITAL LETTER OPEN O key { [ e, E, U0259, U018F ] }; // SMALL LETTER E, CAPITAL LETTER E, SMALL LETTER SCHWA, CAPITAL LETTER SCHWA key { [ u, U, U0289, U0244 ] }; // SMALL LETTER U, CAPITAL LETTER U, SMALL LETTER U BAR, CAPITAL LETTER U BAR key { [ i, I, U0268, U0197 ] }; // SMALL LETTER I, CAPITAL LETTER I, SMALL LETTER I BAR, CAPITAL LETTER I BAR key { [ d, D, U0257, U018A ] }; // SMALL LETTER D, CAPITAL LETTER D, SMALL LETTER D WITH HOOK, CAPITAL LETTER D WITH HOOK key { [ h, H, U0251, U2C6D ] }; // SMALL LETTER H, CAPITAL LETTER H, SMALL LETTER ALPHA, CAPITAL LETTER ALPHA key { [ t, T, U0153, U0152 ] }; // SMALL LETTER T, CAPITAL LETTER T, SMALL LIGATURE OE, CAPITAL LIGATURE OE key { [ n, N, U014B, U014A ] }; // SMALL LETTER N, CAPITAL LETTER N, SMALL LETTER ENG, CAPITAL LETTER ENG key { [ s, S ] }; // SMALL LETTER S, CAPITAL LETTER S key { [ minus, underscore, U0304 ] }; // MINUS, UNDERSCORE, COMBINING MID TONE key { [ U0300, U0302, U0027, U0022 ] }; // COMBINING LOW TONE, COMBINING FALLING TONE, APOSTROPHE, QUOTATION MARK key { [ comma, less, U2039, U00AB ] }; // COMMA, LESS THAN SIGN, LEFT SINGLE GUILLEMET, LEFT DOUBLE GUILLEMET key { [ period, greater, U203A, U00BB ] }; // PERIOD, GREATER THAN SIGN, RIGHT SINGLE GUILLEMET, RIGHT DOUBLE GUILLEMET key { [ p, P, U00F8, U00D8 ] }; // SMALL LETTER P, CAPITAL LETTER P, SMALL LETTER O BAR, CAPITAL LETTER O BAR key { [ y, Y, U01B4, U01B3 ] }; // SMALL LETTER Y, CAPITAL LETTER Y, SMALL LETTER Y WITH HOOK, CAPITAL LETTER Y WITH HOOK key { [ f, F, U00E6, U00C6 ] }; // SMALL LETTER F, CAPITAL LETTER F, SMALL LIGATURE AE, CAPITAL LIGATURE AE key { [ g, G, U02BC, UA78B ] }; // SMALL LETTER G, CAPITAL LETTER G, CURVED GLOTTAL, CAPITAL LETTER GLOTTAL (SALTILLO) key { [ c, C, U0327, U00A9 ] }; // SMALL LETTER C, CAPITAL LETTER C, CEDILLA, COPYRIGHT key { [ r, R, U25CC, U00AE ] }; // SMALL LETTER R, CAPITAL LETTER R, PLACEHOLDER SYMBOL, REGISTERED SIGN key { [ l, L, U1DC6, U1DC4 ] }; // SMALL LETTER L, CAPITAL LETTER L, COMBINING MID-LOW, COMBINING MID-HIGH TONE key { [ slash, U003F, U00F7, U0294 ] }; // SLASH, QUESTION MARK, DIVISION SIGN, GLOTTAL STOP key { [ equal, plus, NoSymbol, plusminus ] }; // EQUAL, PLUS, , PLUS-MINUS key { [ KP_1, exclam, U00BC ] }; // 1, EXCLAMATION POINT, ONE QUARTER key { [ KP_2, at, U00BD ] }; // 2, AT SYMBOL, ONE HALF key { [ KP_3, numbersign, U00BE ] }; // 3, NUMBER SIGN, THREE QUARTERS key { [ KP_4, dollar, NoSymbol, U20AC ] }; // 4, DOLLAR, , EURO SIGN key { [ KP_5, percent ] }; // 5, PERCENT key { [ KP_6, asciicircum ] }; // 6, CARET key { [ KP_7, ampersand ] }; // 7, AMPERSAND key { [ KP_8, asterisk, NoSymbol, multiply ] }; // 8, ASTERISK, , MULTIPLY key { [ KP_9, parenleft, leftsinglequotemark, leftdoublequotemark ] }; // 9, LEFT PARENTHESIS, LEFT SINGLE QUOTE MARK, LEFT DOUBLE QUOTE MARK key { [ KP_0, parenright, rightsinglequotemark, rightdoublequotemark ] }; // 0, RIGHT PARENTHESIS, RIGHT SINGLE QUOTE MARK, LEFT DOUBLE QUOTE MARK key { [ U0301, U030C, U005B, U007B ] }; // COMBINING HIGH TONE, COMBINING RISING TONE, LEFT SQUARE BRACKET, LEFT CURLY BRACKET key { [ U0327, dead_diaeresis, U005D, braceright ] }; // COMBINING CEDILLA, DEAD DIAERESIS, RIGHT SQUARE BRACKET, RIGHT CURLY BRACKET key { [ backslash, bar ] }; // BACKSLASH, BAR key { [ U030D, U0303, U0060, U007E ] }; // COMBINING VERTICAL LINE ABOVE, COMBINING TILDE ABOVE, GRAVE ACCENT, TILDE include "cm(semicolon_switch_dvorak)" include "level3(ralt_switch)" }; // The following code creates the "Cameroon key" phenomenon. partial modifier_keys xkb_symbols "semicolon_switch" { key { symbols[Group1] = [ ISO_Level3_Latch, colon, semicolon, colon ]}; modifier_map Mod5 { ISO_Level3_Latch }; }; partial modifier_keys xkb_symbols "exclamation_switch" { key { symbols[Group1] = [ ISO_Level3_Latch, U00A7, exclam, U00A7 ] }; modifier_map Mod5 { ISO_Level3_Latch }; }; partial modifier_keys xkb_symbols "semicolon_switch_dvorak" { key { symbols[Group1] = [ ISO_Level3_Latch, colon, semicolon, colon ] }; modifier_map Mod5 { ISO_Level3_Latch }; }; // ------- begin Mmuock alphabet layout ------------------------------------------ // This layout is used for the Mmuock alphabet as described in the book // _The Sound of Mmuock: Orthography (2. ed.)_ [isbn: 978-9956-645-28-1]. // Mmuock is the language of the Mmuock (local: Muòk) people of Western // Cameroon. // // Author: Tano Fotang // Created: 2014-06-24 // Version: 1.2 // // CHANGES v 1.0: // 2014-07-06 corrected shifted level3 of to quotedbl // CHANGES v 1.1: // 2015-05-23 1- added dead_tilde to key ; this is needed to produce // the letter <ñ> which was totally missing from the keyboard // 2- added letter to ; the letter had been missing. // 3- if we're not re-defining particular symbols from the included // latin layout, then maintain the original latin mappings. // Previously, we had set them to NoSymbol. Now, we want to // keep the original latin mappings except for those few that we // want to overwrite for our own keyboard. // // CHANGES v 1.2: // 2016-06-17 1- added dead keys dead_macron, dead_acute, and dead_grave for // tones 1, 3, and 4, for compatibility with the Keyman version. // 2- rearranged combining diacritics for tones 0 to 5 such that // the diacritics are on consequetive keys (AC01 to AC05). // 3- moved tone 8 to level 3 of AE12. // 4- moved layout definition out of the EXTRAS section. // 5- for a cleaner keyboard, // replaced ṭhe included latin layout with us(basic). // // // NOTES: // 0. This map is based on the Latin alphabet layout for the US keyboard. // // 1. We use combining diacritical marks to create tone markings. There are 13 // tones that need to be indicated, although the first 5 are usually enough // to represent the rest in simplified orthography. // // 2. When composing Mmuock text, about every fourth symbol is for tone. To // facilitate easy and fast input, the combining diacritics are placed on // the home row (AC). To reduce the number of key strokes required, the // unshifted third level is used. Only 5 of the combining diacritics are not // on the AC row; they are in the top number row, AE. // // 3. Symbols that are used infrequently (`r', `h', `ɛ', `ǝ', etc.) are placed // in level3. Additionally, the letter eng (`ŋ'), although commonly used, // is found in level3 because it can alternatively be represented by . // (Indeed, the keyman version of keyboard actually replaces with `ŋ'.) // // 4. The unshifted AB10 key (normally assigned to the slash `/') is used as // level 3 switch since the slash is not used in the ordinary course of // typing Mmuock text. // // 5. The 'Cameroon Multilingual' keyboards that are defined elsewhere, do not // fit our needs because: (a) they are based on a different alphabet, (b) the // vast majority of their symbols are not used in Mmuock, and (c) for the few // symbols that are used in Mmuock, their placings are not egonomic for // typing Mmuock as the _PRIMARY_ language. The aim of this keyboard, is // to give priority to symbols that are actually used in the Mmuock alphabet. // // 6. The following fonts have been found to produce the best results with this // keyboard: // Family Accuracy // DejaVu (except Sans Mono) 9/10 // Linux Libertine 8/10 // Ubuntu (except light) 8/10 // Droid (except sans mono) 7/10 // Gentium, Gentium Alt 6.5/10 // In the terminal emulator, the following font variants have been tested: // Ubuntu Mono 9/10 // Unifont (Medium) 9/10 // DejaVu Sans Mono 7.5/10 // Droid Sans Mono 6.5/10 // These fonts are all freely available. // // ------the layout----------- // // ┌─────┐ // │ 2 4 │ 2 = Shift, 4 = Level3 + Shift // │ 1 3 │ 1 = Normal, 3 = Level3 // └─────┘ // // ┌─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┲━━━━━━━━━┓ // │ ~ ~ │ ! │ @ │ # │ $ │ % │ ^ │ & | * │ ( │ ) │ _ – │ + ̣┃ ⌫ Back- ┃ // AE│ ` ` │ 1 │ 2 │ 3 │ 4 │ 5 │ 6  ̂│ 7  ̑│ 8  ̍│ 9  ̓│ 0  ̊│ ¯ - │ = ̋┃ space ┃ // ┢━━━━━┷━┱───┴─┬───┴─┬───┴─┬───┴─┬───┴─┬───┴─┬───┴─┬───┴─┬───┴─┬───┴─┬───┴─┬───┺━┳━━━━━━━┫ // ┃ ┃ Q │ W │ E Ǝ │ Š R │ T │ Y │ U Ω │ I Ɛ │ O Φ │ P ∏ │ Ø { │ Σ } ┃ Enter ┃ // AD┃Tab ↹ ┃ q │ w │ e ǝ │ š r │ t │ y │ u ω │ i ɛ │ o φ │ p π │ ø [ │ σ ] ┃ ⏎ ┃ // ┣━━━━━━━┻┱────┴┬────┴┬────┴┬────┴┬────┴┬────┴┬────┴┬────┴┬────┴┬────┴┬────┴┬────┺┓ ┃ // ┃ ┃ A │ S │ D │ F │ G │  ̇ H │ J │ K │ L │ Œ : │ " ” │ Æ | ┃ ┃ // AC┃Caps ⇬ ┃ a  ̃│ s  ̄| d ́| f  ̀| g  ̌|  ̣ h │ j  ̆│ k  ̏│ l  ̈│ œ ; │ ' ’ │ æ \ ┃ ┃ // ┣━━━━━━━━┹────┬┴────┬┴────┬┴────┬┴────┬┴────┬┴────┬┴────┬┴────┬┴────┬┴────┲┷━━━━━┻━━━━━━┫ // ┃ │ Z Dz │ X │ C │ V │ B │ N ŋ │ M │ < « │ > » │ ? ┃ ┃ // AB┃Shift ⇧ │ z dz │ x │ c │ v │ b │ n Ŋ │ m │ , ‹ │ . › │ / ┃Shift ⇧ ┃ // ┣━━━━━━━┳━━━━━┷━┳━━━┷━━━┱─┴─────┴─────┴─────┴─────┴─────┴───┲━┷━━━━━╈━━━━━┻━┳━━━━━━━┳━━━┛ // ┃ ┃ ┃ ┃ ┃ ┃ ┃ ┃ // AA┃Ctrl ┃Meta ┃Alt ┃ Space ┃AltGr ⇮┃Menu ┃Ctrl ┃ // ┗━━━━━━━┻━━━━━━━┻━━━━━━━┹───────────────────────────────────┺━━━━━━━┻━━━━━━━┻━━━━━━━┛ // partial alphanumeric_keys xkb_symbols "mmuock" { include "us(basic)" include "level3(ralt_switch)" name[Group1]= "Mmuock"; key { [ 6, asciicircum, U0302 ] }; // tone 10 key { [ 7, ampersand, U0311 ] }; // tone 12 key { [ 8, asterisk, U030D ] }; // tone 13 key { [ 9, parenleft, U0307 ] }; // tone 7 key { [ 0, parenright, U030A ] }; // tone 6 key { [dead_macron, underscore, minus, endash ] }; key { [ equal, plus, U030B, dead_belowdot ] }; // U030B = tone 8 key { [ e, E, U01DD, U018E ] }; // U01DD = reversed E key { [ scaron, Scaron, r, R ] }; key { [ u, U, Greek_omega, Greek_OMEGA ] }; key { [ i, I, U025B, U0190 ] }; // U025B = open E key { [ o, O, Greek_phi, Greek_PHI ] }; key { [ p, P, Greek_pi, Greek_PI ] }; key { [ oslash, Ooblique, bracketleft, braceleft ] }; key { [Greek_sigma, Greek_SIGMA, bracketright, braceright ] }; key { [ a, A, U0303 ] }; // tone 0 key { [ s, S, U0304 ] }; // tone 1 key { [ d, D, U0301 ] }; // tone 3 key { [ f, F, U0300 ] }; // tone 4 key { [ g, G, U030C ] }; // tone 5 key { [ U0323, U0307, h, H ] }; // COMBINING DOT BELOW, ABOVE key { [ j, J, U0306 ] }; // tone 9 key { [ k, K, U030F ] }; // tone 11 key { [ l, L, U0308 ] }; // tone 14 key { [ oe, OE, semicolon, colon ] }; key { [ dead_acute, quotedbl, apostrophe ] }; key { [ dead_grave, dead_tilde, grave, asciitilde ] }; key { [ z, Z, U01F3, U01F2 ] }; // U01F3 = letter dz key { [ n, N, eng, ENG ] }; key { [ comma, less, guillemotleft, U2039 ] }; key { [ period, greater, guillemotright, U203A ] }; key { [ ae, AE, backslash, bar ] }; include "cm(solidus_switch)" }; // use slash as special key for switching to level3 partial modifier_keys xkb_symbols "solidus_switch" { key { symbols[Group1] = [ ISO_Level3_Latch, question, slash, dead_abovedot ] }; modifier_map Mod5 { ISO_Level3_Latch }; }; // ------- end of Mmuock keyboard map --------------------------------------------