cm revision bfd7cbc1
1bfd7cbc1Smrg// ========== Cameroon Keyboards ========== 2bfd7cbc1Smrg// ****** For Instructions, see "Use of Cameroon Keyboards" section below ****** 3bfd7cbc1Smrg 4bfd7cbc1Smrg 5bfd7cbc1Smrg// 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. 6bfd7cbc1Smrg 7bfd7cbc1Smrg// Cameroon is officially a bilingual country, using French and English, but there are over 270 minority languages. 8bfd7cbc1Smrg 9bfd7cbc1Smrg// * Cameroon Français is an exact copy of the French France keyboard intended for AZERTY users. 10bfd7cbc1Smrg// * Cameroon is an exact copy of the Basic US Keyboard. I can not currently name this "Cameroon English" due to a limitation of XKB. 11bfd7cbc1Smrg// * 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. 12bfd7cbc1Smrg// * Cameroon Dvorak is described below. 13bfd7cbc1Smrg 14bfd7cbc1Smrg// ===== Use of Cameroon Keyboards ===== 15bfd7cbc1Smrg 16bfd7cbc1Smrg// == Fonts == 17bfd7cbc1Smrg// 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). 18bfd7cbc1Smrg 19bfd7cbc1Smrg 20bfd7cbc1Smrg// == Cameroon AZERTY == 21bfd7cbc1Smrg// 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. 22bfd7cbc1Smrg// 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. 23bfd7cbc1Smrg// 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 "!". 24bfd7cbc1Smrg// 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. 25bfd7cbc1Smrg// All Diacritics (with the exception of French Trema and Circumflex) must be typed (in order of stacking) after the letter. 26bfd7cbc1Smrg 27bfd7cbc1Smrg 28bfd7cbc1Smrg// == Cameroon QWERTY == 29bfd7cbc1Smrg// 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. 30bfd7cbc1Smrg// 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. 31bfd7cbc1Smrg// 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). 32bfd7cbc1Smrg// 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. 33bfd7cbc1Smrg// All Diacritics must be typed (in order of stacking) after the letter. 34bfd7cbc1Smrg 35bfd7cbc1Smrg 36bfd7cbc1Smrg// == Cameroon Dvorak == 37bfd7cbc1Smrg// Cameroon Dvorak is uses a similar system to Cameroon QWERTY. 38bfd7cbc1Smrg 39bfd7cbc1Smrgdefault 40bfd7cbc1Smrgpartial alphanumeric_keys 41bfd7cbc1Smrgxkb_symbols "basic" { 42bfd7cbc1Smrg 43bfd7cbc1Smrg name[Group1]="English (Cameroon)"; 44bfd7cbc1Smrg 45bfd7cbc1Smrg // Alphanumeric section 46bfd7cbc1Smrg key <TLDE> { [ grave, asciitilde ] }; 47bfd7cbc1Smrg key <AE01> { [ 1, exclam ] }; 48bfd7cbc1Smrg key <AE02> { [ 2, at ] }; 49bfd7cbc1Smrg key <AE03> { [ 3, numbersign ] }; 50bfd7cbc1Smrg key <AE04> { [ 4, dollar ] }; 51bfd7cbc1Smrg key <AE05> { [ 5, percent ] }; 52bfd7cbc1Smrg key <AE06> { [ 6, asciicircum ] }; 53bfd7cbc1Smrg key <AE07> { [ 7, ampersand ] }; 54bfd7cbc1Smrg key <AE08> { [ 8, asterisk ] }; 55bfd7cbc1Smrg key <AE09> { [ 9, parenleft ] }; 56bfd7cbc1Smrg key <AE10> { [ 0, parenright ] }; 57bfd7cbc1Smrg key <AE11> { [ minus, underscore ] }; 58bfd7cbc1Smrg key <AE12> { [ equal, plus ] }; 59bfd7cbc1Smrg 60bfd7cbc1Smrg key <AD01> { [ q, Q ] }; 61bfd7cbc1Smrg key <AD02> { [ w, W ] }; 62bfd7cbc1Smrg key <AD03> { [ e, E ] }; 63bfd7cbc1Smrg key <AD04> { [ r, R ] }; 64bfd7cbc1Smrg key <AD05> { [ t, T ] }; 65bfd7cbc1Smrg key <AD06> { [ y, Y ] }; 66bfd7cbc1Smrg key <AD07> { [ u, U ] }; 67bfd7cbc1Smrg key <AD08> { [ i, I ] }; 68bfd7cbc1Smrg key <AD09> { [ o, O ] }; 69bfd7cbc1Smrg key <AD10> { [ p, P ] }; 70bfd7cbc1Smrg key <AD11> { [ bracketleft, braceleft ] }; 71bfd7cbc1Smrg key <AD12> { [ bracketright, braceright ] }; 72bfd7cbc1Smrg key <AC01> { [ a, A ] }; 73bfd7cbc1Smrg key <AC02> { [ s, S ] }; 74bfd7cbc1Smrg key <AC03> { [ d, D ] }; 75bfd7cbc1Smrg key <AC04> { [ f, F ] }; 76bfd7cbc1Smrg key <AC05> { [ g, G ] }; 77bfd7cbc1Smrg key <AC06> { [ h, H ] }; 78bfd7cbc1Smrg key <AC07> { [ j, J ] }; 79bfd7cbc1Smrg key <AC08> { [ k, K ] }; 80bfd7cbc1Smrg key <AC09> { [ l, L ] }; 81bfd7cbc1Smrg key <AC10> { [ semicolon, colon ] }; 82bfd7cbc1Smrg key <AC11> { [ apostrophe, quotedbl ] }; 83bfd7cbc1Smrg 84bfd7cbc1Smrg key <AB01> { [ z, Z ] }; 85bfd7cbc1Smrg key <AB02> { [ x, X ] }; 86bfd7cbc1Smrg key <AB03> { [ c, C ] }; 87bfd7cbc1Smrg key <AB04> { [ v, V ] }; 88bfd7cbc1Smrg key <AB05> { [ b, B ] }; 89bfd7cbc1Smrg key <AB06> { [ n, N ] }; 90bfd7cbc1Smrg key <AB07> { [ m, M ] }; 91bfd7cbc1Smrg key <AB08> { [ comma, less ] }; 92bfd7cbc1Smrg key <AB09> { [ period, greater ] }; 93bfd7cbc1Smrg key <AB10> { [ slash, U003F ] }; 94bfd7cbc1Smrg 95bfd7cbc1Smrg key <BKSL> { [ backslash, bar ] }; 96bfd7cbc1Smrg // End alphanumeric section 97bfd7cbc1Smrg}; 98bfd7cbc1Smrg 99bfd7cbc1Smrgpartial alphanumeric_keys 100bfd7cbc1Smrgxkb_symbols "french" 101bfd7cbc1Smrg{ 102bfd7cbc1Smrg name[Group1]="French (Cameroon)"; 103bfd7cbc1Smrg include "latin" 104bfd7cbc1Smrg 105bfd7cbc1Smrg key <AE01> { [ ampersand, 1, onesuperior, exclamdown ] }; 106bfd7cbc1Smrg key <AE02> { [ eacute, 2, asciitilde, oneeighth ] }; 107bfd7cbc1Smrg key <AE03> { [ quotedbl, 3, numbersign, sterling ] }; 108bfd7cbc1Smrg key <AE04> { [apostrophe, 4, braceleft, dollar ] }; 109bfd7cbc1Smrg key <AE05> { [ parenleft, 5, bracketleft, threeeighths ] }; 110bfd7cbc1Smrg key <AE06> { [ minus, 6, bar, fiveeighths ] }; 111bfd7cbc1Smrg key <AE07> { [ egrave, 7, grave, seveneighths ] }; 112bfd7cbc1Smrg key <AE08> { [underscore, 8, backslash, trademark ] }; 113bfd7cbc1Smrg key <AE09> { [ ccedilla, 9, asciicircum, plusminus ] }; 114bfd7cbc1Smrg key <AE10> { [ agrave, 0, at, degree ] }; 115bfd7cbc1Smrg key <AE11> { [parenright, degree, bracketright, questiondown ] }; 116bfd7cbc1Smrg key <AE12> { [ equal, plus, braceright, dead_ogonek ] }; 117bfd7cbc1Smrg 118bfd7cbc1Smrg key <AD01> { [ a, A, ae, AE ] }; 119bfd7cbc1Smrg key <AD02> { [ z, Z, guillemotleft, less ] }; 120bfd7cbc1Smrg key <AD03> { [ e, E, EuroSign, cent ] }; 121bfd7cbc1Smrg key <AD11> { [dead_circumflex, dead_diaeresis, dead_diaeresis, dead_abovering ] }; 122bfd7cbc1Smrg key <AD12> { [ dollar, sterling, currency, dead_macron ] }; 123bfd7cbc1Smrg 124bfd7cbc1Smrg key <AC01> { [ q, Q, at, Greek_OMEGA ] }; 125bfd7cbc1Smrg key <AC10> { [ m, M, mu, masculine ] }; 126bfd7cbc1Smrg key <AC11> { [ ugrave, percent, dead_circumflex, dead_caron] }; 127bfd7cbc1Smrg key <TLDE> { [twosuperior, asciitilde, notsign, notsign ] }; 128bfd7cbc1Smrg 129bfd7cbc1Smrg key <BKSL> { [ asterisk, mu, dead_grave, dead_breve ] }; 130bfd7cbc1Smrg key <AB01> { [ w, W, lstroke, Lstroke ] }; 131bfd7cbc1Smrg key <AB07> { [ comma, U003F, dead_acute, dead_doubleacute ] }; 132bfd7cbc1Smrg key <AB08> { [ semicolon, period, horizconnector, multiply ] }; 133bfd7cbc1Smrg key <AB09> { [ colon, slash, periodcentered, division ] }; 134bfd7cbc1Smrg key <AB10> { [ exclam, section, dead_belowdot, dead_abovedot ] }; 135bfd7cbc1Smrg 136bfd7cbc1Smrg include "level3(ralt_switch)" 137bfd7cbc1Smrg}; 138bfd7cbc1Smrg 139bfd7cbc1Smrg 140bfd7cbc1Smrgpartial alphanumeric_keys 141bfd7cbc1Smrgxkb_symbols "azerty" 142bfd7cbc1Smrg{ 143bfd7cbc1Smrg name[Group1] = "French (Cameroon azerty)"; 144bfd7cbc1Smrg include "level3(ralt_switch)" 145bfd7cbc1Smrg include "cm(basic)" 146bfd7cbc1Smrg key <AB01> { [ w, W, U1E85, U1E84 ] }; // SMALL LETTER W, CAPITAL LETTER W, SMALL LETTER W WITH DIAERESIS, CAPITAL LETTER W WITH DIAERESIS 147bfd7cbc1Smrg key <AB02> { [ x, X, U2039, U203A ] }; // SMALL LETTER X, CAPITAL LETTER X, SINGLE LEFT-POINTING ANGLE QUOTATION MARK, SINGLE RIGHT-POINTING ANGLE QUOTATION MARK 148bfd7cbc1Smrg key <AB03> { [ c, C, U0327, copyright ] }; // SMALL LETTER C, CAPITAL LETTER C, COMBINING CEDILLA, COPYRIGHT SIGN 149bfd7cbc1Smrg key <AB04> { [ v, V, U25CC, NoSymbol ] }; // SMALL LETTER V, CAPITAL LETTER V, PLACEHOLDER CHARACTER 150bfd7cbc1Smrg key <AB05> { [ b, B, U0253, U0181 ] }; // SMALL LETTER B, CAPITAL LETTER B, SMALL LETTER B WITH HOOK, CAPITAL LETTER B WITH HOOK 151bfd7cbc1Smrg key <AB06> { [ n, N, U014B, U014A ] }; // SMALL LETTER N, CAPITAL LETTER N, SMALL LETTER ENG, CAPITAL LETTER ENG 152bfd7cbc1Smrg key <AB07> { [ U002C, U003F, NoSymbol, U00D7 ] }; // COMMA, QUESTION MARK, , MULTIPLY 153bfd7cbc1Smrg key <AB08> { [ semicolon, period, dead_acute, dead_grave ] }; // SEMICOLON, PERIOD 154bfd7cbc1Smrg key <AB09> { [ colon, slash, U0323 ] }; // COLON, SLASH, COMBINING DOT BELOW 155bfd7cbc1Smrg key <AB10> { [ exclam, U00A7 ] }; // EXCLAMATION MARK, SECTION SIGN 156bfd7cbc1Smrg key <AC01> { [ q, Q, U2014, U2013 ] }; // SMALL LETTER Q, CAPITAL LETTER Q, EM DASH, EN DASH 157bfd7cbc1Smrg key <AC02> { [ s, S, U201C, U201D ] }; // SMALL LETTER S, CAPITAL LETTER S, LEFT DOUBLE QUOTES, RIGHT DOUBLE QUOTES 158bfd7cbc1Smrg key <AC03> { [ d, D, U0257, U018A ] }; // SMALL LETTER D, CAPITAL LETTER D, SMALL LETTER D WITH HOOK, CAPITAL LETTER D WITH HOOK 159bfd7cbc1Smrg key <AC04> { [ f, F, U00E6, U00C6 ] }; // SMALL LETTER F, CAPITAL LETTER F, SMALL LIGATURE AE, CAPITAL LIGATURE AE 160bfd7cbc1Smrg key <AC05> { [ g, G, UA78C, UA78B ] }; // SMALL LETTER G, CAPITAL LETTER G, SMALL LETTER GLOTTAL (SALTILLO), CAPITAL LETTER GLOTTAL (SALTILLO) 161bfd7cbc1Smrg key <AC06> { [ h, H, U0251, U2C6D ] }; // SMALL LETTER H, CAPITAL LETTER H, SMALL LETTER ALPHA, CAPITAL LETTER ALPHA 162bfd7cbc1Smrg key <AC07> { [ j, J, leftarrow, U2122 ] }; //SMALL LETTER J, CAPITAL LETTER J, LEFT ARROW, TRADE MARK SIGN 163bfd7cbc1Smrg key <AC08> { [ k, K, downarrow, uparrow ] }; // SMALL LETTER K, CAPITAL LETTER K, DOWN ARROW, UP ARROW 164bfd7cbc1Smrg key <AC09> { [ l, L, rightarrow, U00A3 ] }; // SMALL LETTER L, CAPITAL LETTER L, RIGHT ARROW, POUND STERLING 165bfd7cbc1Smrg key <AC10> { [ m, M, U00F9, U00B5 ] }; // SMALL LETTER M, CAPITAL LETTER M, SMALL LETTER U WITH GRAVE, MICRO SYMBOL 166bfd7cbc1Smrg key <AC11> { [ U0300, U0302, U1DC5, U1DC4 ] }; // COMBINING LOW TONE, COMBINING FALLING TONE, COMBINING LOW-MID TONE, COMBINING MID-HIGH TONE 167bfd7cbc1Smrg key <AD01> { [ a, A, U025B, U0190 ] }; // SMALL LETTER A, CAPITAL LETTER A, SMALL LETTER OPEN E, CAPITAL LETTER OPEN E 168bfd7cbc1Smrg key <AD02> { [ z, Z, U2026, U2020 ] }; // SMALL LETTER Z, CAPITAL LETTER Z, ELLIPSIS, DAGGER 169bfd7cbc1Smrg key <AD03> { [ e, E, U0259, U018F ] }; // SMALL LETTER E, CAPITAL LETTER E, SMALL LETTER SCHWA, CAPITAL LETTER SCHWA 170bfd7cbc1Smrg key <AD04> { [ r, R, NoSymbol, U00AE ] }; // SMALL LETTER R, CAPITAL LETTER R, , REGISTERED SIGN 171bfd7cbc1Smrg key <AD05> { [ t, T, U0153, U0152 ] }; // SMALL LETTER T, CAPITAL LETTER T, SMALL LIGATURE OE, CAPITAL LIGATURE OE 172bfd7cbc1Smrg key <AD06> { [ y, Y, U01B4, U01B3 ] }; // SMALL LETTER Y, CAPITAL LETTER Y, SMALL LETTER Y WITH HOOK, CAPITAL LETTER Y WITH HOOK 173bfd7cbc1Smrg key <AD07> { [ u, U, U0289, U0244 ] }; // SMALL LETTER U, CAPITAL LETTER U, SMALL LETTER U BAR, CAPITAL LETTER U BAR 174bfd7cbc1Smrg key <AD08> { [ i, I, U0268, U0197 ] }; // SMALL LETTER I, CAPITAL LETTER I, SMALL LETTER I BAR, CAPITAL LETTER I BAR 175bfd7cbc1Smrg key <AD09> { [ o, O, U0254, U0186 ] }; // SMALL LETTER O, CAPITAL LETTER O, SMALL LETTER OPEN O, CAPITAL LETTER OPEN O 176bfd7cbc1Smrg key <AD10> { [ p, P, U00F8, U00D8 ] }; // SMALL LETTER P, CAPITAL LETTER P, SMALL LETTER O BAR, CAPITAL LETTER O BAR 177bfd7cbc1Smrg key <AD11> { [ U0301, U030C, dead_circumflex, dead_diaeresis ] }; // COMBINING HIGH TONE, COMBINING RISING TONE, DEAD CIRCUMFLEX, DEAD DIAERESIS 178bfd7cbc1Smrg key <AD12> { [ U0330, U0303, U0304, U030D ] }; // COMBINING TILDE (NASAL) BELOW, COMBINING TILDE (NASAL), COMBINING MID TONE, COMBINING VERTICAL LINE ABOVE 179bfd7cbc1Smrg key <AE01> { [ U0026, KP_1, U00B9, U2018 ] }; // AMPERSAND, 1, SUPERSCRIPT 1, LEFT SINGLE QUOTE 180bfd7cbc1Smrg key <AE02> { [ eacute, KP_2, asciitilde, U2019 ] }; // SMALL LETTER E WITH ACUTE, 2, TILDE, RIGHT SINGLE QUOTE 181bfd7cbc1Smrg key <AE03> { [ U0022, KP_3, U0025 ] }; // QUOTATION MARK, 3, PERCENT SIGN 182bfd7cbc1Smrg key <AE04> { [ U0027, KP_4, U007B ] }; // APOSTROPHE, 4, LEFT CURLY BRACKET 183bfd7cbc1Smrg key <AE05> { [ U0028, KP_5, U005B, numbersign ] }; // LEFT PARENTHESIS, 5, LEFT SQUARE BRACKET, NUMBER SIGN 184bfd7cbc1Smrg key <AE06> { [ U002D, KP_6, U007C ] }; // HYPHEN/MINUS, 6, BAR 185bfd7cbc1Smrg key <AE07> { [ U00E8, KP_7, U0300 ] }; // SMALL LETTER E WITH GRAVE, 7, COMBINING GRAVE 186bfd7cbc1Smrg key <AE08> { [ underscore, KP_8, backslash, U20D6 ] }; // UNDERSCORE, 8, BACKSLASH, COMBINING LEFT ARROW ABOVE 187bfd7cbc1Smrg key <AE09> { [ ccedilla, KP_9, U005E] }; // SMALL LETTER C WITH CEDILLA, 9, CIRCUMFLEX 188bfd7cbc1Smrg key <AE10> { [ U00E0, KP_0, at, U20D7 ] }; // SMALL LETTER A WITH GRAVE 189bfd7cbc1Smrg key <AE11> { [ U0029, U00B0, U005D ] }; // RIGHT PARENTHESIS, DEGREE, RIGHT SQUARE BRACKET 190bfd7cbc1Smrg key <AE12> { [ U003D, U002B, U007D, U00B1 ] }; // EQUAL SIGN, PLUS SIGN, RIGHT CURLY BRACKET, PLUS-MINUS SIGN 191bfd7cbc1Smrg key <BKSL> { [ U1DC6, U1DC7, KP_Multiply, U00A4 ] }; // COMBINING MID-LOW, COMBINING HIGH-MID, MULTIPLY, CURRENCY SIGN 192bfd7cbc1Smrg key <LSGT> { [ U003C, U003E, U00AB, U00BB ] }; // LESS THAN, GREATER THAN, LEFT GUILLEMET, RIGHT GUILLEMET 193bfd7cbc1Smrg key <TLDE> { [ U0024, U20AC, U00B2, U00B3 ] }; // DOLLAR, EURO, SUPERSCRIPT 2, SUPERSCRIPT 3 194bfd7cbc1Smrg include "cm(exclamation_switch)" 195bfd7cbc1Smrg}; 196bfd7cbc1Smrg 197bfd7cbc1Smrgpartial alphanumeric_keys 198bfd7cbc1Smrgxkb_symbols "qwerty" 199bfd7cbc1Smrg{ 200bfd7cbc1Smrg name[Group1] = "English (Cameroon qwerty)"; 201bfd7cbc1Smrg include "level3(ralt_switch)" 202bfd7cbc1Smrg include "cm(basic)" 203bfd7cbc1Smrg key <AB01> { [ z, Z, U2026, U2020 ] }; // SMALL LETTER Z, CAPITAL LETTER Z, ELLIPSIS, DAGGER 204bfd7cbc1Smrg key <AB02> { [ x, X ] }; // SMALL LETTER X, CAPITAL LETTER X 205bfd7cbc1Smrg key <AB03> { [ c, C, NoSymbol, U00A9 ] }; // SMALL LETTER C, CAPITAL LETTER C, , COPYRIGHT 206bfd7cbc1Smrg key <AB04> { [ v, V, U25CC, NoSymbol ] }; // SMALL LETTER V, CAPITAL LETTER V, PLACEHOLDER CHARACTER 207bfd7cbc1Smrg key <AB05> { [ b, B, U0253, U0181 ] }; // SMALL LETTER B, CAPITAL LETTER B, SMALL LETTER B WITH HOOK, CAPITAL LETTER B WITH HOOK 208bfd7cbc1Smrg key <AB06> { [ n, N, U014B, U014A ] }; // SMALL LETTER N, CAPITAL LETTER N, SMALL LETTER ENG, CAPITAL LETTER ENG 209bfd7cbc1Smrg key <AB07> { [ m, M, NoSymbol, U2122 ] }; // SMALL LETTER M, CAPITAL LETTER M, , TRADEMARK SIGN 210bfd7cbc1Smrg key <AB08> { [ U002C, U003C, U2039, U00AB ] }; // COMMA, LESS THAN SIGN, LEFT SINGLE GUILLEMET, LEFT DOUBLE GUILLEMET 211bfd7cbc1Smrg key <AB09> { [ U002E, U003E, U203A, U00BB ] }; // PERIOD, GREATER THAN SIGN, RIGHT SINGLE GUILLEMET, RIGHT DOUBLE GUILLEMET 212bfd7cbc1Smrg key <AB10> { [ U002F, U003F, U00F7 ] }; // SLASH, QUESTION MARK, DIVISION SIGN 213bfd7cbc1Smrg key <AC01> { [ a, A, U025B, U0190 ] }; // SMALL LETTER A, CAPITAL LETTER A, SMALL LETTER OPEN E, CAPITAL LETTER OPEN E 214bfd7cbc1Smrg key <AC02> { [ s, S ] }; // SMALL LETTER S, CAPITAL LETTER S 215bfd7cbc1Smrg key <AC03> { [ d, D, U0257, U018A ] }; // SMALL LETTER D, CAPITAL LETTER D, SMALL LETTER D WITH HOOK, CAPITAL LETTER D WITH HOOK 216bfd7cbc1Smrg key <AC04> { [ f, F, U00E6, U00C6 ] }; // SMALL LETTER F, CAPITAL LETTER F, SMALL LIGATURE AE, CAPITAL LIGATURE AE 217bfd7cbc1Smrg key <AC05> { [ g, G, UA78C, UA78B ] }; // SMALL LETTER G, CAPITAL LETTER G, SMALL LETTER GLOTTAL (SALTILLO), CAPITAL LETTER GLOTTAL (SALTILLO) 218bfd7cbc1Smrg key <AC06> { [ h, H, U0251, U2C6D ] }; // SMALL LETTER H, CAPITAL LETTER H, SMALL LETTER ALPHA, CAPITAL LETTER ALPHA 219bfd7cbc1Smrg key <AC07> { [ j, J, U0330, U0323 ] }; // SMALL LETTER J, CAPITAL LETTER J, COMBINING TILDE (NASAL) BELOW, COMBINING DOT BELOW 220bfd7cbc1Smrg key <AC08> { [ k, K, U1DC5, U1DC7 ] }; // SMALL LETTER K, CAPITAL LETTER K, COMBINING LOW-MID TONE, COMBINING HIGH-MID 221bfd7cbc1Smrg key <AC09> { [ l, L, U1DC6, U1DC4 ] }; // SMALL LETTER L, CAPITAL LETTER L, COMBINING MID-LOW, COMBINING MID-HIGH TONE 222bfd7cbc1Smrg key <AC10> { [ U003B, U003A ] }; // SEMICOLON, COLON 223bfd7cbc1Smrg key <AC11> { [ U0300, U0302, U0027, U0022 ] }; // COMBINING LOW TONE, COMBINING FALLING TONE, APOSTROPHE, QUOTATION MARK 224bfd7cbc1Smrg key <AD01> { [ q, Q, U2014, U2013 ] }; // SMALL LETTER Q, CAPITAL LETTER Q, EM DASH, EN DASH 225bfd7cbc1Smrg key <AD02> { [ w, W, U1E85, U1E84 ] }; // SMALL LETTER W, CAPITAL LETTER W, SMALL LETTER W WITH DIAERESIS, CAPITAL LETTER W WITH DIAERESIS 226bfd7cbc1Smrg key <AD03> { [ e, E, U0259, U018F ] }; // SMALL LETTER E, CAPITAL LETTER E, SMALL LETTER SCHWA, CAPITAL LETTER SCHWA 227bfd7cbc1Smrg key <AD04> { [ r, R, NoSymbol, U00AE ] }; // SMALL LETTER R, CAPITAL LETTER R, , REGISTERED SIGN 228bfd7cbc1Smrg key <AD05> { [ t, T, U0153, U0152 ] }; // SMALL LETTER T, CAPITAL LETTER T, SMALL LIGATURE OE, CAPITAL LIGATURE OE 229bfd7cbc1Smrg key <AD06> { [ y, Y, U01B4, U01B3 ] }; // SMALL LETTER Y, CAPITAL LETTER Y, SMALL LETTER Y WITH HOOK, CAPITAL LETTER Y WITH HOOK 230bfd7cbc1Smrg key <AD07> { [ u, U, U0289, U0244 ] }; // SMALL LETTER U, CAPITAL LETTER U, SMALL LETTER U BAR, CAPITAL LETTER U BAR 231bfd7cbc1Smrg key <AD08> { [ i, I, U0268, U0197 ] }; // SMALL LETTER I, CAPITAL LETTER I, SMALL LETTER I BAR, CAPITAL LETTER I BAR 232bfd7cbc1Smrg key <AD09> { [ o, O, U0254, U0186 ] }; // SMALL LETTER O, CAPITAL LETTER O, SMALL LETTER OPEN O, CAPITAL LETTER OPEN O 233bfd7cbc1Smrg key <AD10> { [ p, P, U00F8, U00D8 ] }; // SMALL LETTER P, CAPITAL LETTER P, SMALL LETTER O BAR, CAPITAL LETTER O BAR 234bfd7cbc1Smrg key <AD11> { [ U0301, U030C, U005B, U007B ] }; // COMBINING HIGH TONE, COMBINING RISING TONE, LEFT SQUARE BRACKET, LEFT CURLY BRACKET 235bfd7cbc1Smrg key <AD12> { [ U0327, U0308, U005D, U007D ] }; // COMBINING CEDILLA, COMBINING DIAERESIS, RIGHT SQUARE BRACKET, RIGHT CURLY BRACKET 236bfd7cbc1Smrg key <AE01> { [ U0031, U0021, U00BC ] }; // 1, EXCLAMATION POINT, ONE QUARTER 237bfd7cbc1Smrg key <AE02> { [ U0032, U0040, U00BD ] }; //2, AT SYMBOL, ONE HALF 238bfd7cbc1Smrg key <AE03> { [ U0033, U0023, U00BE ] }; // 3, NUMBER SIGN, THREE QUARTERS 239bfd7cbc1Smrg key <AE04> { [ U0034, U0024, NoSymbol, U20AC ] }; // 4, DOLLAR, , EURO SIGN 240bfd7cbc1Smrg key <AE08> { [ U0038, U002A, NoSymbol, U00D7 ] }; // 8, ASTERISK, , MATH MULTIPLY 241bfd7cbc1Smrg key <AE09> { [ U0039, U0028, U2018, U201C ] }; // 9, LEFT PARENTHESIS, LEFT SINGLE QUOTE MARK, LEFT DOUBLE QUOTE MARK 242bfd7cbc1Smrg key <AE10> { [ U0030, U0029, U2019, U201D ] }; // 0, RIGHT PARENTHESIS, RIGHT SINGLE QUOTE MARK, LEFT DOUBLE QUOTE MARK 243bfd7cbc1Smrg key <AE11> { [ U002D, U005F, U0304 ] }; // MINUS, UNDERSCORE, COMBINING MID TONE, COMBINING MID TONE 244bfd7cbc1Smrg key <AE12> { [ U003D, U002B, NoSymbol, U00B1 ] }; // EQUAL, PLUS, , PLUS-MINUS 245bfd7cbc1Smrg key <BKSL> { [ U005C, U007C ] }; // BACKSLASH, BAR 246bfd7cbc1Smrg key <TLDE> { [ U030D, U0303, U0060, U007E ] }; // COMBINING VERTICAL LINE ABOVE, COMBINING TILDE ABOVE, GRAVE ACCENT, TILDE 247bfd7cbc1Smrg include "cm(semicolon_switch)" 248bfd7cbc1Smrg}; 249bfd7cbc1Smrg 250bfd7cbc1Smrg 251bfd7cbc1Smrgpartial alphanumeric_keys 252bfd7cbc1Smrgxkb_symbols "dvorak" 253bfd7cbc1Smrg{ 254bfd7cbc1Smrg name[Group1] = "English (Cameroon Dvorak)"; 255bfd7cbc1Smrg include "level3(ralt_switch)" 256bfd7cbc1Smrg include "us(dvorak)" 257bfd7cbc1Smrg key <AB01> { [ semicolon, colon ] }; // SEMICOLON, COLON 258bfd7cbc1Smrg key <AB02> { [ q, Q, U2014, U2013 ] }; // SMALL LETTER Q, CAPITAL LETTER Q, EM DASH, EN DASH 259bfd7cbc1Smrg key <AB03> { [ j, J, U0330, U0323 ] }; // SMALL LETTER J, CAPITAL LETTER J, COMBINING TILDE (NASAL) BELOW, COMBINING DOT BELOW 260bfd7cbc1Smrg key <AB04> { [ k, K, U1DC5, U1DC7 ] }; // SMALL LETTER K, CAPITAL LETTER K, COMBINING LOW-MID TONE, COMBINING HIGH-MID 261bfd7cbc1Smrg key <AB05> { [ x, X ] }; // SMALL LETTER X, CAPITAL LETTER X 262bfd7cbc1Smrg key <AB06> { [ b, B, U0253, U0181 ] }; // SMALL LETTER B, CAPITAL LETTER B, SMALL LETTER B WITH HOOK, CAPITAL LETTER B WITH HOOK 263bfd7cbc1Smrg key <AB07> { [ m, M, NoSymbol, U2122 ] }; // SMALL LETTER M, CAPITAL LETTER M, , TRADEMARK SIGN 264bfd7cbc1Smrg key <AB08> { [ w, W, U1E85, U1E84 ] }; // SMALL LETTER W, CAPITAL LETTER W, SMALL LETTER W WITH DIAERESIS, CAPITAL LETTER W WITH DIAERESIS 265bfd7cbc1Smrg key <AB09> { [ v, V, U25CC, NoSymbol ] }; // SMALL LETTER V, CAPITAL LETTER V, PLACEHOLDER CHARACTER 266bfd7cbc1Smrg key <AB10> { [ z, Z, U2026, U2020 ] }; // SMALL LETTER Z, CAPITAL LETTER Z, ELLIPSIS, DAGGER 267bfd7cbc1Smrg key <AC01> { [ a, A, U025B, U0190 ] }; // SMALL LETTER A, CAPITAL LETTER A, SMALL LETTER OPEN E, CAPITAL LETTER OPEN E 268bfd7cbc1Smrg key <AC02> { [ o, O, U0254, U0186 ] }; // SMALL LETTER O, CAPITAL LETTER O, SMALL LETTER OPEN O, CAPITAL LETTER OPEN O 269bfd7cbc1Smrg key <AC03> { [ e, E, U0259, U018F ] }; // SMALL LETTER E, CAPITAL LETTER E, SMALL LETTER SCHWA, CAPITAL LETTER SCHWA 270bfd7cbc1Smrg key <AC04> { [ u, U, U0289, U0244 ] }; // SMALL LETTER U, CAPITAL LETTER U, SMALL LETTER U BAR, CAPITAL LETTER U BAR 271bfd7cbc1Smrg key <AC05> { [ i, I, U0268, U0197 ] }; // SMALL LETTER I, CAPITAL LETTER I, SMALL LETTER I BAR, CAPITAL LETTER I BAR 272bfd7cbc1Smrg key <AC06> { [ d, D, U0257, U018A ] }; // SMALL LETTER D, CAPITAL LETTER D, SMALL LETTER D WITH HOOK, CAPITAL LETTER D WITH HOOK 273bfd7cbc1Smrg key <AC07> { [ h, H, U0251, U2C6D ] }; // SMALL LETTER H, CAPITAL LETTER H, SMALL LETTER ALPHA, CAPITAL LETTER ALPHA 274bfd7cbc1Smrg key <AC08> { [ t, T, U0153, U0152 ] }; // SMALL LETTER T, CAPITAL LETTER T, SMALL LIGATURE OE, CAPITAL LIGATURE OE 275bfd7cbc1Smrg key <AC09> { [ n, N, U014B, U014A ] }; // SMALL LETTER N, CAPITAL LETTER N, SMALL LETTER ENG, CAPITAL LETTER ENG 276bfd7cbc1Smrg key <AC10> { [ s, S ] }; // SMALL LETTER S, CAPITAL LETTER S 277bfd7cbc1Smrg key <AC11> { [ minus, underscore, U0304 ] }; // MINUS, UNDERSCORE, COMBINING MID TONE 278bfd7cbc1Smrg key <AD01> { [ U0300, U0302, U0027, U0022 ] }; // COMBINING LOW TONE, COMBINING FALLING TONE, APOSTROPHE, QUOTATION MARK 279bfd7cbc1Smrg key <AD02> { [ comma, less, U2039, U00AB ] }; // COMMA, LESS THAN SIGN, LEFT SINGLE GUILLEMET, LEFT DOUBLE GUILLEMET 280bfd7cbc1Smrg key <AD03> { [ period, greater, U203A, U00BB ] }; // PERIOD, GREATER THAN SIGN, RIGHT SINGLE GUILLEMET, RIGHT DOUBLE GUILLEMET 281bfd7cbc1Smrg key <AD04> { [ p, P, U00F8, U00D8 ] }; // SMALL LETTER P, CAPITAL LETTER P, SMALL LETTER O BAR, CAPITAL LETTER O BAR 282bfd7cbc1Smrg key <AD05> { [ y, Y, U01B4, U01B3 ] }; // SMALL LETTER Y, CAPITAL LETTER Y, SMALL LETTER Y WITH HOOK, CAPITAL LETTER Y WITH HOOK 283bfd7cbc1Smrg key <AD06> { [ f, F, U00E6, U00C6 ] }; // SMALL LETTER F, CAPITAL LETTER F, SMALL LIGATURE AE, CAPITAL LIGATURE AE 284bfd7cbc1Smrg key <AD07> { [ g, G, UA78C, UA78B ] }; // SMALL LETTER G, CAPITAL LETTER G, SMALL LETTER GLOTTAL (SALTILLO), CAPITAL LETTER GLOTTAL (SALTILLO) 285bfd7cbc1Smrg key <AD08> { [ c, C, NoSymbol, U00A9 ] }; // SMALL LETTER C, CAPITAL LETTER C, , COPYRIGHT 286bfd7cbc1Smrg key <AD09> { [ r, R, NoSymbol, U00AE ] }; // SMALL LETTER R, CAPITAL LETTER R, , REGISTERED SIGN 287bfd7cbc1Smrg key <AD10> { [ l, L, U1DC6, U1DC4 ] }; // SMALL LETTER L, CAPITAL LETTER L, COMBINING MID-LOW, COMBINING MID-HIGH TONE 288bfd7cbc1Smrg key <AD11> { [ slash, U003F, U00F7, U0294 ] }; // SLASH, QUESTION MARK, DIVISION SIGN, GLOTTAL STOP 289bfd7cbc1Smrg key <AD12> { [ equal, plus, NoSymbol, plusminus ] }; // EQUAL, PLUS, , PLUS-MINUS 290bfd7cbc1Smrg key <AE01> { [ KP_1, exclam, U00BC ] }; // 1, EXCLAMATION POINT, ONE QUARTER 291bfd7cbc1Smrg key <AE02> { [ KP_2, at, U00BD ] }; // 2, AT SYMBOL, ONE HALF 292bfd7cbc1Smrg key <AE03> { [ KP_3, numbersign, U00BE ] }; // 3, NUMBER SIGN, THREE QUARTERS 293bfd7cbc1Smrg key <AE04> { [ KP_4, dollar, NoSymbol, U20AC ] }; // 4, DOLLAR, , EURO SIGN 294bfd7cbc1Smrg key <AE05> { [ KP_5, percent ] }; // 5, PERCENT 295bfd7cbc1Smrg key <AE06> { [ KP_6, asciicircum ] }; // 6, CARET 296bfd7cbc1Smrg key <AE07> { [ KP_7, ampersand ] }; // 7, AMPERSAND 297bfd7cbc1Smrg key <AE08> { [ KP_8, asterisk, NoSymbol, multiply ] }; // 8, ASTERISK, , MULTIPLY 298bfd7cbc1Smrg key <AE09> { [ KP_9, parenleft, leftsinglequotemark, leftdoublequotemark ] }; // 9, LEFT PARENTHESIS, LEFT SINGLE QUOTE MARK, LEFT DOUBLE QUOTE MARK 299bfd7cbc1Smrg key <AE10> { [ KP_0, parenright, rightsinglequotemark, rightdoublequotemark ] }; // 0, RIGHT PARENTHESIS, RIGHT SINGLE QUOTE MARK, LEFT DOUBLE QUOTE MARK 300bfd7cbc1Smrg key <AE11> { [ U0301, U030C, U005B, U007B ] }; // COMBINING HIGH TONE, COMBINING RISING TONE, LEFT SQUARE BRACKET, LEFT CURLY BRACKET 301bfd7cbc1Smrg key <AE12> { [ U0327, dead_diaeresis, U005D, braceright ] }; // COMBINING CEDILLA, DEAD DIAERESIS, RIGHT SQUARE BRACKET, RIGHT CURLY BRACKET 302bfd7cbc1Smrg key <BKSL> { [ backslash, bar ] }; // BACKSLASH, BAR 303bfd7cbc1Smrg key <TLDE> { [ U030D, U0303, U0060, U007E ] }; // COMBINING VERTICAL LINE ABOVE, COMBINING TILDE ABOVE, GRAVE ACCENT, TILDE 304bfd7cbc1Smrg include "cm(semicolon_switch_dvorak)" 305bfd7cbc1Smrg}; 306bfd7cbc1Smrg 307bfd7cbc1Smrg// The following code creates the "Cameroon key" phenomenon. 308bfd7cbc1Smrg 309bfd7cbc1Smrgpartial modifier_keys 310bfd7cbc1Smrgxkb_symbols "semicolon_switch" { 311bfd7cbc1Smrg key <AC10> { 312bfd7cbc1Smrg symbols[Group1] = [ ISO_Level3_Latch, colon, semicolon, colon ]}; 313bfd7cbc1Smrg modifier_map Mod5 { ISO_Level3_Latch }; 314bfd7cbc1Smrg}; 315bfd7cbc1Smrg 316bfd7cbc1Smrgpartial modifier_keys 317bfd7cbc1Smrgxkb_symbols "exclamation_switch" { 318bfd7cbc1Smrg key <AB10> { 319bfd7cbc1Smrg symbols[Group1] = [ ISO_Level3_Latch, U00A7, exclam, U00A7 ] 320bfd7cbc1Smrg }; 321bfd7cbc1Smrg modifier_map Mod5 { ISO_Level3_Latch }; 322bfd7cbc1Smrg}; 323bfd7cbc1Smrg 324bfd7cbc1Smrgpartial modifier_keys 325bfd7cbc1Smrgxkb_symbols "semicolon_switch_dvorak" { 326bfd7cbc1Smrg key <AB01> { 327bfd7cbc1Smrg symbols[Group1] = [ ISO_Level3_Latch, colon, semicolon, colon ] 328bfd7cbc1Smrg }; 329bfd7cbc1Smrgmodifier_map Mod5 { ISO_Level3_Latch }; 330bfd7cbc1Smrg}; 331bfd7cbc1Smrg 332