OLPC Pashto Keyboard: Difference between revisions

From OLPC
Jump to navigation Jump to search
No edit summary
Line 26: Line 26:
key <AE02> { [ 0x10006F2, 0x100066C. at ] }; // Arabic two, Arabic thousands separator
key <AE02> { [ 0x10006F2, 0x100066C. at ] }; // Arabic two, Arabic thousands separator
key <AE03> { [ 0x10006F3, 0x100066B, numbersign ] }; // Arabic three, Arabic decimal separator
key <AE03> { [ 0x10006F3, 0x100066B, numbersign ] }; // Arabic three, Arabic decimal separator
key <AE04> { [ 0x10006F4, 0x100e60B, dollar ] }; // Arabic four, ???
key <AE04> { [ 0x10006F4, 0x100060B, dollar ] }; // Arabic four, Afghani sign
key <AE05> { [ 0x10006F5, 0x100066A, percent ] }; // Arabic five, Arabic percent sign
key <AE05> { [ 0x10006F5, 0x100066A, percent ] }; // Arabic five, Arabic percent sign
key <AE06> { [ 0x10006F6, multiply, circumflex ] }; // Arabic six
key <AE06> { [ 0x10006F6, multiply, circumflex ] }; // Arabic six
Line 36: Line 36:
key <AE12> { [ plus, equal ] };
key <AE12> { [ plus, equal ] };


key <AD01> { [ 0x1000636, 0x100FE7E, degree ] }; // Arabic dad, Arabic sukun
key <AD01> { [ 0x1000636, 0x1000652, degree ] }; // Arabic dad, Arabic sukun
key <AD02> { [ 0x1000635, 0x100064C, 0x1000653 ] }; // Arabic sad, Arabic dammatan, Arabic maddah above
key <AD02> { [ 0x1000635, 0x100064C, 0x1000653 ] }; // Arabic sad, Arabic dammatan, Arabic maddah above
key <AD03> { [ 0x100062B, 0x100064D, eurosign ] }; // Arabic theh, Arabic kasratan
key <AD03> { [ 0x100062B, 0x100064D, eurosign ] }; // Arabic theh, Arabic kasratan

Revision as of 15:44, 1 November 2007

  This page is monitored by the OLPC team.


OLPC keyboard layouts

Instructions for setting up keyboard switching in Terminal are on the Customizing NAND images page. On bilingual XOs, the multiplication/division key is replaced with a keyboard switching key.

Changing the language of the keyboard is independent of changing the language currently displayed. The language currently displayed can be changed by using the Language section of the Sugar Control Panel.

Membrane keyboard layouts

English (US international); Spanish (Latin America); Portuguese (Brazilian); Amharic (Ethiopic); Arabic; Nigerian (Igbo, Hausa, Yoruba); French; Thai; Urdu; Cyrillic (Russian); Turkish; Nepali; Mongolian; Kazakh; Devanagari; Uzbek; Pashto; Dari; Armenian; Khmer; Pulaar; Italian; Kreyòl; German; Chinese (Simplified); OLPC AZERTY

Non-membrane keyboard layouts

Starting with the XO-1.5 HS ("High School") edition, the XO laptop has a traditional (non-membrane) keyboard available as an option: English (US International); Spanish (Latin America);

Blank Keyboard Artwork

Artwork defining the inner dimensions of the membrane keyboard is available here: keyboard-blank.svg



Pashto keyboard layout

Pashto (first draft)

Symbol Table

OLPC section of the XKB symbol file

To use the XKB Pashto layout along with US layout, you may need to edit /etc/X11/xorg.conf. This will make "us" the first and "af" a second layout:

XkbLayout "us,af"
XkbVariant "olpc2,olpc-ps"
// from xkb/symbols/af
partial alphanumeric_keys 
xkb_symbols "olpc-ps" {

   name[Group1]= "Afghanistan - Pashto";

   key <TLDE> { [ 0x100200D, divide, dead_tilde ] }; // zero width joiner
   key <AE01> { [ 0x10006F1, exclam, grave ] }; // Arabic one
   key <AE02> { [ 0x10006F2, 0x100066C. at ] }; // Arabic two, Arabic thousands separator
   key <AE03> { [ 0x10006F3, 0x100066B, numbersign ] }; // Arabic three, Arabic decimal separator
   key <AE04> { [ 0x10006F4, 0x100060B, dollar ] }; // Arabic four, Afghani sign
   key <AE05> { [ 0x10006F5, 0x100066A, percent ] }; // Arabic five, Arabic percent sign
   key <AE06> { [ 0x10006F6, multiply, circumflex ] }; // Arabic six
   key <AE07> { [ 0x10006F7, right_guillemet, ampersand ] }; // Arabic seven
   key <AE08> { [ 0x10006F8, left_guillemet, bullet ] }; // Arabic eight
   key <AE09> { [ 0x10006F9, LRM, left_paren ] }; // Arabic nine
   key <AE10> { [ 0x10006F0, RLM, right_paren ] }; // Arabic zero
   key <AE11> { [ minus, 0x1000640, underscore ] }; // Arabic_tatweel
   key <AE12> { [ plus, equal ] };

   key <AD01> { [ 0x1000636, 0x1000652, degree ] }; // Arabic dad, Arabic sukun
   key <AD02> { [ 0x1000635, 0x100064C, 0x1000653 ] }; // Arabic sad, Arabic dammatan, Arabic maddah above
   key <AD03> { [ 0x100062B, 0x100064D, eurosign ] }; // Arabic theh, Arabic kasratan
   key <AD04> { [ 0x1000642, 0x100064B, 0x100FD3E ] }; // Arabic qaf, Arabic fathatan, ornate left paren
   key <AD05> { [ 0x1000641, 0x100064F, 0x100FD3F ] }; // Arabic feh, Arabic damma, ornate right paren
   key <AD06> { [ 0x100063A, 0x1000650, 0x100e656] }; // Arabic ghain, Arabic kasra, Arabic subscript alef
   key <AD07> { [ 0x1000639, 0x100064E, 0x100e659] }; // Arabic ain, Arabic fatha, Arabic zwarakay
   key <AD08> { [ 0x1000647, 0x1000651, 0x1000670] }; // Arabic heh, Arabic shadda, Arabic superscript alef
   key <AD09> { [ 0x100062E, 0x1000681, apostrophe] }; // Arabic khah, Arabic hah with hamza above, 
   key <AD10> { [ 0x100062D, 0x1000685, quotedbl] }; // Arabic hah, Arabic hah with three dots above
   key <AD11> { [ 0x100062C, left_brace, left_bracket ] }; // Arabic jeem
   key <AD12> { [ 0x1000686, right_brace, right_bracket ] }; // Arabic tcheh

   key <AC01> { [ 0x1000634, 0x100069A ] }; // Arabic sheen, Arabic seen with dot below and dot above
   key <AC02> { [ 0x1000633, 0x10006D2 ] }; // Arabic seen, Arabic hamza on yeh
   key <AC03> { [ 0x10006CC, 0x100064A, 0x1000649 ] }; // Farsi yeh, Arabic yeh, Arabic alef maksura
   key <AC04> { [ 0x1000628, 0x100067E, 0x10006BA ] }; // Arabic beh, Arabic peh, Arabic noon ghunna
   key <AC05> { [ 0x1000644, 0x1000675, 0x10006B7 ] }; // Arabic lam, Arabic hamza on alef, Arabic lam with three dots above
   key <AC06> { [ 0x1000627, 0x1000622, 0x1000671 ] }; // Arabic alef, Arabic madda on alef, Arabic alef wasla
   key <AC07> { [ 0x100062A, 0x100067C, 0x1000679 ] }; // Arabic teh, Arabic teh with ring, Arabic tteh
   key <AC08> { [ 0x1000646, 0x10006BC, greater ] }; // Arabic noon, Arabic noon with ring
   key <AC09> { [ 0x1000645, 0x1000629, less ] }; // Arabic meem, Arabic teh marbuta
   key <AC10> { [ 0x10006A9, colon, 0x1000643 ] }; // Arabic keheh, Arabic kaf
   key <AC11> { [ 0x10006AB, 0x100061B, 0x10006AF ] }; // Arabic kaf with ring, Arabic semicolon, Arabic gaf

   key <BKSL> { [ backslash, asterisk, bar ] };
   key <SPCE> { [ space, 0x100200C, 0x10000A0 ] }; // zero width non-joiner, no break space

   key <AB01> { [ 0x10006CD, 0x1000638, question] }; // Arabic yeh with tail, Arabic zah, 
   key <AB02> { [ 0x10006D0, 0x1000637, semicolon ] }; // Arabic E, Arabic tah
   key <AB03> { [ 0x1000632, 0x1000698, 0x1000655 ] }; // Arabic zain, Arabic jeh, Arabic hamza below
   key <AB04> { [ 0x1000631, 0x1000621, 0x1000654 ] }; // Arabic_ra (reh?), Arabic hamza, Arabic hamza above
   key <AB05> { [ 0x1000630, 0x100200C, 0x1000625  ] }; // Arabic_thal, zero width non-joiner, Arabic alef with hamza below
   key <AB06> { [ 0x100062F, 0x1000689, 0x1000688 ] }; // Arabic_dal, Arabic dal with ring, Arabic ddal
   key <AB07> { [ 0x1000693, 0x1000624, 0x1000691 ] }; // Arabic reh with ring, Arabic waw with hamza above, Arabic rreh
   key <AB08> { [ 0x1000648, period, comma ] }; // Arabic_waw, Arabic comma
   key <AB09> { [ 0x1000696, 0x100002E, 0x10006C7 ] }; // Arabic reh with dot below and dot above, full stop, Arabic letter U
   key <AB10> { [ slash, 0x100061F, 0x10006C9 ] }; // Arabic question mark, Arabic kirghiz yu

   //language key
   key <I219> {  [ISO_Next_Group  ,  ISO_Prev_Group      ]     };
};