1 1.1 mrg // ========== Cameroon Keyboards ========== 2 1.1.1.6 snj 3 1.1.1.6 snj 4 1.1.1.6 snj // ---------------------------------------------------------------------------- 5 1.1.1.6 snj // This comment was added by <fotang at mmuock dot org>, on 18-Jun-2016: 6 1.1.1.6 snj // 7 1.1.1.6 snj // All comments below this one, were in the original cm file;they do not 8 1.1.1.6 snj // apply to the Mmuock keyboard which is defined towards the end of this file. 9 1.1.1.6 snj // ---------------------------------------------------------------------------- 10 1.1.1.6 snj 11 1.1 mrg // ****** For Instructions, see "Use of Cameroon Keyboards" section below ****** 12 1.1 mrg 13 1.1 mrg 14 1.1 mrg // 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. 15 1.1 mrg 16 1.1 mrg // Cameroon is officially a bilingual country, using French and English, but there are over 270 minority languages. 17 1.1 mrg 18 1.1 mrg // * Cameroon Franais is an exact copy of the French France keyboard intended for AZERTY users. 19 1.1 mrg // * Cameroon is an exact copy of the Basic US Keyboard. I can not currently name this "Cameroon English" due to a limitation of XKB. 20 1.1 mrg // * 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. 21 1.1 mrg // * Cameroon Dvorak is described below. 22 1.1 mrg 23 1.1 mrg // ===== Use of Cameroon Keyboards ===== 24 1.1 mrg 25 1.1 mrg // == Fonts == 26 1.1 mrg // 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). 27 1.1 mrg 28 1.1 mrg 29 1.1 mrg // == Cameroon AZERTY == 30 1.1 mrg // 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. 31 1.1 mrg // 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. 32 1.1 mrg // 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 "!". 33 1.1 mrg // 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. 34 1.1 mrg // All Diacritics (with the exception of French Trema and Circumflex) must be typed (in order of stacking) after the letter. 35 1.1 mrg 36 1.1 mrg 37 1.1 mrg // == Cameroon QWERTY == 38 1.1 mrg // 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. 39 1.1 mrg // 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. 40 1.1 mrg // 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). 41 1.1 mrg // 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. 42 1.1 mrg // All Diacritics must be typed (in order of stacking) after the letter. 43 1.1 mrg 44 1.1 mrg 45 1.1 mrg // == Cameroon Dvorak == 46 1.1 mrg // Cameroon Dvorak is uses a similar system to Cameroon QWERTY. 47 1.1 mrg 48 1.1.1.8 mrg default partial alphanumeric_keys 49 1.1 mrg xkb_symbols "basic" { 50 1.1 mrg 51 1.1 mrg name[Group1]="English (Cameroon)"; 52 1.1 mrg 53 1.1 mrg key <TLDE> { [ grave, asciitilde ] }; 54 1.1 mrg key <AE01> { [ 1, exclam ] }; 55 1.1 mrg key <AE02> { [ 2, at ] }; 56 1.1 mrg key <AE03> { [ 3, numbersign ] }; 57 1.1 mrg key <AE04> { [ 4, dollar ] }; 58 1.1 mrg key <AE05> { [ 5, percent ] }; 59 1.1 mrg key <AE06> { [ 6, asciicircum ] }; 60 1.1 mrg key <AE07> { [ 7, ampersand ] }; 61 1.1 mrg key <AE08> { [ 8, asterisk ] }; 62 1.1 mrg key <AE09> { [ 9, parenleft ] }; 63 1.1 mrg key <AE10> { [ 0, parenright ] }; 64 1.1 mrg key <AE11> { [ minus, underscore ] }; 65 1.1 mrg key <AE12> { [ equal, plus ] }; 66 1.1 mrg 67 1.1 mrg key <AD01> { [ q, Q ] }; 68 1.1 mrg key <AD02> { [ w, W ] }; 69 1.1 mrg key <AD03> { [ e, E ] }; 70 1.1 mrg key <AD04> { [ r, R ] }; 71 1.1 mrg key <AD05> { [ t, T ] }; 72 1.1 mrg key <AD06> { [ y, Y ] }; 73 1.1 mrg key <AD07> { [ u, U ] }; 74 1.1 mrg key <AD08> { [ i, I ] }; 75 1.1 mrg key <AD09> { [ o, O ] }; 76 1.1 mrg key <AD10> { [ p, P ] }; 77 1.1 mrg key <AD11> { [ bracketleft, braceleft ] }; 78 1.1 mrg key <AD12> { [ bracketright, braceright ] }; 79 1.1 mrg key <AC01> { [ a, A ] }; 80 1.1 mrg key <AC02> { [ s, S ] }; 81 1.1 mrg key <AC03> { [ d, D ] }; 82 1.1 mrg key <AC04> { [ f, F ] }; 83 1.1 mrg key <AC05> { [ g, G ] }; 84 1.1 mrg key <AC06> { [ h, H ] }; 85 1.1 mrg key <AC07> { [ j, J ] }; 86 1.1 mrg key <AC08> { [ k, K ] }; 87 1.1 mrg key <AC09> { [ l, L ] }; 88 1.1 mrg key <AC10> { [ semicolon, colon ] }; 89 1.1 mrg key <AC11> { [ apostrophe, quotedbl ] }; 90 1.1 mrg 91 1.1 mrg key <AB01> { [ z, Z ] }; 92 1.1 mrg key <AB02> { [ x, X ] }; 93 1.1 mrg key <AB03> { [ c, C ] }; 94 1.1 mrg key <AB04> { [ v, V ] }; 95 1.1 mrg key <AB05> { [ b, B ] }; 96 1.1 mrg key <AB06> { [ n, N ] }; 97 1.1 mrg key <AB07> { [ m, M ] }; 98 1.1 mrg key <AB08> { [ comma, less ] }; 99 1.1 mrg key <AB09> { [ period, greater ] }; 100 1.1 mrg key <AB10> { [ slash, U003F ] }; 101 1.1 mrg 102 1.1 mrg key <BKSL> { [ backslash, bar ] }; 103 1.1 mrg }; 104 1.1 mrg 105 1.1 mrg partial alphanumeric_keys 106 1.1 mrg xkb_symbols "french" 107 1.1 mrg { 108 1.1 mrg include "latin" 109 1.1.1.4 mrg name[Group1]="French (Cameroon)"; 110 1.1 mrg 111 1.1.1.10 mrg key <TLDE> { [twosuperior, asciitilde, notsign, notsign ] }; 112 1.1 mrg key <AE01> { [ ampersand, 1, onesuperior, exclamdown ] }; 113 1.1 mrg key <AE02> { [ eacute, 2, asciitilde, oneeighth ] }; 114 1.1 mrg key <AE03> { [ quotedbl, 3, numbersign, sterling ] }; 115 1.1 mrg key <AE04> { [apostrophe, 4, braceleft, dollar ] }; 116 1.1 mrg key <AE05> { [ parenleft, 5, bracketleft, threeeighths ] }; 117 1.1 mrg key <AE06> { [ minus, 6, bar, fiveeighths ] }; 118 1.1 mrg key <AE07> { [ egrave, 7, grave, seveneighths ] }; 119 1.1 mrg key <AE08> { [underscore, 8, backslash, trademark ] }; 120 1.1 mrg key <AE09> { [ ccedilla, 9, asciicircum, plusminus ] }; 121 1.1 mrg key <AE10> { [ agrave, 0, at, degree ] }; 122 1.1 mrg key <AE11> { [parenright, degree, bracketright, questiondown ] }; 123 1.1 mrg key <AE12> { [ equal, plus, braceright, dead_ogonek ] }; 124 1.1 mrg 125 1.1 mrg key <AD01> { [ a, A, ae, AE ] }; 126 1.1 mrg key <AD02> { [ z, Z, guillemotleft, less ] }; 127 1.1 mrg key <AD03> { [ e, E, EuroSign, cent ] }; 128 1.1 mrg key <AD11> { [dead_circumflex, dead_diaeresis, dead_diaeresis, dead_abovering ] }; 129 1.1 mrg key <AD12> { [ dollar, sterling, currency, dead_macron ] }; 130 1.1 mrg 131 1.1 mrg key <AC01> { [ q, Q, at, Greek_OMEGA ] }; 132 1.1 mrg key <AC10> { [ m, M, mu, masculine ] }; 133 1.1 mrg key <AC11> { [ ugrave, percent, dead_circumflex, dead_caron] }; 134 1.1 mrg key <BKSL> { [ asterisk, mu, dead_grave, dead_breve ] }; 135 1.1.1.10 mrg 136 1.1 mrg key <AB01> { [ w, W, lstroke, Lstroke ] }; 137 1.1 mrg key <AB07> { [ comma, U003F, dead_acute, dead_doubleacute ] }; 138 1.1.1.10 mrg key <AB08> { [ semicolon, period, U2022, multiply ] }; // bullet 139 1.1 mrg key <AB09> { [ colon, slash, periodcentered, division ] }; 140 1.1 mrg key <AB10> { [ exclam, section, dead_belowdot, dead_abovedot ] }; 141 1.1 mrg 142 1.1 mrg include "level3(ralt_switch)" 143 1.1 mrg }; 144 1.1 mrg 145 1.1 mrg partial alphanumeric_keys 146 1.1 mrg xkb_symbols "azerty" 147 1.1 mrg { 148 1.1 mrg include "cm(basic)" 149 1.1.1.8 mrg name[Group1] = "Cameroon (AZERTY, intl.)"; 150 1.1 mrg key <AB01> { [ w, W, U1E85, U1E84 ] }; // SMALL LETTER W, CAPITAL LETTER W, SMALL LETTER W WITH DIAERESIS, CAPITAL LETTER W WITH DIAERESIS 151 1.1 mrg key <AB02> { [ x, X, U2039, U203A ] }; // SMALL LETTER X, CAPITAL LETTER X, SINGLE LEFT-POINTING ANGLE QUOTATION MARK, SINGLE RIGHT-POINTING ANGLE QUOTATION MARK 152 1.1 mrg key <AB03> { [ c, C, U0327, copyright ] }; // SMALL LETTER C, CAPITAL LETTER C, COMBINING CEDILLA, COPYRIGHT SIGN 153 1.1.1.2 mrg key <AB04> { [ v, V, UA78C, UA78B ] }; // SMALL LETTER V, CAPITAL LETTER V, SMALL LETTER GLOTTAL (SALTILLO), CAPITAL LETTER GLOTTAL (SALTILLO) 154 1.1 mrg key <AB05> { [ b, B, U0253, U0181 ] }; // SMALL LETTER B, CAPITAL LETTER B, SMALL LETTER B WITH HOOK, CAPITAL LETTER B WITH HOOK 155 1.1 mrg key <AB06> { [ n, N, U014B, U014A ] }; // SMALL LETTER N, CAPITAL LETTER N, SMALL LETTER ENG, CAPITAL LETTER ENG 156 1.1 mrg key <AB07> { [ U002C, U003F, NoSymbol, U00D7 ] }; // COMMA, QUESTION MARK, , MULTIPLY 157 1.1 mrg key <AB08> { [ semicolon, period, dead_acute, dead_grave ] }; // SEMICOLON, PERIOD 158 1.1 mrg key <AB09> { [ colon, slash, U0323 ] }; // COLON, SLASH, COMBINING DOT BELOW 159 1.1 mrg key <AB10> { [ exclam, U00A7 ] }; // EXCLAMATION MARK, SECTION SIGN 160 1.1 mrg key <AC01> { [ q, Q, U2014, U2013 ] }; // SMALL LETTER Q, CAPITAL LETTER Q, EM DASH, EN DASH 161 1.1 mrg key <AC02> { [ s, S, U201C, U201D ] }; // SMALL LETTER S, CAPITAL LETTER S, LEFT DOUBLE QUOTES, RIGHT DOUBLE QUOTES 162 1.1 mrg key <AC03> { [ d, D, U0257, U018A ] }; // SMALL LETTER D, CAPITAL LETTER D, SMALL LETTER D WITH HOOK, CAPITAL LETTER D WITH HOOK 163 1.1 mrg key <AC04> { [ f, F, U00E6, U00C6 ] }; // SMALL LETTER F, CAPITAL LETTER F, SMALL LIGATURE AE, CAPITAL LIGATURE AE 164 1.1.1.2 mrg key <AC05> { [ g, G, U02BC, UA78B ] }; // SMALL LETTER G, CAPITAL LETTER G, CURVED GLOTTAL, CAPITAL LETTER GLOTTAL (SALTILLO) 165 1.1 mrg key <AC06> { [ h, H, U0251, U2C6D ] }; // SMALL LETTER H, CAPITAL LETTER H, SMALL LETTER ALPHA, CAPITAL LETTER ALPHA 166 1.1 mrg key <AC07> { [ j, J, leftarrow, U2122 ] }; //SMALL LETTER J, CAPITAL LETTER J, LEFT ARROW, TRADE MARK SIGN 167 1.1 mrg key <AC08> { [ k, K, downarrow, uparrow ] }; // SMALL LETTER K, CAPITAL LETTER K, DOWN ARROW, UP ARROW 168 1.1 mrg key <AC09> { [ l, L, rightarrow, U00A3 ] }; // SMALL LETTER L, CAPITAL LETTER L, RIGHT ARROW, POUND STERLING 169 1.1 mrg key <AC10> { [ m, M, U00F9, U00B5 ] }; // SMALL LETTER M, CAPITAL LETTER M, SMALL LETTER U WITH GRAVE, MICRO SYMBOL 170 1.1 mrg key <AC11> { [ U0300, U0302, U1DC5, U1DC4 ] }; // COMBINING LOW TONE, COMBINING FALLING TONE, COMBINING LOW-MID TONE, COMBINING MID-HIGH TONE 171 1.1 mrg key <AD01> { [ a, A, U025B, U0190 ] }; // SMALL LETTER A, CAPITAL LETTER A, SMALL LETTER OPEN E, CAPITAL LETTER OPEN E 172 1.1 mrg key <AD02> { [ z, Z, U2026, U2020 ] }; // SMALL LETTER Z, CAPITAL LETTER Z, ELLIPSIS, DAGGER 173 1.1 mrg key <AD03> { [ e, E, U0259, U018F ] }; // SMALL LETTER E, CAPITAL LETTER E, SMALL LETTER SCHWA, CAPITAL LETTER SCHWA 174 1.1.1.2 mrg key <AD04> { [ r, R, U25CC, U00AE ] }; // SMALL LETTER R, CAPITAL LETTER R, PLACEHOLDER SYMBOL, REGISTERED SIGN 175 1.1 mrg key <AD05> { [ t, T, U0153, U0152 ] }; // SMALL LETTER T, CAPITAL LETTER T, SMALL LIGATURE OE, CAPITAL LIGATURE OE 176 1.1 mrg key <AD06> { [ y, Y, U01B4, U01B3 ] }; // SMALL LETTER Y, CAPITAL LETTER Y, SMALL LETTER Y WITH HOOK, CAPITAL LETTER Y WITH HOOK 177 1.1 mrg key <AD07> { [ u, U, U0289, U0244 ] }; // SMALL LETTER U, CAPITAL LETTER U, SMALL LETTER U BAR, CAPITAL LETTER U BAR 178 1.1 mrg key <AD08> { [ i, I, U0268, U0197 ] }; // SMALL LETTER I, CAPITAL LETTER I, SMALL LETTER I BAR, CAPITAL LETTER I BAR 179 1.1 mrg key <AD09> { [ o, O, U0254, U0186 ] }; // SMALL LETTER O, CAPITAL LETTER O, SMALL LETTER OPEN O, CAPITAL LETTER OPEN O 180 1.1 mrg key <AD10> { [ p, P, U00F8, U00D8 ] }; // SMALL LETTER P, CAPITAL LETTER P, SMALL LETTER O BAR, CAPITAL LETTER O BAR 181 1.1 mrg key <AD11> { [ U0301, U030C, dead_circumflex, dead_diaeresis ] }; // COMBINING HIGH TONE, COMBINING RISING TONE, DEAD CIRCUMFLEX, DEAD DIAERESIS 182 1.1 mrg key <AD12> { [ U0330, U0303, U0304, U030D ] }; // COMBINING TILDE (NASAL) BELOW, COMBINING TILDE (NASAL), COMBINING MID TONE, COMBINING VERTICAL LINE ABOVE 183 1.1 mrg key <AE01> { [ U0026, KP_1, U00B9, U2018 ] }; // AMPERSAND, 1, SUPERSCRIPT 1, LEFT SINGLE QUOTE 184 1.1 mrg key <AE02> { [ eacute, KP_2, asciitilde, U2019 ] }; // SMALL LETTER E WITH ACUTE, 2, TILDE, RIGHT SINGLE QUOTE 185 1.1 mrg key <AE03> { [ U0022, KP_3, U0025 ] }; // QUOTATION MARK, 3, PERCENT SIGN 186 1.1 mrg key <AE04> { [ U0027, KP_4, U007B ] }; // APOSTROPHE, 4, LEFT CURLY BRACKET 187 1.1 mrg key <AE05> { [ U0028, KP_5, U005B, numbersign ] }; // LEFT PARENTHESIS, 5, LEFT SQUARE BRACKET, NUMBER SIGN 188 1.1 mrg key <AE06> { [ U002D, KP_6, U007C ] }; // HYPHEN/MINUS, 6, BAR 189 1.1 mrg key <AE07> { [ U00E8, KP_7, U0300 ] }; // SMALL LETTER E WITH GRAVE, 7, COMBINING GRAVE 190 1.1 mrg key <AE08> { [ underscore, KP_8, backslash, U20D6 ] }; // UNDERSCORE, 8, BACKSLASH, COMBINING LEFT ARROW ABOVE 191 1.1 mrg key <AE09> { [ ccedilla, KP_9, U005E] }; // SMALL LETTER C WITH CEDILLA, 9, CIRCUMFLEX 192 1.1 mrg key <AE10> { [ U00E0, KP_0, at, U20D7 ] }; // SMALL LETTER A WITH GRAVE 193 1.1 mrg key <AE11> { [ U0029, U00B0, U005D ] }; // RIGHT PARENTHESIS, DEGREE, RIGHT SQUARE BRACKET 194 1.1 mrg key <AE12> { [ U003D, U002B, U007D, U00B1 ] }; // EQUAL SIGN, PLUS SIGN, RIGHT CURLY BRACKET, PLUS-MINUS SIGN 195 1.1 mrg key <BKSL> { [ U1DC6, U1DC7, KP_Multiply, U00A4 ] }; // COMBINING MID-LOW, COMBINING HIGH-MID, MULTIPLY, CURRENCY SIGN 196 1.1 mrg key <LSGT> { [ U003C, U003E, U00AB, U00BB ] }; // LESS THAN, GREATER THAN, LEFT GUILLEMET, RIGHT GUILLEMET 197 1.1 mrg key <TLDE> { [ U0024, U20AC, U00B2, U00B3 ] }; // DOLLAR, EURO, SUPERSCRIPT 2, SUPERSCRIPT 3 198 1.1 mrg include "cm(exclamation_switch)" 199 1.1.1.4 mrg include "level3(ralt_switch)" 200 1.1 mrg }; 201 1.1 mrg 202 1.1 mrg partial alphanumeric_keys 203 1.1 mrg xkb_symbols "qwerty" 204 1.1 mrg { 205 1.1 mrg include "cm(basic)" 206 1.1.1.8 mrg name[Group1] = "Cameroon Multilingual (QWERTY, intl.)"; 207 1.1 mrg key <AB01> { [ z, Z, U2026, U2020 ] }; // SMALL LETTER Z, CAPITAL LETTER Z, ELLIPSIS, DAGGER 208 1.1 mrg key <AB02> { [ x, X ] }; // SMALL LETTER X, CAPITAL LETTER X 209 1.1.1.2 mrg key <AB03> { [ c, C, U0327, U00A9 ] }; // SMALL LETTER C, CAPITAL LETTER C, CEDILLA, COPYRIGHT 210 1.1.1.2 mrg key <AB04> { [ v, V, UA78C, UA78B ] }; // SMALL LETTER V, CAPITAL LETTER V, SMALL LETTER GLOTTAL (SALTILLO), CAPITAL LETTER GLOTTAL (SALTILLO) 211 1.1 mrg key <AB05> { [ b, B, U0253, U0181 ] }; // SMALL LETTER B, CAPITAL LETTER B, SMALL LETTER B WITH HOOK, CAPITAL LETTER B WITH HOOK 212 1.1 mrg key <AB06> { [ n, N, U014B, U014A ] }; // SMALL LETTER N, CAPITAL LETTER N, SMALL LETTER ENG, CAPITAL LETTER ENG 213 1.1 mrg key <AB07> { [ m, M, NoSymbol, U2122 ] }; // SMALL LETTER M, CAPITAL LETTER M, , TRADEMARK SIGN 214 1.1 mrg key <AB08> { [ U002C, U003C, U2039, U00AB ] }; // COMMA, LESS THAN SIGN, LEFT SINGLE GUILLEMET, LEFT DOUBLE GUILLEMET 215 1.1 mrg key <AB09> { [ U002E, U003E, U203A, U00BB ] }; // PERIOD, GREATER THAN SIGN, RIGHT SINGLE GUILLEMET, RIGHT DOUBLE GUILLEMET 216 1.1 mrg key <AB10> { [ U002F, U003F, U00F7 ] }; // SLASH, QUESTION MARK, DIVISION SIGN 217 1.1 mrg key <AC01> { [ a, A, U025B, U0190 ] }; // SMALL LETTER A, CAPITAL LETTER A, SMALL LETTER OPEN E, CAPITAL LETTER OPEN E 218 1.1 mrg key <AC02> { [ s, S ] }; // SMALL LETTER S, CAPITAL LETTER S 219 1.1 mrg key <AC03> { [ d, D, U0257, U018A ] }; // SMALL LETTER D, CAPITAL LETTER D, SMALL LETTER D WITH HOOK, CAPITAL LETTER D WITH HOOK 220 1.1 mrg key <AC04> { [ f, F, U00E6, U00C6 ] }; // SMALL LETTER F, CAPITAL LETTER F, SMALL LIGATURE AE, CAPITAL LIGATURE AE 221 1.1.1.2 mrg key <AC05> { [ g, G, U02BC, UA78B ] }; // SMALL LETTER G, CAPITAL LETTER G, CURVED GLOTTAL, CAPITAL LETTER GLOTTAL (SALTILLO) 222 1.1 mrg key <AC06> { [ h, H, U0251, U2C6D ] }; // SMALL LETTER H, CAPITAL LETTER H, SMALL LETTER ALPHA, CAPITAL LETTER ALPHA 223 1.1 mrg key <AC07> { [ j, J, U0330, U0323 ] }; // SMALL LETTER J, CAPITAL LETTER J, COMBINING TILDE (NASAL) BELOW, COMBINING DOT BELOW 224 1.1 mrg key <AC08> { [ k, K, U1DC5, U1DC7 ] }; // SMALL LETTER K, CAPITAL LETTER K, COMBINING LOW-MID TONE, COMBINING HIGH-MID 225 1.1 mrg key <AC09> { [ l, L, U1DC6, U1DC4 ] }; // SMALL LETTER L, CAPITAL LETTER L, COMBINING MID-LOW, COMBINING MID-HIGH TONE 226 1.1 mrg key <AC10> { [ U003B, U003A ] }; // SEMICOLON, COLON 227 1.1 mrg key <AC11> { [ U0300, U0302, U0027, U0022 ] }; // COMBINING LOW TONE, COMBINING FALLING TONE, APOSTROPHE, QUOTATION MARK 228 1.1 mrg key <AD01> { [ q, Q, U2014, U2013 ] }; // SMALL LETTER Q, CAPITAL LETTER Q, EM DASH, EN DASH 229 1.1 mrg key <AD02> { [ w, W, U1E85, U1E84 ] }; // SMALL LETTER W, CAPITAL LETTER W, SMALL LETTER W WITH DIAERESIS, CAPITAL LETTER W WITH DIAERESIS 230 1.1 mrg key <AD03> { [ e, E, U0259, U018F ] }; // SMALL LETTER E, CAPITAL LETTER E, SMALL LETTER SCHWA, CAPITAL LETTER SCHWA 231 1.1.1.2 mrg key <AD04> { [ r, R, U25CC, U00AE ] }; // SMALL LETTER R, CAPITAL LETTER R, PLACEHOLDER SYMBOL, REGISTERED SIGN 232 1.1 mrg key <AD05> { [ t, T, U0153, U0152 ] }; // SMALL LETTER T, CAPITAL LETTER T, SMALL LIGATURE OE, CAPITAL LIGATURE OE 233 1.1 mrg key <AD06> { [ y, Y, U01B4, U01B3 ] }; // SMALL LETTER Y, CAPITAL LETTER Y, SMALL LETTER Y WITH HOOK, CAPITAL LETTER Y WITH HOOK 234 1.1 mrg key <AD07> { [ u, U, U0289, U0244 ] }; // SMALL LETTER U, CAPITAL LETTER U, SMALL LETTER U BAR, CAPITAL LETTER U BAR 235 1.1 mrg key <AD08> { [ i, I, U0268, U0197 ] }; // SMALL LETTER I, CAPITAL LETTER I, SMALL LETTER I BAR, CAPITAL LETTER I BAR 236 1.1 mrg key <AD09> { [ o, O, U0254, U0186 ] }; // SMALL LETTER O, CAPITAL LETTER O, SMALL LETTER OPEN O, CAPITAL LETTER OPEN O 237 1.1 mrg key <AD10> { [ p, P, U00F8, U00D8 ] }; // SMALL LETTER P, CAPITAL LETTER P, SMALL LETTER O BAR, CAPITAL LETTER O BAR 238 1.1 mrg key <AD11> { [ U0301, U030C, U005B, U007B ] }; // COMBINING HIGH TONE, COMBINING RISING TONE, LEFT SQUARE BRACKET, LEFT CURLY BRACKET 239 1.1 mrg key <AD12> { [ U0327, U0308, U005D, U007D ] }; // COMBINING CEDILLA, COMBINING DIAERESIS, RIGHT SQUARE BRACKET, RIGHT CURLY BRACKET 240 1.1 mrg key <AE01> { [ U0031, U0021, U00BC ] }; // 1, EXCLAMATION POINT, ONE QUARTER 241 1.1 mrg key <AE02> { [ U0032, U0040, U00BD ] }; //2, AT SYMBOL, ONE HALF 242 1.1 mrg key <AE03> { [ U0033, U0023, U00BE ] }; // 3, NUMBER SIGN, THREE QUARTERS 243 1.1 mrg key <AE04> { [ U0034, U0024, NoSymbol, U20AC ] }; // 4, DOLLAR, , EURO SIGN 244 1.1 mrg key <AE08> { [ U0038, U002A, NoSymbol, U00D7 ] }; // 8, ASTERISK, , MATH MULTIPLY 245 1.1 mrg key <AE09> { [ U0039, U0028, U2018, U201C ] }; // 9, LEFT PARENTHESIS, LEFT SINGLE QUOTE MARK, LEFT DOUBLE QUOTE MARK 246 1.1 mrg key <AE10> { [ U0030, U0029, U2019, U201D ] }; // 0, RIGHT PARENTHESIS, RIGHT SINGLE QUOTE MARK, LEFT DOUBLE QUOTE MARK 247 1.1 mrg key <AE11> { [ U002D, U005F, U0304 ] }; // MINUS, UNDERSCORE, COMBINING MID TONE, COMBINING MID TONE 248 1.1 mrg key <AE12> { [ U003D, U002B, NoSymbol, U00B1 ] }; // EQUAL, PLUS, , PLUS-MINUS 249 1.1 mrg key <BKSL> { [ U005C, U007C ] }; // BACKSLASH, BAR 250 1.1 mrg key <TLDE> { [ U030D, U0303, U0060, U007E ] }; // COMBINING VERTICAL LINE ABOVE, COMBINING TILDE ABOVE, GRAVE ACCENT, TILDE 251 1.1 mrg include "cm(semicolon_switch)" 252 1.1.1.4 mrg include "level3(ralt_switch)" 253 1.1 mrg }; 254 1.1 mrg 255 1.1 mrg partial alphanumeric_keys 256 1.1 mrg xkb_symbols "dvorak" 257 1.1 mrg { 258 1.1 mrg include "us(dvorak)" 259 1.1.1.8 mrg name[Group1] = "Cameroon (Dvorak, intl.)"; 260 1.1 mrg key <AB01> { [ semicolon, colon ] }; // SEMICOLON, COLON 261 1.1 mrg key <AB02> { [ q, Q, U2014, U2013 ] }; // SMALL LETTER Q, CAPITAL LETTER Q, EM DASH, EN DASH 262 1.1 mrg key <AB03> { [ j, J, U0330, U0323 ] }; // SMALL LETTER J, CAPITAL LETTER J, COMBINING TILDE (NASAL) BELOW, COMBINING DOT BELOW 263 1.1 mrg key <AB04> { [ k, K, U1DC5, U1DC7 ] }; // SMALL LETTER K, CAPITAL LETTER K, COMBINING LOW-MID TONE, COMBINING HIGH-MID 264 1.1 mrg key <AB05> { [ x, X ] }; // SMALL LETTER X, CAPITAL LETTER X 265 1.1 mrg key <AB06> { [ b, B, U0253, U0181 ] }; // SMALL LETTER B, CAPITAL LETTER B, SMALL LETTER B WITH HOOK, CAPITAL LETTER B WITH HOOK 266 1.1 mrg key <AB07> { [ m, M, NoSymbol, U2122 ] }; // SMALL LETTER M, CAPITAL LETTER M, , TRADEMARK SIGN 267 1.1 mrg key <AB08> { [ w, W, U1E85, U1E84 ] }; // SMALL LETTER W, CAPITAL LETTER W, SMALL LETTER W WITH DIAERESIS, CAPITAL LETTER W WITH DIAERESIS 268 1.1.1.2 mrg key <AB09> { [ v, V, UA78C, UA78B ] }; // SMALL LETTER V, CAPITAL LETTER V, SMALL LETTER GLOTTAL (SALTILLO), CAPITAL LETTER GLOTTAL (SALTILLO) 269 1.1 mrg key <AB10> { [ z, Z, U2026, U2020 ] }; // SMALL LETTER Z, CAPITAL LETTER Z, ELLIPSIS, DAGGER 270 1.1 mrg key <AC01> { [ a, A, U025B, U0190 ] }; // SMALL LETTER A, CAPITAL LETTER A, SMALL LETTER OPEN E, CAPITAL LETTER OPEN E 271 1.1 mrg key <AC02> { [ o, O, U0254, U0186 ] }; // SMALL LETTER O, CAPITAL LETTER O, SMALL LETTER OPEN O, CAPITAL LETTER OPEN O 272 1.1 mrg key <AC03> { [ e, E, U0259, U018F ] }; // SMALL LETTER E, CAPITAL LETTER E, SMALL LETTER SCHWA, CAPITAL LETTER SCHWA 273 1.1 mrg key <AC04> { [ u, U, U0289, U0244 ] }; // SMALL LETTER U, CAPITAL LETTER U, SMALL LETTER U BAR, CAPITAL LETTER U BAR 274 1.1 mrg key <AC05> { [ i, I, U0268, U0197 ] }; // SMALL LETTER I, CAPITAL LETTER I, SMALL LETTER I BAR, CAPITAL LETTER I BAR 275 1.1 mrg key <AC06> { [ d, D, U0257, U018A ] }; // SMALL LETTER D, CAPITAL LETTER D, SMALL LETTER D WITH HOOK, CAPITAL LETTER D WITH HOOK 276 1.1 mrg key <AC07> { [ h, H, U0251, U2C6D ] }; // SMALL LETTER H, CAPITAL LETTER H, SMALL LETTER ALPHA, CAPITAL LETTER ALPHA 277 1.1 mrg key <AC08> { [ t, T, U0153, U0152 ] }; // SMALL LETTER T, CAPITAL LETTER T, SMALL LIGATURE OE, CAPITAL LIGATURE OE 278 1.1 mrg key <AC09> { [ n, N, U014B, U014A ] }; // SMALL LETTER N, CAPITAL LETTER N, SMALL LETTER ENG, CAPITAL LETTER ENG 279 1.1 mrg key <AC10> { [ s, S ] }; // SMALL LETTER S, CAPITAL LETTER S 280 1.1 mrg key <AC11> { [ minus, underscore, U0304 ] }; // MINUS, UNDERSCORE, COMBINING MID TONE 281 1.1 mrg key <AD01> { [ U0300, U0302, U0027, U0022 ] }; // COMBINING LOW TONE, COMBINING FALLING TONE, APOSTROPHE, QUOTATION MARK 282 1.1 mrg key <AD02> { [ comma, less, U2039, U00AB ] }; // COMMA, LESS THAN SIGN, LEFT SINGLE GUILLEMET, LEFT DOUBLE GUILLEMET 283 1.1 mrg key <AD03> { [ period, greater, U203A, U00BB ] }; // PERIOD, GREATER THAN SIGN, RIGHT SINGLE GUILLEMET, RIGHT DOUBLE GUILLEMET 284 1.1 mrg key <AD04> { [ p, P, U00F8, U00D8 ] }; // SMALL LETTER P, CAPITAL LETTER P, SMALL LETTER O BAR, CAPITAL LETTER O BAR 285 1.1 mrg key <AD05> { [ y, Y, U01B4, U01B3 ] }; // SMALL LETTER Y, CAPITAL LETTER Y, SMALL LETTER Y WITH HOOK, CAPITAL LETTER Y WITH HOOK 286 1.1 mrg key <AD06> { [ f, F, U00E6, U00C6 ] }; // SMALL LETTER F, CAPITAL LETTER F, SMALL LIGATURE AE, CAPITAL LIGATURE AE 287 1.1.1.2 mrg key <AD07> { [ g, G, U02BC, UA78B ] }; // SMALL LETTER G, CAPITAL LETTER G, CURVED GLOTTAL, CAPITAL LETTER GLOTTAL (SALTILLO) 288 1.1.1.2 mrg key <AD08> { [ c, C, U0327, U00A9 ] }; // SMALL LETTER C, CAPITAL LETTER C, CEDILLA, COPYRIGHT 289 1.1.1.2 mrg key <AD09> { [ r, R, U25CC, U00AE ] }; // SMALL LETTER R, CAPITAL LETTER R, PLACEHOLDER SYMBOL, REGISTERED SIGN 290 1.1 mrg key <AD10> { [ l, L, U1DC6, U1DC4 ] }; // SMALL LETTER L, CAPITAL LETTER L, COMBINING MID-LOW, COMBINING MID-HIGH TONE 291 1.1 mrg key <AD11> { [ slash, U003F, U00F7, U0294 ] }; // SLASH, QUESTION MARK, DIVISION SIGN, GLOTTAL STOP 292 1.1 mrg key <AD12> { [ equal, plus, NoSymbol, plusminus ] }; // EQUAL, PLUS, , PLUS-MINUS 293 1.1 mrg key <AE01> { [ KP_1, exclam, U00BC ] }; // 1, EXCLAMATION POINT, ONE QUARTER 294 1.1 mrg key <AE02> { [ KP_2, at, U00BD ] }; // 2, AT SYMBOL, ONE HALF 295 1.1 mrg key <AE03> { [ KP_3, numbersign, U00BE ] }; // 3, NUMBER SIGN, THREE QUARTERS 296 1.1 mrg key <AE04> { [ KP_4, dollar, NoSymbol, U20AC ] }; // 4, DOLLAR, , EURO SIGN 297 1.1 mrg key <AE05> { [ KP_5, percent ] }; // 5, PERCENT 298 1.1 mrg key <AE06> { [ KP_6, asciicircum ] }; // 6, CARET 299 1.1 mrg key <AE07> { [ KP_7, ampersand ] }; // 7, AMPERSAND 300 1.1 mrg key <AE08> { [ KP_8, asterisk, NoSymbol, multiply ] }; // 8, ASTERISK, , MULTIPLY 301 1.1 mrg key <AE09> { [ KP_9, parenleft, leftsinglequotemark, leftdoublequotemark ] }; // 9, LEFT PARENTHESIS, LEFT SINGLE QUOTE MARK, LEFT DOUBLE QUOTE MARK 302 1.1 mrg key <AE10> { [ KP_0, parenright, rightsinglequotemark, rightdoublequotemark ] }; // 0, RIGHT PARENTHESIS, RIGHT SINGLE QUOTE MARK, LEFT DOUBLE QUOTE MARK 303 1.1 mrg key <AE11> { [ U0301, U030C, U005B, U007B ] }; // COMBINING HIGH TONE, COMBINING RISING TONE, LEFT SQUARE BRACKET, LEFT CURLY BRACKET 304 1.1 mrg key <AE12> { [ U0327, dead_diaeresis, U005D, braceright ] }; // COMBINING CEDILLA, DEAD DIAERESIS, RIGHT SQUARE BRACKET, RIGHT CURLY BRACKET 305 1.1 mrg key <BKSL> { [ backslash, bar ] }; // BACKSLASH, BAR 306 1.1 mrg key <TLDE> { [ U030D, U0303, U0060, U007E ] }; // COMBINING VERTICAL LINE ABOVE, COMBINING TILDE ABOVE, GRAVE ACCENT, TILDE 307 1.1 mrg include "cm(semicolon_switch_dvorak)" 308 1.1.1.4 mrg include "level3(ralt_switch)" 309 1.1 mrg }; 310 1.1 mrg 311 1.1 mrg // The following code creates the "Cameroon key" phenomenon. 312 1.1 mrg 313 1.1 mrg partial modifier_keys 314 1.1 mrg xkb_symbols "semicolon_switch" { 315 1.1 mrg key <AC10> { 316 1.1 mrg symbols[Group1] = [ ISO_Level3_Latch, colon, semicolon, colon ]}; 317 1.1 mrg modifier_map Mod5 { ISO_Level3_Latch }; 318 1.1 mrg }; 319 1.1 mrg 320 1.1 mrg partial modifier_keys 321 1.1 mrg xkb_symbols "exclamation_switch" { 322 1.1 mrg key <AB10> { 323 1.1 mrg symbols[Group1] = [ ISO_Level3_Latch, U00A7, exclam, U00A7 ] 324 1.1 mrg }; 325 1.1 mrg modifier_map Mod5 { ISO_Level3_Latch }; 326 1.1 mrg }; 327 1.1 mrg 328 1.1 mrg partial modifier_keys 329 1.1 mrg xkb_symbols "semicolon_switch_dvorak" { 330 1.1 mrg key <AB01> { 331 1.1 mrg symbols[Group1] = [ ISO_Level3_Latch, colon, semicolon, colon ] 332 1.1 mrg }; 333 1.1 mrg modifier_map Mod5 { ISO_Level3_Latch }; 334 1.1 mrg }; 335 1.1 mrg 336 1.1.1.5 mrg 337 1.1.1.6 snj // ------- begin Mmuock alphabet layout ------------------------------------------ 338 1.1.1.5 mrg // This layout is used for the Mmuock alphabet as described in the book 339 1.1.1.5 mrg // _The Sound of Mmuock: Orthography (2. ed.)_ [isbn: 978-9956-645-28-1]. 340 1.1.1.5 mrg // Mmuock is the language of the Mmuock (local: Muk) people of Western 341 1.1.1.5 mrg // Cameroon. 342 1.1.1.5 mrg // 343 1.1.1.5 mrg // Author: Tano Fotang <fotang at mmuock dot org> 344 1.1.1.5 mrg // Created: 2014-06-24 345 1.1.1.6 snj // Version: 1.2 346 1.1.1.5 mrg // 347 1.1.1.5 mrg // CHANGES v 1.0: 348 1.1.1.5 mrg // 2014-07-06 corrected shifted level3 of <AC11> to quotedbl 349 1.1.1.5 mrg // CHANGES v 1.1: 350 1.1.1.5 mrg // 2015-05-23 1- added dead_tilde to key <TILDE>; this is needed to produce 351 1.1.1.5 mrg // the letter <> which was totally missing from the keyboard 352 1.1.1.5 mrg // 2- added letter <dz> to <AB01>; the letter had been missing. 353 1.1.1.5 mrg // 3- if we're not re-defining particular symbols from the included 354 1.1.1.5 mrg // latin layout, then maintain the original latin mappings. 355 1.1.1.5 mrg // Previously, we had set them to NoSymbol. Now, we want to 356 1.1.1.5 mrg // keep the original latin mappings except for those few that we 357 1.1.1.5 mrg // want to overwrite for our own keyboard. 358 1.1.1.5 mrg // 359 1.1.1.6 snj // CHANGES v 1.2: 360 1.1.1.6 snj // 2016-06-17 1- added dead keys dead_macron, dead_acute, and dead_grave for 361 1.1.1.6 snj // tones 1, 3, and 4, for compatibility with the Keyman version. 362 1.1.1.6 snj // 2- rearranged combining diacritics for tones 0 to 5 such that 363 1.1.1.6 snj // the diacritics are on consequetive keys (AC01 to AC05). 364 1.1.1.6 snj // 3- moved tone 8 to level 3 of AE12. 365 1.1.1.6 snj // 4- moved layout definition out of the EXTRAS section. 366 1.1.1.6 snj // 5- for a cleaner keyboard, 367 1.1.1.6 snj // replaced the included latin layout with us(basic). 368 1.1.1.6 snj // 369 1.1.1.6 snj // 370 1.1.1.5 mrg // NOTES: 371 1.1.1.6 snj // 0. This map is based on the Latin alphabet layout for the US keyboard. 372 1.1.1.5 mrg // 373 1.1.1.5 mrg // 1. We use combining diacritical marks to create tone markings. There are 13 374 1.1.1.6 snj // tones that need to be indicated, although the first 5 are usually enough 375 1.1.1.6 snj // to represent the rest in simplified orthography. 376 1.1.1.5 mrg // 377 1.1.1.5 mrg // 2. When composing Mmuock text, about every fourth symbol is for tone. To 378 1.1.1.5 mrg // facilitate easy and fast input, the combining diacritics are placed on 379 1.1.1.5 mrg // the home row (AC). To reduce the number of key strokes required, the 380 1.1.1.5 mrg // unshifted third level is used. Only 5 of the combining diacritics are not 381 1.1.1.5 mrg // on the AC row; they are in the top number row, AE. 382 1.1.1.5 mrg // 383 1.1.1.5 mrg // 3. Symbols that are used infrequently (`r', `h', `', `', etc.) are placed 384 1.1.1.5 mrg // in level3. Additionally, the letter eng (`'), although commonly used, 385 1.1.1.5 mrg // is found in level3 because it can alternatively be represented by <ng>. 386 1.1.1.6 snj // (Indeed, the keyman version of keyboard actually replaces <ng> with `'.) 387 1.1.1.5 mrg // 388 1.1.1.5 mrg // 4. The unshifted AB10 key (normally assigned to the slash `/') is used as 389 1.1.1.5 mrg // level 3 switch since the slash is not used in the ordinary course of 390 1.1.1.5 mrg // typing Mmuock text. 391 1.1.1.5 mrg // 392 1.1.1.6 snj // 5. The 'Cameroon Multilingual' keyboards that are defined elsewhere, do not 393 1.1.1.6 snj // fit our needs because: (a) they are based on a different alphabet, (b) the 394 1.1.1.6 snj // vast majority of their symbols are not used in Mmuock, and (c) for the few 395 1.1.1.6 snj // symbols that are used in Mmuock, their placings are not egonomic for 396 1.1.1.6 snj // typing Mmuock as the _PRIMARY_ language. The aim of this keyboard, is 397 1.1.1.6 snj // to give priority to symbols that are actually used in the Mmuock alphabet. 398 1.1.1.5 mrg // 399 1.1.1.5 mrg // 6. The following fonts have been found to produce the best results with this 400 1.1.1.5 mrg // keyboard: 401 1.1.1.5 mrg // Family Accuracy 402 1.1.1.5 mrg // DejaVu (except Sans Mono) 9/10 403 1.1.1.5 mrg // Linux Libertine 8/10 404 1.1.1.5 mrg // Ubuntu (except light) 8/10 405 1.1.1.5 mrg // Droid (except sans mono) 7/10 406 1.1.1.5 mrg // Gentium, Gentium Alt 6.5/10 407 1.1.1.6 snj // In the terminal emulator, the following font variants have been tested: 408 1.1.1.5 mrg // Ubuntu Mono 9/10 409 1.1.1.5 mrg // Unifont (Medium) 9/10 410 1.1.1.5 mrg // DejaVu Sans Mono 7.5/10 411 1.1.1.5 mrg // Droid Sans Mono 6.5/10 412 1.1.1.5 mrg // These fonts are all freely available. 413 1.1.1.5 mrg // 414 1.1.1.5 mrg // ------the layout----------- 415 1.1.1.6 snj // 416 1.1.1.6 snj // 417 1.1.1.6 snj // 2 4 2 = Shift, 4 = Level3 + Shift 418 1.1.1.6 snj // 1 3 1 = Normal, 3 = Level3 419 1.1.1.6 snj // 420 1.1.1.5 mrg // 421 1.1.1.5 mrg // 422 1.1.1.6 snj // ~ ~ ! @ # $ % ^ & | * ( ) _ + Back- 423 1.1.1.6 snj // AE ` ` 1 2 3 4 5 6 7 8 9 0 - = space 424 1.1.1.5 mrg // 425 1.1.1.5 mrg // Q W E R T Y U I O P { } Enter 426 1.1.1.5 mrg // ADTab q w e r t y u i o p [ ] 427 1.1.1.5 mrg // 428 1.1.1.5 mrg // A S D F G H J K L : " | 429 1.1.1.6 snj // ACCaps a s | d | f | g | h j k l ; ' \ 430 1.1.1.5 mrg // 431 1.1.1.5 mrg // Z X C V B N M < > ? 432 1.1.1.5 mrg // ABShift z x c v b n m , . / Shift 433 1.1.1.5 mrg // 434 1.1.1.5 mrg // 435 1.1.1.5 mrg // AACtrl Meta Alt Space AltGr Menu Ctrl 436 1.1.1.5 mrg // 437 1.1.1.5 mrg // 438 1.1.1.5 mrg 439 1.1.1.5 mrg partial alphanumeric_keys 440 1.1.1.5 mrg xkb_symbols "mmuock" { 441 1.1.1.5 mrg 442 1.1.1.6 snj include "us(basic)" 443 1.1.1.5 mrg include "level3(ralt_switch)" 444 1.1.1.5 mrg 445 1.1.1.5 mrg name[Group1]= "Mmuock"; 446 1.1.1.10 mrg key <TLDE> { [ dead_grave, dead_tilde, grave, asciitilde ] }; 447 1.1.1.5 mrg key <AE06> { [ 6, asciicircum, U0302 ] }; // tone 10 448 1.1.1.5 mrg key <AE07> { [ 7, ampersand, U0311 ] }; // tone 12 449 1.1.1.6 snj key <AE08> { [ 8, asterisk, U030D ] }; // tone 13 450 1.1.1.6 snj key <AE09> { [ 9, parenleft, U0307 ] }; // tone 7 451 1.1.1.6 snj key <AE10> { [ 0, parenright, U030A ] }; // tone 6 452 1.1.1.6 snj key <AE11> { [dead_macron, underscore, minus, endash ] }; 453 1.1.1.6 snj key <AE12> { [ equal, plus, U030B, dead_belowdot ] }; // U030B = tone 8 454 1.1.1.10 mrg 455 1.1.1.5 mrg key <AD03> { [ e, E, U01DD, U018E ] }; // U01DD = reversed E 456 1.1.1.5 mrg key <AD04> { [ scaron, Scaron, r, R ] }; 457 1.1.1.5 mrg key <AD07> { [ u, U, Greek_omega, Greek_OMEGA ] }; 458 1.1.1.5 mrg key <AD08> { [ i, I, U025B, U0190 ] }; // U025B = open E 459 1.1.1.5 mrg key <AD09> { [ o, O, Greek_phi, Greek_PHI ] }; 460 1.1.1.5 mrg key <AD10> { [ p, P, Greek_pi, Greek_PI ] }; 461 1.1.1.10 mrg key <AD11> { [ oslash, Oslash, bracketleft, braceleft ] }; 462 1.1.1.5 mrg key <AD12> { [Greek_sigma, Greek_SIGMA, bracketright, braceright ] }; 463 1.1.1.10 mrg 464 1.1.1.6 snj key <AC01> { [ a, A, U0303 ] }; // tone 0 465 1.1.1.6 snj key <AC02> { [ s, S, U0304 ] }; // tone 1 466 1.1.1.6 snj key <AC03> { [ d, D, U0301 ] }; // tone 3 467 1.1.1.6 snj key <AC04> { [ f, F, U0300 ] }; // tone 4 468 1.1.1.6 snj key <AC05> { [ g, G, U030C ] }; // tone 5 469 1.1.1.5 mrg key <AC06> { [ U0323, U0307, h, H ] }; // COMBINING DOT BELOW, ABOVE 470 1.1.1.5 mrg key <AC07> { [ j, J, U0306 ] }; // tone 9 471 1.1.1.5 mrg key <AC08> { [ k, K, U030F ] }; // tone 11 472 1.1.1.6 snj key <AC09> { [ l, L, U0308 ] }; // tone 14 473 1.1.1.5 mrg key <AC10> { [ oe, OE, semicolon, colon ] }; 474 1.1.1.6 snj key <AC11> { [ dead_acute, quotedbl, apostrophe ] }; 475 1.1.1.10 mrg key <BKSL> { [ ae, AE, backslash, bar ] }; 476 1.1.1.10 mrg 477 1.1.1.5 mrg key <AB01> { [ z, Z, U01F3, U01F2 ] }; // U01F3 = letter dz 478 1.1.1.5 mrg key <AB06> { [ n, N, eng, ENG ] }; 479 1.1.1.5 mrg key <AB08> { [ comma, less, guillemotleft, U2039 ] }; 480 1.1.1.5 mrg key <AB09> { [ period, greater, guillemotright, U203A ] }; 481 1.1.1.5 mrg 482 1.1.1.5 mrg include "cm(solidus_switch)" 483 1.1.1.5 mrg }; 484 1.1.1.5 mrg // use slash as special key for switching to level3 485 1.1.1.5 mrg partial modifier_keys 486 1.1.1.5 mrg xkb_symbols "solidus_switch" { 487 1.1.1.5 mrg key <AB10> { 488 1.1.1.6 snj symbols[Group1] = [ ISO_Level3_Latch, question, slash, dead_abovedot ] 489 1.1.1.5 mrg }; 490 1.1.1.5 mrg modifier_map Mod5 { ISO_Level3_Latch }; 491 1.1.1.5 mrg }; 492 1.1.1.6 snj // ------- end of Mmuock keyboard map -------------------------------------------- 493