Keyboard layouts

From OLPC
Revision as of 21:18, 4 October 2007 by Walter (talk | contribs) (Reverted edits by 66.139.76.17 (Talk); changed back to last version by 218.82.207.142)
Jump to navigation Jump to search

Keyboard design

See Keyboard design

Laptop keyboard hardware

OLPC News (2006-10-07)

The team from Pentagram finalized the keyboard design for the B-Test machines. Six different versions of the keyboard are being made: Arabic, Portuguese, Spanish, Thai, Nigerian (for Hausa, Ìgbo, Yorùbá, Ẹdo, Ẹfik, Fulani, Kanuri, etc.), and US International.

Soft keyboard layouts

It is obvious that each typable writing system has to have its own keyboard layouts. In addition, there are numerous rearrangements of keyboards for specific languages and countries. Many languages require specific letters not used in other languages. As a result, most locales have their own keyboard layouts, in some cases several.

The following examples, from Debian Linux keyboard layouts, are all incomplete. For alphabets with upper- and lower-case, only the lower-case is shown. No attempt has been made to indicate combining diacritics and other composed characters. See the images linked from the various language names for further details.

See also Keyboard Files for an explanation of Linux keyboard definitions, and Debian keyboards for a list of keyboard layouts included in Debian Linux. Where a Debian keyboard file exists, its name is appended to the layout names below.

Latin Alphabet

Latin keyboards mostly fall into a few basic arrangements, with many lesser variations to accommodate special characters. The most common are

QWERTY

US

Standard English-language keyboard

setxkbmap -layout us

` 1 2 3 4 5 6 7 8 9 0 - =
   q w e r t y u i o p [ ] \
    a s d f g h j k l ; ´
     z x c v b n m , . /

Azerbaijani

setxkbmap -layout az

` 1 2 3 4 5 6 7 8 9 0 - =
   q ü e r t y u i o p ö ğ \
    a s d f g h j k l ı ə
     z x c v b n m ç ş .

Vietnamese

setxkbmap -layout vn

` ă â ê ô ` ~' đ - ₫
   q w e r t y u i o p ư ơ \
    a s d f g h j k l ; '
     z x c v b n m , . /

Dvorak dvorak

US Alternate Standard Keyboard (ASK)

ANSI X3.207:1991 (previously X4.22-1983), "Alternate Keyboard Arrangement for Alphanumeric Machines"

setxkbmap -layout us -variant dvorak

` 1 2 3 4 5 6 7 8 9 0 [ ]
   ' , . p y f g c r l / = \
    a o e u i d h t n s -
     ; q j k x b m w v z

Dvorak Classic, as originally designed by August Dvorak

setxkbmap -layout us -variant dvorak-classic

` [ 7 5 3 1 9 0 2 4 6 8 ]
   / , . p y f g c r l ' = \
    a o e u i d h t n s -
     ; q j k x b m w v z

Dvorak left hand only

setxkbmap -layout us -variant dvorak-l

` [ ] p f m l j 4 3 2 1 \
   ; q b y u r s o ^ 6 5 =
    k c d t h e a z 8 7 -
     ' x g v w n i , 0 9

Dvorak right hand only

setxkbmap -layout us -variant dvorak-r

` 1 2 3 4 j l m f p / [ ]
   5 6 q > o r s u y b ; =
    7 8 z a e h t d c k -
     9 0 x , i n w v g '

Norwegian Dvorak

setxkbmap -layout no -variant dvorak

| 1 2 3 4 5 6 7 8 9 0 + \
   å , . p y f g c r l ' ~ <
    a o e u i d h t n s -
     æ q j k x b m w v z

Swedish Dvorak

setxkbmap -layout se -variant dvorak

§ 1 2 3 4 5 6 7 8 9 0 + 
   å ä ö p y f g c r l , "'
    a o e u i d h t n s -
     . q j k x b m w v z

Dvorak has too many issues to be a mainstream alternative to QWERTY. These problems are explained on the Colemak FAQ. --Jj05 13:17, 19 December 2006 (EST)

French AZERTY fr_FR

setxkbmap -layout fr

² & é " ' ( - è _ ç à ) =
   a z e r t y u i o p ^$ *
    q s d f g h j k l m ù
     w x c v b n , ; : !

German QWERTZ de

setxkbmap -layout de

^ 1 2 3 4 5 6 7 8 9 0 ß 
   q w e r t z u i o p ü + #
    a s d f g h j k l ö ä
     y x c v b n m , . -

Congo cd

setxkbmap -layout cd

` & ́ ̀ ( { } ) ̂ ̌ ̈ - =
   a w e r t y u i o p ɛ * "
    q s d f g h j k l m ɔ 
     z x c v b n , ; ! '

Greek el

Follows various Latin layouts to some degree. There are a number of other Greek layouts, including Polytonic Greek for Classical literature.

setxkbmap -layout el

` 1 2 3 4 5 6 7 8 9 0 - =
   ; ς ε ρ τ υ θ ι ο π [ ] \
    α σ δ φ γ η ξ κ λ 
     ζ χ ψ ω β ν μ , . /

Recently the name of the Greek layout changed from "el" to "gr" in the sources of Xorg. The current OLPC images use the "gr" layout for Greek.

The above line allows to write in Greek only. This causes issues when typing a new URL in the browser or trying to logon to a service where the credentials are in English. A recommended setxkbmap line would look like

setxkbmap -layout "gr,us" -option "grp:alt_shift_toggle" -variant ",extended"

The default layout is Greek, the user can switch between US English with Alt-Shift, and we use the "extended" variant of Greek that supports writing the Euro sign.

Alternatively, one can modify /etc/X11/xorg.conf adding

	Option	"XkbLayout"	"us,el"
	Option	"XkbOptions"	"grp:ctrl_shift_toggle"

Cyrillic

There are four keyboard layouts for Russian, with variants for other languages written in Cyrillic. During the Soviet period, there were more than 200 of them. Several of the newly independent states of Central Asia have changed to other alphabets, according to national preference, including Arabic, Latin, and Mongolian. (The independent former Soviet republic of Mongolia returned to Cyrillic soon thereafter. The Chinese province of Mongolia continues to use its traditional alphabet.)

Russian ru

This is the standard Russian layout for Linux systems.

ё 1 2 3 4 5 6 7 8 9 0 - =
   й ц у к е н г ш щ з х ъ \
    ф ы в а п р о л д ж э
     я ч с м и т ь б ю /

Ukrainian ua

' 1 2 3 4 5 6 7 8 9 0 - =
   й ц у к е н г ш щ з х ї ґ
    ф і в а п р о л д ж є
     я ч с м и т ь б ю /

Mongolian mn

= 1 2 3 4 5 6 7 8 9 0 е щ
   ф ц у ж э н г ш ү з к ъ !
    й ы б ө а х р о л д п
     я ч ё с м и т ь в ю

Uzbek uz

ё 1 2 3 4 5 6 7 8 9 0 ў қ
   й ц у к е н г ш х ъ ғ ҳ \
    ф з в а п р о л д ж э 
     я ч с м и т ь б ю .

Tajik tj

ё 1 2 3 4 5 6 7 8 9 0 - =
   й ц у к е н г ш ¸ з х ъ \
    ф ы в а п р о л д ж э
     я ч с м и т ь б ю /

Indic

INSCRIPT keyboards for

Bengali (Bangladesh) bd

setxkbmap -layout bd

` ১ ২ ৩ ৪ ৫ ৬ ৭ ৮ ৯ ০ - =
   ঙ য ড প ট চ জ হ গ ড় [ ] \
    ৃ ু ি ব ্ া ক ত দ ; '
     ঁ ো ে র ন স ম , . /

Bengali (India) ben

setxkbmap -layout in -variant ben

১  ২  ৩  ৪ ৫ ৬ ৭ ৮ ৯ ০ - ঋ
 ৌ ৈ া ী ূ ব হ গ দ জ ড ় \
  ো ে ্ ি ু প র ক ত চ ট
   z   ং ম ন ব ল স ,  . য়

setxkbmap -layout in -variant ben_probhat

` ১ ২ ৩ ৪ ৫ ৬ ৭ ৮ ৯ ০ ‌ =
   দ ূ ী র ট এ ু ি ও প ে ো \
    া স ড ত গ হ জ ক ল ; '
     য় শ চ আ ব ন ম , । ্

Devanagari dev

setxkbmap -layout in -variant deva

ॊ १ २ ३ ४ ५ ६ ७ ८ ९ ० ः ृ
   ौ ै ा ी ू ब ह ग द ज ड ़ ॉ
    ो े ् ि ु प र क त च ट
     ॆ ं म न व ल स , . य

Gujarati guj

setxkbmap -layout in -variant guj

૧ ૨ ૩ ૪ ૫ ૬ ૭ ૮ ૯ ૦ - ઋ
  ૌ ૈ ા ી ૂ બ હ ગ દ જ ડ ઼ ૉ
   ો ે ્ િ ુ પ ર ક ત ચ ટ
    z ં મ ન વ લ સ , . ય

Punjabi in Gurmukhi alphabet gur

setxkbmap -layout in -variant guru

੧ ੨ ੩ ੪  ੫ ੬ ੭ ੮ ੯ ੦  
  ੌ  ੈ ਾ  ੀ ੂ ਬ ਹ ਗ ਦ ਜ ਡ ਼ \
   ੋ  ੇ  ੍ ਿ ੁ ਪ ਰ ਕ ਤ ਚ ਟ
   z  ਂ ਮ ਨ ਵ ਲ ਸ ,  . ਯ

Kannada kan

setxkbmap -layout in -variant kan

ೊ   ೧  ೨  ೩  ೪  ೫ ೬ ೭ ೮ ೯ ೦ ಃ ೃ
  ೌ   ೈ  ಾ ೀ ೂ ಬ ಹ ಗ ದ ಜ ಡ ಼ \
   ೋ  ೇ  ್  ಿ  ು ಪ ರ ಕ ತ ಚ ಟ
    ೆ     ಂ ಮ ನ ವ ಲ ಸ  , .  ಯ

Malayalam ml

setxkbmap -layout in -variant mal

ൊ ൧  ൨ ൩ ൪ ൫ ൬ ൭ ൮ ൯ ൦ - ൃ
 ൌ ൈ ാ ീ ൂ ബ ഹ ഗ ദ ജ ഡ ‍ \
  ോ  േ  ് ി ു പ  ര  ക ത ച ട
   െ  ം  മ ന വ ല സ  ,  .  യ

Oriya ori

setxkbmap -layout in -variant ori

୧ ୨ ୩ ୪ ୫ ୬ ୭ ୮ ୯ ୦ ଃ ୃ
 ୌ ୈ ା ୀ ୂ ବ ହ ଗ ଦ ଜ ଡ ଼ \
  ୋ େ ୍ ି ୁ ପ ର କ ତ ଚ ଟ
      ଂ  ମ ନ ଵ ଲ ସ , . ଯ

Tamil tml

setxkbmap -layout in -variant tam

ொ  ௧   ௨ ௩ ௪ ௫  ௬ ௭ ௮ ௯ ௰ ௱ ௲
 ௌ  ை ா ீ  ூ  ஹ     ஞ \
  ோ  ே   ் ி  ு  ப  ர க த ச ட
   ெ   ஂ    ம ந வ  ல ஸ ,  . ய

setxkbmap -layout in -variant tam_unicode

ஃ   ஜ ஷ ஸ ஹ           
 ஞ ற ந ச வ ல ர ை ொ ி ு  \
  ய ள ன க ப ா த ம ட ் ங
   ண ஒ உ எ ெ ஔ அ இ  

Telugu tel

setxkbmap -layout in -variant tel

ొ ౧ ౨ ౩ ౪ ౫ ౬ ౭ ౮ ౯ ౦ ః ృ
    ౌ ై ా ీ ూ బ హ గ ద జ డ ఞ \
     ో ే ్ ి ు ప ర క త చ ట
      ె ం మ న వ ల స , . య

Urdu (India) urd

setxkbmap -layout in -variant urd

 
٣ ٢ ١ ۴ ۵ ٠                          = - ٠ ٩ ٨ ٧
\ ] [ پ ه ی ء ے ت ر ع و ق
' ؛ ل ک ج ھ گ ف د س ا
/ ۔ ،م ن ب ط چ ش ز

Urdu (Pakistan) urd

setxkbmap -layout pk -variant urd

٣ ٢ ١ ۴ ۵ ٠                          = - ٠ ٩ ٨ ٧
\ ] [ پ ه ی ء ے ت ر ع و ق
 ' ؛ ل ک ج ھ گ ف د س ا
/ ۔ م ن ب ط چ ش ز

Other

Armenian am

՝ ֆ ձ – , ։ ՞ ․ ՛ ) օ է ղ
   ճ փ բ ս մ ո ւ կ ը թ ծ ց »
    ջ վ գ ե ա ն ի տ հ պ ր
     ժ դ չ յ զ լ ք խ շ ռ

Thai

Kedmanee th

setxkbmap -layout th -variant basic

_ ๅ / - ภ ถ  ุ  ึ ค ต จ ข ช
   ๆ ไ ำ พ ะ  ั  ี ร น ย บ ล ฃ
    ฟ ห ก ด เ  ้ ่ า ส ว ง
     ผ ป แ อ  ิ  ื ท ม ใ ฝ

Pattachote th_pat

setxkbmap -layout th -variant pat

_ = ๒ ๓ ๔ ๕ ู ๗ ๘ ๙ ๐ ๑ ๖ 
   ็ ต ย อ ร ่ ด ม ว แ ใ ฌ ๅ
    ้ ท ง ก ั ี า น เ ไ ข
     บ ป ล ห ิ ค ส ะ จ พ

TIS-820.2538 th_tis

setxkbmap -layout th -variant tis

๏ ฿ / - ภ ถ ุ ึ ค ต จ ข ช
   ๆ ไ ำ พ ะ ั ี ร น ย บ ล ฅ
    ฟ ห ก ด เ  ้ ่ า ส ว ง
     ผ ป แ อ  ิ  ื ท ม ใ ฝ

Lao lo

‍ ຢ ຟ ໂ ຖ ຸ ູ ຄ ຕ ຈ ຂ ຊ ໍ
   ົ ໄ ຳ ພ ະ ິ ີ ຣ ນ ຍ ບ ລ ໜ
   ັ ຫ ກ ດ ເ ້ ່ າ ສ ວ ງ
   ຜ ປ ແ ອ ຶ ື ທ ມ ໃ ຝ

Burmese mm

` ၁    ၂ ၃ ၄ ၅ ၆ ၇ ၈ ၉ ၀ - ၒ
   ဪ  ဲ ာ  ီ  ူ ဗ ဟ ဂ ဒ ဇ ဍ ည ၎
    ဩ  ဧ  ္  ိ  ု ပ ရ က တ စ ဋ
      ၌   ့ မ န ဗ လ သ , . /

Dzongkha/Tibetan bt

Dzongkha is the principal language of Bhutan.

༉ ༡ ༢ ༣ ༤ ༥ ༦ ༧ ༨ ༩ ༠ ༔ །
   ཀ ཁ ག ང ི ུ ེ ོ ཅ ཆ ཇ ཉ ཝ
    ཏ ཐ ད ན པ ཕ བ མ ཙ ཚ ཛ
     ཞ ཟ འ ཡ ར ལ ཤ ས ཧ ཨ

Canadian Aboriginal Syllabics iu

Inuktitut

ᕻ ᖕ ᑉ ᕐ ᒃ ᑦ ᖅ ᒻ ᓐ ᓪ ᔾ - ᕝ
   ᖏ ᐃ ᕿ ᑭ ᑎ ᓯ ᒥ ᓂ ᓕ ᔨ ᒡ ˙\
    ᖑ ᐅ ᖁ ᑯ ᑐ ᓱ ᒧ ᓄ ᓗ ; ' 
     ᖓ ᐊ ᖃ ᑲ ᑕ ᓴ ᒪ , . ᔭ

Hebrew il

; 1 2 3 4 5 6 7 8 9 0 - =
   / 'פ ם ן ו ט א ר ק 
, ף ך ל ח י ע כ ג ד ש     
. ץ ת צ מ נ ה ב ס ז      
ז

Sinhala lk

` 1 2 3 4 5 6 7 8 9 0 - =
   ඍ ඇ එ ර ට ය උ ඉ ඔ ප [ ] \
    අ ස ඩ ෆ ග හ ජ ක ල ; '
     ඤ ඬ ච ව බ න ම , . /

Georgian ge

Latin phonetic layout ge_la

` 1 2 3 4 5 6 7 8 9 0 - =
   ქ წ ე რ ტ ყ უ ი ო პ [ ] \
    ა ს დ ფ გ ჰ ჯ კ ლ ; '
     ზ ხ ც ვ ბ ნ მ , . /

Russian phonetic layout ge_ru

` 1 2 3 4 5 6 7 8 9 0 - =
   ღ ც უ კ ე ნ გ შ წ ზ ხ ჯ \
    ფ თ ვ ა პ რ ო ლ დ ჟ ძ
     ჭ ჩ ს მ ი ტ ქ ბ ყ ჰ

Chinese Zhuyin (Bopomofo)

This is one of several Zhuyin layouts. The letters ㄅㄆㄇㄈ down the left-hand side are roughly equivalent to "bpmf", and are commonly read Bopomofo, giving the alternate name of this writing system.

ㄅ ㄉ ˇ ˋ ㄓ ˊ ˙ ㄚ ㄞ ㄢ ㄦ =
 ㄆ ㄊ ㄍ ㄐ ㄔ ㄗ ㄧ ㄛ ㄟ ㄣ [
  ㄇ ㄋ ㄎ ㄑ ㄕ ㄘ ㄨ ㄜ ㄠ ㄤ ;
   ㄈ ㄌ ㄏ ㄒ ㄖ ㄙ ㄩ ㄝ ㄡ ㄥ

Cambodian kh

«​១​២​៣​៤​៥​៦​៧​៨​៩​០​ឥ​ឲ
   ឆ​ឹ​េ​រ​ត​យ​ុ​ិ​ោ​ផ
    ា​ស​ដ​ថ​ង​ហ​្​ក​ល​ើ​់
     ឋ​ខ​ច​វ​ប​ន​ម​៼​។​៊

More keyboards needed.

Ethiopic can be typed on a syllabic keyboard or in a phonetic IME.

This keyboard arrangement is used in an Input method that combines the letters into syllables. One types ㅎㅏㄴ ㄱㅡㄹ and gets 한글.

ㅂ ㅈ ㄷ ㄱ ㅅ ㅛ ㅕ ㅑ ㅐ ㅔ
 ㅁ ㄴ ㅇ ㄹ ㅎ ㅗ ㅓ ㅏ ㅣ 
  ㅋ ㅌ ㅊ ㅍ ㅠ ㅜ ㅡ

setxkbmap -layout jp

The base keyboard is QWERTY. To switch to Katakana, use the Switch Group key combination. You can set this key combination with the -option option of the setxkbmap command. For example, setxkbmap -option grp:ctrl_alt_toggle sets the Control-Alt combination for switching.

ヌ フ ア ウ エ オ ヤ ユ ヨ ワ ホ ヘ
 タ テ イ ス カ ン ナ ニ ラ セ ゛ ゜ \
  チ ト シ ハ キ ク マ ノ リ レ ケ
   ツ サ ソ ヒ コ ミ モ ネ ル メ

See also Input methods for typing languages whose character sets will not fit on a single keyboard layout.

External Links

  • Keyboard stickers for numerous languages. Images of keyboard maps are provided for most supported languages.