cm revision 21fe479e
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
39797b363dSmrgdefault  partial alphanumeric_keys
40bfd7cbc1Smrgxkb_symbols "basic" {
41bfd7cbc1Smrg
42bfd7cbc1Smrg	name[Group1]="English (Cameroon)";
43bfd7cbc1Smrg
44bfd7cbc1Smrg	key <TLDE> { [ grave, asciitilde ] };
45bfd7cbc1Smrg	key <AE01> { [ 1, exclam ] };
46bfd7cbc1Smrg	key <AE02> { [ 2, at ] };
47bfd7cbc1Smrg	key <AE03> { [ 3, numbersign ] };
48bfd7cbc1Smrg	key <AE04> { [ 4, dollar ] };
49bfd7cbc1Smrg	key <AE05> { [ 5, percent ] };
50bfd7cbc1Smrg	key <AE06> { [ 6, asciicircum ] };
51bfd7cbc1Smrg	key <AE07> { [ 7, ampersand ] };
52bfd7cbc1Smrg	key <AE08> { [ 8, asterisk ] };
53bfd7cbc1Smrg	key <AE09> { [ 9, parenleft ] };
54bfd7cbc1Smrg	key <AE10> { [ 0, parenright ] };
55bfd7cbc1Smrg	key <AE11> { [ minus, underscore ] };
56bfd7cbc1Smrg	key <AE12> { [ equal, plus ] };
57bfd7cbc1Smrg
58bfd7cbc1Smrg	key <AD01> { [ q, Q ] };
59bfd7cbc1Smrg	key <AD02> { [ w, W ] };
60bfd7cbc1Smrg	key <AD03> { [ e, E ] };
61bfd7cbc1Smrg	key <AD04> { [ r, R ] };
62bfd7cbc1Smrg	key <AD05> { [ t, T ] };
63bfd7cbc1Smrg	key <AD06> { [ y, Y ] };
64bfd7cbc1Smrg	key <AD07> { [ u, U ] };
65bfd7cbc1Smrg	key <AD08> { [ i, I ] };
66bfd7cbc1Smrg	key <AD09> { [ o, O ] };
67bfd7cbc1Smrg	key <AD10> { [ p, P ] };
68bfd7cbc1Smrg	key <AD11> { [ bracketleft, braceleft ] };
69bfd7cbc1Smrg	key <AD12> { [ bracketright, braceright ] };
70bfd7cbc1Smrg	key <AC01> { [ a, A ] };
71bfd7cbc1Smrg	key <AC02> { [ s, S ] };
72bfd7cbc1Smrg	key <AC03> { [ d, D ] };
73bfd7cbc1Smrg	key <AC04> { [ f, F ] };
74bfd7cbc1Smrg	key <AC05> { [ g, G ] };
75bfd7cbc1Smrg	key <AC06> { [ h, H ] };
76bfd7cbc1Smrg	key <AC07> { [ j, J ] };
77bfd7cbc1Smrg	key <AC08> { [ k, K ] };
78bfd7cbc1Smrg	key <AC09> { [ l, L ] };
79bfd7cbc1Smrg	key <AC10> { [ semicolon, colon ] };
80bfd7cbc1Smrg	key <AC11> { [ apostrophe, quotedbl ] };
81bfd7cbc1Smrg
82bfd7cbc1Smrg	key <AB01> { [ z, Z ] };
83bfd7cbc1Smrg	key <AB02> { [ x, X ] };
84bfd7cbc1Smrg	key <AB03> { [ c, C ] };
85bfd7cbc1Smrg	key <AB04> { [ v, V ] };
86bfd7cbc1Smrg	key <AB05> { [ b, B ] };
87bfd7cbc1Smrg	key <AB06> { [ n, N ] };
88bfd7cbc1Smrg	key <AB07> { [ m, M ] };
89bfd7cbc1Smrg	key <AB08> { [ comma, less ] };
90bfd7cbc1Smrg	key <AB09> { [ period, greater ] };
91bfd7cbc1Smrg	key <AB10> { [ slash, U003F ] };
92bfd7cbc1Smrg
93bfd7cbc1Smrg	key <BKSL> { [ backslash, bar ] };
94bfd7cbc1Smrg};
95bfd7cbc1Smrg
96bfd7cbc1Smrgpartial alphanumeric_keys
97bfd7cbc1Smrgxkb_symbols "french"
98bfd7cbc1Smrg{
99bfd7cbc1Smrg	include "latin"
10052a82186Smrg	name[Group1]="French (Cameroon)";
101bfd7cbc1Smrg
102bfd7cbc1Smrg	key <AE01> { [ ampersand, 1, onesuperior, exclamdown ] };
103bfd7cbc1Smrg	key <AE02> { [ eacute, 2, asciitilde, oneeighth ] };
104bfd7cbc1Smrg	key <AE03> { [ quotedbl, 3, numbersign, sterling ] };
105bfd7cbc1Smrg	key <AE04> { [apostrophe, 4, braceleft, dollar ] };
106bfd7cbc1Smrg	key <AE05> { [ parenleft, 5, bracketleft, threeeighths ] };
107bfd7cbc1Smrg	key <AE06> { [ minus, 6, bar, fiveeighths ] };
108bfd7cbc1Smrg	key <AE07> { [ egrave, 7, grave, seveneighths ] };
109bfd7cbc1Smrg	key <AE08> { [underscore, 8, backslash, trademark ] };
110bfd7cbc1Smrg	key <AE09> { [ ccedilla, 9, asciicircum, plusminus ] };
111bfd7cbc1Smrg	key <AE10> { [ agrave, 0, at, degree ] };
112bfd7cbc1Smrg	key <AE11> { [parenright, degree, bracketright, questiondown ] };
113bfd7cbc1Smrg	key <AE12> { [ equal, plus, braceright, dead_ogonek ] };
114bfd7cbc1Smrg
115bfd7cbc1Smrg	key <AD01> { [ a, A, ae, AE ] };
116bfd7cbc1Smrg	key <AD02> { [ z, Z, guillemotleft, less ] };
117bfd7cbc1Smrg	key <AD03> { [ e, E, EuroSign, cent ] };
118bfd7cbc1Smrg	key <AD11> { [dead_circumflex, dead_diaeresis, dead_diaeresis, dead_abovering ] };
119bfd7cbc1Smrg	key <AD12> { [ dollar, sterling, currency, dead_macron ] };
120bfd7cbc1Smrg
121bfd7cbc1Smrg	key <AC01> { [ q, Q, at, Greek_OMEGA ] };
122bfd7cbc1Smrg	key <AC10> { [ m, M, mu, masculine ] };
123bfd7cbc1Smrg	key <AC11> { [ ugrave, percent, dead_circumflex, dead_caron] };
124bfd7cbc1Smrg	key <TLDE> { [twosuperior, asciitilde, notsign, notsign ] };
125bfd7cbc1Smrg
126bfd7cbc1Smrg	key <BKSL> { [ asterisk, mu, dead_grave, dead_breve ] };
127bfd7cbc1Smrg	key <AB01> { [ w, W, lstroke, Lstroke ] };
128bfd7cbc1Smrg	key <AB07> { [ comma, U003F, dead_acute, dead_doubleacute ] };
129bfd7cbc1Smrg	key <AB08> { [ semicolon, period, horizconnector, multiply ] };
130bfd7cbc1Smrg	key <AB09> { [ colon, slash, periodcentered, division ] };
131bfd7cbc1Smrg	key <AB10> { [ exclam, section, dead_belowdot, dead_abovedot ] };
132bfd7cbc1Smrg
133bfd7cbc1Smrg	include "level3(ralt_switch)"
134bfd7cbc1Smrg};
135bfd7cbc1Smrg
136bfd7cbc1Smrgpartial alphanumeric_keys
137bfd7cbc1Smrgxkb_symbols "azerty"
138bfd7cbc1Smrg{
139bfd7cbc1Smrg	include "cm(basic)"
14052a82186Smrg	name[Group1] = "Cameroon Multilingual (azerty)";
141bfd7cbc1Smrg	key <AB01> { [ w, W, U1E85, U1E84 ] };	//  SMALL LETTER W,  CAPITAL LETTER W, SMALL LETTER W WITH DIAERESIS, CAPITAL LETTER W WITH DIAERESIS
142bfd7cbc1Smrg	key <AB02> { [ x, X, U2039, U203A ] };	// SMALL LETTER X, CAPITAL LETTER X, SINGLE LEFT-POINTING ANGLE QUOTATION MARK, SINGLE RIGHT-POINTING ANGLE QUOTATION MARK
143bfd7cbc1Smrg	key <AB03> { [ c, C, U0327, copyright ] };	// SMALL LETTER C, CAPITAL LETTER C, COMBINING CEDILLA, COPYRIGHT SIGN
1440412cdedSmrg	key <AB04> { [ v, V, UA78C, UA78B ] };	// SMALL LETTER V, CAPITAL LETTER V, SMALL LETTER GLOTTAL (SALTILLO), CAPITAL LETTER GLOTTAL (SALTILLO)
145bfd7cbc1Smrg	key <AB05> { [ b, B, U0253, U0181 ] };	// SMALL LETTER B, CAPITAL LETTER B, SMALL LETTER B WITH HOOK, CAPITAL LETTER B WITH HOOK
146bfd7cbc1Smrg	key <AB06> { [ n, N, U014B, U014A ] };	// SMALL LETTER N, CAPITAL LETTER N, SMALL LETTER ENG, CAPITAL LETTER ENG
147bfd7cbc1Smrg	key <AB07> { [ U002C, U003F, NoSymbol, U00D7 ] };	// COMMA, QUESTION MARK, , MULTIPLY
148bfd7cbc1Smrg	key <AB08> { [ semicolon, period, dead_acute, dead_grave ] };	// SEMICOLON, PERIOD
149bfd7cbc1Smrg	key <AB09> { [ colon, slash, U0323 ] };	// COLON, SLASH, COMBINING DOT BELOW
150bfd7cbc1Smrg	key <AB10> { [ exclam, U00A7 ] };	// EXCLAMATION MARK, SECTION SIGN
151bfd7cbc1Smrg	key <AC01> { [ q, Q, U2014, U2013 ] };	// SMALL LETTER Q, CAPITAL LETTER Q, EM DASH, EN DASH
152bfd7cbc1Smrg	key <AC02> { [ s, S, U201C, U201D ] };	// SMALL LETTER S, CAPITAL LETTER S, LEFT DOUBLE QUOTES, RIGHT DOUBLE QUOTES 
153bfd7cbc1Smrg	key <AC03> { [ d, D, U0257, U018A ] };	// SMALL LETTER D, CAPITAL LETTER D, SMALL LETTER D WITH HOOK, CAPITAL LETTER D WITH HOOK
154bfd7cbc1Smrg	key <AC04> { [ f, F, U00E6, U00C6 ] };	// SMALL LETTER F, CAPITAL LETTER F, SMALL LIGATURE AE, CAPITAL LIGATURE AE
1550412cdedSmrg	key <AC05> { [ g, G, U02BC, UA78B ] };	// SMALL LETTER G, CAPITAL LETTER G, CURVED GLOTTAL, CAPITAL LETTER GLOTTAL (SALTILLO)
156bfd7cbc1Smrg	key <AC06> { [ h, H, U0251, U2C6D ] };	// SMALL LETTER H, CAPITAL LETTER H, SMALL LETTER ALPHA, CAPITAL LETTER ALPHA
157bfd7cbc1Smrg	key <AC07> { [ j, J, leftarrow, U2122 ] };	//SMALL LETTER J, CAPITAL LETTER J, LEFT ARROW, TRADE MARK SIGN
158bfd7cbc1Smrg	key <AC08> { [ k, K, downarrow, uparrow ] };	// SMALL LETTER K, CAPITAL LETTER K, DOWN ARROW, UP ARROW
159bfd7cbc1Smrg	key <AC09> { [ l, L, rightarrow, U00A3 ] };	// SMALL LETTER L, CAPITAL LETTER L, RIGHT ARROW, POUND STERLING
160bfd7cbc1Smrg	key <AC10> { [ m, M, U00F9, U00B5 ] };	// SMALL LETTER M, CAPITAL LETTER M, SMALL LETTER U WITH GRAVE, MICRO SYMBOL
161bfd7cbc1Smrg	key <AC11> { [ U0300, U0302, U1DC5, U1DC4 ] };	// COMBINING LOW TONE, COMBINING FALLING TONE, COMBINING LOW-MID TONE, COMBINING MID-HIGH TONE
162bfd7cbc1Smrg	key <AD01> { [ a, A, U025B, U0190 ] };	// SMALL LETTER A, CAPITAL LETTER A, SMALL LETTER OPEN E, CAPITAL LETTER OPEN E
163bfd7cbc1Smrg	key <AD02> { [ z, Z, U2026, U2020 ] };	// SMALL LETTER Z, CAPITAL LETTER Z, ELLIPSIS, DAGGER
164bfd7cbc1Smrg	key <AD03> { [ e, E, U0259, U018F ] };	// SMALL LETTER E, CAPITAL LETTER E, SMALL LETTER SCHWA, CAPITAL LETTER SCHWA
1650412cdedSmrg	key <AD04> { [ r, R, U25CC, U00AE ] };	// SMALL LETTER R, CAPITAL LETTER R, PLACEHOLDER SYMBOL, REGISTERED SIGN
166bfd7cbc1Smrg	key <AD05> { [ t, T, U0153, U0152 ] };	// SMALL LETTER T, CAPITAL LETTER T, SMALL LIGATURE OE, CAPITAL LIGATURE OE
167bfd7cbc1Smrg	key <AD06> { [ y, Y, U01B4, U01B3 ] };	// SMALL LETTER Y, CAPITAL LETTER Y, SMALL LETTER Y WITH HOOK, CAPITAL LETTER Y WITH HOOK
168bfd7cbc1Smrg	key <AD07> { [ u, U, U0289, U0244 ] };	// SMALL LETTER U, CAPITAL LETTER U, SMALL LETTER U BAR, CAPITAL LETTER U BAR
169bfd7cbc1Smrg	key <AD08> { [ i, I, U0268, U0197 ] };	// SMALL LETTER I, CAPITAL LETTER I, SMALL LETTER I BAR, CAPITAL LETTER I BAR
170bfd7cbc1Smrg	key <AD09> { [ o, O, U0254, U0186 ] };	// SMALL LETTER O, CAPITAL LETTER O, SMALL LETTER OPEN O, CAPITAL LETTER OPEN O
171bfd7cbc1Smrg	key <AD10> { [ p, P, U00F8, U00D8 ] };	// SMALL LETTER P, CAPITAL LETTER P, SMALL LETTER O BAR, CAPITAL LETTER O BAR
172bfd7cbc1Smrg	key <AD11> { [ U0301, U030C, dead_circumflex, dead_diaeresis ] };	// COMBINING HIGH TONE, COMBINING RISING TONE, DEAD CIRCUMFLEX, DEAD DIAERESIS
173bfd7cbc1Smrg	key <AD12> { [ U0330, U0303, U0304, U030D ] };	// COMBINING TILDE (NASAL) BELOW, COMBINING TILDE (NASAL), COMBINING MID TONE, COMBINING VERTICAL LINE ABOVE
174bfd7cbc1Smrg	key <AE01> { [ U0026, KP_1, U00B9, U2018 ] };	// AMPERSAND, 1, SUPERSCRIPT 1, LEFT SINGLE QUOTE
175bfd7cbc1Smrg	key <AE02> { [ eacute, KP_2, asciitilde, U2019 ] };	// SMALL LETTER E WITH ACUTE, 2, TILDE, RIGHT SINGLE QUOTE
176bfd7cbc1Smrg	key <AE03> { [ U0022, KP_3, U0025 ] };	// QUOTATION MARK, 3, PERCENT SIGN
177bfd7cbc1Smrg	key <AE04> { [ U0027, KP_4, U007B ] };	// APOSTROPHE, 4, LEFT CURLY BRACKET
178bfd7cbc1Smrg	key <AE05> { [ U0028, KP_5, U005B, numbersign ] };	// LEFT PARENTHESIS, 5, LEFT SQUARE BRACKET, NUMBER SIGN
179bfd7cbc1Smrg	key <AE06> { [ U002D, KP_6, U007C ] };	// HYPHEN/MINUS, 6, BAR
180bfd7cbc1Smrg	key <AE07> { [ U00E8, KP_7, U0300 ] };	// SMALL LETTER E WITH GRAVE, 7, COMBINING GRAVE
181bfd7cbc1Smrg	key <AE08> { [ underscore, KP_8, backslash, U20D6 ] };	// UNDERSCORE, 8, BACKSLASH, COMBINING LEFT ARROW ABOVE
182bfd7cbc1Smrg	key <AE09> { [ ccedilla, KP_9, U005E] };	// SMALL LETTER C WITH CEDILLA, 9, CIRCUMFLEX
183bfd7cbc1Smrg	key <AE10> { [ U00E0, KP_0, at, U20D7 ] };	// SMALL LETTER A WITH GRAVE
184bfd7cbc1Smrg	key <AE11> { [ U0029, U00B0, U005D ] };	// RIGHT PARENTHESIS, DEGREE, RIGHT SQUARE BRACKET
185bfd7cbc1Smrg	key <AE12> { [ U003D, U002B, U007D, U00B1 ] };	// EQUAL SIGN, PLUS SIGN, RIGHT CURLY BRACKET, PLUS-MINUS SIGN
186bfd7cbc1Smrg	key <BKSL> { [ U1DC6, U1DC7, KP_Multiply, U00A4 ] };	//  COMBINING MID-LOW, COMBINING HIGH-MID, MULTIPLY, CURRENCY SIGN
187bfd7cbc1Smrg	key <LSGT> { [ U003C, U003E, U00AB, U00BB ] };	// LESS THAN, GREATER THAN, LEFT GUILLEMET, RIGHT GUILLEMET
188bfd7cbc1Smrg	key <TLDE> { [ U0024, U20AC, U00B2, U00B3 ] };	// DOLLAR, EURO, SUPERSCRIPT 2, SUPERSCRIPT 3
189bfd7cbc1Smrg	include "cm(exclamation_switch)"
19052a82186Smrg	include "level3(ralt_switch)"
191bfd7cbc1Smrg};
192bfd7cbc1Smrg
193bfd7cbc1Smrgpartial alphanumeric_keys
194bfd7cbc1Smrgxkb_symbols "qwerty"
195bfd7cbc1Smrg{
196bfd7cbc1Smrg	include "cm(basic)"
19752a82186Smrg	name[Group1] = "Cameroon Multilingual (qwerty)";
198bfd7cbc1Smrg	key <AB01> { [ z, Z, U2026, U2020 ] };	// SMALL LETTER Z, CAPITAL LETTER Z, ELLIPSIS, DAGGER
199bfd7cbc1Smrg	key <AB02> { [ x, X ] };	// SMALL LETTER X, CAPITAL LETTER X
2000412cdedSmrg	key <AB03> { [ c, C, U0327, U00A9 ] };	// SMALL LETTER C, CAPITAL LETTER C, CEDILLA, COPYRIGHT
2010412cdedSmrg	key <AB04> { [ v, V, UA78C, UA78B ] };	// SMALL LETTER V, CAPITAL LETTER V, SMALL LETTER GLOTTAL (SALTILLO), CAPITAL LETTER GLOTTAL (SALTILLO)
202bfd7cbc1Smrg	key <AB05> { [ b, B, U0253, U0181 ] };	// SMALL LETTER B, CAPITAL LETTER B, SMALL LETTER B WITH HOOK, CAPITAL LETTER B WITH HOOK
203bfd7cbc1Smrg	key <AB06> { [ n, N, U014B, U014A ] };	// SMALL LETTER N, CAPITAL LETTER N, SMALL LETTER ENG, CAPITAL LETTER ENG
204bfd7cbc1Smrg	key <AB07> { [ m, M, NoSymbol, U2122 ] };	// SMALL LETTER M, CAPITAL LETTER M, , TRADEMARK SIGN
205bfd7cbc1Smrg	key <AB08> { [ U002C, U003C, U2039, U00AB ] };	// COMMA, LESS THAN SIGN, LEFT SINGLE GUILLEMET, LEFT DOUBLE GUILLEMET
206bfd7cbc1Smrg	key <AB09> { [ U002E, U003E, U203A, U00BB ] };    // PERIOD, GREATER THAN SIGN, RIGHT SINGLE GUILLEMET, RIGHT DOUBLE GUILLEMET
207bfd7cbc1Smrg	key <AB10> { [ U002F, U003F, U00F7 ] };    // SLASH, QUESTION MARK, DIVISION SIGN
208bfd7cbc1Smrg	key <AC01> { [ a, A, U025B, U0190 ] };	// SMALL LETTER A, CAPITAL LETTER A, SMALL LETTER OPEN E, CAPITAL LETTER OPEN E
209bfd7cbc1Smrg	key <AC02> { [ s, S ] };	// SMALL LETTER S, CAPITAL LETTER S
210bfd7cbc1Smrg	key <AC03> { [ d, D, U0257, U018A ] };	// SMALL LETTER D, CAPITAL LETTER D, SMALL LETTER D WITH HOOK, CAPITAL LETTER D WITH HOOK
211bfd7cbc1Smrg	key <AC04> { [ f, F, U00E6, U00C6 ] };	// SMALL LETTER F, CAPITAL LETTER F, SMALL LIGATURE AE, CAPITAL LIGATURE AE
2120412cdedSmrg	key <AC05> { [ g, G, U02BC, UA78B ] };	// SMALL LETTER G, CAPITAL LETTER G, CURVED GLOTTAL, CAPITAL LETTER GLOTTAL (SALTILLO)
213bfd7cbc1Smrg	key <AC06> { [ h, H, U0251, U2C6D ] };	// SMALL LETTER H, CAPITAL LETTER H, SMALL LETTER ALPHA, CAPITAL LETTER ALPHA
214bfd7cbc1Smrg	key <AC07> { [ j, J, U0330, U0323 ] };	// SMALL LETTER J, CAPITAL LETTER J, COMBINING TILDE (NASAL) BELOW, COMBINING DOT BELOW
215bfd7cbc1Smrg	key <AC08> { [ k, K, U1DC5, U1DC7 ] };	// SMALL LETTER K, CAPITAL LETTER K, COMBINING LOW-MID TONE, COMBINING HIGH-MID
216bfd7cbc1Smrg	key <AC09> { [ l, L, U1DC6, U1DC4 ] };	// SMALL LETTER L, CAPITAL LETTER L, COMBINING MID-LOW, COMBINING MID-HIGH TONE
217bfd7cbc1Smrg	key <AC10> { [ U003B, U003A ] };	// SEMICOLON, COLON
218bfd7cbc1Smrg	key <AC11> { [ U0300, U0302, U0027, U0022 ] };	// COMBINING LOW TONE, COMBINING FALLING TONE, APOSTROPHE, QUOTATION MARK
219bfd7cbc1Smrg	key <AD01> { [ q, Q, U2014, U2013 ] };	// SMALL LETTER Q, CAPITAL LETTER Q, EM DASH, EN DASH
220bfd7cbc1Smrg	key <AD02> { [ w, W, U1E85, U1E84 ] };	// SMALL LETTER W, CAPITAL LETTER W, SMALL LETTER W WITH DIAERESIS, CAPITAL LETTER W WITH DIAERESIS
221bfd7cbc1Smrg	key <AD03> { [ e, E, U0259, U018F ] };	// SMALL LETTER E, CAPITAL LETTER E, SMALL LETTER SCHWA, CAPITAL LETTER SCHWA
2220412cdedSmrg	key <AD04> { [ r, R, U25CC, U00AE ] };	// SMALL LETTER R, CAPITAL LETTER R, PLACEHOLDER SYMBOL, REGISTERED SIGN
223bfd7cbc1Smrg	key <AD05> { [ t, T, U0153, U0152 ] };	// SMALL LETTER T, CAPITAL LETTER T, SMALL LIGATURE OE, CAPITAL LIGATURE OE
224bfd7cbc1Smrg	key <AD06> { [ y, Y, U01B4, U01B3 ] };	// SMALL LETTER Y, CAPITAL LETTER Y, SMALL LETTER Y WITH HOOK, CAPITAL LETTER Y WITH HOOK
225bfd7cbc1Smrg	key <AD07> { [ u, U, U0289, U0244 ] };	// SMALL LETTER U, CAPITAL LETTER U, SMALL LETTER U BAR, CAPITAL LETTER U BAR
226bfd7cbc1Smrg	key <AD08> { [ i, I, U0268, U0197 ] };	// SMALL LETTER I, CAPITAL LETTER I, SMALL LETTER I BAR, CAPITAL LETTER I BAR
227bfd7cbc1Smrg	key <AD09> { [ o, O, U0254, U0186 ] };	// SMALL LETTER O, CAPITAL LETTER O, SMALL LETTER OPEN O, CAPITAL LETTER OPEN O
228bfd7cbc1Smrg	key <AD10> { [ p, P, U00F8, U00D8 ] };	// SMALL LETTER P, CAPITAL LETTER P, SMALL LETTER O BAR, CAPITAL LETTER O BAR
229bfd7cbc1Smrg	key <AD11> { [ U0301, U030C, U005B, U007B ] };	// COMBINING HIGH TONE, COMBINING RISING TONE, LEFT SQUARE BRACKET, LEFT CURLY BRACKET
230bfd7cbc1Smrg	key <AD12> { [ U0327, U0308, U005D, U007D ] };	// COMBINING CEDILLA, COMBINING DIAERESIS, RIGHT SQUARE BRACKET, RIGHT CURLY BRACKET
231bfd7cbc1Smrg	key <AE01> { [ U0031, U0021, U00BC ] };	// 1, EXCLAMATION POINT, ONE QUARTER
232bfd7cbc1Smrg	key <AE02> { [ U0032, U0040, U00BD ] };	//2, AT SYMBOL, ONE HALF
233bfd7cbc1Smrg	key <AE03> { [ U0033, U0023, U00BE ] };	// 3, NUMBER SIGN, THREE QUARTERS
234bfd7cbc1Smrg	key <AE04> { [ U0034, U0024, NoSymbol, U20AC ] };	// 4, DOLLAR, , EURO SIGN
235bfd7cbc1Smrg	key <AE08> { [ U0038, U002A, NoSymbol, U00D7 ] };	// 8, ASTERISK, , MATH MULTIPLY
236bfd7cbc1Smrg	key <AE09> { [ U0039, U0028, U2018, U201C ] };	// 9, LEFT PARENTHESIS, LEFT SINGLE QUOTE MARK, LEFT DOUBLE QUOTE MARK
237bfd7cbc1Smrg	key <AE10> { [ U0030, U0029, U2019, U201D ] };	// 0, RIGHT PARENTHESIS, RIGHT SINGLE QUOTE MARK, LEFT DOUBLE QUOTE MARK
238bfd7cbc1Smrg	key <AE11> { [ U002D, U005F, U0304 ] };	// MINUS, UNDERSCORE, COMBINING MID TONE, COMBINING MID TONE
239bfd7cbc1Smrg	key <AE12> { [ U003D, U002B, NoSymbol, U00B1 ] };	// EQUAL, PLUS, , PLUS-MINUS
240bfd7cbc1Smrg	key <BKSL> { [ U005C, U007C ] };	// BACKSLASH, BAR
241bfd7cbc1Smrg	key <TLDE> { [ U030D, U0303, U0060, U007E ] };	// COMBINING VERTICAL LINE ABOVE, COMBINING TILDE ABOVE, GRAVE ACCENT, TILDE
242bfd7cbc1Smrg	include "cm(semicolon_switch)"
24352a82186Smrg	include "level3(ralt_switch)"
244bfd7cbc1Smrg};
245bfd7cbc1Smrg
246bfd7cbc1Smrgpartial alphanumeric_keys
247bfd7cbc1Smrgxkb_symbols "dvorak"
248bfd7cbc1Smrg{
249bfd7cbc1Smrg	include "us(dvorak)"
25052a82186Smrg	name[Group1] = "Cameroon Multilingual (Dvorak)";
251bfd7cbc1Smrg	key <AB01> { [ semicolon, colon ] };	// SEMICOLON, COLON
252bfd7cbc1Smrg	key <AB02> { [ q, Q, U2014, U2013 ] };	// SMALL LETTER Q, CAPITAL LETTER Q, EM DASH, EN DASH
253bfd7cbc1Smrg	key <AB03> { [ j, J, U0330, U0323 ] };	// SMALL LETTER J, CAPITAL LETTER J, COMBINING TILDE (NASAL) BELOW, COMBINING DOT BELOW
254bfd7cbc1Smrg	key <AB04> { [ k, K, U1DC5, U1DC7 ] };	// SMALL LETTER K, CAPITAL LETTER K, COMBINING LOW-MID TONE, COMBINING HIGH-MID
255bfd7cbc1Smrg	key <AB05> { [ x, X ] };	// SMALL LETTER X, CAPITAL LETTER X
256bfd7cbc1Smrg	key <AB06> { [ b, B, U0253, U0181 ] };	// SMALL LETTER B, CAPITAL LETTER B, SMALL LETTER B WITH HOOK, CAPITAL LETTER B WITH HOOK
257bfd7cbc1Smrg	key <AB07> { [ m, M, NoSymbol, U2122 ] };	// SMALL LETTER M, CAPITAL LETTER M, , TRADEMARK SIGN
258bfd7cbc1Smrg	key <AB08> { [ w, W, U1E85, U1E84 ] };	// SMALL LETTER W, CAPITAL LETTER W, SMALL LETTER W WITH DIAERESIS, CAPITAL LETTER W WITH DIAERESIS
2590412cdedSmrg	key <AB09> { [ v, V, UA78C, UA78B ] };	// SMALL LETTER V, CAPITAL LETTER V, SMALL LETTER GLOTTAL (SALTILLO), CAPITAL LETTER GLOTTAL (SALTILLO)
260bfd7cbc1Smrg	key <AB10> { [ z, Z, U2026, U2020 ] };	// SMALL LETTER Z, CAPITAL LETTER Z, ELLIPSIS, DAGGER
261bfd7cbc1Smrg	key <AC01> { [ a, A, U025B, U0190 ] };	// SMALL LETTER A, CAPITAL LETTER A, SMALL LETTER OPEN E, CAPITAL LETTER OPEN E
262bfd7cbc1Smrg	key <AC02> { [ o, O, U0254, U0186 ] };	// SMALL LETTER O, CAPITAL LETTER O, SMALL LETTER OPEN O, CAPITAL LETTER OPEN O
263bfd7cbc1Smrg	key <AC03> { [ e, E, U0259, U018F ] };	// SMALL LETTER E, CAPITAL LETTER E, SMALL LETTER SCHWA, CAPITAL LETTER SCHWA
264bfd7cbc1Smrg	key <AC04> { [ u, U, U0289, U0244 ] };	// SMALL LETTER U, CAPITAL LETTER U, SMALL LETTER U BAR, CAPITAL LETTER U BAR
265bfd7cbc1Smrg	key <AC05> { [ i, I, U0268, U0197 ] };	// SMALL LETTER I, CAPITAL LETTER I, SMALL LETTER I BAR, CAPITAL LETTER I BAR
266bfd7cbc1Smrg	key <AC06> { [ d, D, U0257, U018A ] };	// SMALL LETTER D, CAPITAL LETTER D, SMALL LETTER D WITH HOOK, CAPITAL LETTER D WITH HOOK
267bfd7cbc1Smrg	key <AC07> { [ h, H, U0251, U2C6D ] };	// SMALL LETTER H, CAPITAL LETTER H, SMALL LETTER ALPHA, CAPITAL LETTER ALPHA
268bfd7cbc1Smrg	key <AC08> { [ t, T, U0153, U0152 ] };	// SMALL LETTER T, CAPITAL LETTER T, SMALL LIGATURE OE, CAPITAL LIGATURE OE
269bfd7cbc1Smrg	key <AC09> { [ n, N, U014B, U014A ] };	// SMALL LETTER N, CAPITAL LETTER N, SMALL LETTER ENG, CAPITAL LETTER ENG
270bfd7cbc1Smrg	key <AC10> { [ s, S ] };	// SMALL LETTER S, CAPITAL LETTER S
271bfd7cbc1Smrg	key <AC11> { [ minus, underscore, U0304 ] };	// MINUS, UNDERSCORE, COMBINING MID TONE
272bfd7cbc1Smrg	key <AD01> { [ U0300, U0302, U0027, U0022 ] };	// COMBINING LOW TONE, COMBINING FALLING TONE, APOSTROPHE, QUOTATION MARK
273bfd7cbc1Smrg	key <AD02> { [ comma, less, U2039, U00AB ] };	// COMMA, LESS THAN SIGN, LEFT SINGLE GUILLEMET, LEFT DOUBLE GUILLEMET
274bfd7cbc1Smrg	key <AD03> { [ period, greater, U203A, U00BB ] };	// PERIOD, GREATER THAN SIGN, RIGHT SINGLE GUILLEMET, RIGHT DOUBLE GUILLEMET
275bfd7cbc1Smrg	key <AD04> { [ p, P, U00F8, U00D8 ] };	// SMALL LETTER P, CAPITAL LETTER P, SMALL LETTER O BAR, CAPITAL LETTER O BAR
276bfd7cbc1Smrg	key <AD05> { [ y, Y, U01B4, U01B3 ] };	// SMALL LETTER Y, CAPITAL LETTER Y, SMALL LETTER Y WITH HOOK, CAPITAL LETTER Y WITH HOOK
277bfd7cbc1Smrg	key <AD06> { [ f, F, U00E6, U00C6 ] };	// SMALL LETTER F, CAPITAL LETTER F, SMALL LIGATURE AE, CAPITAL LIGATURE AE
2780412cdedSmrg	key <AD07> { [ g, G, U02BC, UA78B ] };	// SMALL LETTER G, CAPITAL LETTER G, CURVED GLOTTAL, CAPITAL LETTER GLOTTAL (SALTILLO)
2790412cdedSmrg	key <AD08> { [ c, C, U0327, U00A9 ] };	// SMALL LETTER C, CAPITAL LETTER C, CEDILLA, COPYRIGHT
2800412cdedSmrg	key <AD09> { [ r, R, U25CC, U00AE ] };	// SMALL LETTER R, CAPITAL LETTER R, PLACEHOLDER SYMBOL, REGISTERED SIGN
281bfd7cbc1Smrg	key <AD10> { [ l, L, U1DC6, U1DC4 ] };	// SMALL LETTER L, CAPITAL LETTER L, COMBINING MID-LOW, COMBINING MID-HIGH TONE
282bfd7cbc1Smrg	key <AD11> { [ slash, U003F, U00F7, U0294 ] };	// SLASH, QUESTION MARK, DIVISION SIGN, GLOTTAL STOP
283bfd7cbc1Smrg	key <AD12> { [ equal, plus, NoSymbol, plusminus ] };	// EQUAL, PLUS, , PLUS-MINUS
284bfd7cbc1Smrg	key <AE01> { [ KP_1, exclam, U00BC ] };	// 1, EXCLAMATION POINT, ONE QUARTER
285bfd7cbc1Smrg	key <AE02> { [ KP_2, at, U00BD ] };	// 2, AT SYMBOL, ONE HALF
286bfd7cbc1Smrg	key <AE03> { [ KP_3, numbersign, U00BE ] };	// 3, NUMBER SIGN, THREE QUARTERS
287bfd7cbc1Smrg	key <AE04> { [ KP_4, dollar, NoSymbol, U20AC ] };	// 4, DOLLAR, , EURO SIGN
288bfd7cbc1Smrg	key <AE05> { [ KP_5, percent ] };	// 5, PERCENT
289bfd7cbc1Smrg	key <AE06> { [ KP_6, asciicircum ] };	// 6, CARET
290bfd7cbc1Smrg	key <AE07> { [ KP_7, ampersand ] };	// 7, AMPERSAND
291bfd7cbc1Smrg	key <AE08> { [ KP_8, asterisk, NoSymbol, multiply ] };	// 8, ASTERISK, , MULTIPLY
292bfd7cbc1Smrg	key <AE09> { [ KP_9, parenleft, leftsinglequotemark, leftdoublequotemark ] };	// 9, LEFT PARENTHESIS, LEFT SINGLE QUOTE MARK, LEFT DOUBLE QUOTE MARK
293bfd7cbc1Smrg	key <AE10> { [ KP_0, parenright, rightsinglequotemark, rightdoublequotemark ] };	// 0, RIGHT PARENTHESIS, RIGHT SINGLE QUOTE MARK, LEFT DOUBLE QUOTE MARK
294bfd7cbc1Smrg	key <AE11> { [ U0301, U030C, U005B, U007B ] };	// COMBINING HIGH TONE, COMBINING RISING TONE, LEFT SQUARE BRACKET, LEFT CURLY BRACKET
295bfd7cbc1Smrg	key <AE12> { [ U0327, dead_diaeresis, U005D, braceright ] };	// COMBINING CEDILLA, DEAD DIAERESIS, RIGHT SQUARE BRACKET, RIGHT CURLY BRACKET
296bfd7cbc1Smrg	key <BKSL> { [ backslash, bar ] };	// BACKSLASH, BAR
297bfd7cbc1Smrg	key <TLDE> { [ U030D, U0303, U0060, U007E ] };	// COMBINING VERTICAL LINE ABOVE, COMBINING TILDE ABOVE, GRAVE ACCENT, TILDE
298bfd7cbc1Smrg	include "cm(semicolon_switch_dvorak)"
29952a82186Smrg	include "level3(ralt_switch)"
300bfd7cbc1Smrg};
301bfd7cbc1Smrg
302bfd7cbc1Smrg// The following code creates the "Cameroon key" phenomenon.
303bfd7cbc1Smrg
304bfd7cbc1Smrgpartial modifier_keys
305bfd7cbc1Smrgxkb_symbols "semicolon_switch" {
306bfd7cbc1Smrg	key <AC10> {
307bfd7cbc1Smrg	symbols[Group1] = [ ISO_Level3_Latch,	colon,	semicolon,	colon ]};
308bfd7cbc1Smrg	modifier_map Mod5	{ ISO_Level3_Latch };
309bfd7cbc1Smrg};
310bfd7cbc1Smrg
311bfd7cbc1Smrgpartial modifier_keys
312bfd7cbc1Smrgxkb_symbols "exclamation_switch" {
313bfd7cbc1Smrg	key <AB10> {
314bfd7cbc1Smrg	symbols[Group1] = [ ISO_Level3_Latch,	U00A7,	exclam,	U00A7 ]
315bfd7cbc1Smrg	};
316bfd7cbc1Smrg	modifier_map Mod5	{ ISO_Level3_Latch };
317bfd7cbc1Smrg};
318bfd7cbc1Smrg
319bfd7cbc1Smrgpartial modifier_keys
320bfd7cbc1Smrgxkb_symbols "semicolon_switch_dvorak" {
321bfd7cbc1Smrg	key <AB01> {
322bfd7cbc1Smrg	symbols[Group1] = [ ISO_Level3_Latch,	colon,	semicolon,	colon ]
323bfd7cbc1Smrg	};
324bfd7cbc1Smrgmodifier_map Mod5	{ ISO_Level3_Latch };
325bfd7cbc1Smrg};
326bfd7cbc1Smrg
32721fe479eSmrg// EXTRAS:
32821fe479eSmrg
32921fe479eSmrg// ------- begin Mmuock keyboard map ------------------------------------------
33021fe479eSmrg//   This layout is used for the Mmuock alphabet as described in the book
33121fe479eSmrg//   _The Sound of Mmuock: Orthography (2. ed.)_ [isbn: 978-9956-645-28-1].
33221fe479eSmrg//   Mmuock is the language of the Mmuock (local: Muòk) people of Western
33321fe479eSmrg//   Cameroon.  
33421fe479eSmrg// 
33521fe479eSmrg//      Author: Tano Fotang <fotang at mmuock dot org>
33621fe479eSmrg//     Created: 2014-06-24
33721fe479eSmrg//     Version: 1.1
33821fe479eSmrg//
33921fe479eSmrg// CHANGES v 1.0:
34021fe479eSmrg//	2014-07-06 corrected shifted level3 of <AC11> to quotedbl
34121fe479eSmrg// CHANGES v 1.1:
34221fe479eSmrg//  2015-05-23 1- added dead_tilde to key <TILDE>; this is needed to produce
34321fe479eSmrg//               the letter <ñ> which was totally missing from the keyboard
34421fe479eSmrg//             2- added letter <dz> to <AB01>; the letter had been missing.
34521fe479eSmrg//             3- if we're not re-defining particular symbols from the included
34621fe479eSmrg//               latin layout, then maintain the original latin mappings.
34721fe479eSmrg//               Previously, we had set them to NoSymbol. Now, we want to
34821fe479eSmrg//               keep the original latin mappings except for those few that we
34921fe479eSmrg//               want to overwrite for our own keyboard.
35021fe479eSmrg//
35121fe479eSmrg// NOTES:
35221fe479eSmrg// 0. This map is based on the Latin layout for the US keyboard.
35321fe479eSmrg//
35421fe479eSmrg// 1. We use combining diacritical marks to create tone markings. There are 13
35521fe479eSmrg//    tones that need to be indicated.
35621fe479eSmrg//
35721fe479eSmrg// 2. When composing Mmuock text, about every fourth symbol is for tone. To
35821fe479eSmrg//    facilitate easy and fast input, the combining diacritics are placed on
35921fe479eSmrg//    the home row (AC). To reduce the number of key strokes required, the
36021fe479eSmrg//    unshifted third level is used. Only 5 of the combining diacritics are not
36121fe479eSmrg//    on the AC row; they are in the top number row, AE.
36221fe479eSmrg//
36321fe479eSmrg// 3. Symbols that are used infrequently (`r', `h', `ɛ', `ǝ', etc.) are placed
36421fe479eSmrg//    in level3. Additionally, the letter eng (`ŋ'), although commonly used, 
36521fe479eSmrg//    is found in level3 because it can alternatively be represented by <ng>.
36621fe479eSmrg//    (Indeed, the keyman keyboard actually replaces <ng> with `ŋ'.)
36721fe479eSmrg//
36821fe479eSmrg// 4. The unshifted AB10 key (normally assigned to the slash `/') is used as
36921fe479eSmrg//    level 3 switch since the slash is not used in the ordinary course of
37021fe479eSmrg//    typing Mmuock text. 
37121fe479eSmrg//
37221fe479eSmrg// 5. The 'Cameroon Multilingual' keyboard that is defined elsewhere, does not
37321fe479eSmrg//    fit our needs because: (a) it is based on a different alphabet, (b) the
37421fe479eSmrg//    vast majority of its symbols are not used in Mmuock, and (c) for the few
37521fe479eSmrg//    symbols that are shared, the placing of the symbols is not egonomic for 
37621fe479eSmrg//    typing Mmuock as the _PRIMARY_ language. The aim of this keyboard, is to
37721fe479eSmrg//    give priority to symbols that are actually used in the Mmuock alphabet.
37821fe479eSmrg//
37921fe479eSmrg// 6. The following fonts have been found to produce the best results with this
38021fe479eSmrg//    keyboard:
38121fe479eSmrg//         Family                    Accuracy
38221fe479eSmrg//      DejaVu (except Sans Mono)        9/10 
38321fe479eSmrg//      Linux Libertine                  8/10
38421fe479eSmrg//      Ubuntu (except light)            8/10
38521fe479eSmrg//      Droid (except sans mono)         7/10
38621fe479eSmrg//      Gentium, Gentium Alt           6.5/10
38721fe479eSmrg//    In the terminal emulator, the following font variants are most suitable:
38821fe479eSmrg//      Ubuntu Mono                      9/10
38921fe479eSmrg//      Unifont (Medium)                 9/10
39021fe479eSmrg//      DejaVu Sans Mono               7.5/10
39121fe479eSmrg//      Droid Sans Mono                6.5/10
39221fe479eSmrg//   These fonts are all freely available.
39321fe479eSmrg// 
39421fe479eSmrg// ------the layout-----------
39521fe479eSmrg// Note: this drawing does not show the symbols that are mapped by the included
39621fe479eSmrg// latin sybols files. Shown are only the symbols that are requiired by the
39721fe479eSmrg// Mmuock keyboard.
39821fe479eSmrg//
39921fe479eSmrg//   ┌─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┲━━━━━━━━━┓
40021fe479eSmrg//   │ ~   │ !   │ @   │ #   │ $   │ %   │ ^   │ &   | *   │ (   │ )   │ _   │ +   ┃ ⌫ Back- ┃
40121fe479eSmrg// AE│ `   │ 1   │ 2   │ 3   │ 4   │ 5   │ 6   ̂│ 7   ̑│ 8   ̍│ 9   ̓│ 0   ̊│ -   │ =   ┃  space  ┃
40221fe479eSmrg//   ┢━━━━━┷━┱───┴─┬───┴─┬───┴─┬───┴─┬───┴─┬───┴─┬───┴─┬───┴─┬───┴─┬───┴─┬───┴─┬───┺━┳━━━━━━━┫
40321fe479eSmrg//   ┃       ┃ Q   │ W   │ E Ǝ │ Š R │ T   │ Y   │ U Ω │ I Ɛ │ O Φ │ P ∏ │ Ø { │ Σ } ┃ Enter ┃
40421fe479eSmrg// AD┃Tab ↹  ┃ q   │ w   │ e ǝ │ š r │ t   │ y   │ u ω │ i ɛ │ o φ │ p π │ ø [ │ σ ] ┃   ⏎   ┃
40521fe479eSmrg//   ┣━━━━━━━┻┱────┴┬────┴┬────┴┬────┴┬────┴┬────┴┬────┴┬────┴┬────┴┬────┴┬────┴┬────┺┓      ┃
40621fe479eSmrg//   ┃        ┃ A   │ S   │ D   │ F   │ G   │  ̇ H │ J   │ K   │ L   │ Œ : │ " ” │ Æ | ┃      ┃
40721fe479eSmrg// AC┃Caps ⇬  ┃ a   │ s   ̃| d   ̀| f   ̌| g   ̈|  ̣ h │ j   ̆│ k   ̏│ l   ̄│ œ ; │ ' ’ │ æ \ ┃      ┃
40821fe479eSmrg//   ┣━━━━━━━━┹────┬┴────┬┴────┬┴────┬┴────┬┴────┬┴────┬┴────┬┴────┬┴────┬┴────┲┷━━━━━┻━━━━━━┫
40921fe479eSmrg//   ┃             │ Z Dz │ X   │ C   │ V   │ B   │ N ŋ │ M   │ < « │ > » │ ?   ┃             ┃
41021fe479eSmrg// AB┃Shift ⇧      │ z dz │ x   │ c   │ v   │ b   │ n Ŋ │ m   │ , ‹ │ . › │   / ┃Shift ⇧      ┃
41121fe479eSmrg//   ┣━━━━━━━┳━━━━━┷━┳━━━┷━━━┱─┴─────┴─────┴─────┴─────┴─────┴───┲━┷━━━━━╈━━━━━┻━┳━━━━━━━┳━━━┛
41221fe479eSmrg//   ┃       ┃       ┃       ┃                                   ┃       ┃       ┃       ┃
41321fe479eSmrg// AA┃Ctrl   ┃Meta   ┃Alt    ┃             Space                 ┃AltGr ⇮┃Menu   ┃Ctrl   ┃
41421fe479eSmrg//   ┗━━━━━━━┻━━━━━━━┻━━━━━━━┹───────────────────────────────────┺━━━━━━━┻━━━━━━━┻━━━━━━━┛
41521fe479eSmrg//
41621fe479eSmrg
41721fe479eSmrgpartial alphanumeric_keys
41821fe479eSmrgxkb_symbols "mmuock" {
41921fe479eSmrg
42021fe479eSmrg   include "latin"
42121fe479eSmrg   include "level3(ralt_switch)"
42221fe479eSmrg
42321fe479eSmrg   name[Group1]= "Mmuock";
42421fe479eSmrg   key <AE06> { [          6, asciicircum,          U0302                ] }; // tone 10
42521fe479eSmrg   key <AE07> { [          7,   ampersand,          U0311                ] }; // tone 12
42621fe479eSmrg   key <AE08> { [          8,    asterisk,          U030D,     trademark ] }; // tone 13
42721fe479eSmrg   key <AE09> { [          9,   parenleft,          U0313,     plusminus ] }; // tone 14
42821fe479eSmrg   key <AE10> { [          0,  parenright,          U030A,        degree ] }; // tone 6
42921fe479eSmrg   key <AD03> { [          e,           E,          U01DD,         U018E ] }; // U01DD = reversed E
43021fe479eSmrg   key <AD04> { [     scaron,      Scaron,              r,             R ] };
43121fe479eSmrg   key <AD07> { [          u,           U,    Greek_omega,   Greek_OMEGA ] };
43221fe479eSmrg   key <AD08> { [          i,           I,          U025B,         U0190 ] }; // U025B = open E
43321fe479eSmrg   key <AD09> { [          o,           O,      Greek_phi,     Greek_PHI ] };
43421fe479eSmrg   key <AD10> { [          p,           P,       Greek_pi,      Greek_PI ] };
43521fe479eSmrg   key <AD11> { [     oslash,    Ooblique,    bracketleft,     braceleft ] };
43621fe479eSmrg   key <AD12> { [Greek_sigma, Greek_SIGMA,   bracketright,    braceright ] }; 
43721fe479eSmrg   key <AC02> { [          s,           S,          U0303                ] }; // tone 1
43821fe479eSmrg   key <AC03> { [          d,           D,          U0300                ] }; // tone 4
43921fe479eSmrg   key <AC04> { [          f,           F,          U030C                ] }; // tone 5
44021fe479eSmrg   key <AC05> { [          g,           G,          U0308                ] }; // tone 7
44121fe479eSmrg   key <AC06> { [      U0323,       U0307,              h,             H ] }; // COMBINING DOT BELOW, ABOVE
44221fe479eSmrg   key <AC07> { [          j,           J,          U0306                ] }; // tone 9
44321fe479eSmrg   key <AC08> { [          k,           K,          U030F                ] }; // tone 11
44421fe479eSmrg   key <AC09> { [          l,           L,          U0304                ] }; // tone 0
44521fe479eSmrg   key <AC10> { [         oe,          OE,      semicolon,         colon ] };
44621fe479eSmrg   key <AC11> { [      U0301,       U030B,     apostrophe,      quotedbl ] }; // tone 3, 8
44721fe479eSmrg   key <TLDE> { [      grave,  dead_tilde                                ] };
44821fe479eSmrg   key <AB01> { [          z,           Z,          U01F3,         U01F2 ] }; // U01F3 = letter dz
44921fe479eSmrg   key <AB06> { [          n,           N,            eng,           ENG ] };
45021fe479eSmrg   key <AB08> { [      comma,        less,  guillemotleft,         U2039 ] };
45121fe479eSmrg   key <AB09> { [     period,     greater, guillemotright,         U203A ] };
45221fe479eSmrg   key <BKSL> { [         ae,          AE,      backslash,           bar ] };
45321fe479eSmrg
45421fe479eSmrg   include "cm(solidus_switch)"
45521fe479eSmrg};
45621fe479eSmrg// use slash as special key for switching to level3
45721fe479eSmrgpartial modifier_keys
45821fe479eSmrgxkb_symbols "solidus_switch" {
45921fe479eSmrg   key <AB10> {
46021fe479eSmrg     symbols[Group1] = [ ISO_Level3_Latch, question, slash, NoSymbol ]
46121fe479eSmrg   };
46221fe479eSmrg   modifier_map Mod5	{ ISO_Level3_Latch };
46321fe479eSmrg};
46421fe479eSmrg// ------- end Mmuock keyboard map --------------------------------------------
46521fe479eSmrg
466