cm revision 46185892
101e04c3fSmrg// ========== Cameroon Keyboards ========== 201e04c3fSmrg 37ec681f3Smrg 401e04c3fSmrg// ---------------------------------------------------------------------------- 501e04c3fSmrg// This comment was added by <fotang at mmuock dot org>, on 18-Jun-2016: 601e04c3fSmrg// 701e04c3fSmrg// All comments below this one, were in the original cm file;they do not 801e04c3fSmrg// apply to the Mmuock keyboard which is defined towards the end of this file. 901e04c3fSmrg// ---------------------------------------------------------------------------- 1001e04c3fSmrg 1101e04c3fSmrg// ****** For Instructions, see "Use of Cameroon Keyboards" section below ****** 1201e04c3fSmrg 1301e04c3fSmrg 1401e04c3fSmrg// 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. 1501e04c3fSmrg 1601e04c3fSmrg// Cameroon is officially a bilingual country, using French and English, but there are over 270 minority languages. 1701e04c3fSmrg 1801e04c3fSmrg// * Cameroon Français is an exact copy of the French France keyboard intended for AZERTY users. 1901e04c3fSmrg// * Cameroon is an exact copy of the Basic US Keyboard. I can not currently name this "Cameroon English" due to a limitation of XKB. 2001e04c3fSmrg// * 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. 2101e04c3fSmrg// * Cameroon Dvorak is described below. 2201e04c3fSmrg 2301e04c3fSmrg// ===== Use of Cameroon Keyboards ===== 2401e04c3fSmrg 2501e04c3fSmrg// == Fonts == 2601e04c3fSmrg// 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). 2701e04c3fSmrg 2801e04c3fSmrg 2901e04c3fSmrg// == Cameroon AZERTY == 3001e04c3fSmrg// 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. 3101e04c3fSmrg// 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. 3201e04c3fSmrg// 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 "!". 3301e04c3fSmrg// 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. 3401e04c3fSmrg// All Diacritics (with the exception of French Trema and Circumflex) must be typed (in order of stacking) after the letter. 3501e04c3fSmrg 3601e04c3fSmrg 3701e04c3fSmrg// == Cameroon QWERTY == 3801e04c3fSmrg// 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. 3901e04c3fSmrg// 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. 4001e04c3fSmrg// 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). 4101e04c3fSmrg// 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. 4201e04c3fSmrg// All Diacritics must be typed (in order of stacking) after the letter. 4301e04c3fSmrg 4401e04c3fSmrg 4501e04c3fSmrg// == Cameroon Dvorak == 4601e04c3fSmrg// Cameroon Dvorak is uses a similar system to Cameroon QWERTY. 4701e04c3fSmrg 487ec681f3Smrgdefault partial alphanumeric_keys 497ec681f3Smrgxkb_symbols "basic" { 5001e04c3fSmrg 517ec681f3Smrg name[Group1]="English (Cameroon)"; 527ec681f3Smrg 537ec681f3Smrg key <TLDE> { [ grave, asciitilde ] }; 547ec681f3Smrg key <AE01> { [ 1, exclam ] }; 557ec681f3Smrg key <AE02> { [ 2, at ] }; 5601e04c3fSmrg key <AE03> { [ 3, numbersign ] }; 5701e04c3fSmrg key <AE04> { [ 4, dollar ] }; 5801e04c3fSmrg key <AE05> { [ 5, percent ] }; 597ec681f3Smrg key <AE06> { [ 6, asciicircum ] }; 6001e04c3fSmrg key <AE07> { [ 7, ampersand ] }; 6101e04c3fSmrg key <AE08> { [ 8, asterisk ] }; 6201e04c3fSmrg key <AE09> { [ 9, parenleft ] }; 6301e04c3fSmrg key <AE10> { [ 0, parenright ] }; 6401e04c3fSmrg key <AE11> { [ minus, underscore ] }; 6501e04c3fSmrg key <AE12> { [ equal, plus ] }; 6601e04c3fSmrg 6701e04c3fSmrg key <AD01> { [ q, Q ] }; 6801e04c3fSmrg key <AD02> { [ w, W ] }; 6901e04c3fSmrg key <AD03> { [ e, E ] }; 7001e04c3fSmrg key <AD04> { [ r, R ] }; 7101e04c3fSmrg key <AD05> { [ t, T ] }; 7201e04c3fSmrg key <AD06> { [ y, Y ] }; 7301e04c3fSmrg key <AD07> { [ u, U ] }; 7401e04c3fSmrg key <AD08> { [ i, I ] }; 7501e04c3fSmrg key <AD09> { [ o, O ] }; 7601e04c3fSmrg key <AD10> { [ p, P ] }; 777ec681f3Smrg key <AD11> { [ bracketleft, braceleft ] }; 7801e04c3fSmrg key <AD12> { [ bracketright, braceright ] }; 7901e04c3fSmrg key <AC01> { [ a, A ] }; 8001e04c3fSmrg key <AC02> { [ s, S ] }; 8101e04c3fSmrg key <AC03> { [ d, D ] }; 8201e04c3fSmrg key <AC04> { [ f, F ] }; 8301e04c3fSmrg key <AC05> { [ g, G ] }; 8401e04c3fSmrg key <AC06> { [ h, H ] }; 8501e04c3fSmrg key <AC07> { [ j, J ] }; 8601e04c3fSmrg key <AC08> { [ k, K ] }; 8701e04c3fSmrg key <AC09> { [ l, L ] }; 8801e04c3fSmrg key <AC10> { [ semicolon, colon ] }; 8901e04c3fSmrg key <AC11> { [ apostrophe, quotedbl ] }; 9001e04c3fSmrg 9101e04c3fSmrg key <AB01> { [ z, Z ] }; 927ec681f3Smrg key <AB02> { [ x, X ] }; 937ec681f3Smrg key <AB03> { [ c, C ] }; 947ec681f3Smrg key <AB04> { [ v, V ] }; 957ec681f3Smrg key <AB05> { [ b, B ] }; 967ec681f3Smrg key <AB06> { [ n, N ] }; 977ec681f3Smrg key <AB07> { [ m, M ] }; 987ec681f3Smrg key <AB08> { [ comma, less ] }; 997ec681f3Smrg key <AB09> { [ period, greater ] }; 1007ec681f3Smrg key <AB10> { [ slash, U003F ] }; 1017ec681f3Smrg 1027ec681f3Smrg key <BKSL> { [ backslash, bar ] }; 1037ec681f3Smrg}; 1047ec681f3Smrg 1057ec681f3Smrgpartial alphanumeric_keys 1067ec681f3Smrgxkb_symbols "french" 1077ec681f3Smrg{ 1087ec681f3Smrg include "latin" 1097ec681f3Smrg name[Group1]="French (Cameroon)"; 1107ec681f3Smrg 1117ec681f3Smrg key <TLDE> { [twosuperior, asciitilde, notsign, notsign ] }; 1127ec681f3Smrg key <AE01> { [ ampersand, 1, onesuperior, exclamdown ] }; 1137ec681f3Smrg key <AE02> { [ eacute, 2, asciitilde, oneeighth ] }; 1147ec681f3Smrg key <AE03> { [ quotedbl, 3, numbersign, sterling ] }; 1157ec681f3Smrg key <AE04> { [apostrophe, 4, braceleft, dollar ] }; 1167ec681f3Smrg key <AE05> { [ parenleft, 5, bracketleft, threeeighths ] }; 1177ec681f3Smrg key <AE06> { [ minus, 6, bar, fiveeighths ] }; 1187ec681f3Smrg key <AE07> { [ egrave, 7, grave, seveneighths ] }; 1197ec681f3Smrg key <AE08> { [underscore, 8, backslash, trademark ] }; 1207ec681f3Smrg key <AE09> { [ ccedilla, 9, asciicircum, plusminus ] }; 1217ec681f3Smrg key <AE10> { [ agrave, 0, at, degree ] }; 1227ec681f3Smrg key <AE11> { [parenright, degree, bracketright, questiondown ] }; 1237ec681f3Smrg key <AE12> { [ equal, plus, braceright, dead_ogonek ] }; 1247ec681f3Smrg 1257ec681f3Smrg key <AD01> { [ a, A, ae, AE ] }; 1267ec681f3Smrg key <AD02> { [ z, Z, guillemotleft, less ] }; 1277ec681f3Smrg key <AD03> { [ e, E, EuroSign, cent ] }; 1287ec681f3Smrg key <AD11> { [dead_circumflex, dead_diaeresis, dead_diaeresis, dead_abovering ] }; 1297ec681f3Smrg key <AD12> { [ dollar, sterling, currency, dead_macron ] }; 1307ec681f3Smrg 1317ec681f3Smrg key <AC01> { [ q, Q, at, Greek_OMEGA ] }; 1327ec681f3Smrg key <AC10> { [ m, M, mu, masculine ] }; 1337ec681f3Smrg key <AC11> { [ ugrave, percent, dead_circumflex, dead_caron] }; 1347ec681f3Smrg key <BKSL> { [ asterisk, mu, dead_grave, dead_breve ] }; 1357ec681f3Smrg 1367ec681f3Smrg key <AB01> { [ w, W, lstroke, Lstroke ] }; 1377ec681f3Smrg key <AB07> { [ comma, U003F, dead_acute, dead_doubleacute ] }; 1387ec681f3Smrg key <AB08> { [ semicolon, period, U2022, multiply ] }; // bullet 1397ec681f3Smrg key <AB09> { [ colon, slash, periodcentered, division ] }; 1407ec681f3Smrg key <AB10> { [ exclam, section, dead_belowdot, dead_abovedot ] }; 1417ec681f3Smrg 1427ec681f3Smrg include "level3(ralt_switch)" 1437ec681f3Smrg}; 1447ec681f3Smrg 1457ec681f3Smrgpartial alphanumeric_keys 1467ec681f3Smrgxkb_symbols "azerty" 1477ec681f3Smrg{ 1487ec681f3Smrg include "cm(basic)" 1497ec681f3Smrg name[Group1] = "Cameroon (AZERTY, intl.)"; 1507ec681f3Smrg key <AB01> { [ w, W, U1E85, U1E84 ] }; // SMALL LETTER W, CAPITAL LETTER W, SMALL LETTER W WITH DIAERESIS, CAPITAL LETTER W WITH DIAERESIS 1517ec681f3Smrg key <AB02> { [ x, X, U2039, U203A ] }; // SMALL LETTER X, CAPITAL LETTER X, SINGLE LEFT-POINTING ANGLE QUOTATION MARK, SINGLE RIGHT-POINTING ANGLE QUOTATION MARK 1527ec681f3Smrg key <AB03> { [ c, C, U0327, copyright ] }; // SMALL LETTER C, CAPITAL LETTER C, COMBINING CEDILLA, COPYRIGHT SIGN 1537ec681f3Smrg key <AB04> { [ v, V, UA78C, UA78B ] }; // SMALL LETTER V, CAPITAL LETTER V, SMALL LETTER GLOTTAL (SALTILLO), CAPITAL LETTER GLOTTAL (SALTILLO) 1547ec681f3Smrg key <AB05> { [ b, B, U0253, U0181 ] }; // SMALL LETTER B, CAPITAL LETTER B, SMALL LETTER B WITH HOOK, CAPITAL LETTER B WITH HOOK 1557ec681f3Smrg key <AB06> { [ n, N, U014B, U014A ] }; // SMALL LETTER N, CAPITAL LETTER N, SMALL LETTER ENG, CAPITAL LETTER ENG 1567ec681f3Smrg key <AB07> { [ U002C, U003F, NoSymbol, U00D7 ] }; // COMMA, QUESTION MARK, , MULTIPLY 1577ec681f3Smrg key <AB08> { [ semicolon, period, dead_acute, dead_grave ] }; // SEMICOLON, PERIOD 1587ec681f3Smrg key <AB09> { [ colon, slash, U0323 ] }; // COLON, SLASH, COMBINING DOT BELOW 1597ec681f3Smrg key <AB10> { [ exclam, U00A7 ] }; // EXCLAMATION MARK, SECTION SIGN 1607ec681f3Smrg key <AC01> { [ q, Q, U2014, U2013 ] }; // SMALL LETTER Q, CAPITAL LETTER Q, EM DASH, EN DASH 1617ec681f3Smrg key <AC02> { [ s, S, U201C, U201D ] }; // SMALL LETTER S, CAPITAL LETTER S, LEFT DOUBLE QUOTES, RIGHT DOUBLE QUOTES 1627ec681f3Smrg key <AC03> { [ d, D, U0257, U018A ] }; // SMALL LETTER D, CAPITAL LETTER D, SMALL LETTER D WITH HOOK, CAPITAL LETTER D WITH HOOK 1637ec681f3Smrg key <AC04> { [ f, F, U00E6, U00C6 ] }; // SMALL LETTER F, CAPITAL LETTER F, SMALL LIGATURE AE, CAPITAL LIGATURE AE 1647ec681f3Smrg key <AC05> { [ g, G, U02BC, UA78B ] }; // SMALL LETTER G, CAPITAL LETTER G, CURVED GLOTTAL, CAPITAL LETTER GLOTTAL (SALTILLO) 1657ec681f3Smrg key <AC06> { [ h, H, U0251, U2C6D ] }; // SMALL LETTER H, CAPITAL LETTER H, SMALL LETTER ALPHA, CAPITAL LETTER ALPHA 1667ec681f3Smrg key <AC07> { [ j, J, leftarrow, U2122 ] }; //SMALL LETTER J, CAPITAL LETTER J, LEFT ARROW, TRADE MARK SIGN 1677ec681f3Smrg key <AC08> { [ k, K, downarrow, uparrow ] }; // SMALL LETTER K, CAPITAL LETTER K, DOWN ARROW, UP ARROW 1687ec681f3Smrg key <AC09> { [ l, L, rightarrow, U00A3 ] }; // SMALL LETTER L, CAPITAL LETTER L, RIGHT ARROW, POUND STERLING 1697ec681f3Smrg key <AC10> { [ m, M, U00F9, U00B5 ] }; // SMALL LETTER M, CAPITAL LETTER M, SMALL LETTER U WITH GRAVE, MICRO SYMBOL 1707ec681f3Smrg key <AC11> { [ U0300, U0302, U1DC5, U1DC4 ] }; // COMBINING LOW TONE, COMBINING FALLING TONE, COMBINING LOW-MID TONE, COMBINING MID-HIGH TONE 1717ec681f3Smrg key <AD01> { [ a, A, U025B, U0190 ] }; // SMALL LETTER A, CAPITAL LETTER A, SMALL LETTER OPEN E, CAPITAL LETTER OPEN E 1727ec681f3Smrg key <AD02> { [ z, Z, U2026, U2020 ] }; // SMALL LETTER Z, CAPITAL LETTER Z, ELLIPSIS, DAGGER 1737ec681f3Smrg key <AD03> { [ e, E, U0259, U018F ] }; // SMALL LETTER E, CAPITAL LETTER E, SMALL LETTER SCHWA, CAPITAL LETTER SCHWA 1747ec681f3Smrg key <AD04> { [ r, R, U25CC, U00AE ] }; // SMALL LETTER R, CAPITAL LETTER R, PLACEHOLDER SYMBOL, REGISTERED SIGN 1757ec681f3Smrg key <AD05> { [ t, T, U0153, U0152 ] }; // SMALL LETTER T, CAPITAL LETTER T, SMALL LIGATURE OE, CAPITAL LIGATURE OE 1767ec681f3Smrg key <AD06> { [ y, Y, U01B4, U01B3 ] }; // SMALL LETTER Y, CAPITAL LETTER Y, SMALL LETTER Y WITH HOOK, CAPITAL LETTER Y WITH HOOK 1777ec681f3Smrg key <AD07> { [ u, U, U0289, U0244 ] }; // SMALL LETTER U, CAPITAL LETTER U, SMALL LETTER U BAR, CAPITAL LETTER U BAR 1787ec681f3Smrg key <AD08> { [ i, I, U0268, U0197 ] }; // SMALL LETTER I, CAPITAL LETTER I, SMALL LETTER I BAR, CAPITAL LETTER I BAR 1797ec681f3Smrg key <AD09> { [ o, O, U0254, U0186 ] }; // SMALL LETTER O, CAPITAL LETTER O, SMALL LETTER OPEN O, CAPITAL LETTER OPEN O 1807ec681f3Smrg key <AD10> { [ p, P, U00F8, U00D8 ] }; // SMALL LETTER P, CAPITAL LETTER P, SMALL LETTER O BAR, CAPITAL LETTER O BAR 1817ec681f3Smrg key <AD11> { [ U0301, U030C, dead_circumflex, dead_diaeresis ] }; // COMBINING HIGH TONE, COMBINING RISING TONE, DEAD CIRCUMFLEX, DEAD DIAERESIS 1827ec681f3Smrg key <AD12> { [ U0330, U0303, U0304, U030D ] }; // COMBINING TILDE (NASAL) BELOW, COMBINING TILDE (NASAL), COMBINING MID TONE, COMBINING VERTICAL LINE ABOVE 1837ec681f3Smrg key <AE01> { [ U0026, KP_1, U00B9, U2018 ] }; // AMPERSAND, 1, SUPERSCRIPT 1, LEFT SINGLE QUOTE 1847ec681f3Smrg key <AE02> { [ eacute, KP_2, asciitilde, U2019 ] }; // SMALL LETTER E WITH ACUTE, 2, TILDE, RIGHT SINGLE QUOTE 1857ec681f3Smrg key <AE03> { [ U0022, KP_3, U0025 ] }; // QUOTATION MARK, 3, PERCENT SIGN 1867ec681f3Smrg key <AE04> { [ U0027, KP_4, U007B ] }; // APOSTROPHE, 4, LEFT CURLY BRACKET 1877ec681f3Smrg key <AE05> { [ U0028, KP_5, U005B, numbersign ] }; // LEFT PARENTHESIS, 5, LEFT SQUARE BRACKET, NUMBER SIGN 1887ec681f3Smrg key <AE06> { [ U002D, KP_6, U007C ] }; // HYPHEN/MINUS, 6, BAR 1897ec681f3Smrg key <AE07> { [ U00E8, KP_7, U0300 ] }; // SMALL LETTER E WITH GRAVE, 7, COMBINING GRAVE 1907ec681f3Smrg key <AE08> { [ underscore, KP_8, backslash, U20D6 ] }; // UNDERSCORE, 8, BACKSLASH, COMBINING LEFT ARROW ABOVE 1917ec681f3Smrg key <AE09> { [ ccedilla, KP_9, U005E] }; // SMALL LETTER C WITH CEDILLA, 9, CIRCUMFLEX 19201e04c3fSmrg key <AE10> { [ U00E0, KP_0, at, U20D7 ] }; // SMALL LETTER A WITH GRAVE 19301e04c3fSmrg key <AE11> { [ U0029, U00B0, U005D ] }; // RIGHT PARENTHESIS, DEGREE, RIGHT SQUARE BRACKET 19401e04c3fSmrg key <AE12> { [ U003D, U002B, U007D, U00B1 ] }; // EQUAL SIGN, PLUS SIGN, RIGHT CURLY BRACKET, PLUS-MINUS SIGN 19501e04c3fSmrg key <BKSL> { [ U1DC6, U1DC7, KP_Multiply, U00A4 ] }; // COMBINING MID-LOW, COMBINING HIGH-MID, MULTIPLY, CURRENCY SIGN 19601e04c3fSmrg key <LSGT> { [ U003C, U003E, U00AB, U00BB ] }; // LESS THAN, GREATER THAN, LEFT GUILLEMET, RIGHT GUILLEMET 19701e04c3fSmrg key <TLDE> { [ U0024, U20AC, U00B2, U00B3 ] }; // DOLLAR, EURO, SUPERSCRIPT 2, SUPERSCRIPT 3 1987ec681f3Smrg include "cm(exclamation_switch)" 1997ec681f3Smrg include "level3(ralt_switch)" 2007ec681f3Smrg}; 2017ec681f3Smrg 2027ec681f3Smrgpartial alphanumeric_keys 2037ec681f3Smrgxkb_symbols "qwerty" 2047ec681f3Smrg{ 20501e04c3fSmrg include "cm(basic)" 20601e04c3fSmrg name[Group1] = "Cameroon Multilingual (QWERTY, intl.)"; 20701e04c3fSmrg key <AB01> { [ z, Z, U2026, U2020 ] }; // SMALL LETTER Z, CAPITAL LETTER Z, ELLIPSIS, DAGGER 2087ec681f3Smrg key <AB02> { [ x, X ] }; // SMALL LETTER X, CAPITAL LETTER X 20901e04c3fSmrg key <AB03> { [ c, C, U0327, U00A9 ] }; // SMALL LETTER C, CAPITAL LETTER C, CEDILLA, COPYRIGHT 21001e04c3fSmrg key <AB04> { [ v, V, UA78C, UA78B ] }; // SMALL LETTER V, CAPITAL LETTER V, SMALL LETTER GLOTTAL (SALTILLO), CAPITAL LETTER GLOTTAL (SALTILLO) 21101e04c3fSmrg key <AB05> { [ b, B, U0253, U0181 ] }; // SMALL LETTER B, CAPITAL LETTER B, SMALL LETTER B WITH HOOK, CAPITAL LETTER B WITH HOOK 21201e04c3fSmrg key <AB06> { [ n, N, U014B, U014A ] }; // SMALL LETTER N, CAPITAL LETTER N, SMALL LETTER ENG, CAPITAL LETTER ENG 21301e04c3fSmrg key <AB07> { [ m, M, NoSymbol, U2122 ] }; // SMALL LETTER M, CAPITAL LETTER M, , TRADEMARK SIGN 21401e04c3fSmrg key <AB08> { [ U002C, U003C, U2039, U00AB ] }; // COMMA, LESS THAN SIGN, LEFT SINGLE GUILLEMET, LEFT DOUBLE GUILLEMET 21501e04c3fSmrg key <AB09> { [ U002E, U003E, U203A, U00BB ] }; // PERIOD, GREATER THAN SIGN, RIGHT SINGLE GUILLEMET, RIGHT DOUBLE GUILLEMET 21601e04c3fSmrg key <AB10> { [ U002F, U003F, U00F7 ] }; // SLASH, QUESTION MARK, DIVISION SIGN 21701e04c3fSmrg key <AC01> { [ a, A, U025B, U0190 ] }; // SMALL LETTER A, CAPITAL LETTER A, SMALL LETTER OPEN E, CAPITAL LETTER OPEN E 21801e04c3fSmrg key <AC02> { [ s, S ] }; // SMALL LETTER S, CAPITAL LETTER S 21901e04c3fSmrg key <AC03> { [ d, D, U0257, U018A ] }; // SMALL LETTER D, CAPITAL LETTER D, SMALL LETTER D WITH HOOK, CAPITAL LETTER D WITH HOOK 22001e04c3fSmrg key <AC04> { [ f, F, U00E6, U00C6 ] }; // SMALL LETTER F, CAPITAL LETTER F, SMALL LIGATURE AE, CAPITAL LIGATURE AE 22101e04c3fSmrg key <AC05> { [ g, G, U02BC, UA78B ] }; // SMALL LETTER G, CAPITAL LETTER G, CURVED GLOTTAL, CAPITAL LETTER GLOTTAL (SALTILLO) 22201e04c3fSmrg key <AC06> { [ h, H, U0251, U2C6D ] }; // SMALL LETTER H, CAPITAL LETTER H, SMALL LETTER ALPHA, CAPITAL LETTER ALPHA 22301e04c3fSmrg key <AC07> { [ j, J, U0330, U0323 ] }; // SMALL LETTER J, CAPITAL LETTER J, COMBINING TILDE (NASAL) BELOW, COMBINING DOT BELOW 22401e04c3fSmrg key <AC08> { [ k, K, U1DC5, U1DC7 ] }; // SMALL LETTER K, CAPITAL LETTER K, COMBINING LOW-MID TONE, COMBINING HIGH-MID 22501e04c3fSmrg key <AC09> { [ l, L, U1DC6, U1DC4 ] }; // SMALL LETTER L, CAPITAL LETTER L, COMBINING MID-LOW, COMBINING MID-HIGH TONE 22601e04c3fSmrg key <AC10> { [ U003B, U003A ] }; // SEMICOLON, COLON 22701e04c3fSmrg key <AC11> { [ U0300, U0302, U0027, U0022 ] }; // COMBINING LOW TONE, COMBINING FALLING TONE, APOSTROPHE, QUOTATION MARK 22801e04c3fSmrg key <AD01> { [ q, Q, U2014, U2013 ] }; // SMALL LETTER Q, CAPITAL LETTER Q, EM DASH, EN DASH 22901e04c3fSmrg key <AD02> { [ w, W, U1E85, U1E84 ] }; // SMALL LETTER W, CAPITAL LETTER W, SMALL LETTER W WITH DIAERESIS, CAPITAL LETTER W WITH DIAERESIS 23001e04c3fSmrg key <AD03> { [ e, E, U0259, U018F ] }; // SMALL LETTER E, CAPITAL LETTER E, SMALL LETTER SCHWA, CAPITAL LETTER SCHWA 23101e04c3fSmrg key <AD04> { [ r, R, U25CC, U00AE ] }; // SMALL LETTER R, CAPITAL LETTER R, PLACEHOLDER SYMBOL, REGISTERED SIGN 23201e04c3fSmrg key <AD05> { [ t, T, U0153, U0152 ] }; // SMALL LETTER T, CAPITAL LETTER T, SMALL LIGATURE OE, CAPITAL LIGATURE OE 23301e04c3fSmrg key <AD06> { [ y, Y, U01B4, U01B3 ] }; // SMALL LETTER Y, CAPITAL LETTER Y, SMALL LETTER Y WITH HOOK, CAPITAL LETTER Y WITH HOOK 23401e04c3fSmrg key <AD07> { [ u, U, U0289, U0244 ] }; // SMALL LETTER U, CAPITAL LETTER U, SMALL LETTER U BAR, CAPITAL LETTER U BAR 2357ec681f3Smrg key <AD08> { [ i, I, U0268, U0197 ] }; // SMALL LETTER I, CAPITAL LETTER I, SMALL LETTER I BAR, CAPITAL LETTER I BAR 2367ec681f3Smrg key <AD09> { [ o, O, U0254, U0186 ] }; // SMALL LETTER O, CAPITAL LETTER O, SMALL LETTER OPEN O, CAPITAL LETTER OPEN O 2377ec681f3Smrg key <AD10> { [ p, P, U00F8, U00D8 ] }; // SMALL LETTER P, CAPITAL LETTER P, SMALL LETTER O BAR, CAPITAL LETTER O BAR 23801e04c3fSmrg key <AD11> { [ U0301, U030C, U005B, U007B ] }; // COMBINING HIGH TONE, COMBINING RISING TONE, LEFT SQUARE BRACKET, LEFT CURLY BRACKET 23901e04c3fSmrg key <AD12> { [ U0327, U0308, U005D, U007D ] }; // COMBINING CEDILLA, COMBINING DIAERESIS, RIGHT SQUARE BRACKET, RIGHT CURLY BRACKET 2407ec681f3Smrg key <AE01> { [ U0031, U0021, U00BC ] }; // 1, EXCLAMATION POINT, ONE QUARTER 2417e102996Smaya key <AE02> { [ U0032, U0040, U00BD ] }; //2, AT SYMBOL, ONE HALF 2427e102996Smaya key <AE03> { [ U0033, U0023, U00BE ] }; // 3, NUMBER SIGN, THREE QUARTERS 2437e102996Smaya key <AE04> { [ U0034, U0024, NoSymbol, U20AC ] }; // 4, DOLLAR, , EURO SIGN 2447e102996Smaya key <AE08> { [ U0038, U002A, NoSymbol, U00D7 ] }; // 8, ASTERISK, , MATH MULTIPLY 2457e102996Smaya key <AE09> { [ U0039, U0028, U2018, U201C ] }; // 9, LEFT PARENTHESIS, LEFT SINGLE QUOTE MARK, LEFT DOUBLE QUOTE MARK 2467e102996Smaya key <AE10> { [ U0030, U0029, U2019, U201D ] }; // 0, RIGHT PARENTHESIS, RIGHT SINGLE QUOTE MARK, LEFT DOUBLE QUOTE MARK 2477e102996Smaya key <AE11> { [ U002D, U005F, U0304 ] }; // MINUS, UNDERSCORE, COMBINING MID TONE, COMBINING MID TONE 2487e102996Smaya key <AE12> { [ U003D, U002B, NoSymbol, U00B1 ] }; // EQUAL, PLUS, , PLUS-MINUS 2497ec681f3Smrg key <BKSL> { [ U005C, U007C ] }; // BACKSLASH, BAR 2507e102996Smaya key <TLDE> { [ U030D, U0303, U0060, U007E ] }; // COMBINING VERTICAL LINE ABOVE, COMBINING TILDE ABOVE, GRAVE ACCENT, TILDE 2517e102996Smaya include "cm(semicolon_switch)" 2527ec681f3Smrg include "level3(ralt_switch)" 2537e102996Smaya}; 2547e102996Smaya 2557e102996Smayapartial alphanumeric_keys 2567e102996Smayaxkb_symbols "dvorak" 2577ec681f3Smrg{ 2587e102996Smaya include "us(dvorak)" 2597e102996Smaya name[Group1] = "Cameroon (Dvorak, intl.)"; 26001e04c3fSmrg key <AB01> { [ semicolon, colon ] }; // SEMICOLON, COLON 26101e04c3fSmrg key <AB02> { [ q, Q, U2014, U2013 ] }; // SMALL LETTER Q, CAPITAL LETTER Q, EM DASH, EN DASH 26201e04c3fSmrg key <AB03> { [ j, J, U0330, U0323 ] }; // SMALL LETTER J, CAPITAL LETTER J, COMBINING TILDE (NASAL) BELOW, COMBINING DOT BELOW 26301e04c3fSmrg key <AB04> { [ k, K, U1DC5, U1DC7 ] }; // SMALL LETTER K, CAPITAL LETTER K, COMBINING LOW-MID TONE, COMBINING HIGH-MID 26401e04c3fSmrg key <AB05> { [ x, X ] }; // SMALL LETTER X, CAPITAL LETTER X 26501e04c3fSmrg key <AB06> { [ b, B, U0253, U0181 ] }; // SMALL LETTER B, CAPITAL LETTER B, SMALL LETTER B WITH HOOK, CAPITAL LETTER B WITH HOOK 2667ec681f3Smrg key <AB07> { [ m, M, NoSymbol, U2122 ] }; // SMALL LETTER M, CAPITAL LETTER M, , TRADEMARK SIGN 26701e04c3fSmrg key <AB08> { [ w, W, U1E85, U1E84 ] }; // SMALL LETTER W, CAPITAL LETTER W, SMALL LETTER W WITH DIAERESIS, CAPITAL LETTER W WITH DIAERESIS 26801e04c3fSmrg key <AB09> { [ v, V, UA78C, UA78B ] }; // SMALL LETTER V, CAPITAL LETTER V, SMALL LETTER GLOTTAL (SALTILLO), CAPITAL LETTER GLOTTAL (SALTILLO) 26901e04c3fSmrg key <AB10> { [ z, Z, U2026, U2020 ] }; // SMALL LETTER Z, CAPITAL LETTER Z, ELLIPSIS, DAGGER 27001e04c3fSmrg key <AC01> { [ a, A, U025B, U0190 ] }; // SMALL LETTER A, CAPITAL LETTER A, SMALL LETTER OPEN E, CAPITAL LETTER OPEN E 2717e102996Smaya key <AC02> { [ o, O, U0254, U0186 ] }; // SMALL LETTER O, CAPITAL LETTER O, SMALL LETTER OPEN O, CAPITAL LETTER OPEN O 27201e04c3fSmrg key <AC03> { [ e, E, U0259, U018F ] }; // SMALL LETTER E, CAPITAL LETTER E, SMALL LETTER SCHWA, CAPITAL LETTER SCHWA 27301e04c3fSmrg key <AC04> { [ u, U, U0289, U0244 ] }; // SMALL LETTER U, CAPITAL LETTER U, SMALL LETTER U BAR, CAPITAL LETTER U BAR 27401e04c3fSmrg key <AC05> { [ i, I, U0268, U0197 ] }; // SMALL LETTER I, CAPITAL LETTER I, SMALL LETTER I BAR, CAPITAL LETTER I BAR 27501e04c3fSmrg key <AC06> { [ d, D, U0257, U018A ] }; // SMALL LETTER D, CAPITAL LETTER D, SMALL LETTER D WITH HOOK, CAPITAL LETTER D WITH HOOK 27601e04c3fSmrg key <AC07> { [ h, H, U0251, U2C6D ] }; // SMALL LETTER H, CAPITAL LETTER H, SMALL LETTER ALPHA, CAPITAL LETTER ALPHA 2777e102996Smaya key <AC08> { [ t, T, U0153, U0152 ] }; // SMALL LETTER T, CAPITAL LETTER T, SMALL LIGATURE OE, CAPITAL LIGATURE OE 27801e04c3fSmrg key <AC09> { [ n, N, U014B, U014A ] }; // SMALL LETTER N, CAPITAL LETTER N, SMALL LETTER ENG, CAPITAL LETTER ENG 27901e04c3fSmrg key <AC10> { [ s, S ] }; // SMALL LETTER S, CAPITAL LETTER S 28001e04c3fSmrg key <AC11> { [ minus, underscore, U0304 ] }; // MINUS, UNDERSCORE, COMBINING MID TONE 2817ec681f3Smrg key <AD01> { [ U0300, U0302, U0027, U0022 ] }; // COMBINING LOW TONE, COMBINING FALLING TONE, APOSTROPHE, QUOTATION MARK 28201e04c3fSmrg key <AD02> { [ comma, less, U2039, U00AB ] }; // COMMA, LESS THAN SIGN, LEFT SINGLE GUILLEMET, LEFT DOUBLE GUILLEMET 28301e04c3fSmrg key <AD03> { [ period, greater, U203A, U00BB ] }; // PERIOD, GREATER THAN SIGN, RIGHT SINGLE GUILLEMET, RIGHT DOUBLE GUILLEMET 28401e04c3fSmrg key <AD04> { [ p, P, U00F8, U00D8 ] }; // SMALL LETTER P, CAPITAL LETTER P, SMALL LETTER O BAR, CAPITAL LETTER O BAR 2857ec681f3Smrg key <AD05> { [ y, Y, U01B4, U01B3 ] }; // SMALL LETTER Y, CAPITAL LETTER Y, SMALL LETTER Y WITH HOOK, CAPITAL LETTER Y WITH HOOK 2867ec681f3Smrg key <AD06> { [ f, F, U00E6, U00C6 ] }; // SMALL LETTER F, CAPITAL LETTER F, SMALL LIGATURE AE, CAPITAL LIGATURE AE 2877ec681f3Smrg key <AD07> { [ g, G, U02BC, UA78B ] }; // SMALL LETTER G, CAPITAL LETTER G, CURVED GLOTTAL, CAPITAL LETTER GLOTTAL (SALTILLO) 2887ec681f3Smrg key <AD08> { [ c, C, U0327, U00A9 ] }; // SMALL LETTER C, CAPITAL LETTER C, CEDILLA, COPYRIGHT 2897ec681f3Smrg key <AD09> { [ r, R, U25CC, U00AE ] }; // SMALL LETTER R, CAPITAL LETTER R, PLACEHOLDER SYMBOL, REGISTERED SIGN 2907ec681f3Smrg key <AD10> { [ l, L, U1DC6, U1DC4 ] }; // SMALL LETTER L, CAPITAL LETTER L, COMBINING MID-LOW, COMBINING MID-HIGH TONE 2917ec681f3Smrg key <AD11> { [ slash, U003F, U00F7, U0294 ] }; // SLASH, QUESTION MARK, DIVISION SIGN, GLOTTAL STOP 2927ec681f3Smrg key <AD12> { [ equal, plus, NoSymbol, plusminus ] }; // EQUAL, PLUS, , PLUS-MINUS 2937ec681f3Smrg key <AE01> { [ KP_1, exclam, U00BC ] }; // 1, EXCLAMATION POINT, ONE QUARTER 2947ec681f3Smrg key <AE02> { [ KP_2, at, U00BD ] }; // 2, AT SYMBOL, ONE HALF 2957ec681f3Smrg key <AE03> { [ KP_3, numbersign, U00BE ] }; // 3, NUMBER SIGN, THREE QUARTERS 29601e04c3fSmrg key <AE04> { [ KP_4, dollar, NoSymbol, U20AC ] }; // 4, DOLLAR, , EURO SIGN 29701e04c3fSmrg key <AE05> { [ KP_5, percent ] }; // 5, PERCENT 29801e04c3fSmrg key <AE06> { [ KP_6, asciicircum ] }; // 6, CARET 29901e04c3fSmrg key <AE07> { [ KP_7, ampersand ] }; // 7, AMPERSAND 30001e04c3fSmrg key <AE08> { [ KP_8, asterisk, NoSymbol, multiply ] }; // 8, ASTERISK, , MULTIPLY 30101e04c3fSmrg key <AE09> { [ KP_9, parenleft, leftsinglequotemark, leftdoublequotemark ] }; // 9, LEFT PARENTHESIS, LEFT SINGLE QUOTE MARK, LEFT DOUBLE QUOTE MARK 30201e04c3fSmrg key <AE10> { [ KP_0, parenright, rightsinglequotemark, rightdoublequotemark ] }; // 0, RIGHT PARENTHESIS, RIGHT SINGLE QUOTE MARK, LEFT DOUBLE QUOTE MARK 30301e04c3fSmrg key <AE11> { [ U0301, U030C, U005B, U007B ] }; // COMBINING HIGH TONE, COMBINING RISING TONE, LEFT SQUARE BRACKET, LEFT CURLY BRACKET 30401e04c3fSmrg key <AE12> { [ U0327, dead_diaeresis, U005D, braceright ] }; // COMBINING CEDILLA, DEAD DIAERESIS, RIGHT SQUARE BRACKET, RIGHT CURLY BRACKET 30501e04c3fSmrg key <BKSL> { [ backslash, bar ] }; // BACKSLASH, BAR 30601e04c3fSmrg key <TLDE> { [ U030D, U0303, U0060, U007E ] }; // COMBINING VERTICAL LINE ABOVE, COMBINING TILDE ABOVE, GRAVE ACCENT, TILDE 30701e04c3fSmrg include "cm(semicolon_switch_dvorak)" 30801e04c3fSmrg include "level3(ralt_switch)" 30901e04c3fSmrg}; 31001e04c3fSmrg 3117ec681f3Smrg// The following code creates the "Cameroon key" phenomenon. 3127ec681f3Smrg 3137ec681f3Smrgpartial modifier_keys 3147ec681f3Smrgxkb_symbols "semicolon_switch" { 3157ec681f3Smrg key <AC10> { 3167ec681f3Smrg symbols[Group1] = [ ISO_Level3_Latch, colon, semicolon, colon ]}; 31701e04c3fSmrg modifier_map Mod5 { ISO_Level3_Latch }; 3187ec681f3Smrg}; 3197ec681f3Smrg 3207ec681f3Smrgpartial modifier_keys 32101e04c3fSmrgxkb_symbols "exclamation_switch" { 32201e04c3fSmrg key <AB10> { 3237ec681f3Smrg symbols[Group1] = [ ISO_Level3_Latch, U00A7, exclam, U00A7 ] 3247ec681f3Smrg }; 3257ec681f3Smrg modifier_map Mod5 { ISO_Level3_Latch }; 3267ec681f3Smrg}; 3277ec681f3Smrg 3287ec681f3Smrgpartial modifier_keys 3297ec681f3Smrgxkb_symbols "semicolon_switch_dvorak" { 3307ec681f3Smrg key <AB01> { 3317ec681f3Smrg symbols[Group1] = [ ISO_Level3_Latch, colon, semicolon, colon ] 3327ec681f3Smrg }; 3337ec681f3Smrgmodifier_map Mod5 { ISO_Level3_Latch }; 3347ec681f3Smrg}; 3357ec681f3Smrg 3367ec681f3Smrg 3377ec681f3Smrg// ------- begin Mmuock alphabet layout ------------------------------------------ 3387ec681f3Smrg// This layout is used for the Mmuock alphabet as described in the book 3397ec681f3Smrg// _The Sound of Mmuock: Orthography (2. ed.)_ [isbn: 978-9956-645-28-1]. 3407ec681f3Smrg// Mmuock is the language of the Mmuock (local: Muòk) people of Western 3417ec681f3Smrg// Cameroon. 3427ec681f3Smrg// 3437ec681f3Smrg// Author: Tano Fotang <fotang at mmuock dot org> 3447ec681f3Smrg// Created: 2014-06-24 3457ec681f3Smrg// Version: 1.2 3467ec681f3Smrg// 3477ec681f3Smrg// CHANGES v 1.0: 3487ec681f3Smrg// 2014-07-06 corrected shifted level3 of <AC11> to quotedbl 3497ec681f3Smrg// CHANGES v 1.1: 3507ec681f3Smrg// 2015-05-23 1- added dead_tilde to key <TILDE>; this is needed to produce 3517ec681f3Smrg// the letter <ñ> which was totally missing from the keyboard 3527ec681f3Smrg// 2- added letter <dz> to <AB01>; the letter had been missing. 3537ec681f3Smrg// 3- if we're not re-defining particular symbols from the included 3547ec681f3Smrg// latin layout, then maintain the original latin mappings. 3557ec681f3Smrg// Previously, we had set them to NoSymbol. Now, we want to 3567ec681f3Smrg// keep the original latin mappings except for those few that we 3577ec681f3Smrg// want to overwrite for our own keyboard. 3587ec681f3Smrg// 3597ec681f3Smrg// CHANGES v 1.2: 3607ec681f3Smrg// 2016-06-17 1- added dead keys dead_macron, dead_acute, and dead_grave for 3617ec681f3Smrg// tones 1, 3, and 4, for compatibility with the Keyman version. 3627ec681f3Smrg// 2- rearranged combining diacritics for tones 0 to 5 such that 36301e04c3fSmrg// the diacritics are on consequetive keys (AC01 to AC05). 36401e04c3fSmrg// 3- moved tone 8 to level 3 of AE12. 36501e04c3fSmrg// 4- moved layout definition out of the EXTRAS section. 36601e04c3fSmrg// 5- for a cleaner keyboard, 36701e04c3fSmrg// replaced ṭhe included latin layout with us(basic). 36801e04c3fSmrg// 36901e04c3fSmrg// 37001e04c3fSmrg// NOTES: 3717ec681f3Smrg// 0. This map is based on the Latin alphabet layout for the US keyboard. 3727ec681f3Smrg// 37301e04c3fSmrg// 1. We use combining diacritical marks to create tone markings. There are 13 37401e04c3fSmrg// tones that need to be indicated, although the first 5 are usually enough 37501e04c3fSmrg// to represent the rest in simplified orthography. 37601e04c3fSmrg// 37701e04c3fSmrg// 2. When composing Mmuock text, about every fourth symbol is for tone. To 3787ec681f3Smrg// facilitate easy and fast input, the combining diacritics are placed on 37901e04c3fSmrg// the home row (AC). To reduce the number of key strokes required, the 3807ec681f3Smrg// unshifted third level is used. Only 5 of the combining diacritics are not 3817ec681f3Smrg// on the AC row; they are in the top number row, AE. 3827ec681f3Smrg// 3837ec681f3Smrg// 3. Symbols that are used infrequently (`r', `h', `ɛ', `ǝ', etc.) are placed 3847ec681f3Smrg// in level3. Additionally, the letter eng (`ŋ'), although commonly used, 3857ec681f3Smrg// is found in level3 because it can alternatively be represented by <ng>. 3867ec681f3Smrg// (Indeed, the keyman version of keyboard actually replaces <ng> with `ŋ'.) 3877ec681f3Smrg// 3887ec681f3Smrg// 4. The unshifted AB10 key (normally assigned to the slash `/') is used as 3897ec681f3Smrg// level 3 switch since the slash is not used in the ordinary course of 3907ec681f3Smrg// typing Mmuock text. 3917ec681f3Smrg// 3927ec681f3Smrg// 5. The 'Cameroon Multilingual' keyboards that are defined elsewhere, do not 3937ec681f3Smrg// fit our needs because: (a) they are based on a different alphabet, (b) the 3947ec681f3Smrg// vast majority of their symbols are not used in Mmuock, and (c) for the few 3957ec681f3Smrg// symbols that are used in Mmuock, their placings are not egonomic for 3967ec681f3Smrg// typing Mmuock as the _PRIMARY_ language. The aim of this keyboard, is 3977ec681f3Smrg// to give priority to symbols that are actually used in the Mmuock alphabet. 3987ec681f3Smrg// 3997ec681f3Smrg// 6. The following fonts have been found to produce the best results with this 4007ec681f3Smrg// keyboard: 4017ec681f3Smrg// Family Accuracy 4027ec681f3Smrg// DejaVu (except Sans Mono) 9/10 4037ec681f3Smrg// Linux Libertine 8/10 4047ec681f3Smrg// Ubuntu (except light) 8/10 4057ec681f3Smrg// Droid (except sans mono) 7/10 40601e04c3fSmrg// Gentium, Gentium Alt 6.5/10 4077ec681f3Smrg// In the terminal emulator, the following font variants have been tested: 4087ec681f3Smrg// Ubuntu Mono 9/10 4097ec681f3Smrg// Unifont (Medium) 9/10 4107ec681f3Smrg// DejaVu Sans Mono 7.5/10 4117ec681f3Smrg// Droid Sans Mono 6.5/10 4127ec681f3Smrg// These fonts are all freely available. 4137ec681f3Smrg// 4147ec681f3Smrg// ------the layout----------- 4157ec681f3Smrg// 4167ec681f3Smrg// ┌─────┐ 4177ec681f3Smrg// │ 2 4 │ 2 = Shift, 4 = Level3 + Shift 41801e04c3fSmrg// │ 1 3 │ 1 = Normal, 3 = Level3 41901e04c3fSmrg// └─────┘ 4207ec681f3Smrg// 42101e04c3fSmrg// ┌─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┲━━━━━━━━━┓ 4227ec681f3Smrg// │ ~ ~ │ ! │ @ │ # │ $ │ % │ ^ │ & | * │ ( │ ) │ _ – │ + ̣┃ ⌫ Back- ┃ 423// AE│ ` ` │ 1 │ 2 │ 3 │ 4 │ 5 │ 6 ̂│ 7 ̑│ 8 ̍│ 9 ̓│ 0 ̊│ ¯ - │ = ̋┃ space ┃ 424// ┢━━━━━┷━┱───┴─┬───┴─┬───┴─┬───┴─┬───┴─┬───┴─┬───┴─┬───┴─┬───┴─┬───┴─┬───┴─┬───┺━┳━━━━━━━┫ 425// ┃ ┃ Q │ W │ E Ǝ │ Š R │ T │ Y │ U Ω │ I Ɛ │ O Φ │ P ∏ │ Ø { │ Σ } ┃ Enter ┃ 426// AD┃Tab ↹ ┃ q │ w │ e ǝ │ š r │ t │ y │ u ω │ i ɛ │ o φ │ p π │ ø [ │ σ ] ┃ ⏎ ┃ 427// ┣━━━━━━━┻┱────┴┬────┴┬────┴┬────┴┬────┴┬────┴┬────┴┬────┴┬────┴┬────┴┬────┴┬────┺┓ ┃ 428// ┃ ┃ A │ S │ D │ F │ G │ ̇ H │ J │ K │ L │ Œ : │ " ” │ Æ | ┃ ┃ 429// AC┃Caps ⇬ ┃ a ̃│ s ̄| d ́| f ̀| g ̌| ̣ h │ j ̆│ k ̏│ l ̈│ œ ; │ ' ’ │ æ \ ┃ ┃ 430// ┣━━━━━━━━┹────┬┴────┬┴────┬┴────┬┴────┬┴────┬┴────┬┴────┬┴────┬┴────┬┴────┲┷━━━━━┻━━━━━━┫ 431// ┃ │ Z Dz │ X │ C │ V │ B │ N ŋ │ M │ < « │ > » │ ? ┃ ┃ 432// AB┃Shift ⇧ │ z dz │ x │ c │ v │ b │ n Ŋ │ m │ , ‹ │ . › │ / ┃Shift ⇧ ┃ 433// ┣━━━━━━━┳━━━━━┷━┳━━━┷━━━┱─┴─────┴─────┴─────┴─────┴─────┴───┲━┷━━━━━╈━━━━━┻━┳━━━━━━━┳━━━┛ 434// ┃ ┃ ┃ ┃ ┃ ┃ ┃ ┃ 435// AA┃Ctrl ┃Meta ┃Alt ┃ Space ┃AltGr ⇮┃Menu ┃Ctrl ┃ 436// ┗━━━━━━━┻━━━━━━━┻━━━━━━━┹───────────────────────────────────┺━━━━━━━┻━━━━━━━┻━━━━━━━┛ 437// 438 439partial alphanumeric_keys 440xkb_symbols "mmuock" { 441 442 include "us(basic)" 443 include "level3(ralt_switch)" 444 445 name[Group1]= "Mmuock"; 446 key <TLDE> { [ dead_grave, dead_tilde, grave, asciitilde ] }; 447 key <AE06> { [ 6, asciicircum, U0302 ] }; // tone 10 448 key <AE07> { [ 7, ampersand, U0311 ] }; // tone 12 449 key <AE08> { [ 8, asterisk, U030D ] }; // tone 13 450 key <AE09> { [ 9, parenleft, U0307 ] }; // tone 7 451 key <AE10> { [ 0, parenright, U030A ] }; // tone 6 452 key <AE11> { [dead_macron, underscore, minus, endash ] }; 453 key <AE12> { [ equal, plus, U030B, dead_belowdot ] }; // U030B = tone 8 454 455 key <AD03> { [ e, E, U01DD, U018E ] }; // U01DD = reversed E 456 key <AD04> { [ scaron, Scaron, r, R ] }; 457 key <AD07> { [ u, U, Greek_omega, Greek_OMEGA ] }; 458 key <AD08> { [ i, I, U025B, U0190 ] }; // U025B = open E 459 key <AD09> { [ o, O, Greek_phi, Greek_PHI ] }; 460 key <AD10> { [ p, P, Greek_pi, Greek_PI ] }; 461 key <AD11> { [ oslash, Oslash, bracketleft, braceleft ] }; 462 key <AD12> { [Greek_sigma, Greek_SIGMA, bracketright, braceright ] }; 463 464 key <AC01> { [ a, A, U0303 ] }; // tone 0 465 key <AC02> { [ s, S, U0304 ] }; // tone 1 466 key <AC03> { [ d, D, U0301 ] }; // tone 3 467 key <AC04> { [ f, F, U0300 ] }; // tone 4 468 key <AC05> { [ g, G, U030C ] }; // tone 5 469 key <AC06> { [ U0323, U0307, h, H ] }; // COMBINING DOT BELOW, ABOVE 470 key <AC07> { [ j, J, U0306 ] }; // tone 9 471 key <AC08> { [ k, K, U030F ] }; // tone 11 472 key <AC09> { [ l, L, U0308 ] }; // tone 14 473 key <AC10> { [ oe, OE, semicolon, colon ] }; 474 key <AC11> { [ dead_acute, quotedbl, apostrophe ] }; 475 key <BKSL> { [ ae, AE, backslash, bar ] }; 476 477 key <AB01> { [ z, Z, U01F3, U01F2 ] }; // U01F3 = letter dz 478 key <AB06> { [ n, N, eng, ENG ] }; 479 key <AB08> { [ comma, less, guillemotleft, U2039 ] }; 480 key <AB09> { [ period, greater, guillemotright, U203A ] }; 481 482 include "cm(solidus_switch)" 483}; 484// use slash as special key for switching to level3 485partial modifier_keys 486xkb_symbols "solidus_switch" { 487 key <AB10> { 488 symbols[Group1] = [ ISO_Level3_Latch, question, slash, dead_abovedot ] 489 }; 490 modifier_map Mod5 { ISO_Level3_Latch }; 491}; 492// ------- end of Mmuock keyboard map -------------------------------------------- 493