test/data: sync from xkeyboard-config 2.30

Signed-off-by: Ran Benita <ran@unusedvar.com>
master
Ran Benita 2020-09-07 11:35:22 +03:00
parent 461d727830
commit 1c3521993d
28 changed files with 1635 additions and 863 deletions

View File

@ -281,6 +281,13 @@ default xkb_keycodes "evdev" {
<I251> = 251; // #define KEY_BRIGHTNESS_CYCLE 243
<I252> = 252; // #define KEY_BRIGHTNESS_ZERO 244
<I253> = 253; // #define KEY_DISPLAY_OFF 245
<I254> = 254; // #define KEY_WWAN 246
<I255> = 255; // #define KEY_RFKILL 247
<I372> = 372; // #define KEY_FAVORITES 364
<I382> = 382; // #define KEY_KEYBOARD 374
<I569> = 569; // #define KEY_ROTATE_LOCK_TOGGLE 561
<I380> = 380; // #define KEY_FULL_SCREEN 372
// Fake keycodes for virtual keys
<LVL3> = 92;
@ -307,8 +314,3 @@ default xkb_keycodes "evdev" {
// For Brazilian ABNT2
alias <KPPT> = <I129>;
};
// PC98
xkb_keycodes "pc98" {
include "evdev(evdev)"
};

View File

@ -1,4 +1,5 @@
// DO NOT EDIT THIS FILE - IT WAS AUTOGENERATED BY merge.sh FROM rules/*.part
// DO NOT EDIT THIS FILE - IT WAS AUTOGENERATED BY merge.py FROM rules/*.part
//
//
// Rules for resolving XKB components for use with XFree86
// Copyright 1996 by Joseph Moss
@ -13,20 +14,17 @@
// ori pk ru scc sy syr tel th tj tam ua uz
// PC models
! $pcmodels = pc101 pc102 pc104 pc105
! $pcmodels = pc86 pc101 pc102 pc104 pc104alt pc105
// Jolla devices and keyboards
! $jollamodels = jollasbj
// Microsoft models (using MS geometry)
! $msmodels = microsoft microsoft4000 microsoft7000 microsoftpro microsoftprousb microsoftprose
! $msmodels = microsoft microsoft4000 microsoft7000 microsoftpro microsoftprousb microsoftprose microsoftsurface
// Nokia devices and keyboards
! $nokiamodels = nokiasu8w nokiarx44 nokiarx51
// PC geometries - they have special geometry but symbols are mostly pc105
! $pcgeometries = latitude
// TypeMatrix geometries
! $tmgeometries = tm2020 tm2030PS2 tm2030USB tm2030USB-102 tm2030USB-106
@ -85,7 +83,6 @@
! $sun_compat = sun_type6 sun_type6_suncompat sun_type7_suncompat suncompat
! $htcdreamlayouts = us it de
! $inetkbds = acer_c300 acer_ferrari4k acer_laptop \
airkey \
@ -104,7 +101,7 @@
genius geniuscomfy2 \
gyration honeywell_euroboard \
hp250x hp5xx hp500fa hpdv5 \
hpi6 hpxe3gc hpxe3gf hpxe4xxx hpxt1000 hpzt11xx htcdream \
hpi6 hpxe3gc hpxe3gf hpxe4xxx hpxt1000 hpzt11xx \
ibm_spacesaver ipaq inspiron intel \
logiaccess logicda logicink \
logiex110 logiclx300 \
@ -124,9 +121,9 @@
silvercrest \
sk1300 sk2500 sk6200 sk7100 \
sven sven303 symplon \
teck227 teck229 \
toshiba_s3000 trust trustda \
unitekkb1925 yahoo \
teck227 teck229 \
apex300
! $inetmediakbds = acer_ferrari4k acer_laptop btc5090 btc9019u cherryblueb \
@ -188,7 +185,6 @@
omnikey101 = northgate(omnikey101)
sanwaskbkg3 = sanwa(sanwaskbkg3)
$pcmodels = pc(%m)
$pcgeometries = pc(%m)
everex = everex(STEPnote)
thinkpad = thinkpad(intl)
thinkpad60 = thinkpad(60)
@ -382,86 +378,85 @@
ws007sh * = pc+sharp_vndr/ws007sh(basic)
ws011sh * = pc+sharp_vndr/ws011sh(basic)
ws020sh * = pc+sharp_vndr/ws020sh(basic)
htcdream $htcdreamlayouts = %l(htcdream)
* $nonlatin = pc+us+%l%(v):2
* * = pc+%l%(v)
! model layout[1] = symbols
* ar = pc+ara%(v[1])
* ben = pc+in(ben)
* bs = pc+ba%(v[1])
* cs = pc+rs%(v[1])
* cz_qwerty = pc+cz(qwerty)
* dev = pc+in(deva)
* dvorak = pc+us(dvorak)
* dzdwi = pc+bt%(v[1])
* el = pc+gr%(v[1])
* en_US = pc+latin%(v[1])
* guj = pc+in(guj)
* gur = pc+in(guru)
* iu = pc+ca(ike)
* lo = pc+la%(v[1])
* kan = pc+in(kan)
* mi = pc+mao%(v[1])
* ogham = pc+ie(ogam)
* ori = pc+ie(ori)
* sapmi = pc+no(smi)
* sr = pc+srp%(v[1])
* syr = pc+sy(syc)
* tel = pc+in(tel)
* tml = pc+in(tam)
* yu = pc+srp%(v[1])
* fr-latin9 = pc+fr(latin9)
* us_intl = pc+us(alt-intl)
* ben(basic) = pc+in(ben)
* ben(probhat) = pc+in(ben_probhat)
* dev(basic) = pc+in(deva)
* dvorak($dvoraklayouts) = pc+%v(dvorak)
* dvorak(basic) = pc+us(dvorak)
* dvorak(pl_basic) = pc+pl(dvorak)
* dvorak(pl) = pc+pl(dvorak_quotes)
* dvorak(pl_altquotes) = pc+pl(dvorak_altquotes)
* dzdwi(basic) = pc+bt(basic)
* fi(basic) = pc+fi(classic)
* ge(azerty_tskapo) = pc+fr(geo)
* guj(basic) = pc+in(guj)
* gur(basic) = pc+in(guru)
* ie(laptop) = pc+ie(basic)
* ie(CloGaelachLaptop) = pc+ie(CloGaelach)
* in(urd) = pc+in(urd-phonetic)
* iu(basic) = pc+ca(ike)
* lo(basic) = pc+la(basic)
* kan(basic) = pc+in(kan)
* mal(basic) = pc+in(mal)
* mal(mlplusnum) = pc+in(mal)
* ogham(basic) = pc+ie(ogam)
* ogham(laptop) = pc+ie(ogam)
* ogham(is434) = pc+ie(ogam_is434)
* ogham(is434laptop) = pc+ie(ogam_is434)
* ori(basic) = pc+in(ori)
* ro(de) = pc+ro(winkeys)
* ro(us) = pc+ro(std)
* ro(academic) = pc+ro(std)
* ro(std_comma) = pc+ro(std)
* ro(comma) = pc+ro(basic)
* ru(os) = pc+ru(os_legacy)
* pk(urd) = pc+pk(urd-phonetic)
* sapmi(basic) = pc+no(smi)
* sapmi(nodeadkeys) = pc+no(smi_nodeadkeys)
* sapmi(sefi) = pc+fi(smi)
* sin(phonetic-static) = pc+in(sin_phonetic)
* syr(basic) = pc+sy(syc)
* syr(phonetic) = pc+sy(syc_phonetic)
* tam(INSCRIPT) = pc+in(tam)
* tam(UNI) = pc+in(tam_unicode)
* tam(NUMERAL-KEYBOARD) = pc+in(tam_keyboard_with_numerals)
* tam(TAB) = pc+in(tam_TAB)
* tam(TSCII) = pc+in(tam_TSCII)
* tel(basic) = pc+in(tel)
* yu(basic) = pc+srp(latin)
* yu(unicode) = pc+srp(latinunicode)
* yu(yz) = pc+srp(latinyz)
* yu(unicodeyz) = pc+srp(latinunicodeyz)
! model layout[1] = symbols
* ar = pc+ara%(v[1])
* ben = pc+in(ben)
* bs = pc+ba%(v[1])
* cs = pc+rs%(v[1])
* cz_qwerty = pc+cz(qwerty)
* dev = pc+in(deva)
* dvorak = pc+us(dvorak)
* dzdwi = pc+bt%(v[1])
* el = pc+gr%(v[1])
* en_US = pc+latin%(v[1])
* guj = pc+in(guj)
* gur = pc+in(guru)
* iu = pc+ca(ike)
* lo = pc+la%(v[1])
* kan = pc+in(kan)
* mi = pc+mao%(v[1])
* ogham = pc+ie(ogam)
* ori = pc+ie(ori)
* sapmi = pc+no(smi)
* sr = pc+srp%(v[1])
* syr = pc+sy(syc)
* tel = pc+in(tel)
* tml = pc+in(tam)
* yu = pc+srp%(v[1])
* fr-latin9 = pc+fr(latin9)
* us_intl = pc+us(alt-intl)
* ben(basic) = pc+in(ben)
* ben(probhat) = pc+in(ben_probhat)
* dev(basic) = pc+in(deva)
* dvorak($dvoraklayouts) = pc+%v(dvorak)
* dvorak(basic) = pc+us(dvorak)
* dvorak(pl_basic) = pc+pl(dvorak)
* dvorak(pl) = pc+pl(dvorak_quotes)
* dvorak(pl_altquotes) = pc+pl(dvorak_altquotes)
* dzdwi(basic) = pc+bt(basic)
* fi(basic) = pc+fi(classic)
* ge(azerty_tskapo) = pc+fr(geo)
* guj(basic) = pc+in(guj)
* gur(basic) = pc+in(guru)
* ie(laptop) = pc+ie(basic)
* ie(CloGaelachLaptop) = pc+ie(CloGaelach)
* in(urd) = pc+in(urd-phonetic)
* iu(basic) = pc+ca(ike)
* lo(basic) = pc+la(basic)
* kan(basic) = pc+in(kan)
* mal(basic) = pc+in(mal)
* mal(mlplusnum) = pc+in(mal)
* ogham(basic) = pc+ie(ogam)
* ogham(laptop) = pc+ie(ogam)
* ogham(is434) = pc+ie(ogam_is434)
* ogham(is434laptop) = pc+ie(ogam_is434)
* ori(basic) = pc+in(ori)
* ro(de) = pc+ro(winkeys)
* ro(us) = pc+ro(std)
* ro(academic) = pc+ro(std)
* ro(std_comma) = pc+ro(std)
* ro(comma) = pc+ro(basic)
* ru(os) = pc+ru(os_legacy)
* pk(urd) = pc+pk(urd-phonetic)
* sapmi(basic) = pc+no(smi)
* sapmi(nodeadkeys) = pc+no(smi_nodeadkeys)
* sapmi(sefi) = pc+fi(smi)
* sin(phonetic-static) = pc+in(sin_phonetic)
* syr(basic) = pc+sy(syc)
* syr(phonetic) = pc+sy(syc_phonetic)
* tam(INSCRIPT) = pc+in(tam)
* tam(UNI) = pc+in(tam_unicode)
* tam(NUMERAL-KEYBOARD) = pc+in(tam_keyboard_with_numerals)
* tam(TAB) = pc+in(tam_TAB)
* tam(TSCII) = pc+in(tam_TSCII)
* tel(basic) = pc+in(tel)
* yu(basic) = pc+srp(latin)
* yu(unicode) = pc+srp(latinunicode)
* yu(yz) = pc+srp(latinyz)
* yu(unicodeyz) = pc+srp(latinunicodeyz)
ataritt * = xfree68_vndr/ataritt(us)+%l[1]%(v[1])
amiga * = xfree68_vndr/amiga(usa1)+%l[1]%(v[1])
jollasbj * = jolla_vndr/sbj(common)+%l[1]%(v[1])
@ -479,55 +474,55 @@
* * = pc+%l[1]%(v[1])
! model layout[1] variant[1] = symbols
* ben basic = pc+in(ben)
* ben probhat = pc+in(ben_probhat)
* dev basic = pc+in(deva)
* dvorak $dvoraklayouts = pc+%v(dvorak)
* dvorak basic = pc+us(dvorak)
* dvorak pl_basic = pc+pl(dvorak)
* dvorak pl = pc+pl(dvorak_quotes)
* dvorak pl_altquotes = pc+pl(dvorak_altquotes)
* dzdwi basic = pc+bt(basic)
* fi basic = pc+fi(classic)
* ge azerty_tskapo = pc+fr(geo)
* guj basic = pc+in(guj)
* gur basic = pc+in(guru)
* ie laptop = pc+ie(basic)
* ie CloGaelachLaptop = pc+ie(CloGaelach)
* in urd = pc+in(urd-phonetic)
* iu basic = pc+ca(ike)
* lo basic = pc+la(basic)
* kan basic = pc+in(kan)
* mal basic = pc+in(mal)
* mal mlplusnum = pc+in(mal)
* ogham basic = pc+ie(ogam)
* ogham laptop = pc+ie(ogam)
* ogham is434 = pc+ie(ogam_is434)
* ogham is434laptop = pc+ie(ogam_is434)
* ori basic = pc+in(ori)
* ro de = pc+ro(winkeys)
* ro us = pc+ro(std)
* ro academic = pc+ro(std)
* ro std_comma = pc+ro(std)
* ro comma = pc+ro(basic)
* ru os = pc+ru(os_legacy)
* pk urd = pc+pk(urd-phonetic)
* sapmi basic = pc+no(smi)
* sapmi nodeadkeys = pc+no(smi_nodeadkeys)
* sapmi sefi = pc+fi(smi)
* sin phonetic-static = pc+in(sin_phonetic)
* syr basic = pc+sy(syc)
* syr phonetic = pc+sy(syc_phonetic)
* tam INSCRIPT = pc+in(tam)
* tam UNI = pc+in(tam_unicode)
* tam NUMERAL-KEYBOARD = pc+in(tam_keyboard_with_numerals)
* tam TAB = pc+in(tam_TAB)
* tam TSCII = pc+in(tam_TSCII)
* tel basic = pc+in(tel)
* yu basic = pc+srp(latin)
* yu unicode = pc+srp(latinunicode)
* yu yz = pc+srp(latinyz)
* yu unicodeyz = pc+srp(latinunicodeyz)
* ben basic = pc+in(ben)
* ben probhat = pc+in(ben_probhat)
* dev basic = pc+in(deva)
* dvorak $dvoraklayouts = pc+%v(dvorak)
* dvorak basic = pc+us(dvorak)
* dvorak pl_basic = pc+pl(dvorak)
* dvorak pl = pc+pl(dvorak_quotes)
* dvorak pl_altquotes = pc+pl(dvorak_altquotes)
* dzdwi basic = pc+bt(basic)
* fi basic = pc+fi(classic)
* ge azerty_tskapo = pc+fr(geo)
* guj basic = pc+in(guj)
* gur basic = pc+in(guru)
* ie laptop = pc+ie(basic)
* ie CloGaelachLaptop = pc+ie(CloGaelach)
* in urd = pc+in(urd-phonetic)
* iu basic = pc+ca(ike)
* lo basic = pc+la(basic)
* kan basic = pc+in(kan)
* mal basic = pc+in(mal)
* mal mlplusnum = pc+in(mal)
* ogham basic = pc+ie(ogam)
* ogham laptop = pc+ie(ogam)
* ogham is434 = pc+ie(ogam_is434)
* ogham is434laptop = pc+ie(ogam_is434)
* ori basic = pc+in(ori)
* ro de = pc+ro(winkeys)
* ro us = pc+ro(std)
* ro academic = pc+ro(std)
* ro std_comma = pc+ro(std)
* ro comma = pc+ro(basic)
* ru os = pc+ru(os_legacy)
* pk urd = pc+pk(urd-phonetic)
* sapmi basic = pc+no(smi)
* sapmi nodeadkeys = pc+no(smi_nodeadkeys)
* sapmi sefi = pc+fi(smi)
* sin phonetic-static = pc+in(sin_phonetic)
* syr basic = pc+sy(syc)
* syr phonetic = pc+sy(syc_phonetic)
* tam INSCRIPT = pc+in(tam)
* tam UNI = pc+in(tam_unicode)
* tam NUMERAL-KEYBOARD = pc+in(tam_keyboard_with_numerals)
* tam TAB = pc+in(tam_TAB)
* tam TSCII = pc+in(tam_TSCII)
* tel basic = pc+in(tel)
* yu basic = pc+srp(latin)
* yu unicode = pc+srp(latinunicode)
* yu yz = pc+srp(latinyz)
* yu unicodeyz = pc+srp(latinunicodeyz)
! model layout[2] = symbols
* ar = +ara%(v[2]):2
@ -556,55 +551,55 @@
* yu = +srp%(v[2]):2
* fr-latin9 = +fr(latin9):2
* us_intl = +us(alt-intl):2
* ben(basic) = +in(ben):2
* ben(probhat) = +in(ben_probhat):2
* dev(basic) = +in(deva):2
* dvorak($dvoraklayouts) = +%v(dvorak):2
* dvorak(basic) = +us(dvorak):2
* dvorak(pl_basic) = +pl(dvorak):2
* dvorak(pl) = +pl(dvorak_quotes):2
* dvorak(pl_altquotes) = +pl(dvorak_altquotes):2
* dzdwi(basic) = +bt(basic):2
* fi(basic) = +fi(classic):2
* ge(azerty_tskapo) = +fr(geo):2
* guj(basic) = +in(guj):2
* gur(basic) = +in(guru):2
* ie(laptop) = +ie(basic):2
* ie(CloGaelachLaptop) = +ie(CloGaelach):2
* in(urd) = +in(urd-phonetic):2
* iu(basic) = +ca(ike):2
* lo(basic) = +la(basic):2
* kan(basic) = +in(kan):2
* mal(basic) = +in(mal):2
* mal(mlplusnum) = +in(mal):2
* ogham(basic) = +ie(ogam):2
* ogham(laptop) = +ie(ogam):2
* ogham(is434) = +ie(ogam_is434):2
* ogham(is434laptop) = +ie(ogam_is434):2
* ori(basic) = +in(ori):2
* ro(de) = +ro(winkeys):2
* ro(us) = +ro(std):2
* ro(academic) = +ro(std):2
* ro(std_comma) = +ro(std):2
* ro(comma) = +ro(basic):2
* ru(os) = +ru(os_legacy):2
* pk(urd) = +pk(urd-phonetic):2
* sapmi(basic) = +no(smi):2
* sapmi(nodeadkeys) = +no(smi_nodeadkeys):2
* sapmi(sefi) = +fi(smi):2
* sin(phonetic-static) = +in(sin_phonetic):2
* syr(basic) = +sy(syc):2
* syr(phonetic) = +sy(syc_phonetic):2
* tam(INSCRIPT) = +in(tam):2
* tam(UNI) = +in(tam_unicode):2
* tam(NUMERAL-KEYBOARD) = +in(tam_keyboard_with_numerals):2
* tam(TAB) = +in(tam_TAB):2
* tam(TSCII) = +in(tam_TSCII):2
* tel(basic) = +in(tel):2
* yu(basic) = +srp(latin):2
* yu(unicode) = +srp(latinunicode):2
* yu(yz) = +srp(latinyz):2
* yu(unicodeyz) = +srp(latinunicodeyz):2
* ben(basic) = +in(ben):2
* ben(probhat) = +in(ben_probhat):2
* dev(basic) = +in(deva):2
* dvorak($dvoraklayouts) = +%v(dvorak):2
* dvorak(basic) = +us(dvorak):2
* dvorak(pl_basic) = +pl(dvorak):2
* dvorak(pl) = +pl(dvorak_quotes):2
* dvorak(pl_altquotes) = +pl(dvorak_altquotes):2
* dzdwi(basic) = +bt(basic):2
* fi(basic) = +fi(classic):2
* ge(azerty_tskapo) = +fr(geo):2
* guj(basic) = +in(guj):2
* gur(basic) = +in(guru):2
* ie(laptop) = +ie(basic):2
* ie(CloGaelachLaptop) = +ie(CloGaelach):2
* in(urd) = +in(urd-phonetic):2
* iu(basic) = +ca(ike):2
* lo(basic) = +la(basic):2
* kan(basic) = +in(kan):2
* mal(basic) = +in(mal):2
* mal(mlplusnum) = +in(mal):2
* ogham(basic) = +ie(ogam):2
* ogham(laptop) = +ie(ogam):2
* ogham(is434) = +ie(ogam_is434):2
* ogham(is434laptop) = +ie(ogam_is434):2
* ori(basic) = +in(ori):2
* ro(de) = +ro(winkeys):2
* ro(us) = +ro(std):2
* ro(academic) = +ro(std):2
* ro(std_comma) = +ro(std):2
* ro(comma) = +ro(basic):2
* ru(os) = +ru(os_legacy):2
* pk(urd) = +pk(urd-phonetic):2
* sapmi(basic) = +no(smi):2
* sapmi(nodeadkeys) = +no(smi_nodeadkeys):2
* sapmi(sefi) = +fi(smi):2
* sin(phonetic-static) = +in(sin_phonetic):2
* syr(basic) = +sy(syc):2
* syr(phonetic) = +sy(syc_phonetic):2
* tam(INSCRIPT) = +in(tam):2
* tam(UNI) = +in(tam_unicode):2
* tam(NUMERAL-KEYBOARD) = +in(tam_keyboard_with_numerals):2
* tam(TAB) = +in(tam_TAB):2
* tam(TSCII) = +in(tam_TSCII):2
* tel(basic) = +in(tel):2
* yu(basic) = +srp(latin):2
* yu(unicode) = +srp(latinunicode):2
* yu(yz) = +srp(latinyz):2
* yu(unicodeyz) = +srp(latinunicodeyz):2
nokiarx51 cz(qwerty) = +nokia_vndr/rx-51(cz_qwerty):2
nokiarx51 * = +nokia_vndr/rx-51(%l[2]%_v[2]):2
$sun $sun_custom = +sun_vndr/%l[2]%(v[2]):2
@ -637,55 +632,55 @@
* yu = +srp%(v[3]):3
* fr-latin9 = +fr(latin9):3
* us_intl = +us(alt-intl):3
* ben(basic) = +in(ben):3
* ben(probhat) = +in(ben_probhat):3
* dev(basic) = +in(deva):3
* dvorak($dvoraklayouts) = +%v(dvorak):3
* dvorak(basic) = +us(dvorak):3
* dvorak(pl_basic) = +pl(dvorak):3
* dvorak(pl) = +pl(dvorak_quotes):3
* dvorak(pl_altquotes) = +pl(dvorak_altquotes):3
* dzdwi(basic) = +bt(basic):3
* fi(basic) = +fi(classic):3
* ge(azerty_tskapo) = +fr(geo):3
* guj(basic) = +in(guj):3
* gur(basic) = +in(guru):3
* ie(laptop) = +ie(basic):3
* ie(CloGaelachLaptop) = +ie(CloGaelach):3
* in(urd) = +in(urd-phonetic):3
* iu(basic) = +ca(ike):3
* lo(basic) = +la(basic):3
* kan(basic) = +in(kan):3
* mal(basic) = +in(mal):3
* mal(mlplusnum) = +in(mal):3
* ogham(basic) = +ie(ogam):3
* ogham(laptop) = +ie(ogam):3
* ogham(is434) = +ie(ogam_is434):3
* ogham(is434laptop) = +ie(ogam_is434):3
* ori(basic) = +in(ori):3
* ro(de) = +ro(winkeys):3
* ro(us) = +ro(std):3
* ro(academic) = +ro(std):3
* ro(std_comma) = +ro(std):3
* ro(comma) = +ro(basic):3
* ru(os) = +ru(os_legacy):3
* pk(urd) = +pk(urd-phonetic):3
* sapmi(basic) = +no(smi):3
* sapmi(nodeadkeys) = +no(smi_nodeadkeys):3
* sapmi(sefi) = +fi(smi):3
* sin(phonetic-static) = +in(sin_phonetic):3
* syr(basic) = +sy(syc):3
* syr(phonetic) = +sy(syc_phonetic):3
* tam(INSCRIPT) = +in(tam):3
* tam(UNI) = +in(tam_unicode):3
* tam(NUMERAL-KEYBOARD) = +in(tam_keyboard_with_numerals):3
* tam(TAB) = +in(tam_TAB):3
* tam(TSCII) = +in(tam_TSCII):3
* tel(basic) = +in(tel):3
* yu(basic) = +srp(latin):3
* yu(unicode) = +srp(latinunicode):3
* yu(yz) = +srp(latinyz):3
* yu(unicodeyz) = +srp(latinunicodeyz):3
* ben(basic) = +in(ben):3
* ben(probhat) = +in(ben_probhat):3
* dev(basic) = +in(deva):3
* dvorak($dvoraklayouts) = +%v(dvorak):3
* dvorak(basic) = +us(dvorak):3
* dvorak(pl_basic) = +pl(dvorak):3
* dvorak(pl) = +pl(dvorak_quotes):3
* dvorak(pl_altquotes) = +pl(dvorak_altquotes):3
* dzdwi(basic) = +bt(basic):3
* fi(basic) = +fi(classic):3
* ge(azerty_tskapo) = +fr(geo):3
* guj(basic) = +in(guj):3
* gur(basic) = +in(guru):3
* ie(laptop) = +ie(basic):3
* ie(CloGaelachLaptop) = +ie(CloGaelach):3
* in(urd) = +in(urd-phonetic):3
* iu(basic) = +ca(ike):3
* lo(basic) = +la(basic):3
* kan(basic) = +in(kan):3
* mal(basic) = +in(mal):3
* mal(mlplusnum) = +in(mal):3
* ogham(basic) = +ie(ogam):3
* ogham(laptop) = +ie(ogam):3
* ogham(is434) = +ie(ogam_is434):3
* ogham(is434laptop) = +ie(ogam_is434):3
* ori(basic) = +in(ori):3
* ro(de) = +ro(winkeys):3
* ro(us) = +ro(std):3
* ro(academic) = +ro(std):3
* ro(std_comma) = +ro(std):3
* ro(comma) = +ro(basic):3
* ru(os) = +ru(os_legacy):3
* pk(urd) = +pk(urd-phonetic):3
* sapmi(basic) = +no(smi):3
* sapmi(nodeadkeys) = +no(smi_nodeadkeys):3
* sapmi(sefi) = +fi(smi):3
* sin(phonetic-static) = +in(sin_phonetic):3
* syr(basic) = +sy(syc):3
* syr(phonetic) = +sy(syc_phonetic):3
* tam(INSCRIPT) = +in(tam):3
* tam(UNI) = +in(tam_unicode):3
* tam(NUMERAL-KEYBOARD) = +in(tam_keyboard_with_numerals):3
* tam(TAB) = +in(tam_TAB):3
* tam(TSCII) = +in(tam_TSCII):3
* tel(basic) = +in(tel):3
* yu(basic) = +srp(latin):3
* yu(unicode) = +srp(latinunicode):3
* yu(yz) = +srp(latinyz):3
* yu(unicodeyz) = +srp(latinunicodeyz):3
nokiarx51 cz(qwerty) = +nokia_vndr/rx-51(cz_qwerty):3
nokiarx51 * = +nokia_vndr/rx-51(%l[3]%_v[3]):3
$sun $sun_custom = +sun_vndr/%l[3]%(v[3]):3
@ -718,55 +713,55 @@
* yu = +srp%(v[4]):4
* fr-latin9 = +fr(latin9):4
* us_intl = +us(alt-intl):4
* ben(basic) = +in(ben):4
* ben(probhat) = +in(ben_probhat):4
* dev(basic) = +in(deva):4
* dvorak($dvoraklayouts) = +%v(dvorak):4
* dvorak(basic) = +us(dvorak):4
* dvorak(pl_basic) = +pl(dvorak):4
* dvorak(pl) = +pl(dvorak_quotes):4
* dvorak(pl_altquotes) = +pl(dvorak_altquotes):4
* dzdwi(basic) = +bt(basic):4
* fi(basic) = +fi(classic):4
* ge(azerty_tskapo) = +fr(geo):4
* guj(basic) = +in(guj):4
* gur(basic) = +in(guru):4
* ie(laptop) = +ie(basic):4
* ie(CloGaelachLaptop) = +ie(CloGaelach):4
* in(urd) = +in(urd-phonetic):4
* iu(basic) = +ca(ike):4
* lo(basic) = +la(basic):4
* kan(basic) = +in(kan):4
* mal(basic) = +in(mal):4
* mal(mlplusnum) = +in(mal):4
* ogham(basic) = +ie(ogam):4
* ogham(laptop) = +ie(ogam):4
* ogham(is434) = +ie(ogam_is434):4
* ogham(is434laptop) = +ie(ogam_is434):4
* ori(basic) = +in(ori):4
* ro(de) = +ro(winkeys):4
* ro(us) = +ro(std):4
* ro(academic) = +ro(std):4
* ro(std_comma) = +ro(std):4
* ro(comma) = +ro(basic):4
* ru(os) = +ru(os_legacy):4
* pk(urd) = +pk(urd-phonetic):4
* sapmi(basic) = +no(smi):4
* sapmi(nodeadkeys) = +no(smi_nodeadkeys):4
* sapmi(sefi) = +fi(smi):4
* sin(phonetic-static) = +in(sin_phonetic):4
* syr(basic) = +sy(syc):4
* syr(phonetic) = +sy(syc_phonetic):4
* tam(INSCRIPT) = +in(tam):4
* tam(UNI) = +in(tam_unicode):4
* tam(NUMERAL-KEYBOARD) = +in(tam_keyboard_with_numerals):4
* tam(TAB) = +in(tam_TAB):4
* tam(TSCII) = +in(tam_TSCII):4
* tel(basic) = +in(tel):4
* yu(basic) = +srp(latin):4
* yu(unicode) = +srp(latinunicode):4
* yu(yz) = +srp(latinyz):4
* yu(unicodeyz) = +srp(latinunicodeyz):4
* ben(basic) = +in(ben):4
* ben(probhat) = +in(ben_probhat):4
* dev(basic) = +in(deva):4
* dvorak($dvoraklayouts) = +%v(dvorak):4
* dvorak(basic) = +us(dvorak):4
* dvorak(pl_basic) = +pl(dvorak):4
* dvorak(pl) = +pl(dvorak_quotes):4
* dvorak(pl_altquotes) = +pl(dvorak_altquotes):4
* dzdwi(basic) = +bt(basic):4
* fi(basic) = +fi(classic):4
* ge(azerty_tskapo) = +fr(geo):4
* guj(basic) = +in(guj):4
* gur(basic) = +in(guru):4
* ie(laptop) = +ie(basic):4
* ie(CloGaelachLaptop) = +ie(CloGaelach):4
* in(urd) = +in(urd-phonetic):4
* iu(basic) = +ca(ike):4
* lo(basic) = +la(basic):4
* kan(basic) = +in(kan):4
* mal(basic) = +in(mal):4
* mal(mlplusnum) = +in(mal):4
* ogham(basic) = +ie(ogam):4
* ogham(laptop) = +ie(ogam):4
* ogham(is434) = +ie(ogam_is434):4
* ogham(is434laptop) = +ie(ogam_is434):4
* ori(basic) = +in(ori):4
* ro(de) = +ro(winkeys):4
* ro(us) = +ro(std):4
* ro(academic) = +ro(std):4
* ro(std_comma) = +ro(std):4
* ro(comma) = +ro(basic):4
* ru(os) = +ru(os_legacy):4
* pk(urd) = +pk(urd-phonetic):4
* sapmi(basic) = +no(smi):4
* sapmi(nodeadkeys) = +no(smi_nodeadkeys):4
* sapmi(sefi) = +fi(smi):4
* sin(phonetic-static) = +in(sin_phonetic):4
* syr(basic) = +sy(syc):4
* syr(phonetic) = +sy(syc_phonetic):4
* tam(INSCRIPT) = +in(tam):4
* tam(UNI) = +in(tam_unicode):4
* tam(NUMERAL-KEYBOARD) = +in(tam_keyboard_with_numerals):4
* tam(TAB) = +in(tam_TAB):4
* tam(TSCII) = +in(tam_TSCII):4
* tel(basic) = +in(tel):4
* yu(basic) = +srp(latin):4
* yu(unicode) = +srp(latinunicode):4
* yu(yz) = +srp(latinyz):4
* yu(unicodeyz) = +srp(latinunicodeyz):4
nokiarx51 cz(qwerty) = +nokia_vndr/rx-51(cz_qwerty):4
nokiarx51 * = +nokia_vndr/rx-51(%l[4]%_v[4]):4
$sun $sun_custom = +sun_vndr/%l[4]%(v[4]):4
@ -1053,26 +1048,32 @@
! layout option = symbols
$threelevellayouts grp:alts_toggle = +level3(ralt_switch_for_alts_toggle)
* misc:typo = +typo(base)
* misc:apl = +apl(level3)
! layout[1] option = symbols
$threelevellayouts grp:alts_toggle = +level3(ralt_switch_for_alts_toggle):1
* misc:typo = +typo(base):1
* misc:apl = +apl(level3):1
! layout[2] option = symbols
$threelevellayouts grp:alts_toggle = +level3(ralt_switch_for_alts_toggle):2
* misc:typo = +typo(base):2
* misc:apl = +apl(level3):2
! layout[3] option = symbols
$threelevellayouts grp:alts_toggle = +level3(ralt_switch_for_alts_toggle):3
* misc:typo = +typo(base):3
* misc:apl = +apl(level3):3
! layout[4] option = symbols
$threelevellayouts grp:alts_toggle = +level3(ralt_switch_for_alts_toggle):4
* misc:typo = +typo(base):4
* misc:apl = +apl(level3):4
! option = symbols
grp:shift_toggle = +group(shifts_toggle)
altwin:menu = +altwin(menu)
altwin:menu_win = +altwin(menu_win)
altwin:meta_alt = +altwin(meta_alt)
altwin:alt_win = +altwin(alt_win)
altwin:ctrl_win = +altwin(ctrl_win)
@ -1139,11 +1140,14 @@
lv3:lwin_switch = +level3(lwin_switch)
lv3:rwin_switch = +level3(rwin_switch)
lv3:enter_switch = +level3(enter_switch)
lv3:4_switch_isolated = +level3(4_switch_isolated)
lv3:9_switch_isolated = +level3(9_switch_isolated)
caps:capslock = +capslock(capslock)
caps:numlock = +capslock(numlock)
caps:shiftlock = +capslock(shiftlock)
caps:swapescape = +capslock(swapescape)
caps:escape = +capslock(escape)
caps:escape_shifted_capslock = +capslock(escape_shifted_capslock)
caps:backspace = +capslock(backspace)
caps:super = +capslock(super)
caps:hyper = +capslock(hyper)
@ -1153,6 +1157,8 @@
ctrl:nocaps = +ctrl(nocaps)
ctrl:lctrl_meta = +ctrl(lctrl_meta)
ctrl:swapcaps = +ctrl(swapcaps)
ctrl:swapcaps_hyper = +ctrl(swapcaps_hyper)
ctrl:swapcaps_and_switch_layout = +ctrl(swapcaps_and_switch_layout)
ctrl:ac_ctrl = +ctrl(ac_ctrl)
ctrl:aa_ctrl = +ctrl(aa_ctrl)
ctrl:rctrl_ralt = +ctrl(rctrl_ralt)
@ -1202,10 +1208,20 @@
nbsp:level4 = +nbsp(level4)
nbsp:level4n = +nbsp(level4n)
nbsp:level4nl = +nbsp(level4nl)
nbsp:zwnj2 = +nbsp(zwnj2)
nbsp:zwnj2zwj3 = +nbsp(zwnj2zwj3)
nbsp:zwnj2zwj3nb4 = +nbsp(zwnj2zwj3nb4)
nbsp:zwnj2nb3 = +nbsp(zwnj2nb3)
nbsp:zwnj2nb3s = +nbsp(zwnj2nb3s)
nbsp:zwnj2nb3zwj4 = +nbsp(zwnj2nb3zwj4)
nbsp:zwnj2nb3nnb4 = +nbsp(zwnj2nb3nnb4)
nbsp:zwnj3zwj4 = +nbsp(zwnj3zwj4)
japan:nicola_f_bs = +jp(nicola_f_bs)
japan:hztg_escape = +jp(hztg_escape)
korean:ralt_rctrl = +kr(ralt_hangul)+kr(rctrl_hanja)
korean:rctrl_ralt = +kr(rctrl_hangul)+kr(ralt_hanja)
korean:ralt_hangul = +kr(ralt_hangul)
korean:rctrl_hangul = +kr(rctrl_hangul)
korean:ralt_hanja = +kr(ralt_hanja)
korean:rctrl_hanja = +kr(rctrl_hanja)
kpdl:dot = +kpdl(dot)
kpdl:comma = +kpdl(comma)
kpdl:dotoss = +kpdl(dotoss)
@ -1237,6 +1253,8 @@
lv3:caps_switch_latch = +level3(caps_switch_latch)
lv3:bksl_switch_latch = +level3(bksl_switch_latch)
lv3:lsgt_switch_latch = +level3(lsgt_switch_latch)
lv5:lsgt_switch = +level5(lsgt_switch)
lv5:ralt_switch = +level5(ralt_switch)
lv5:lsgt_switch_lock = +level5(lsgt_switch_lock)
lv5:ralt_switch_lock = +level5(ralt_switch_lock)
lv5:lwin_switch_lock = +level5(lwin_switch_lock)
@ -1252,6 +1270,7 @@
grp_led:num = +lednum(group_lock)
grp_led:caps = +ledcaps(group_lock)
grp_led:scroll = +ledscroll(group_lock)
mod_led:compose = +ledcompose(compose)
japan:kana_lock = +japan(kana_lock)
caps:shiftlock = +ledcaps(shift_lock)
grab:break_actions = +xfree86(grab_break)

View File

@ -1,4 +1,5 @@
// DO NOT EDIT THIS FILE - IT WAS AUTOGENERATED BY merge.sh FROM rules/*.part
// DO NOT EDIT THIS FILE - IT WAS AUTOGENERATED BY merge.py FROM rules/*.part
//
//
// Rules for resolving XKB components for use with XFree86
// Copyright 1996 by Joseph Moss
@ -13,20 +14,17 @@
// ori pk ru scc sy syr tel th tj tam ua uz
// PC models
! $pcmodels = pc101 pc102 pc104 pc105
! $pcmodels = pc86 pc101 pc102 pc104 pc104alt pc105
// Jolla devices and keyboards
! $jollamodels = jollasbj
// Microsoft models (using MS geometry)
! $msmodels = microsoft microsoft4000 microsoft7000 microsoftpro microsoftprousb microsoftprose
! $msmodels = microsoft microsoft4000 microsoft7000 microsoftpro microsoftprousb microsoftprose microsoftsurface
// Nokia devices and keyboards
! $nokiamodels = nokiasu8w nokiarx44 nokiarx51
// PC geometries - they have special geometry but symbols are mostly pc105
! $pcgeometries = latitude
// TypeMatrix geometries
! $tmgeometries = tm2020 tm2030PS2 tm2030USB tm2030USB-102 tm2030USB-106
@ -85,14 +83,12 @@
! $sun_compat = sun_type6 sun_type6_suncompat sun_type7_suncompat suncompat
! $htcdreamlayouts = us it de
! $evdevkbds = ibm_spacesaver
! $dvoraklayouts = br ca de ee es fr gb no pl se us
! model = keycodes
pc98 = evdev(pc98)
applealu_jis = evdev+macintosh(jisevdev)
$jollamodels = evdev+jolla(jolla)
olpc = evdev+olpc(olpc)
@ -127,7 +123,6 @@
omnikey101 = northgate(omnikey101)
sanwaskbkg3 = sanwa(sanwaskbkg3)
$pcmodels = pc(%m)
$pcgeometries = pc(%m)
everex = everex(STEPnote)
thinkpad = thinkpad(intl)
thinkpad60 = thinkpad(60)
@ -321,86 +316,85 @@
ws007sh * = pc+sharp_vndr/ws007sh(basic)
ws011sh * = pc+sharp_vndr/ws011sh(basic)
ws020sh * = pc+sharp_vndr/ws020sh(basic)
htcdream $htcdreamlayouts = %l(htcdream)
* $nonlatin = pc+us+%l%(v):2
* * = pc+%l%(v)
! model layout[1] = symbols
* ar = pc+ara%(v[1])
* ben = pc+in(ben)
* bs = pc+ba%(v[1])
* cs = pc+rs%(v[1])
* cz_qwerty = pc+cz(qwerty)
* dev = pc+in(deva)
* dvorak = pc+us(dvorak)
* dzdwi = pc+bt%(v[1])
* el = pc+gr%(v[1])
* en_US = pc+latin%(v[1])
* guj = pc+in(guj)
* gur = pc+in(guru)
* iu = pc+ca(ike)
* lo = pc+la%(v[1])
* kan = pc+in(kan)
* mi = pc+mao%(v[1])
* ogham = pc+ie(ogam)
* ori = pc+ie(ori)
* sapmi = pc+no(smi)
* sr = pc+srp%(v[1])
* syr = pc+sy(syc)
* tel = pc+in(tel)
* tml = pc+in(tam)
* yu = pc+srp%(v[1])
* fr-latin9 = pc+fr(latin9)
* us_intl = pc+us(alt-intl)
* ben(basic) = pc+in(ben)
* ben(probhat) = pc+in(ben_probhat)
* dev(basic) = pc+in(deva)
* dvorak($dvoraklayouts) = pc+%v(dvorak)
* dvorak(basic) = pc+us(dvorak)
* dvorak(pl_basic) = pc+pl(dvorak)
* dvorak(pl) = pc+pl(dvorak_quotes)
* dvorak(pl_altquotes) = pc+pl(dvorak_altquotes)
* dzdwi(basic) = pc+bt(basic)
* fi(basic) = pc+fi(classic)
* ge(azerty_tskapo) = pc+fr(geo)
* guj(basic) = pc+in(guj)
* gur(basic) = pc+in(guru)
* ie(laptop) = pc+ie(basic)
* ie(CloGaelachLaptop) = pc+ie(CloGaelach)
* in(urd) = pc+in(urd-phonetic)
* iu(basic) = pc+ca(ike)
* lo(basic) = pc+la(basic)
* kan(basic) = pc+in(kan)
* mal(basic) = pc+in(mal)
* mal(mlplusnum) = pc+in(mal)
* ogham(basic) = pc+ie(ogam)
* ogham(laptop) = pc+ie(ogam)
* ogham(is434) = pc+ie(ogam_is434)
* ogham(is434laptop) = pc+ie(ogam_is434)
* ori(basic) = pc+in(ori)
* ro(de) = pc+ro(winkeys)
* ro(us) = pc+ro(std)
* ro(academic) = pc+ro(std)
* ro(std_comma) = pc+ro(std)
* ro(comma) = pc+ro(basic)
* ru(os) = pc+ru(os_legacy)
* pk(urd) = pc+pk(urd-phonetic)
* sapmi(basic) = pc+no(smi)
* sapmi(nodeadkeys) = pc+no(smi_nodeadkeys)
* sapmi(sefi) = pc+fi(smi)
* sin(phonetic-static) = pc+in(sin_phonetic)
* syr(basic) = pc+sy(syc)
* syr(phonetic) = pc+sy(syc_phonetic)
* tam(INSCRIPT) = pc+in(tam)
* tam(UNI) = pc+in(tam_unicode)
* tam(NUMERAL-KEYBOARD) = pc+in(tam_keyboard_with_numerals)
* tam(TAB) = pc+in(tam_TAB)
* tam(TSCII) = pc+in(tam_TSCII)
* tel(basic) = pc+in(tel)
* yu(basic) = pc+srp(latin)
* yu(unicode) = pc+srp(latinunicode)
* yu(yz) = pc+srp(latinyz)
* yu(unicodeyz) = pc+srp(latinunicodeyz)
! model layout[1] = symbols
* ar = pc+ara%(v[1])
* ben = pc+in(ben)
* bs = pc+ba%(v[1])
* cs = pc+rs%(v[1])
* cz_qwerty = pc+cz(qwerty)
* dev = pc+in(deva)
* dvorak = pc+us(dvorak)
* dzdwi = pc+bt%(v[1])
* el = pc+gr%(v[1])
* en_US = pc+latin%(v[1])
* guj = pc+in(guj)
* gur = pc+in(guru)
* iu = pc+ca(ike)
* lo = pc+la%(v[1])
* kan = pc+in(kan)
* mi = pc+mao%(v[1])
* ogham = pc+ie(ogam)
* ori = pc+ie(ori)
* sapmi = pc+no(smi)
* sr = pc+srp%(v[1])
* syr = pc+sy(syc)
* tel = pc+in(tel)
* tml = pc+in(tam)
* yu = pc+srp%(v[1])
* fr-latin9 = pc+fr(latin9)
* us_intl = pc+us(alt-intl)
* ben(basic) = pc+in(ben)
* ben(probhat) = pc+in(ben_probhat)
* dev(basic) = pc+in(deva)
* dvorak($dvoraklayouts) = pc+%v(dvorak)
* dvorak(basic) = pc+us(dvorak)
* dvorak(pl_basic) = pc+pl(dvorak)
* dvorak(pl) = pc+pl(dvorak_quotes)
* dvorak(pl_altquotes) = pc+pl(dvorak_altquotes)
* dzdwi(basic) = pc+bt(basic)
* fi(basic) = pc+fi(classic)
* ge(azerty_tskapo) = pc+fr(geo)
* guj(basic) = pc+in(guj)
* gur(basic) = pc+in(guru)
* ie(laptop) = pc+ie(basic)
* ie(CloGaelachLaptop) = pc+ie(CloGaelach)
* in(urd) = pc+in(urd-phonetic)
* iu(basic) = pc+ca(ike)
* lo(basic) = pc+la(basic)
* kan(basic) = pc+in(kan)
* mal(basic) = pc+in(mal)
* mal(mlplusnum) = pc+in(mal)
* ogham(basic) = pc+ie(ogam)
* ogham(laptop) = pc+ie(ogam)
* ogham(is434) = pc+ie(ogam_is434)
* ogham(is434laptop) = pc+ie(ogam_is434)
* ori(basic) = pc+in(ori)
* ro(de) = pc+ro(winkeys)
* ro(us) = pc+ro(std)
* ro(academic) = pc+ro(std)
* ro(std_comma) = pc+ro(std)
* ro(comma) = pc+ro(basic)
* ru(os) = pc+ru(os_legacy)
* pk(urd) = pc+pk(urd-phonetic)
* sapmi(basic) = pc+no(smi)
* sapmi(nodeadkeys) = pc+no(smi_nodeadkeys)
* sapmi(sefi) = pc+fi(smi)
* sin(phonetic-static) = pc+in(sin_phonetic)
* syr(basic) = pc+sy(syc)
* syr(phonetic) = pc+sy(syc_phonetic)
* tam(INSCRIPT) = pc+in(tam)
* tam(UNI) = pc+in(tam_unicode)
* tam(NUMERAL-KEYBOARD) = pc+in(tam_keyboard_with_numerals)
* tam(TAB) = pc+in(tam_TAB)
* tam(TSCII) = pc+in(tam_TSCII)
* tel(basic) = pc+in(tel)
* yu(basic) = pc+srp(latin)
* yu(unicode) = pc+srp(latinunicode)
* yu(yz) = pc+srp(latinyz)
* yu(unicodeyz) = pc+srp(latinunicodeyz)
ataritt * = xfree68_vndr/ataritt(us)+%l[1]%(v[1])
amiga * = xfree68_vndr/amiga(usa1)+%l[1]%(v[1])
jollasbj * = jolla_vndr/sbj(common)+%l[1]%(v[1])
@ -418,55 +412,55 @@
* * = pc+%l[1]%(v[1])
! model layout[1] variant[1] = symbols
* ben basic = pc+in(ben)
* ben probhat = pc+in(ben_probhat)
* dev basic = pc+in(deva)
* dvorak $dvoraklayouts = pc+%v(dvorak)
* dvorak basic = pc+us(dvorak)
* dvorak pl_basic = pc+pl(dvorak)
* dvorak pl = pc+pl(dvorak_quotes)
* dvorak pl_altquotes = pc+pl(dvorak_altquotes)
* dzdwi basic = pc+bt(basic)
* fi basic = pc+fi(classic)
* ge azerty_tskapo = pc+fr(geo)
* guj basic = pc+in(guj)
* gur basic = pc+in(guru)
* ie laptop = pc+ie(basic)
* ie CloGaelachLaptop = pc+ie(CloGaelach)
* in urd = pc+in(urd-phonetic)
* iu basic = pc+ca(ike)
* lo basic = pc+la(basic)
* kan basic = pc+in(kan)
* mal basic = pc+in(mal)
* mal mlplusnum = pc+in(mal)
* ogham basic = pc+ie(ogam)
* ogham laptop = pc+ie(ogam)
* ogham is434 = pc+ie(ogam_is434)
* ogham is434laptop = pc+ie(ogam_is434)
* ori basic = pc+in(ori)
* ro de = pc+ro(winkeys)
* ro us = pc+ro(std)
* ro academic = pc+ro(std)
* ro std_comma = pc+ro(std)
* ro comma = pc+ro(basic)
* ru os = pc+ru(os_legacy)
* pk urd = pc+pk(urd-phonetic)
* sapmi basic = pc+no(smi)
* sapmi nodeadkeys = pc+no(smi_nodeadkeys)
* sapmi sefi = pc+fi(smi)
* sin phonetic-static = pc+in(sin_phonetic)
* syr basic = pc+sy(syc)
* syr phonetic = pc+sy(syc_phonetic)
* tam INSCRIPT = pc+in(tam)
* tam UNI = pc+in(tam_unicode)
* tam NUMERAL-KEYBOARD = pc+in(tam_keyboard_with_numerals)
* tam TAB = pc+in(tam_TAB)
* tam TSCII = pc+in(tam_TSCII)
* tel basic = pc+in(tel)
* yu basic = pc+srp(latin)
* yu unicode = pc+srp(latinunicode)
* yu yz = pc+srp(latinyz)
* yu unicodeyz = pc+srp(latinunicodeyz)
* ben basic = pc+in(ben)
* ben probhat = pc+in(ben_probhat)
* dev basic = pc+in(deva)
* dvorak $dvoraklayouts = pc+%v(dvorak)
* dvorak basic = pc+us(dvorak)
* dvorak pl_basic = pc+pl(dvorak)
* dvorak pl = pc+pl(dvorak_quotes)
* dvorak pl_altquotes = pc+pl(dvorak_altquotes)
* dzdwi basic = pc+bt(basic)
* fi basic = pc+fi(classic)
* ge azerty_tskapo = pc+fr(geo)
* guj basic = pc+in(guj)
* gur basic = pc+in(guru)
* ie laptop = pc+ie(basic)
* ie CloGaelachLaptop = pc+ie(CloGaelach)
* in urd = pc+in(urd-phonetic)
* iu basic = pc+ca(ike)
* lo basic = pc+la(basic)
* kan basic = pc+in(kan)
* mal basic = pc+in(mal)
* mal mlplusnum = pc+in(mal)
* ogham basic = pc+ie(ogam)
* ogham laptop = pc+ie(ogam)
* ogham is434 = pc+ie(ogam_is434)
* ogham is434laptop = pc+ie(ogam_is434)
* ori basic = pc+in(ori)
* ro de = pc+ro(winkeys)
* ro us = pc+ro(std)
* ro academic = pc+ro(std)
* ro std_comma = pc+ro(std)
* ro comma = pc+ro(basic)
* ru os = pc+ru(os_legacy)
* pk urd = pc+pk(urd-phonetic)
* sapmi basic = pc+no(smi)
* sapmi nodeadkeys = pc+no(smi_nodeadkeys)
* sapmi sefi = pc+fi(smi)
* sin phonetic-static = pc+in(sin_phonetic)
* syr basic = pc+sy(syc)
* syr phonetic = pc+sy(syc_phonetic)
* tam INSCRIPT = pc+in(tam)
* tam UNI = pc+in(tam_unicode)
* tam NUMERAL-KEYBOARD = pc+in(tam_keyboard_with_numerals)
* tam TAB = pc+in(tam_TAB)
* tam TSCII = pc+in(tam_TSCII)
* tel basic = pc+in(tel)
* yu basic = pc+srp(latin)
* yu unicode = pc+srp(latinunicode)
* yu yz = pc+srp(latinyz)
* yu unicodeyz = pc+srp(latinunicodeyz)
! model layout[2] = symbols
* ar = +ara%(v[2]):2
@ -495,55 +489,55 @@
* yu = +srp%(v[2]):2
* fr-latin9 = +fr(latin9):2
* us_intl = +us(alt-intl):2
* ben(basic) = +in(ben):2
* ben(probhat) = +in(ben_probhat):2
* dev(basic) = +in(deva):2
* dvorak($dvoraklayouts) = +%v(dvorak):2
* dvorak(basic) = +us(dvorak):2
* dvorak(pl_basic) = +pl(dvorak):2
* dvorak(pl) = +pl(dvorak_quotes):2
* dvorak(pl_altquotes) = +pl(dvorak_altquotes):2
* dzdwi(basic) = +bt(basic):2
* fi(basic) = +fi(classic):2
* ge(azerty_tskapo) = +fr(geo):2
* guj(basic) = +in(guj):2
* gur(basic) = +in(guru):2
* ie(laptop) = +ie(basic):2
* ie(CloGaelachLaptop) = +ie(CloGaelach):2
* in(urd) = +in(urd-phonetic):2
* iu(basic) = +ca(ike):2
* lo(basic) = +la(basic):2
* kan(basic) = +in(kan):2
* mal(basic) = +in(mal):2
* mal(mlplusnum) = +in(mal):2
* ogham(basic) = +ie(ogam):2
* ogham(laptop) = +ie(ogam):2
* ogham(is434) = +ie(ogam_is434):2
* ogham(is434laptop) = +ie(ogam_is434):2
* ori(basic) = +in(ori):2
* ro(de) = +ro(winkeys):2
* ro(us) = +ro(std):2
* ro(academic) = +ro(std):2
* ro(std_comma) = +ro(std):2
* ro(comma) = +ro(basic):2
* ru(os) = +ru(os_legacy):2
* pk(urd) = +pk(urd-phonetic):2
* sapmi(basic) = +no(smi):2
* sapmi(nodeadkeys) = +no(smi_nodeadkeys):2
* sapmi(sefi) = +fi(smi):2
* sin(phonetic-static) = +in(sin_phonetic):2
* syr(basic) = +sy(syc):2
* syr(phonetic) = +sy(syc_phonetic):2
* tam(INSCRIPT) = +in(tam):2
* tam(UNI) = +in(tam_unicode):2
* tam(NUMERAL-KEYBOARD) = +in(tam_keyboard_with_numerals):2
* tam(TAB) = +in(tam_TAB):2
* tam(TSCII) = +in(tam_TSCII):2
* tel(basic) = +in(tel):2
* yu(basic) = +srp(latin):2
* yu(unicode) = +srp(latinunicode):2
* yu(yz) = +srp(latinyz):2
* yu(unicodeyz) = +srp(latinunicodeyz):2
* ben(basic) = +in(ben):2
* ben(probhat) = +in(ben_probhat):2
* dev(basic) = +in(deva):2
* dvorak($dvoraklayouts) = +%v(dvorak):2
* dvorak(basic) = +us(dvorak):2
* dvorak(pl_basic) = +pl(dvorak):2
* dvorak(pl) = +pl(dvorak_quotes):2
* dvorak(pl_altquotes) = +pl(dvorak_altquotes):2
* dzdwi(basic) = +bt(basic):2
* fi(basic) = +fi(classic):2
* ge(azerty_tskapo) = +fr(geo):2
* guj(basic) = +in(guj):2
* gur(basic) = +in(guru):2
* ie(laptop) = +ie(basic):2
* ie(CloGaelachLaptop) = +ie(CloGaelach):2
* in(urd) = +in(urd-phonetic):2
* iu(basic) = +ca(ike):2
* lo(basic) = +la(basic):2
* kan(basic) = +in(kan):2
* mal(basic) = +in(mal):2
* mal(mlplusnum) = +in(mal):2
* ogham(basic) = +ie(ogam):2
* ogham(laptop) = +ie(ogam):2
* ogham(is434) = +ie(ogam_is434):2
* ogham(is434laptop) = +ie(ogam_is434):2
* ori(basic) = +in(ori):2
* ro(de) = +ro(winkeys):2
* ro(us) = +ro(std):2
* ro(academic) = +ro(std):2
* ro(std_comma) = +ro(std):2
* ro(comma) = +ro(basic):2
* ru(os) = +ru(os_legacy):2
* pk(urd) = +pk(urd-phonetic):2
* sapmi(basic) = +no(smi):2
* sapmi(nodeadkeys) = +no(smi_nodeadkeys):2
* sapmi(sefi) = +fi(smi):2
* sin(phonetic-static) = +in(sin_phonetic):2
* syr(basic) = +sy(syc):2
* syr(phonetic) = +sy(syc_phonetic):2
* tam(INSCRIPT) = +in(tam):2
* tam(UNI) = +in(tam_unicode):2
* tam(NUMERAL-KEYBOARD) = +in(tam_keyboard_with_numerals):2
* tam(TAB) = +in(tam_TAB):2
* tam(TSCII) = +in(tam_TSCII):2
* tel(basic) = +in(tel):2
* yu(basic) = +srp(latin):2
* yu(unicode) = +srp(latinunicode):2
* yu(yz) = +srp(latinyz):2
* yu(unicodeyz) = +srp(latinunicodeyz):2
nokiarx51 cz(qwerty) = +nokia_vndr/rx-51(cz_qwerty):2
nokiarx51 * = +nokia_vndr/rx-51(%l[2]%_v[2]):2
$sun $sun_custom = +sun_vndr/%l[2]%(v[2]):2
@ -576,55 +570,55 @@
* yu = +srp%(v[3]):3
* fr-latin9 = +fr(latin9):3
* us_intl = +us(alt-intl):3
* ben(basic) = +in(ben):3
* ben(probhat) = +in(ben_probhat):3
* dev(basic) = +in(deva):3
* dvorak($dvoraklayouts) = +%v(dvorak):3
* dvorak(basic) = +us(dvorak):3
* dvorak(pl_basic) = +pl(dvorak):3
* dvorak(pl) = +pl(dvorak_quotes):3
* dvorak(pl_altquotes) = +pl(dvorak_altquotes):3
* dzdwi(basic) = +bt(basic):3
* fi(basic) = +fi(classic):3
* ge(azerty_tskapo) = +fr(geo):3
* guj(basic) = +in(guj):3
* gur(basic) = +in(guru):3
* ie(laptop) = +ie(basic):3
* ie(CloGaelachLaptop) = +ie(CloGaelach):3
* in(urd) = +in(urd-phonetic):3
* iu(basic) = +ca(ike):3
* lo(basic) = +la(basic):3
* kan(basic) = +in(kan):3
* mal(basic) = +in(mal):3
* mal(mlplusnum) = +in(mal):3
* ogham(basic) = +ie(ogam):3
* ogham(laptop) = +ie(ogam):3
* ogham(is434) = +ie(ogam_is434):3
* ogham(is434laptop) = +ie(ogam_is434):3
* ori(basic) = +in(ori):3
* ro(de) = +ro(winkeys):3
* ro(us) = +ro(std):3
* ro(academic) = +ro(std):3
* ro(std_comma) = +ro(std):3
* ro(comma) = +ro(basic):3
* ru(os) = +ru(os_legacy):3
* pk(urd) = +pk(urd-phonetic):3
* sapmi(basic) = +no(smi):3
* sapmi(nodeadkeys) = +no(smi_nodeadkeys):3
* sapmi(sefi) = +fi(smi):3
* sin(phonetic-static) = +in(sin_phonetic):3
* syr(basic) = +sy(syc):3
* syr(phonetic) = +sy(syc_phonetic):3
* tam(INSCRIPT) = +in(tam):3
* tam(UNI) = +in(tam_unicode):3
* tam(NUMERAL-KEYBOARD) = +in(tam_keyboard_with_numerals):3
* tam(TAB) = +in(tam_TAB):3
* tam(TSCII) = +in(tam_TSCII):3
* tel(basic) = +in(tel):3
* yu(basic) = +srp(latin):3
* yu(unicode) = +srp(latinunicode):3
* yu(yz) = +srp(latinyz):3
* yu(unicodeyz) = +srp(latinunicodeyz):3
* ben(basic) = +in(ben):3
* ben(probhat) = +in(ben_probhat):3
* dev(basic) = +in(deva):3
* dvorak($dvoraklayouts) = +%v(dvorak):3
* dvorak(basic) = +us(dvorak):3
* dvorak(pl_basic) = +pl(dvorak):3
* dvorak(pl) = +pl(dvorak_quotes):3
* dvorak(pl_altquotes) = +pl(dvorak_altquotes):3
* dzdwi(basic) = +bt(basic):3
* fi(basic) = +fi(classic):3
* ge(azerty_tskapo) = +fr(geo):3
* guj(basic) = +in(guj):3
* gur(basic) = +in(guru):3
* ie(laptop) = +ie(basic):3
* ie(CloGaelachLaptop) = +ie(CloGaelach):3
* in(urd) = +in(urd-phonetic):3
* iu(basic) = +ca(ike):3
* lo(basic) = +la(basic):3
* kan(basic) = +in(kan):3
* mal(basic) = +in(mal):3
* mal(mlplusnum) = +in(mal):3
* ogham(basic) = +ie(ogam):3
* ogham(laptop) = +ie(ogam):3
* ogham(is434) = +ie(ogam_is434):3
* ogham(is434laptop) = +ie(ogam_is434):3
* ori(basic) = +in(ori):3
* ro(de) = +ro(winkeys):3
* ro(us) = +ro(std):3
* ro(academic) = +ro(std):3
* ro(std_comma) = +ro(std):3
* ro(comma) = +ro(basic):3
* ru(os) = +ru(os_legacy):3
* pk(urd) = +pk(urd-phonetic):3
* sapmi(basic) = +no(smi):3
* sapmi(nodeadkeys) = +no(smi_nodeadkeys):3
* sapmi(sefi) = +fi(smi):3
* sin(phonetic-static) = +in(sin_phonetic):3
* syr(basic) = +sy(syc):3
* syr(phonetic) = +sy(syc_phonetic):3
* tam(INSCRIPT) = +in(tam):3
* tam(UNI) = +in(tam_unicode):3
* tam(NUMERAL-KEYBOARD) = +in(tam_keyboard_with_numerals):3
* tam(TAB) = +in(tam_TAB):3
* tam(TSCII) = +in(tam_TSCII):3
* tel(basic) = +in(tel):3
* yu(basic) = +srp(latin):3
* yu(unicode) = +srp(latinunicode):3
* yu(yz) = +srp(latinyz):3
* yu(unicodeyz) = +srp(latinunicodeyz):3
nokiarx51 cz(qwerty) = +nokia_vndr/rx-51(cz_qwerty):3
nokiarx51 * = +nokia_vndr/rx-51(%l[3]%_v[3]):3
$sun $sun_custom = +sun_vndr/%l[3]%(v[3]):3
@ -657,55 +651,55 @@
* yu = +srp%(v[4]):4
* fr-latin9 = +fr(latin9):4
* us_intl = +us(alt-intl):4
* ben(basic) = +in(ben):4
* ben(probhat) = +in(ben_probhat):4
* dev(basic) = +in(deva):4
* dvorak($dvoraklayouts) = +%v(dvorak):4
* dvorak(basic) = +us(dvorak):4
* dvorak(pl_basic) = +pl(dvorak):4
* dvorak(pl) = +pl(dvorak_quotes):4
* dvorak(pl_altquotes) = +pl(dvorak_altquotes):4
* dzdwi(basic) = +bt(basic):4
* fi(basic) = +fi(classic):4
* ge(azerty_tskapo) = +fr(geo):4
* guj(basic) = +in(guj):4
* gur(basic) = +in(guru):4
* ie(laptop) = +ie(basic):4
* ie(CloGaelachLaptop) = +ie(CloGaelach):4
* in(urd) = +in(urd-phonetic):4
* iu(basic) = +ca(ike):4
* lo(basic) = +la(basic):4
* kan(basic) = +in(kan):4
* mal(basic) = +in(mal):4
* mal(mlplusnum) = +in(mal):4
* ogham(basic) = +ie(ogam):4
* ogham(laptop) = +ie(ogam):4
* ogham(is434) = +ie(ogam_is434):4
* ogham(is434laptop) = +ie(ogam_is434):4
* ori(basic) = +in(ori):4
* ro(de) = +ro(winkeys):4
* ro(us) = +ro(std):4
* ro(academic) = +ro(std):4
* ro(std_comma) = +ro(std):4
* ro(comma) = +ro(basic):4
* ru(os) = +ru(os_legacy):4
* pk(urd) = +pk(urd-phonetic):4
* sapmi(basic) = +no(smi):4
* sapmi(nodeadkeys) = +no(smi_nodeadkeys):4
* sapmi(sefi) = +fi(smi):4
* sin(phonetic-static) = +in(sin_phonetic):4
* syr(basic) = +sy(syc):4
* syr(phonetic) = +sy(syc_phonetic):4
* tam(INSCRIPT) = +in(tam):4
* tam(UNI) = +in(tam_unicode):4
* tam(NUMERAL-KEYBOARD) = +in(tam_keyboard_with_numerals):4
* tam(TAB) = +in(tam_TAB):4
* tam(TSCII) = +in(tam_TSCII):4
* tel(basic) = +in(tel):4
* yu(basic) = +srp(latin):4
* yu(unicode) = +srp(latinunicode):4
* yu(yz) = +srp(latinyz):4
* yu(unicodeyz) = +srp(latinunicodeyz):4
* ben(basic) = +in(ben):4
* ben(probhat) = +in(ben_probhat):4
* dev(basic) = +in(deva):4
* dvorak($dvoraklayouts) = +%v(dvorak):4
* dvorak(basic) = +us(dvorak):4
* dvorak(pl_basic) = +pl(dvorak):4
* dvorak(pl) = +pl(dvorak_quotes):4
* dvorak(pl_altquotes) = +pl(dvorak_altquotes):4
* dzdwi(basic) = +bt(basic):4
* fi(basic) = +fi(classic):4
* ge(azerty_tskapo) = +fr(geo):4
* guj(basic) = +in(guj):4
* gur(basic) = +in(guru):4
* ie(laptop) = +ie(basic):4
* ie(CloGaelachLaptop) = +ie(CloGaelach):4
* in(urd) = +in(urd-phonetic):4
* iu(basic) = +ca(ike):4
* lo(basic) = +la(basic):4
* kan(basic) = +in(kan):4
* mal(basic) = +in(mal):4
* mal(mlplusnum) = +in(mal):4
* ogham(basic) = +ie(ogam):4
* ogham(laptop) = +ie(ogam):4
* ogham(is434) = +ie(ogam_is434):4
* ogham(is434laptop) = +ie(ogam_is434):4
* ori(basic) = +in(ori):4
* ro(de) = +ro(winkeys):4
* ro(us) = +ro(std):4
* ro(academic) = +ro(std):4
* ro(std_comma) = +ro(std):4
* ro(comma) = +ro(basic):4
* ru(os) = +ru(os_legacy):4
* pk(urd) = +pk(urd-phonetic):4
* sapmi(basic) = +no(smi):4
* sapmi(nodeadkeys) = +no(smi_nodeadkeys):4
* sapmi(sefi) = +fi(smi):4
* sin(phonetic-static) = +in(sin_phonetic):4
* syr(basic) = +sy(syc):4
* syr(phonetic) = +sy(syc_phonetic):4
* tam(INSCRIPT) = +in(tam):4
* tam(UNI) = +in(tam_unicode):4
* tam(NUMERAL-KEYBOARD) = +in(tam_keyboard_with_numerals):4
* tam(TAB) = +in(tam_TAB):4
* tam(TSCII) = +in(tam_TSCII):4
* tel(basic) = +in(tel):4
* yu(basic) = +srp(latin):4
* yu(unicode) = +srp(latinunicode):4
* yu(yz) = +srp(latinyz):4
* yu(unicodeyz) = +srp(latinunicodeyz):4
nokiarx51 cz(qwerty) = +nokia_vndr/rx-51(cz_qwerty):4
nokiarx51 * = +nokia_vndr/rx-51(%l[4]%_v[4]):4
$sun $sun_custom = +sun_vndr/%l[4]%(v[4]):4
@ -941,26 +935,32 @@
! layout option = symbols
$threelevellayouts grp:alts_toggle = +level3(ralt_switch_for_alts_toggle)
* misc:typo = +typo(base)
* misc:apl = +apl(level3)
! layout[1] option = symbols
$threelevellayouts grp:alts_toggle = +level3(ralt_switch_for_alts_toggle):1
* misc:typo = +typo(base):1
* misc:apl = +apl(level3):1
! layout[2] option = symbols
$threelevellayouts grp:alts_toggle = +level3(ralt_switch_for_alts_toggle):2
* misc:typo = +typo(base):2
* misc:apl = +apl(level3):2
! layout[3] option = symbols
$threelevellayouts grp:alts_toggle = +level3(ralt_switch_for_alts_toggle):3
* misc:typo = +typo(base):3
* misc:apl = +apl(level3):3
! layout[4] option = symbols
$threelevellayouts grp:alts_toggle = +level3(ralt_switch_for_alts_toggle):4
* misc:typo = +typo(base):4
* misc:apl = +apl(level3):4
! option = symbols
grp:shift_toggle = +group(shifts_toggle)
altwin:menu = +altwin(menu)
altwin:menu_win = +altwin(menu_win)
altwin:meta_alt = +altwin(meta_alt)
altwin:alt_win = +altwin(alt_win)
altwin:ctrl_win = +altwin(ctrl_win)
@ -1027,11 +1027,14 @@
lv3:lwin_switch = +level3(lwin_switch)
lv3:rwin_switch = +level3(rwin_switch)
lv3:enter_switch = +level3(enter_switch)
lv3:4_switch_isolated = +level3(4_switch_isolated)
lv3:9_switch_isolated = +level3(9_switch_isolated)
caps:capslock = +capslock(capslock)
caps:numlock = +capslock(numlock)
caps:shiftlock = +capslock(shiftlock)
caps:swapescape = +capslock(swapescape)
caps:escape = +capslock(escape)
caps:escape_shifted_capslock = +capslock(escape_shifted_capslock)
caps:backspace = +capslock(backspace)
caps:super = +capslock(super)
caps:hyper = +capslock(hyper)
@ -1041,6 +1044,8 @@
ctrl:nocaps = +ctrl(nocaps)
ctrl:lctrl_meta = +ctrl(lctrl_meta)
ctrl:swapcaps = +ctrl(swapcaps)
ctrl:swapcaps_hyper = +ctrl(swapcaps_hyper)
ctrl:swapcaps_and_switch_layout = +ctrl(swapcaps_and_switch_layout)
ctrl:ac_ctrl = +ctrl(ac_ctrl)
ctrl:aa_ctrl = +ctrl(aa_ctrl)
ctrl:rctrl_ralt = +ctrl(rctrl_ralt)
@ -1090,10 +1095,20 @@
nbsp:level4 = +nbsp(level4)
nbsp:level4n = +nbsp(level4n)
nbsp:level4nl = +nbsp(level4nl)
nbsp:zwnj2 = +nbsp(zwnj2)
nbsp:zwnj2zwj3 = +nbsp(zwnj2zwj3)
nbsp:zwnj2zwj3nb4 = +nbsp(zwnj2zwj3nb4)
nbsp:zwnj2nb3 = +nbsp(zwnj2nb3)
nbsp:zwnj2nb3s = +nbsp(zwnj2nb3s)
nbsp:zwnj2nb3zwj4 = +nbsp(zwnj2nb3zwj4)
nbsp:zwnj2nb3nnb4 = +nbsp(zwnj2nb3nnb4)
nbsp:zwnj3zwj4 = +nbsp(zwnj3zwj4)
japan:nicola_f_bs = +jp(nicola_f_bs)
japan:hztg_escape = +jp(hztg_escape)
korean:ralt_rctrl = +kr(ralt_hangul)+kr(rctrl_hanja)
korean:rctrl_ralt = +kr(rctrl_hangul)+kr(ralt_hanja)
korean:ralt_hangul = +kr(ralt_hangul)
korean:rctrl_hangul = +kr(rctrl_hangul)
korean:ralt_hanja = +kr(ralt_hanja)
korean:rctrl_hanja = +kr(rctrl_hanja)
kpdl:dot = +kpdl(dot)
kpdl:comma = +kpdl(comma)
kpdl:dotoss = +kpdl(dotoss)
@ -1125,6 +1140,8 @@
lv3:caps_switch_latch = +level3(caps_switch_latch)
lv3:bksl_switch_latch = +level3(bksl_switch_latch)
lv3:lsgt_switch_latch = +level3(lsgt_switch_latch)
lv5:lsgt_switch = +level5(lsgt_switch)
lv5:ralt_switch = +level5(ralt_switch)
lv5:lsgt_switch_lock = +level5(lsgt_switch_lock)
lv5:ralt_switch_lock = +level5(ralt_switch_lock)
lv5:lwin_switch_lock = +level5(lwin_switch_lock)
@ -1140,6 +1157,7 @@
grp_led:num = +lednum(group_lock)
grp_led:caps = +ledcaps(group_lock)
grp_led:scroll = +ledscroll(group_lock)
mod_led:compose = +ledcompose(compose)
japan:kana_lock = +japan(kana_lock)
caps:shiftlock = +ledcaps(shift_lock)
grab:break_actions = +xfree86(grab_break)

View File

@ -74,6 +74,12 @@ xkb_symbols "menu" {
key <MENU> { [ Menu ] };
};
// Menu is mapped to the right Win key.
partial modifier_keys
xkb_symbols "menu_win" {
key <MENU> { [ Super_R ] };
};
// Layout for Tux key caps with additional right Alt key
partial modifier_keys
xkb_symbols "alt_super_win" {

View File

@ -1,4 +1,4 @@
default partial
default partial
xkb_symbols "fr" {
name[Group1] = "French (Canada)";
@ -170,7 +170,7 @@ xkb_symbols "multi" {
include "ca(fr)"
name[Group1] = "Canadian Multilingual (1st part)";
name[Group1] = "Canadian (intl., 1st part)";
key <TLDE> { [ slash, backslash, bar ] };
key <AE01> { [ 1, exclam ] };
@ -206,7 +206,7 @@ xkb_symbols "multi" {
partial
xkb_symbols "multi-2gr" {
name[Group1] = "Canadian Multilingual (2nd part)";
name[Group1] = "Canadian (intl., 2nd part)";
key <TLDE> { [ NoSymbol, hyphen ] };
key <AE01> { [ onesuperior, exclamdown ] };
@ -327,7 +327,7 @@ xkb_symbols "ike" {
partial
xkb_symbols "multix" {
name[Group1] = "Canadian Multilingual";
name[Group1] = "Canadian (intl.)";
key.type[group1]="EIGHT_LEVEL_SEMIALPHABETIC";
key <TLDE> { [ slash, backslash, bar, NoSymbol,

View File

@ -34,6 +34,15 @@ xkb_symbols "escape" {
key <CAPS> { [ Escape ] };
};
hidden partial modifier_keys
xkb_symbols "escape_shifted_capslock" {
key <CAPS> {
type[Group1] = "TWO_LEVEL",
symbols[Group1] = [ Escape, Caps_Lock ],
actions[Group1] = [ NoAction(), LockMods(modifiers = Lock) ]
};
};
hidden partial modifier_keys
xkb_symbols "backspace" {
key <CAPS> { [ BackSpace ] };

View File

@ -1,4 +1,4 @@
default partial alphanumeric_keys
default partial alphanumeric_keys
xkb_symbols "basic" {
include "latin"
@ -62,7 +62,7 @@ xkb_symbols "de_Sundeadkeys" {
partial alphanumeric_keys
xkb_symbols "de_sundeadkeys" {
include "ch(de_Sundeadkeys)"
name[Group1]= "German (Switzerland, with Sun dead keys)";
name[Group1]= "German (Switzerland, Sun dead keys)";
};
partial alphanumeric_keys
@ -104,7 +104,7 @@ xkb_symbols "fr_Sundeadkeys" {
partial alphanumeric_keys
xkb_symbols "fr_sundeadkeys" {
include "ch(fr_Sundeadkeys)"
name[Group1]= "French (Switzerland, with Sun dead keys)";
name[Group1]= "French (Switzerland, Sun dead keys)";
};
partial alphanumeric_keys
@ -153,7 +153,7 @@ xkb_symbols "de_mac" {
key <AD11> { [ udiaeresis, egrave, section, ydiaeresis ] };
key <AD12> { [ dead_diaeresis, exclam, grave, apostrophe ] };
key <AC01> { [ a, A, aring, Aring ] };
key <AC02> { [ s, S, ssharp, NoSymbol ] };
key <AC02> { [ s, S, ssharp, U1E9E ] };
// ligature fl
key <AC03> { [ d, D, Greek_sigma, NoSymbol ] };
// partialderivative is not available here att

View File

@ -20,6 +20,25 @@ xkb_symbols "swapcaps" {
modifier_map Lock { <LCTL> };
};
// Swap the functions of the CapsLock key and the left Ctrl key,
// but make the Ctrl key a 'Hyper' modifier
partial modifier_keys
xkb_symbols "swapcaps_hyper" {
replace key <CAPS> { [ Control_L ] };
replace key <LCTL> { [ Hyper_L ] };
modifier_map Control { <CAPS> };
modifier_map Mod3 { <LCTL> };
};
// Set CapsLock to left Ctrl and left Ctrl to switch layout.
partial modifier_keys
xkb_symbols "swapcaps_and_switch_layout" {
replace key <CAPS> { [ Control_L ] };
replace key <LCTL> { [ ISO_Next_Group ] };
modifier_map Control { <CAPS> };
modifier_map Lock { <LCTL> };
};
// Move Ctrl to the leftmost key on the middle row and CapsLock to the
// leftmost key on the bottom row. Only works if the geometry or keycodes
// file has defined appropriate aliases for the keys in question.

View File

@ -1,4 +1,4 @@
default partial alphanumeric_keys
default partial alphanumeric_keys
xkb_symbols "basic" {
// This layout conforms to a new Czech compromise standard
@ -108,6 +108,74 @@ xkb_symbols "qwerty_bksl" {
key <BKSL> { [ backslash, bar, slash, NoSymbol ] };
};
partial alphanumeric_keys
xkb_symbols "qwerty-mac" {
// This layout corresponds to the Apple's Czech - QWERTY.
// 2018 by Jakub Jirutka <jakub@jirutka.cz>
include "latin"
name[Group1]= "Czech (QWERTY, Macintosh)";
key <TLDE> { [ less, greater, lessthanequal, greaterthanequal]};
key <AE01> { [ plus, 1, grave, notsign ] };
key <AE02> { [ ecaron, 2, at, enfilledcircbullet]};
key <AE03> { [ scaron, 3, numbersign, notequal ] };
key <AE04> { [ ccaron, 4, dollar, sterling ] };
key <AE05> { [ rcaron, 5, asciitilde, U25CA ] };
key <AE06> { [ zcaron, 6, asciicircum, dagger ] };
key <AE07> { [ yacute, 7, ampersand, paragraph ] };
key <AE08> { [ aacute, 8, asterisk, division ] };
key <AE09> { [ iacute, 9, braceleft, guillemotleft] };
key <AE10> { [ eacute, 0, braceright, guillemotright]};
key <AE11> { [ equal, percent, dead_abovering, dead_cedilla]};
key <AE12> { [dead_acute, dead_caron, dead_circumflex, dead_macron]};
key <AD01> { [ q, Q, NoSymbol, NoSymbol ] };
key <AD02> { [ w, W, eabovedot, Eabovedot ] };
key <AD03> { [ e, E, eogonek, Eogonek ] };
key <AD04> { [ r, R, EuroSign, registered ] };
key <AD05> { [ t, T, NoSymbol, trademark ] };
key <AD06> { [ y, Y, NoSymbol, NoSymbol ] };
key <AD07> { [ u, U, NoSymbol, NoSymbol ] };
key <AD08> { [ i, I, NoSymbol, NoSymbol ] };
key <AD09> { [ o, O, NoSymbol, NoSymbol ] };
key <AD10> { [ p, P, NoSymbol, NoSymbol ] };
key <AD11> { [ uacute, slash, bracketleft, less ] };
key <AD12> { [parenright, parenleft, bracketright, greater ] };
key <AC01> { [ a, A, aogonek, Aogonekl ] };
key <AC02> { [ s, S, ssharp, U2211 ] };
key <AC03> { [ d, D, partialderivate, U2206 ] };
key <AC04> { [ f, F, NoSymbol, NoSymbol ] };
key <AC05> { [ g, G, NoSymbol, NoSymbol ] };
key <AC06> { [ h, H, leftsinglequotemark, leftdoublequotemark]};
key <AC07> { [ j, J, rightsinglequotemark, rightdoublequotemark]};
key <AC08> { [ k, K, NoSymbol, NoSymbol ] };
key <AC09> { [ l, L, lstroke, Lstroke ] };
key <AC10> { [ uring, quotedbl, semicolon, ellipsis ] };
key <AC11> { [ section, exclam, apostrophe, dead_tilde ] };
key <BKSL> { [dead_diaeresis, grave, dead_diaeresis, dead_doubleacute]};
key <LSGT> { [ backslash, bar, NoSymbol, NoSymbol ] };
key <AB01> { [ z, Z, zabovedot, Zabovedot ] };
key <AB02> { [ x, X, NoSymbol, NoSymbol ] };
key <AB03> { [ c, C, NoSymbol, copyright ] };
key <AB04> { [ v, V, NoSymbol, squareroot ] };
key <AB05> { [ b, B, NoSymbol, NoSymbol ] };
key <AB06> { [ n, N, singlelowquotemark, doublelowquotemark]};
key <AB07> { [ m, M, NoSymbol, NoSymbol ] };
key <AB08> { [ comma, question, less, lessthanequal] };
key <AB09> { [ period, colon, greater, greaterthanequal]};
key <AB10> { [ minus, underscore, endash, emdash ] };
key <SPCE> { [ space, space, nobreakspace, nobreakspace ] };
include "level3(ralt_switch)"
};
partial alphanumeric_keys alternate_group
xkb_symbols "ucw" {
@ -118,7 +186,7 @@ xkb_symbols "ucw" {
name[Group1]= "Czech (UCW, only accented letters)";
key <AB01> { [zcaron, Zcaron ] };
key <AB02> { [ssharp ] };
key <AB02> { [ssharp, U1E9E ] };
key <AB03> { [ccaron, Ccaron ] };
key <AB04> { [ccedilla, Ccedilla ] };
key <AB05> { [ntilde, Ntilde ] };
@ -253,3 +321,163 @@ partial alphanumeric_keys
xkb_symbols "sun_type6" {
include "sun_vndr/cz(sun_type6)"
};
xkb_symbols "prog" {
// cz-prog 1.0 2019-05-15 by Viktor Grešák <vgresak@gmail.com> and Tomáš Hudec <Tommy.Hudec@gmail.com>
//
// Programmer keyboard. Based on the US layout with accented Czech letters and dead keys.
// Using AltGr and a key from the 1st row generates original level 2 US key as level 3 except TLDE and AE12.
// Using AltGr+Shift on accented letters generates its uppercase variant.
// Using AltGr or AltGr+Shift on letters which have accent in Czech but are not on the 1st row directly accessible generate accented letters,
// i.e. [d, D], [t, T], [n, N], [o, O] generate with AltGr and AltGr+Shift: [dcaron, Dcaron], [tcaron, Tcaron], [ncaron, Ncaron], [oacute, Oacute].
// Other Czech letters besides alphanumeric keys (like uacute, uring) are generated using AltGr.
name[Group1]="Czech (programming)";
key <AB01> { [ z, Z ] };
key <AB02> { [ x, X ] };
key <AB03> { [ c, C ] };
key <AB04> { [ v, V ] };
key <AB05> { [ b, B ] };
key <AB06> { [ n, N, ncaron, Ncaron ] };
key <AB07> { [ m, M ] };
key <AB08> { [ comma, less, multiply ] };
key <AB09> { [ period, greater, division ] };
key <AB10> { [ slash, question, dead_abovedot ] };
key <AC01> { [ a, A ] };
key <AC02> { [ s, S ] };
key <AC03> { [ d, D, dcaron, Dcaron ] };
key <AC04> { [ f, F ] };
key <AC05> { [ g, G ] };
key <AC06> { [ h, H ] };
key <AC07> { [ j, J ] };
key <AC08> { [ k, K ] };
key <AC09> { [ l, L ] };
key <AC10> { [ semicolon, colon, uring, Uring ] };
key <AC11> { [ apostrophe, quotedbl, section ] };
key <AD01> { [ q, Q ] };
key <AD02> { [ w, W ] };
key <AD03> { [ e, E ] };
key <AD04> { [ r, R ] };
key <AD05> { [ t, T, tcaron, Tcaron ] };
key <AD06> { [ y, Y ] };
key <AD07> { [ u, U ] };
key <AD08> { [ i, I ] };
key <AD09> { [ o, O, oacute, Oacute ] };
key <AD10> { [ p, P ] };
key <AD11> { [ bracketleft, braceleft, uacute, Uacute ] };
key <AD12> { [ bracketright, braceright ] };
key <AE01> { [ plus, 1, exclam, NoSymbol ] };
key <AE02> { [ ecaron, 2, at, Ecaron ] };
key <AE03> { [ scaron, 3, numbersign, Scaron ] };
key <AE04> { [ ccaron, 4, dollar, Ccaron ] };
key <AE05> { [ rcaron, 5, percent, Rcaron ] };
key <AE06> { [ zcaron, 6, asciicircum, Zcaron ] };
key <AE07> { [ yacute, 7, ampersand, Yacute ] };
key <AE08> { [ aacute, 8, asterisk, Aacute ] };
key <AE09> { [ iacute, 9, parenleft, Iacute ] };
key <AE10> { [ eacute, 0, parenright, Eacute ] };
key <AE11> { [ equal, minus, underscore, U2212 ] };
key <AE12> { [ dead_acute, dead_caron, plusminus, notequal ] };
key <BKSL> { [ backslash, bar, dead_diaeresis ] };
key <BKSP> { [ BackSpace, BackSpace ] };
key <CAPS> { [ Caps_Lock ] };
key <COMP> { [ Menu, Multi_key ] };
key <LALT> { [ Alt_L, Meta_L ] };
key <LCTL> { [ Control_L ] };
key <LFSH> { [ Shift_L ] };
key <LWIN> { [ Super_L ] };
key <RALT> { [ ISO_Level3_Shift ] };
key <RCTL> { [ Control_R ] };
key <RTRN> { [ Return ] };
key <RTSH> { [ Shift_R ] };
key <RWIN> { [ Super_R ] };
key <SPCE> { [ space ] };
key <TAB> { [ Tab, ISO_Left_Tab ] };
key <TLDE> { [ grave, asciitilde ] };
include "level3(ralt_switch)"
};
xkb_symbols "typo" {
// cz-typo 1.0 2019-05-15 by Viktor Grešák <vgresak@gmail.com> and Tomáš Hudec <Tommy.Hudec@gmail.com>
//
// Contains typographic symbols in third and fourth level.
// It is intended to be used in conjuction with other existing layout, e.g. setxkbmap -symbols "pc+cz(basic)+cz(typo)+inet(evdev)"
name[Group1]="Czech (typographic)";
key <AB01> { [ NoSymbol, NoSymbol, degree, U2300 ] };
key <AB02> { [ NoSymbol, NoSymbol, multiply, U22C5 ] };
key <AB03> { [ NoSymbol, NoSymbol, ampersand, copyright ] };
key <AB04> { [ NoSymbol, NoSymbol, at, ordfeminine ] };
key <AB05> { [ NoSymbol, NoSymbol, enfilledcircbullet, enopencircbullet ] };
key <AB07> { [ NoSymbol, NoSymbol, U203A, U2039 ] };
key <AB08> { [ NoSymbol, NoSymbol, doublelowquotemark, leftdoublequotemark ] };
key <AB09> { [ NoSymbol, NoSymbol, ellipsis, rightdoublequotemark ] };
key <AB10> { [ NoSymbol, NoSymbol, endash, emdash ] };
key <AC04> { [ NoSymbol, NoSymbol, UFB00, UFB05 ] };
key <AC06> { [ NoSymbol, NoSymbol, U2010, U2011 ] };
key <AC07> { [ NoSymbol, NoSymbol, guillemotright, guillemotleft ] };
key <AC08> { [ NoSymbol, NoSymbol, dagger, doubledagger ] };
key <AC09> { [ NoSymbol, NoSymbol, UFB02, UFB04 ] };
key <AC11> { [ NoSymbol, NoSymbol, NoSymbol, UFB03 ] };
key <AD04> { [ NoSymbol, NoSymbol, U2030, registered ] };
key <AD06> { [ NoSymbol, NoSymbol, leftarrow ] };
key <AD07> { [ NoSymbol, NoSymbol, downarrow, uparrow ] };
key <AD08> { [ NoSymbol, NoSymbol, rightarrow, UFB01 ] };
key <AD10> { [ NoSymbol, NoSymbol, minutes, seconds ] };
key <AE01> { [ NoSymbol, NoSymbol, NoSymbol, rightsinglequotemark ] };
key <AE11> { [ NoSymbol, NoSymbol, underscore, U2212 ] };
key <SPCE> { [ space, space, space, nobreakspace ] };
key <TLDE> { [ NoSymbol, NoSymbol, singlelowquotemark, leftsinglequotemark ] };
};
xkb_symbols "coder" {
// US layout with Czech chars under AltGr
// for touch-typing programmers who need to write Czech occasionally
// https://github.com/michalkahle/czech-coder-xkb
include "us"
name[Group1]= "Czech (coder)";
key <TLDE>{[ grave, asciitilde, semicolon, dead_abovering ]};
key <AE02>{[ 2, at, ecaron, Ecaron ]};
key <AE03>{[ 3, numbersign, scaron, Scaron ]};
key <AE04>{[ 4, dollar, ccaron, Ccaron ]};
key <AE05>{[ 5, percent, rcaron, Rcaron ]};
key <AE06>{[ 6, asciicircum, zcaron, Zcaron ]};
key <AE07>{[ 7, ampersand, yacute, Yacute ]};
key <AE08>{[ 8, asterisk, aacute, Aacute ]};
key <AE09>{[ 9, parenleft, iacute, Iacute ]};
key <AE10>{[ 0, parenright, eacute, Eacute ]};
key <AE12>{[ equal, plus, dead_acute, dead_caron ]};
key <AD03>{[ e, E, e, EuroSign ]};
key <AD11>{[ bracketleft, braceleft, uacute, Uacute ]};
key <AC10>{[ semicolon, colon, uring, Uring ]};
key <AC11>{[ apostrophe, quotedbl, section, quotedbl ]};
key <BKSL>{[ backslash, bar, dead_diaeresis, apostrophe ]};
include "level3(ralt_switch)"
};
xkb_symbols "prog_typo" {
// cz-prog-typo 1.0 2019-06-17 by Viktor Grešák <vgresak@gmail.com> and Tomáš Hudec <Tommy.Hudec@gmail.com>
//
// Programmer + Typographic keyboard. Based on the US layout with accented Czech letters and dead keys.
// Using AltGr and a key from the 1st row generates original level 2 US key as level 3 except TLDE and AE12.
// Using AltGr+Shift on accented letters generates its uppercase variant.
// Using AltGr or AltGr+Shift on letters which have accent in Czech but are not on the 1st row directly accessible generate accented letters,
// i.e. [d, D], [t, T], [n, N], [o, O] generate with AltGr and AltGr+Shift: [dcaron, Dcaron], [tcaron, Tcaron], [ncaron, Ncaron], [oacute, Oacute].
// Other Czech letters besides alphanumeric keys (like uacute, uring) are generated using AltGr.
//
// Contains typographic symbols in third and fourth level.
name[Group1]="Czech (programming, typographic)";
include "cz(prog)"
include "cz(typo)"
};

View File

@ -131,7 +131,7 @@ xkb_symbols "T3" {
key <AD11> { [ udiaeresis, Udiaeresis, dead_horn, NoSymbol, U017F, dead_abovering, dead_grave, NoSymbol ] };
key.type[Group1] = "EIGHT_LEVEL";
key <AD12> { [ plus, asterisk, asciitilde, NoSymbol, dead_tilde, dead_macron, at, NoSymbol ] };
key.type[Group1] = "ONE_LEVEL";
key <CAPS> { [ Caps_Lock ] };
key.type[Group1] = "EIGHT_LEVEL_ALPHABETIC";
@ -157,7 +157,7 @@ xkb_symbols "T3" {
key <AB04> { [ v, V, guillemotleft, NoSymbol, leftdoublequotemark, leftsinglequotemark, U2039, NoSymbol ] };
key <AB05> { [ b, B, U2039, NoSymbol, rightdoublequotemark, rightsinglequotemark, U203A, NoSymbol ] };
key <AB06> { [ n, N, endash, NoSymbol, U019E, U0220, endash, NoSymbol ] };
key <AB07> { [ m, M, Greek_mu, NoSymbol, mu, masculine, emdash, NoSymbol ] };
key <AB07> { [ m, M, mu, NoSymbol, mu, masculine, emdash, NoSymbol ] };
key.type[Group1] = "EIGHT_LEVEL";
key <AB08> { [ comma, semicolon, U02BB, NoSymbol, ellipsis, multiply, dollar, NoSymbol ] };
key <AB09> { [ period, colon, U200C, NoSymbol, periodcentered, division, numbersign, NoSymbol ] };
@ -284,7 +284,7 @@ xkb_symbols "sundeadkeys" {
include "de(Sundeadkeys)"
name[Group1]="German (with Sun dead keys)";
name[Group1]="German (Sun dead keys)";
};
@ -763,51 +763,6 @@ xkb_symbols "pl" {
include "level3(ralt_switch)"
};
partial alphanumeric_keys
xkb_symbols "htcdream" {
include "inet(htcdream)"
name[Group1]= "German";
//second row
key <AD01> { [ q, Q, Tab, Tab ] };
key <AD02> { [ w, W, grave, grave ] };
key <AD03> { [ e, E, EuroSign, EuroSign ] };
key <AD04> { [ r, R, underscore, underscore ] };
key <AD05> { [ t, T, sterling, sterling] };
key <AD06> { [ z, Z, division, division ] };
key <AD07> { [ u, U, udiaeresis, udiaeresis ] };
key <AD08> { [ i, I, minus, minus ] };
key <AD09> { [ o, O, odiaeresis, odiaeresis ] };
key <AD10> { [ p, P, equal, equal ] };
//third row
key <AC01> { [ a, A, adiaeresis, adiaeresis ] };
key <AC02> { [ s, S, ssharp, ssharp] };
key <AC03> { [ d ,D, backslash, backslash ] };
key <AC04> { [ f, F, braceleft, braceleft ] };
key <AC05> { [ g, G, braceright, braceright ] };
key <AC06> { [ h, H, multiply, multiply ] };
key <AC07> { [ j, J, colon, colon ] };
key <AC08> { [ k, K, plus, plus ] };
key <AC09> { [ l, L, apostrophe, apostrophe ] };
//forth row
key <AB01> { [ y, Y, bar, bar ] };
key <AB02> { [ x, X, bracketleft, bracketleft ] };
key <AB03> { [ c, C, bracketright, bracketright ] };
key <AB04> { [ v, V, less, less ] };
key <AB05> { [ b, B, greater, greater ] };
key <AB06> { [ n, N, semicolon, semicolon ] };
key <AB07> { [ m, M, quotedbl, quotedbl ] };
key <AB08> { [ comma, comma, question, question ] };
//fifth row
key <FK15> { [ at, at, asciitilde, asciitilde ] };
include "level3(alt_switch)"
};
partial alphanumeric_keys
xkb_symbols "tr" {
@ -832,10 +787,10 @@ partial alphanumeric_keys
xkb_symbols "us" {
include "us"
name[Group1]="German (US, with German letters)";
name[Group1]="German (US)";
key <AC01> { [ a, A, adiaeresis, Adiaeresis ] };
key <AC02> { [ s, S, ssharp, ssharp ] };
key <AC02> { [ s, S, ssharp, U1E9E ] };
key <AC10> { [ semicolon, colon, odiaeresis, Odiaeresis ] };
key <AC11> { [ apostrophe, quotedbl, adiaeresis, Adiaeresis ] };
key <AD03> { [ e, E, EuroSign, EuroSign ] };
@ -854,7 +809,7 @@ xkb_symbols "hu" {
// modify the basic German layout to not have any dead keys and add Hungarian letters
include "de(basic)"
name[Group1]="German (with Hungarian letters and no dead keys)";
name[Group1]="German (with Hungarian letters, no dead keys)";
key <AB01> { [ y, Y, guillemotleft, less ] };
key <AC10> { [odiaeresis, Odiaeresis, eacute, Eacute ] };
@ -1055,7 +1010,7 @@ xkb_symbols "bone_eszett_home" {
include "de(bone_eszett_home_base)"
name[Group1]= "German (Bone, eszett home row)";
name[Group1]= "German (Bone, eszett in the home row)";
include "shift(both_capslock)"
include "level3(caps_switch)"
@ -1111,7 +1066,7 @@ xkb_symbols "neo_qwertz" {
include "de(neo_qwertz_base)"
name[Group1]= "German (Neo qwertz)";
name[Group1]= "German (Neo, QWERTZ)";
include "shift(both_capslock)"
include "level3(caps_switch)"
@ -1134,7 +1089,7 @@ xkb_symbols "neo_qwerty" {
include "de(neo_qwerty_base)"
name[Group1]= "German (Neo qwerty)";
name[Group1]= "German (Neo, QWERTY)";
include "shift(both_capslock)"
include "level3(caps_switch)"
@ -1146,7 +1101,7 @@ xkb_symbols "neo_qwerty" {
partial alphanumeric_keys
xkb_symbols "lld" {
include "de(basic)"
name[Group1] = "German Ladin";
name[Group1] = "German (Ladin)";
key <AD10> { [ p, P, ediaeresis, Ediaeresis ] };

View File

@ -1,4 +1,4 @@
default partial alphanumeric_keys modifier_keys
default partial alphanumeric_keys modifier_keys
xkb_symbols "basic" {
name[Group1]= "Empty";
};

View File

@ -7,7 +7,7 @@
// This implementation extends the standard with Yiddish digraphs
// (a common extension) and Nun Hafukha (a fun character).
default partial alphanumeric_keys
default partial alphanumeric_keys
xkb_symbols "basic" {
// uses the kbd layout in use in Israel.

View File

@ -1,5 +1,7 @@
// This layout includes all Indian layouts, including:
// - Devanagari (Hindi, Marathi, Sanskrit)
// - Hindi
// - Marathi
// - Sanskrit
// - Bangla
// - Gujarati
// - Kannada
@ -28,7 +30,7 @@
// based on a keyboard map from an 'xkb/symbols/dev' file
// Devangari is the default. Kill me if I am wrong:)
default partial alphanumeric_keys
default partial alphanumeric_keys
xkb_symbols "deva" {
// March 2004 -- David Holl <smyrph+dev_xkb@ece.wpi.edu>
name[Group1]="Indian";
@ -248,20 +250,22 @@ xkb_symbols "ben" {
xkb_symbols "ben_probhat" {
name[Group1]= "Bangla (India, Probhat)";
key.type="FOUR_LEVEL";
key <ESC> { [ Escape ] };
// numbers
key <TLDE> { [ U200D, asciitilde ] };
key <AE01> { [ U09E7, exclam ] };
key <AE02> { [ U09E8, at ] };
key <AE03> { [ U09E9, numbersign ] };
key <AE04> { [ U09EA, U09F3 ] };
key <AE01> { [ U09E7, exclam, U09F4 ] };
key <AE02> { [ U09E8, at, U09F5 ] };
key <AE03> { [ U09E9, numbersign, U09F6 ] };
key <AE04> { [ U09EA, U09F3, U09F7, U09F2 ] };
key <AE05> { [ U09EB, percent ] };
key <AE06> { [ U09EC, asciicircum ] };
key <AE07> { [ U09ED, U099E ] };
key <AE07> { [ U09ED, U099E, U09FA ] };
key <AE08> { [ U09EE, U09CE ] };
key <AE09> { [ U09EF, parenleft ] };
key <AE10> { [ U09E6, parenright ] };
key <AE10> { [ U09E6, parenright, U09F8, U09F9 ] };
key <AE11> { [ minus, underscore ] };
key <AE12> { [ equal, plus ] };
key <BKSP> { [ BackSpace ] };
@ -279,17 +283,17 @@ xkb_symbols "ben_probhat" {
key <AD09> { [ U0993, U0994 ] };
key <AD10> { [ U09AA, U09AB ] };
key <AD11> { [ U09C7, U09C8 ] };
key <AD12> { [ U09CB, U09CC ] };
key <AD12> { [ U09CB, U09CC, U09D7 ] };
key <RTRN> { [ Return ] };
// caps, a to '
// key <CAPS> { [ Caps_Lock ] };
key <AC01> { [ U09BE, U0985 ] };
key <AC02> { [ U09B8, U09B7 ] };
key <AC03> { [ U09A1, U09A2 ] };
key <AC01> { [ U09BE, U0985, U098C, U09E0 ] };
key <AC02> { [ U09B8, U09B7, U09E1, U09E3 ] };
key <AC03> { [ U09A1, U09A2, U09C4, U09E2 ] };
key <AC04> { [ U09A4, U09A5 ] };
key <AC05> { [ U0997, U0998 ] };
key <AC06> { [ U09B9, U0983 ] };
key <AC06> { [ U09B9, U0983, U09BD ] };
key <AC07> { [ U099C, U099D ] };
key <AC08> { [ U0995, U0996 ] };
key <AC09> { [ U09B2, U0982 ] };
@ -306,7 +310,7 @@ xkb_symbols "ben_probhat" {
key <AB06> { [ U09A8, U09A3 ] };
key <AB07> { [ U09AE, U0999 ] };
key <AB08> { [ comma, U09C3 ] };
key <AB09> { [ U0964, U0981 ] };
key <AB09> { [ U0964, U0981, U09BC ] };
key <AB10> { [ U09CD, question ] };
key <BKSL> { [ U200C, U0965 ] };
@ -465,7 +469,7 @@ xkb_symbols "ben_inscript" {
};
xkb_symbols "ben_gitanjali" {
name[Group1]= "Bangla (India, Uni Gitanjali)";
name[Group1]= "Bangla (India, Gitanjali)";
key <ESC> { [ Escape ] };
// numbers
@ -1053,7 +1057,7 @@ xkb_symbols "ori" {
// INSCRIPT
partial alphanumeric_keys
xkb_symbols "tam" {
name[Group1]= "Tamil";
name[Group1]= "Tamil (Inscript)";
key <TLDE> { [ U0BCA, U0B92 ] };
@ -1118,7 +1122,7 @@ xkb_symbols "tam" {
};
partial alphanumeric_keys
xkb_symbols "tam_unicode" {
xkb_symbols "tam_tamilnet" {
// Description: A keymap based on the TamilNet'99 typewriter keyboard
// Encoding: Unicode (http://www.unicode.org)
@ -1128,7 +1132,7 @@ xkb_symbols "tam_unicode" {
// Date : Fri Sep 4 11:32:00 CST 2009
// Mapping:
name[Group1]= "Tamil (Unicode)";
name[Group1]= "Tamil (TamilNet '99)";
// granthas
key <TLDE> { [ apostrophe, asciitilde ] };
@ -1184,7 +1188,7 @@ xkb_symbols "tam_unicode" {
};
partial alphanumeric_keys
xkb_symbols "tam_keyboard_with_numerals" {
xkb_symbols "tam_tamilnet_with_tam_nums" {
// Description: A keymap based on the TamilNet'99 typewriter keyboard
// Encoding: Unicode (http://www.unicode.org)
@ -1193,7 +1197,7 @@ xkb_symbols "tam_keyboard_with_numerals" {
// Date : Fri Sep 4 11:33:00 CST 2009
// Mapping:
name[Group1]= "Tamil (keyboard with numerals)";
name[Group1]= "Tamil (TamilNet '99 with Tamil numerals)";
// Mainly numbers.
key <TLDE> { [ apostrophe, asciitilde ] };
@ -1249,7 +1253,7 @@ xkb_symbols "tam_keyboard_with_numerals" {
};
partial alphanumeric_keys
xkb_symbols "tam_TSCII" {
xkb_symbols "tam_tamilnet_TSCII" {
// Description : A Tamil typewrite-style keymap
// loosely based on TamilNet'99 reommendations
@ -1257,7 +1261,7 @@ xkb_symbols "tam_TSCII" {
// Author : Thuraiappah Vaseeharan <vasee@ieee.org>
// Last Modified: Sat Jan 5 17:11:26 CST 2002
name[Group1]= "Tamil (TSCII typewriter)";
name[Group1]= "Tamil (TamilNet '99, TSCII encoding)";
key <AE01> { [ 0x10000b7, 0x10000a4 ] }; // aytham
key <AE02> { [ 0x1000082, 0x10000a5 ] }; // shri
@ -1305,14 +1309,14 @@ xkb_symbols "tam_TSCII" {
};
partial alphanumeric_keys
xkb_symbols "tam_TAB" {
xkb_symbols "tam_tamilnet_TAB" {
// Description: A keymap based on the TamilNet'99 typewriter keyboard
// Encoding: TAB (http://www.tamilnet99.org)
// Author: Thuraiappah Vaseeharan <t_vasee@yahoo.com>
// Date : Sun Aug 12 02:23:00 CDT 2001
name[Group1]= "Tamil (TAB typewriter)";
name[Group1]= "Tamil (TamilNet '99, TAB encoding)";
// numeral row
key <AE01> { [ 0x10000e7, 0x10000a7 ] } ;
@ -1517,7 +1521,7 @@ xkb_symbols "urd-phonetic3" {
partial alphanumeric_keys
xkb_symbols "urd-winkeys" {
include "pk(urd-nla)"
name[Group1]= "Urdu (Win keys)";
name[Group1]= "Urdu (Windows)";
};
// based on a keyboard map from an 'xkb/symbols/gur' file
@ -1910,7 +1914,7 @@ xkb_symbols "mal_enhanced" {
//
partial alphanumeric_keys
xkb_symbols "hin-kagapa" {
name[Group1] = "Hindi (KaGaPa phonetic)";
name[Group1] = "Hindi (KaGaPa, phonetic)";
key.type="FOUR_LEVEL";
// Roman digits
@ -1976,14 +1980,14 @@ xkb_symbols "hin-kagapa" {
partial alphanumeric_keys
xkb_symbols "san-kagapa" {
include "in(hin-kagapa)"
name[Group1] = "Sanskrit (KaGaPa phonetic)";
name[Group1] = "Sanskrit (KaGaPa, phonetic)";
};
// Marathi uses Devanagari layout of Hindi
partial alphanumeric_keys
xkb_symbols "mar-kagapa" {
include "in(hin-kagapa)"
name[Group1] = "Marathi (KaGaPa phonetic)";
name[Group1] = "Marathi (KaGaPa, phonetic)";
};
@ -2001,7 +2005,7 @@ xkb_symbols "mar-kagapa" {
//
partial alphanumeric_keys
xkb_symbols "kan-kagapa" {
name[Group1] = "Kannada (KaGaPa phonetic)";
name[Group1] = "Kannada (KaGaPa, phonetic)";
key.type="FOUR_LEVEL";
// Roman digits
@ -2078,7 +2082,7 @@ xkb_symbols "kan-kagapa" {
//
partial alphanumeric_keys
xkb_symbols "tel-kagapa" {
name[Group1] = "Telugu (KaGaPa phonetic)";
name[Group1] = "Telugu (KaGaPa, phonetic)";
key.type="FOUR_LEVEL";
// Roman digits
@ -2205,3 +2209,191 @@ xkb_symbols "eeyek" {
include "level3(ralt_switch)"
};
// This layout is developed by Niranjan Tambe in July 2019
// for typing Indic languages in International Phonetic Alphabet (IPA).
partial alphanumeric_keys modifier_keys
xkb_symbols "iipa" {
name[Group1]= "Indic IPA (IIPA)";
key <AE01> { [ 1, exclam] };
key <AE02> { [ 2, at] };
key <AE03> { [ 3, numbersign] };
key <AE04> { [ 4, U20B9] };
key <AE05> { [ 5, percent] };
key <AE06> { [ 6, asciicircum] };
key <AE07> { [ 7, ampersand] };
key <AE08> { [ 8, asterisk] };
key <AE09> { [ 9, parenleft] };
key <AE10> { [ 0, parenright] };
key <AE11> { [ minus, underscore] };
key <AE12> { [ equal, plus] };
key <AD01> { [ U02B0, U02B1] }; // [ʰ], [ʱ]
key <AD02> { [ U00E6, q] }; // [æ], [q] found in Urdu
key <AD03> { [ a, U028B] }; // [a], [ʋ]
key <AD04> { [ i, U026A] }; // [i] [ɪ]
key <AD05> { [ u, U026F] }; // [u] [ɯ] found in Tamil
key <AD06> { [ b, Y] }; // [b]
key <AD07> { [ h, U014B] }; // [h], [ŋ]
key <AD08> { [ g, U0263] }; // [g], [ɣ] found in Urdu
key <AD09> { [ d, U00F0] }; // [d], [ð] found in Malayalam
key <AD10> { [ U02A4, U02A3] }; // [ʤ], [ʣ] found in Marathi
key <AD11> { [ U0256, U027D] }; // [ɖ], [ɽ]
key <AD12> { [ bracketleft, bracketright] }; // "[", "]" needed for denoting phonetic symbols
key <AC01> { [ o, U0254] }; // [o], [ɔ] found in Bangla
key <AC02> { [ e, U025B] }; // [e], [ɛ]
key <AC03> { [ U0259, U0361] }; // [ə], [ ͡ ]
key <AC04> { [ i, U026A] }; // [i], [ɪ]
key <AC05> { [ u, U026F] }; // [u], [ɯ]
key <AC06> { [ p, f] }; // [p], [f]
key <AC07> { [ U027E, r] }; // [ɾ], [r]
key <AC08> { [ k, x] }; // [k], [x] found in Urdu
key <AC09> { [ t, U03B8] }; // [t], [θ]
key <AC10> { [ U02A7, U02A6] }; // [ʧ], [ʦ] found in Marathi
key <AC11> { [ U0288, quotedbl] }; // [ʈ]
key <TLDE> { [ grave, asciitilde] };
key <BKSL> { [ backslash, bar] };
key <AB01> { [ U032A, U0303] }; // [ ̪], [ ̃] Dental mark, nasalisation mark
key <AB02> { [ U0306, X] }; // [ ̆] Short sound
key <AB03> { [ m, U0273] }; // [m], [ɳ]
key <AB04> { [ n, v] }; // [n], [v]
key <AB05> { [ w, z] }; // [w], [z]
key <AB06> { [ l, U026D] }; // [l], [ɭ]
key <AB07> { [ s, U0283] }; // [s], [ʃ]
key <AB08> { [ comma, U0282] }; // [ʂ]
key <AB09> { [ period, U02D0] }; // [ː] Long sound
key <AB10> { [ j, slash] }; // [j]
};
// This layout is developed by Niranjan Tambe in July 2019
// for typing Marathi language with some necessary symbols.
xkb_symbols "marathi" {
name[Group1]="मराठी इन्स्क्रिप्ट";
key <TLDE> { [ U0962, U090C, grave, asciitilde ] }; // Added ॢ & ऌ
key <AE01> { [ U0967, exclam, 1, exclam ] }; // Added exclamation mark
key <AE02> { [ U0968, U0945, 2, at ] }; // Added ॅ
key <AE03> { [ U0969, U093D, 3, numbersign ] }; // Added ऽ
key <AE04> { [ U096a, U20B9, 4 ] }; // Added ₹
key <AE05> { [ U096b, percent, 5, percent ] };
key <AE06> { [ U096c, asciicircum, 6, asciicircum ] };
key <AE07> { [ U096d, U0970, 7, ampersand ] }; // Added ॰
key <AE08> { [ U096e, U0950, 8, asterisk ] };
key <AE09> { [ U096f, parenleft, 9, parenleft ] };
key <AE10> { [ U0966, parenright, 0, parenright ] };
key <AE11> { [ minus, U0903, minus, underscore ] };
key <AE12> { [ U0943, U090b, U0944, U0960 ] };
key <AD01> { [ U094c, U0914 ] };
key <AD02> { [ U0948, U0910 ] };
key <AD03> { [ U093e, U0906 ] };
key <AD04> { [ U0940, U0908, U0963, U0961 ] };
key <AD05> { [ U0942, U090a ] };
key <AD06> { [ U092c, U092d ] };
key <AD07> { [ U0939, U0919 ] };
key <AD08> { [ U0917, U0918, U095a ] };
key <AD09> { [ U0926, U0927 ] };
key <AD10> { [ U091c, U091d, U095b ] };
key <AD11> { [ U0921, U0922, U095c, U095d ] };
key <AD12> { [ U093c, U091e ] };
key <BKSL> { [ U0949, U0911, U005C, U007C ] };
key <AC01> { [ U094b, U0913 ] };
key <AC02> { [ U0947, U090f ] };
key <AC03> { [ U094d, U0905 ] };
key <AC04> { [ U093f, U0907, U0962, U090c ] };
key <AC05> { [ U0941, U0909 ] };
key <AC06> { [ U092a, U092b, NoSymbol, U095e ] };
key <AC07> { [ U0930, U0931 ] };
key <AC08> { [ U0915, U0916, U0958, U0959 ] };
key <AC09> { [ U0924, U0925 ] };
key <AC10> { [ U091a, U091b, U0952 ] };
key <AC11> { [ U091f, U0920, NoSymbol, U0951 ] };
key <AB01> { [ apostrophe, U0972, U0953 ] }; // Added apostrophe & ॲ
key <AB02> { [ U0902, U0901, NoSymbol, U0950 ] };
key <AB03> { [ U092e, U0923, U0954 ] };
key <AB04> { [ U0928, quotedbl ] }; // Added "
key <AB05> { [ U0935, UA8FB ] }; // Added headstroke
key <AB06> { [ U0932, U0933 ] };
key <AB07> { [ U0938, U0936 ] };
key <AB08> { [ comma, U0937, U0970 ] };
key <AB09> { [ period, U0964, U0965, U093d ] };
key <AB10> { [ U092f, question, slash, question ] };
};
// EXTRAS:
// Modi is an ancient Indian script that is used to write texts in Marathi, Hindi and Sanskrit.
// This keyboard layout is Based on Marathi KaGaPa phonetic layout. Just the characters which are not applicable in modi, are ommited.
//
// Author : D.Abhi <abhishekdeshpande128@gmail.com>
//
//
partial alphanumeric_keys
xkb_symbols "modi-kagapa" {
name[Group1] = "Modi (KaGaPa phonetic)";
key.type="FOUR_LEVEL";
// Roman digits
key <TLDE> { [ apostrophe, asciitilde, U201C ] }; // U201C: left double quotation mark
key <AE01> { [ 1, exclam, U11651 ] };
key <AE02> { [ 2, at, U11652, U20A8 ] }; // U20A8: generic rupee sign (Rs)
key <AE03> { [ 3, numbersign, U11653 ] };
key <AE04> { [ 4, dollar, U11654, U20B9 ] }; // U20B9: new Indian rupee sign
key <AE05> { [ 5, percent, U11655 ] };
key <AE06> { [ 6, asciicircum, U11656, U200C ] }; // ZWNJ
key <AE07> { [ 7, ampersand, U11657, U200D ] }; // ZWJ
key <AE08> { [ 8, asterisk, U11658 ] };
key <AE09> { [ 9, parenleft, U11659 ] };
key <AE10> { [ 0, parenright, U11650, U11643 ] }; // U11643: Modi abbreviation sign
key <AE11> { [ minus, underscore ] };
key <AE12> { [ equal, plus ] };
key <BKSL> { [ U005C, U007C, U11641, U11642 ] }; // backslash, pipe, Modi danda, Modi double danda
//Q Row
key <AD01> { [ U11618, U11619 ] }; // Q: retroflex Modi letter Ta, Tha
key <AD02> { [ U1161A, U1161B ] }; // W: retroflex Modi letter Da, Dha
key <AD03> { [ U11639, U1160A, U1160B ] }; // E: Modi vovel sign E, Modi letter E, letter ai
key <AD04> { [ U11628, U11635, U11606 ] }; // R: Modi ra, Modi vowel sign vocalic R, vocalic letter R
key <AD05> { [ U1161D, U1161E ] }; // T: dental Modi letter ta, tha
key <AD06> { [ U11627, U1163A ] }; // Y: Modi letter ya, Modi vowel sign ai
key <AD07> { [ U11633, U11634, U11604, U11605 ] }; // U: Modi vowel sign u, uu, Modi letter u, uu
key <AD08> { [ U11631, U11632, U11602, U11603 ] }; // I: Modi vowel sign i, ii, Modi letter i, ii
key <AD09> { [ U1163B, U1160C ] }; // O: Modi vowel sign o, Modi letter o
key <AD10> { [ U11622, U11623 ] }; // P: Modi letter pa, pha
key <AD11> { [ bracketleft, braceleft ] };
key <AD12> { [ bracketright, braceright ] };
//A Row
key <AC01> { [ U11630, U11601, U11600 ] }; // A: Modi vowel sign aa, Modi letter aa, Modi letter a
key <AC02> { [ U1162D, U1162B ] }; // S: Modi letter sa, sha
key <AC03> { [ U1161F, U11620 ] }; // D: dental Modi letter da, dha
key <AC04> { [ U1163F, U11636, U11607 ] }; // F: Modi sign virama, Modi vowel sign vocalic RR, letter vocalic RR
key <AC05> { [ U11610, U11611 ] }; // G: Modi letter ga, gha
key <AC06> { [ U1162E, U1163E ] }; // H: Modi letter ha, Modi visarga
key <AC07> { [ U11615, U11616 ] }; // J: Modi letter ja, jha
key <AC08> { [ U1160E, U1160F ] }; // K: Modi letter ka, kha
key <AC09> { [ U11629, U1162F, U11637, U11608 ] }; // L: Modi letter la, lla, Modi vowel sign vocalic L, letter vocalic L
key <AC10> { [ semicolon, colon ] };
key <AC11> { [ apostrophe, quotedbl ] };
//Z Row
key <AB01> { [ U11617, U11612 ] }; // Z: Modi letter nya, nga
key <AB02> { [ U1162C, U11609, U11638 ] }; // X: Modi letter ssa, Modi letter vocalic ll, Modi vowel sign vocalic ll
key <AB03> { [ U11613, U11614 ] }; // C: Modi letter ca, cha
key <AB04> { [ U1162A, U1163C, U1160D ] }; // V: Modi letter va, Modi vowel sign au, Modi letter au
key <AB05> { [ U11624, U11625 ] }; // B: Modi letter ba, bha
key <AB06> { [ U11621, U1161C ] }; // N: Modi letter na, nna
key <AB07> { [ U11626, U1163D, U093D, U0950 ] }; // M: Modi ma, Modi anusvara, avagraha, Devanagari OM
key <AB08> { [ comma, U003C, U11640, U11644 ] }; // comma: comma, less than, Modi chandrabindu, Modi sign huva
key <AB09> { [ period, U003E ] }; // period: period, greater than, matra, candra o
key <AB10> { [ slash, question ] };
include "level3(ralt_switch)"
};

View File

@ -184,7 +184,7 @@ xkb_symbols "evdev" {
key <I218> { [ Print ] };
// key <I219> { [ ] }; // KEY_HP
key <I220> { [ XF86WebCam ] };
// key <I221> { [ ] }; // KEY_SOUND
key <I221> { [ XF86AudioPreset ] };
// key <I222> { [ ] }; // KEY_QUESTION
key <I223> { [ XF86Mail ] };
key <I224> { [ XF86Messenger ] }; // KEY_CHAT
@ -212,11 +212,16 @@ xkb_symbols "evdev" {
key <I246> { [ XF86WLAN ] };
// key <I249> { [ ] }; // KEY_VIDEO_NEXT -- drive next video source
// key <I250> { [ ] }; // KEY_VIDEO_PREV -- drive previous video source
// key <I251> { [ ] }; // KEY_BRIGHTNESS_CYCLE -- bright up, max++ == min
key <I251> { [ XF86MonBrightnessCycle ] }; // KEY_BRIGHTNESS_CYCLE -- bright up, max++ == min
// key <I252> { [ ] }; // KEY_BRIGHTNESS_ZERO -- brightness off
// key <I253> { [ ] }; // KEY_DISPLAY_OFF -- turn off display
// key <I254> { [ ] }; // KEY_WIMAX
key <I255> { [ XF86Hibernate ] }; // KEY_HIBERNATE
key <I254> { [ XF86WWAN ] }; // KEY_WWAN
key <I255> { [ XF86RFKill ] }; // KEY_RFKILL
key <I372> { [ XF86Favorites ] };
key <I382> { [ XF86Keyboard ] };
key <I569> { [ XF86RotationLockToggle ] };
key <I380> { [ XF86FullScreen ] };
key <FK13> { [ XF86Tools ] };
key <FK14> { [ XF86Launch5 ] };
@ -1422,6 +1427,16 @@ xkb_symbols "microsoftmult" {
key <I80> { [ XF86Documents ] };
};
// Microsoft Surface
partial alphanumeric_keys
xkb_symbols "microsoftsurface" {
include "inet(evdev)"
key <I88> { [ XF86Search ] };
key <I163> { [ XF86AudioPrev ] };
key <I164> { [ XF86AudioPlay, XF86AudioPause ] };
key <I165> { [ XF86AudioNext ] };
};
// Oretec
@ -1850,32 +1865,6 @@ xkb_symbols "pc105" {
include "inet(media_nav_acpi_common)"
};
// HTC Dream
partial alphanumeric_keys
xkb_symbols "htcdream" {
key <BKSP> { [ BackSpace ] };
key <RTRN> { [ Return ] };
key <AE01> { [ 1, 1, exclam, exclam ] };
key <AE02> { [ 2, 2, at, at ] };
key <AE03> { [ 3, 3, numbersign, numbersign ] };
key <AE04> { [ 4, 4, dollar, dollar ] };
key <AE05> { [ 5, 5, percent, percent ] };
key <AE06> { [ 6, 6, dead_circumflex, dead_circumflex ] };
key <AE07> { [ 7, 7, ampersand, ampersand ] };
key <AE08> { [ 8, 8, asterisk, asterisk ] };
key <AE09> { [ 9, 9, parenleft, parenleft ] };
key <AE10> { [ 0, 0, parenright, parenright ] };
key <LFSH> { [ Shift_L ] };
key <SPCE> { [ space ] };
key <AB09> { [ period, period, slash, slash ] };
key <RTSH> { [ Shift_R ] };
modifier_map Shift { <LFSH>, <RTSH> };
};
partial alphanumeric_keys
xkb_symbols "chromebook" {
include "level3(ralt_switch)"
@ -1907,3 +1896,4 @@ partial alphanumeric_keys
xkb_symbols "teck229" {
include "inet(teck227)"
};

View File

@ -1,6 +1,6 @@
// Common Latin alphabet layout
default partial
default partial
xkb_symbols "basic" {
key <AE01> { [ 1, exclam, onesuperior, exclamdown ] };

View File

@ -3,7 +3,7 @@
// The default behaviour:
// the right Alt key (AltGr) chooses the third symbol engraved on a key.
default partial modifier_keys
default partial modifier_keys
xkb_symbols "ralt_switch" {
key <RALT> {
type[Group1]="ONE_LEVEL",
@ -209,3 +209,21 @@ xkb_symbols "lsgt_switch_latch" {
};
include "level3(modifier_mapping)"
};
// Number key 4 chooses third shift level when pressed in isolation.
partial modifier_keys
xkb_symbols "4_switch_isolated" {
override key <AE04> {
symbols[Group1] = [ ISO_Level3_Shift ]
};
include "level3(modifier_mapping)"
};
// Number key 9 chooses third shift level when pressed in isolation.
partial modifier_keys
xkb_symbols "9_switch_isolated" {
override key <AE09> {
symbols[Group1] = [ ISO_Level3_Shift ]
};
include "level3(modifier_mapping)"
};

View File

@ -2,7 +2,7 @@
// Keyboard modification for Apple keyboards
//
partial default modifier_keys
default partial modifier_keys
xkb_symbols "extended" {
key <KPEQ> { [ KP_Equal ] };

View File

@ -1,4 +1,4 @@
default partial alphanumeric_keys modifier_keys
default partial alphanumeric_keys modifier_keys
xkb_symbols "pc105" {
key <ESC> { [ Escape ] };

View File

@ -2,9 +2,10 @@
// AEN <aen@logic.ru>
// 2001/12/23 by Leon Kanter <leon@blackcatlinux.com>
// 2005/12/09 Valery Inozemtsev <shrek@altlinux.ru>
// 2018/07/15 @a13 (a.k.a. @dbvvmpg) and Stepanenko Andrey <ftvkyo2011@yandex.ru>
// Windows layout
default partial alphanumeric_keys
default partial alphanumeric_keys
xkb_symbols "winkeys" {
include "ru(common)"
@ -215,13 +216,22 @@ partial alphanumeric_keys
xkb_symbols "phonetic_winkeys" {
include "ru(phonetic)"
name[Group1]= "Russian (phonetic, with Win keys)";
name[Group1]= "Russian (phonetic, Windows)";
key <LatX> { [ Cyrillic_ha, Cyrillic_HA ] };
key <LatH> { [ Cyrillic_che, Cyrillic_CHE ] };
key <AE12> { [ Cyrillic_softsign, Cyrillic_SOFTSIGN ] };
};
partial alphanumeric_keys
xkb_symbols "phonetic_YAZHERTY" {
include "ru(phonetic_winkeys)"
name[Group1]= "Russian (phonetic, YAZHERTY)";
key <LatW> { [ Cyrillic_zhe, Cyrillic_ZHE ] };
key <LatV> { [ Cyrillic_ve, Cyrillic_VE ] };
};
partial alphanumeric_keys
xkb_symbols "tt" {
@ -230,12 +240,12 @@ xkb_symbols "tt" {
key.type[group1]="FOUR_LEVEL";
key <TLDE> { [ 0x010004bb, 0x010004ba, Cyrillic_io, Cyrillic_IO ] };
key <AD02> { [ 0x010004e9, 0x010004e8, Cyrillic_tse, Cyrillic_TSE ] };
key <AD09> { [ 0x010004d9, 0x010004d8, Cyrillic_shcha, Cyrillic_SHCHA ] };
key <AD12> { [ 0x010004af, 0x010004ae, Cyrillic_hardsign, Cyrillic_HARDSIGN ] };
key <AC10> { [ 0x010004a3, 0x010004a2, Cyrillic_zhe, Cyrillic_ZHE ] };
key <AB07> { [ 0x01000497, 0x01000496, Cyrillic_softsign, Cyrillic_SOFTSIGN ] };
key <TLDE> { [ Cyrillic_shha, Cyrillic_SHHA, Cyrillic_io, Cyrillic_IO ] };
key <AD02> { [ Cyrillic_o_bar, Cyrillic_O_bar, Cyrillic_tse, Cyrillic_TSE ] };
key <AD09> { [ Cyrillic_schwa, Cyrillic_SCHWA, Cyrillic_shcha, Cyrillic_SHCHA ] };
key <AD12> { [ Cyrillic_u_straight, Cyrillic_U_straight, Cyrillic_hardsign, Cyrillic_HARDSIGN ] };
key <AC10> { [ Cyrillic_en_descender, Cyrillic_EN_descender, Cyrillic_zhe, Cyrillic_ZHE ] };
key <AB07> { [ Cyrillic_zhe_descender, Cyrillic_ZHE_descender, Cyrillic_softsign, Cyrillic_SOFTSIGN ] };
include "level3(ralt_switch)"
};
@ -255,7 +265,7 @@ partial alphanumeric_keys
xkb_symbols "os_winkeys" {
include "ru(winkeys)"
name[Group1]= "Ossetian (Win keys)";
name[Group1]= "Ossetian (Windows)";
key <TLDE> { [ Cyrillic_e, Cyrillic_E ] };
key <AC07> { [ Cyrillic_o, Cyrillic_O, Cyrillic_io, Cyrillic_IO ] };
@ -434,20 +444,20 @@ xkb_symbols "bak" {
key.type[group1]="FOUR_LEVEL";
key <TLDE> { [ 0x010004d9, 0x010004d8, Cyrillic_io, Cyrillic_IO ] };
key <AE01> { [ exclam, quotedbl, 1, 1 ] };
key <AE02> { [ 0x010004e9, 0x010004e8, 2, 2 ] };
key <AE03> { [ 0x010004a1, 0x010004a0, 3, 3 ] };
key <AE04> { [ 0x01000493, 0x01000492, 4, 4 ] };
key <AE05> { [ 0x010004ab, 0x010004aa, 5, 5 ] };
key <AE06> { [ colon, semicolon, 6, 6 ] };
key <AE07> { [ 0x01000499, 0x01000498, 7, 7 ] };
key <AE08> { [ 0x010004bb, 0x010004ba, 8, 8 ] };
key <AE09> { [ question, parenleft, 9, 9 ] };
key <AE10> { [ numerosign, parenright, 0, 0 ] };
key <AE11> { [ minus, percent, minus, underscore ] };
key <AE12> { [ 0x010004af, 0x010004ae, equal, plus ] };
key <BKSL> { [ 0x010004a3, 0x010004a2, backslash, slash ] };
key <TLDE> { [ Cyrillic_schwa, Cyrillic_SCHWA, Cyrillic_io, Cyrillic_IO ] };
key <AE01> { [ exclam, quotedbl, 1, 1 ] };
key <AE02> { [ Cyrillic_o_bar, Cyrillic_O_bar, 2, 2 ] };
key <AE03> { [ 0x010004a1, 0x010004a0, 3, 3 ] };
key <AE04> { [ Cyrillic_ghe_bar, Cyrillic_GHE_bar, 4, 4 ] };
key <AE05> { [ 0x010004ab, 0x010004aa, 5, 5 ] };
key <AE06> { [ colon, semicolon, 6, 6 ] };
key <AE07> { [ 0x01000499, 0x01000498, 7, 7 ] };
key <AE08> { [ Cyrillic_shha, Cyrillic_SHHA, 8, 8 ] };
key <AE09> { [ question, parenleft, 9, 9 ] };
key <AE10> { [ numerosign, parenright, 0, 0 ] };
key <AE11> { [ minus, percent, minus, underscore ] };
key <AE12> { [ Cyrillic_u_straight, Cyrillic_U_straight, equal, plus ] };
key <BKSL> { [ Cyrillic_en_descender, Cyrillic_EN_descender, backslash, slash ] };
include "level3(ralt_switch)"
};
@ -517,7 +527,7 @@ xkb_symbols "phonetic_azerty" {
key <AE11> { [parenright, degree, bracketright, questiondown ] };
key <AE12> { [ equal, plus, braceright, dead_ogonek ] };
key <AB07> { [ comma, question, acute, doubleacute ] };
key <AB07> { [ comma, question, acute, doubleacute ] };
key <AB08> { [ semicolon, period, horizconnector, multiply ] };
key <AB09> { [ colon, slash, periodcentered, division ] };
key <AB10> { [ exclam, section, dead_belowdot, dead_abovedot ] };
@ -629,77 +639,92 @@ xkb_symbols "phonetic_fr" {
name[Group1]= "Russian (phonetic, French)";
};
// EXTRAS:
// Rulemak, Colemak based Russian phonetic layout
// contact: Geert Hendrickx <geert@hendrickx.be>
// http://forum.colemak.com/viewtopic.php?id=519
//
// ┌─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┲━━━━━━━━━┓
// │ Ё ``│ ! ˝ │ @ │ № │ $ │ % │ ^ ¯ │ & │ * ₴ │ ( │ ) │ _ — │ Ъ + ┃ ⌫ ┃
// │ ё ` │ 1 ´ │ 2 ¨ │ 3 # │ 4 ¢ │ 5 € │ 6 ˘ │ 7 │ 8 ₽ │ 9 [ │ 0 ] │ - │ ъ = ┃Backspace┃
// ┢━━━━━┷━┱───┴─┬───┴─┬───┴─┬───┴─┬───┴─┬───┴─┬───┴─┬───┴─┬───┴─┬───┴─┬───┴─┬───┺━┳━━━━━━━┫
// ┃ ┃ Я Ѣ │ Ж Ѵ │ Ф Ѳ │ П │ Г Ґ │ й Ј │ Л Љ │ У Ў │ Ы Ї │ Ю : │ Ш { │ Щ } ┃ Enter ┃
// ┃ Tab ↹ ┃ я ѣ │ ж ѵ │ ф ѳ │ п │ г ґ │ й ј │ л љ │ у ў │ ы ї │ ю ; │ ш « │ щ » ┃ ⏎ ┃
// ┣━━━━━━━┻┱────┴┬────┴┬────┴┬────┴┬────┴┬────┴┬────┴┬────┴┬────┴┬────┴┬────┴┬────┺┓ ┃
// ┃ ⌫ Back ┃ АРСТ Ћ │ Д Ђ │ Ч Џ │ Н Њ │ Е Є │ И ІОЬ " │ Э | ┃ ┃
// ┃ space ┃ арс │ т ћ │ д ђ │ ч џ │ н њ │ е є │ и іо │ ь ' │ э \ ┃ ┃
// ┣━━━━━━━━┻━┱───┴─┬───┴─┬───┴─┬───┴─┬───┴─┬───┴─┬───┴─┬───┴─┬───┴─┬───┴─┲━━━┷━━━━━┻━━━━━━┫
// ┃ ┃ З ЅХ │ Ц │ В │ Б Ѓ │ К Ќ │ М │ ; │ : │ ? Ӏ ┃ ┃
// ┃ Shift ⇧ ┃ з ѕх │ ц │ в │ б ѓ │ к ќ │ м │ , < │ . > │ / ӏ ┃ Shift ⇧ ┃
// ┣━━━━━━━┳━━┻━━━━┳┷━━━━━┷┱────┴─────┴─────┴─────┴─────┴─────┴┲━━━━┷━━┳━━┻━━━━┳━━━━━━━┳━━━┛
// ┃ ┃ ┃ ┃ ┃ ┃ ┃ ┃
// ┃ Ctrl ┃ Meta ┃ Alt ┃ Space ┃AltGr ⇮┃ Menu ┃ Ctrl ┃
// ┗━━━━━━━┻━━━━━━━┻━━━━━━━┹───────────────────────────────────┺━━━━━━━┻━━━━━━━┻━━━━━━━┛
partial alphanumeric_keys
xkb_symbols "rulemak" {
include "us(basic)"
name[Group1]= "Russian (Rulemak, phonetic Colemak)";
key <TLDE> { [ Cyrillic_io, Cyrillic_IO, U0300, asciitilde ] };
key <AE01> { [ 1, exclam, U0301 ] };
key <AE02> { [ 2, at, U030B ] };
key <TLDE> { [ Cyrillic_io, Cyrillic_IO, U0300, U030F ] }; // Combining grave, double grave
key <AE01> { [ 1, exclam, U0301, U030B ] }; // Combining acute, double acute
key <AE02> { [ 2, at, U0308 ] }; // Combining diaeresis
key <AE03> { [ 3, numerosign, numbersign ] };
key <AE04> { [ 4, dollar, cent ] };
key <AE05> { [ 5, percent, EuroSign ] };
key <AE06> { [ 6, asciicircum, U0306 ] };
key <AE07> { [ 7, ampersand, U0307 ] };
key <AE08> { [ 8, asterisk, U20BD ] };
key <AE06> { [ 6, asciicircum, U0306, U0304 ] }; // Combining breve, macron
key <AE07> { [ 7, ampersand ] };
key <AE08> { [ 8, asterisk, U20BD, U20B4 ] }; // ruble, hryvnia
key <AE09> { [ 9, parenleft, bracketleft ] };
key <AE10> { [ 0, parenright, bracketright ] };
key <AE11> { [ minus, underscore, endash, emdash ] };
key <AE12> { [ Cyrillic_hardsign, Cyrillic_HARDSIGN, equal, plus ] };
key <AD01> { [ Cyrillic_ya, Cyrillic_YA, q, Q ] };
key <AD02> { [ Cyrillic_zhe, Cyrillic_ZHE, w, W ] };
key <AD03> { [ Cyrillic_ef, Cyrillic_EF, f, F ] };
key <AD04> { [ Cyrillic_pe, Cyrillic_PE, p, P ] };
key <AD05> { [ Cyrillic_ghe, Cyrillic_GHE, g, G ] };
key <AD06> { [ Cyrillic_shorti, Cyrillic_SHORTI, j, J ] };
key <AD07> { [ Cyrillic_el, Cyrillic_EL, l, L ] };
key <AD08> { [ Cyrillic_u, Cyrillic_U, u, U ] };
key <AD09> { [ Cyrillic_yeru, Cyrillic_YERU, y, Y ] };
key <AD01> { [ Cyrillic_ya, Cyrillic_YA, U0463, U0462 ] }; // yat
key <AD02> { [ Cyrillic_zhe, Cyrillic_ZHE, U0475, U0474 ] }; // izhitsa
key <AD03> { [ Cyrillic_ef, Cyrillic_EF, U0473, U0472 ] }; // fita
key <AD04> { [ Cyrillic_pe, Cyrillic_PE ] };
key <AD05> { [ Cyrillic_ghe, Cyrillic_GHE, Ukrainian_ghe_with_upturn, Ukrainian_GHE_WITH_UPTURN ] };
key <AD06> { [ Cyrillic_shorti, Cyrillic_SHORTI, Cyrillic_je, Cyrillic_JE ] };
key <AD07> { [ Cyrillic_el, Cyrillic_EL, Cyrillic_lje, Cyrillic_LJE ] };
key <AD08> { [ Cyrillic_u, Cyrillic_U, Byelorussian_shortu, Byelorussian_SHORTU ] };
key <AD09> { [ Cyrillic_yeru, Cyrillic_YERU, Ukrainian_yi, Ukrainian_YI ] };
key <AD10> { [ Cyrillic_yu, Cyrillic_YU, semicolon, colon ] };
key <AD11> { [ Cyrillic_sha, Cyrillic_SHA, guillemotleft, braceleft ] };
key <AD12> { [ Cyrillic_shcha, Cyrillic_SHCHA, guillemotright, braceright ] };
key <BKSL> { [ Cyrillic_e, Cyrillic_E, backslash, bar ] };
key <AC01> { [ Cyrillic_a, Cyrillic_A, a, A ] };
key <AC02> { [ Cyrillic_er, Cyrillic_ER, r, R ] };
key <AC03> { [ Cyrillic_es, Cyrillic_ES, s, S ] };
key <AC04> { [ Cyrillic_te, Cyrillic_TE, t, T ] };
key <AC05> { [ Cyrillic_de, Cyrillic_DE, d, D ] };
key <AC06> { [ Cyrillic_che, Cyrillic_CHE, h, H ] };
key <AC07> { [ Cyrillic_en, Cyrillic_EN, n, N ] };
key <AC08> { [ Cyrillic_ie, Cyrillic_IE, e, E ] };
key <AC09> { [ Cyrillic_i, Cyrillic_I, i, I ] };
key <AC10> { [ Cyrillic_o, Cyrillic_O, o, O ] };
key <AC01> { [ Cyrillic_a, Cyrillic_A ] };
key <AC02> { [ Cyrillic_er, Cyrillic_ER ] };
key <AC03> { [ Cyrillic_es, Cyrillic_ES ] };
key <AC04> { [ Cyrillic_te, Cyrillic_TE, Serbian_tshe, Serbian_TSHE ] };
key <AC05> { [ Cyrillic_de, Cyrillic_DE, Serbian_dje, Serbian_DJE ] };
key <AC06> { [ Cyrillic_che, Cyrillic_CHE, Cyrillic_dzhe, Cyrillic_DZHE ] };
key <AC07> { [ Cyrillic_en, Cyrillic_EN, Cyrillic_nje, Cyrillic_NJE ] };
key <AC08> { [ Cyrillic_ie, Cyrillic_IE, Ukrainian_ie, Ukrainian_IE ] };
key <AC09> { [ Cyrillic_i, Cyrillic_I, Ukrainian_i, Ukrainian_I ] };
key <AC10> { [ Cyrillic_o, Cyrillic_O ] };
key <AC11> { [ Cyrillic_softsign, Cyrillic_SOFTSIGN, apostrophe, quotedbl ] };
key <AB01> { [ Cyrillic_ze, Cyrillic_ZE, z, Z ] };
key <AB02> { [ Cyrillic_ha, Cyrillic_HA, x, X ] };
key <AB03> { [ Cyrillic_tse, Cyrillic_TSE, c, C ] };
key <AB04> { [ Cyrillic_ve, Cyrillic_VE, v, V ] };
key <AB05> { [ Cyrillic_be, Cyrillic_BE, b, B ] };
key <AB06> { [ Cyrillic_ka, Cyrillic_KA, k, K ] };
key <AB07> { [ Cyrillic_em, Cyrillic_EM, m, M ] };
key <AB01> { [ Cyrillic_ze, Cyrillic_ZE, Macedonia_dse, Macedonia_DSE ] };
key <AB02> { [ Cyrillic_ha, Cyrillic_HA ] };
key <AB03> { [ Cyrillic_tse, Cyrillic_TSE ] };
key <AB04> { [ Cyrillic_ve, Cyrillic_VE ] };
key <AB05> { [ Cyrillic_be, Cyrillic_BE, Macedonia_gje, Macedonia_GJE ] };
key <AB06> { [ Cyrillic_ka, Cyrillic_KA, Macedonia_kje, Macedonia_KJE ] };
key <AB07> { [ Cyrillic_em, Cyrillic_EM ] };
key <AB08> { [ comma, semicolon, less ] };
key <AB09> { [ period, colon, greater ] };
key <AB10> { [ slash, question ] };
key <AB10> { [ slash, question, U04CF, U04C0 ] }; // palochka
key <CAPS> { [ BackSpace, BackSpace, BackSpace, BackSpace ] };
key <LSGT> { [ U0301, asciitilde, grave ] };
key <SPCE> { [ space, space, space, nobreakspace ] };
key <MENU> { [ Mode_switch, Multi_key ] };
key <LSGT> { [ equal, plus, multiply, division ] };
include "level3(ralt_switch)"
include "capslock(backspace)"
include "nbsp(level4)"
};
// EXTRAS:
// Church Slavonic language layout
// based on the Russian standard keyboard
// by Aleksandr Andreev and Yuri Shardt
@ -709,21 +734,21 @@ xkb_symbols "chu" {
name[Group1]= "Church Slavonic";
key <TLDE> { [ U0457, U0407, U0482, U20DD ] }; // ї Ї ҂ e.g: а⃝ where the last is a combining ten thousands sign
key <TLDE> { [ Ukrainian_yi, Ukrainian_YI, U0482, U20DD ] }; // ї Ї ҂ e.g: а⃝ where the last is a combining ten thousands sign
key <AE01> { [ U0461, U0460, U047D, U047C ] }; // ѡ Ѡ ѽ Ѽ
key <AE02> { [ U0454, U0404, U0465, U0464 ] }; // є Є ѥ Ѥ
key <AE02> { [ Ukrainian_ie, Ukrainian_IE, U0465, U0464 ] }; // є Є ѥ Ѥ
key <AE03> { [ U046F, U046E, U0469, U0468 ] }; // ѯ Ѯ ѩ Ѩ
key <AE04> { [ U0471, U0470, U046D, U046C ] }; // ѱ Ѱ ѭ Ѭ
key <AE05> { [ U0473, U0472, UA657, UA656 ] }; // ѳ Ѳ iotified A
key <AE06> { [ U0475, U0474, U0477, U0476 ] }; // ѵ Ѵ ѷ Ѷ
key <AE07> { [ U047B, U047A, UA64D, UA64C ] }; // ѻ Ѻ ꙍ Ꙍ
key <AE08> { [ U047F, U047E, U046B, U046A ] }; // ѿ Ѿ ѫ Ѫ
key <AE09> { [ U0455, U0405,parenleft,U002A ] }; // ѕ Ѕ ( *
key <AE10> { [Cyrillic_u,Cyrillic_U,parenright,U0488]}; // у У ) NB: for digraph Ouk, use Cyrillic_o + Cyrillic_u
key <AE09> { [ Macedonia_dse, Macedonia_DSE, parenleft, asterisk ] }; // ѕ Ѕ ( *
key <AE10> { [ Cyrillic_u, Cyrillic_U, parenright, U0488]}; // у У ) NB: for digraph Ouk, use Cyrillic_o + Cyrillic_u
key <AE11> { [ U0483, U0486, U0487, U005F ] }; // а҃ а҆ а҇, _ (titlo, psili, pokrytie, underscore)
key <AE12> { [ U0301, U0300, U0484, UA67E ] }; // а̀ а́ а҄ ꙾ (oxia, varia, kamora, kavyka)
key <AD01> { [ Cyrillic_shorti, Cyrillic_SHORTI, U0456 ] };
key <AD01> { [ Cyrillic_shorti, Cyrillic_SHORTI, Ukrainian_i ] };
key <AD02> { [ Cyrillic_tse, Cyrillic_TSE, U2DF0 ] };
key <AD03> { [ UA64B, UA64A, U2DF9 ] }; // Cyrillic monograph Uk (not U)!
key <AD04> { [ Cyrillic_ka, Cyrillic_KA, U2DE6 ] };
@ -792,33 +817,33 @@ xkb_symbols "ruu" {
name[Group1]= "Russian (with Ukrainian-Belorussian layout)";
key <TLDE> { [ U2019, apostrophe, U0301, asciitilde ] }; // Apostrophe and Stress symbol
key <AE01> { [ 1, exclam, U00F7, U2248 ] }; // Division Sign and Almost Equal To
key <AE01> { [ 1, exclam, division, U2248 ] }; // Division Sign and Almost Equal To
key <AE02> { [ 2, quotedbl, currency, infinity ] };
key <AE03> { [ 3, numerosign, U00A7, U20B4 ] }; // Paragraph and Hryvnia sign
key <AE03> { [ 3, numerosign, section, U20B4 ] }; // Paragraph and Hryvnia sign
key <AE04> { [ 4, semicolon, dollar, EuroSign ] };
key <AE05> { [ 5, percent, degree, U2030 ] }; // Per Mille Sign
key <AE06> { [ 6, colon, less, U2264 ] }; // Less-Than Or Equal To
key <AE07> { [ 7, question, greater, U2265 ] }; // Greater-Than Or Equal To
key <AE08> { [ 8, asterisk, enfilledcircbullet, U00D7 ] }; // Multiplication Sign
key <AE05> { [ 5, percent, degree, permille ] };
key <AE06> { [ 6, colon, less, lessthanequal ] };
key <AE07> { [ 7, question, greater, greaterthanequal ] };
key <AE08> { [ 8, asterisk,enfilledcircbullet,multiply ] };
key <AE09> { [ 9, parenleft, bracketleft, braceleft ] };
key <AE10> { [ 0, parenright, bracketright, braceright ] };
key <AE11> { [ minus, underscore, emdash, endash ] };
key <AE12> { [ equal, plus, notequal, plusminus ] };
key <AD03> { [ Cyrillic_u, Cyrillic_U, Byelorussian_shortu, Byelorussian_SHORTU ] };
key <AD04> { [ Cyrillic_ka, Cyrillic_KA, registered ] }; // Registered tm
key <AD04> { [ Cyrillic_ka, Cyrillic_KA, registered ] };
key <AD05> { [ Cyrillic_ie, Cyrillic_IE, Cyrillic_io, Cyrillic_IO ] };
key <AD07> { [ Cyrillic_ghe, Cyrillic_GHE, Ukrainian_ghe_with_upturn, Ukrainian_GHE_WITH_UPTURN ] };
key <AD10> { [ Cyrillic_ze, Cyrillic_ZE, U00B6 ] }; // Pilcrow Sign
key <AD10> { [ Cyrillic_ze, Cyrillic_ZE, paragraph ] };
key <AD12> { [ Cyrillic_hardsign, Cyrillic_HARDSIGN, Ukrainian_yi, Ukrainian_YI ] };
key <AC02> { [ Cyrillic_yeru, Cyrillic_YERU, Ukrainian_i, Ukrainian_I ] };
key <AC11> { [ Cyrillic_e, Cyrillic_E, Ukrainian_ie, Ukrainian_IE ] };
key <BKSL> { [ slash, bar, backslash, U00A6 ] }; // Broken Bar
key <BKSL> { [ slash, bar, backslash, brokenbar ] };
key <AB03> { [ Cyrillic_es, Cyrillic_ES, copyright ] };
key <AB06> { [ Cyrillic_te, Cyrillic_TE, trademark ] };
key <AB07> { [ Cyrillic_softsign, Cyrillic_SOFTSIGN, U00B5 ] }; // Micro Sign
key <AB07> { [ Cyrillic_softsign, Cyrillic_SOFTSIGN, mu ] };
key <AB08> { [ Cyrillic_be, Cyrillic_BE, guillemotleft, doublelowquotemark ] };
key <AB09> { [ Cyrillic_yu, Cyrillic_YU, guillemotright, leftdoublequotemark ] };
key <AB10> { [ period, comma, slash, ellipsis ] };
@ -884,34 +909,34 @@ xkb_symbols "prxn" {
key <TLDE> { [ U2019, apostrophe, U0301, U0300, U2053, U2015, U02BC, asciitilde ] }; // Typographic Apostrophe, Apostrophe, Combining Acute, Combining Grave, Swung Dash, Quotation Dash, Modifier Letter Apostrophe, Tilde
key <AE01> { [ 1, exclam, U0304, U0306, U0308, U0311, U0307, U0313 ] }; // 1, !, Combining Macron, Combining Breve, Combining Diaresis, Combining Inverted Breve, Combining Dot Above, Combining Comma Above
key <AE02> { [ 2,quotedbl,numerosign, U20BF, U20B8, U20AE, U00A3, U20B9 ] }; // 2 " № ₿ ₸ ₮ £ ₹
key <AE03> { [ 3, U00A7, U20B4, currency, U20BD, U20AA, U20BC, U20BE ] }; // 3 § ₴ ¤ ₽ ₪ ₼ ₾
key <AE03> { [ 3, section, U20B4, currency, U20BD, U20AA, U20BC, U20BE ] }; // 3 § ₴ ¤ ₽ ₪ ₼ ₾
key <AE04> { [ 4, semicolon, dollar, EuroSign, U0482, U20DD, U0488, U0489 ] }; // 4 ; $ € Thousands Sign, Combining Enclosing Circle, Combining Hundred Thousands, Combining Millions
key <AE05> { [ 5, percent, degree, U2030, UA670, UA671, UA672, UA66F ] }; // 5, %, °, ‰, Combinining Ten Millions, Combining Hundred Millions, Combining Thousand Millions, Combining Vzmet
key <AE05> { [ 5, percent, degree, permille, UA670, UA671, UA672, UA66F ] }; // 5, %, °, ‰, Combinining Ten Millions, Combining Hundred Millions, Combining Thousand Millions, Combining Vzmet
key <AE06> { [ 6, colon, U0335, U0336, U0483, U0487, UFE2E, UFE2F ] }; // 6, :, Combining Short Stroke Overlay, Combining Long Stroke Overlay, Combining Titlo, Combining Pokrytie, Combining Titlo Left Half, Combining Titlo Right Half
key <AE07> { [ 7, question, U030B, U030F, U030C, U0303, U032C, U0360 ] }; // 7, ?, Combining Double Acute, Combining Double Grave, Combining Caron/Háček, Combining Tilde, Combining Caron/Háček Below, Combining Double Tilde
key <AE08> { [ 8, asterisk, U0331, U0332, U0333, U032F, U032D, U032E ] }; // 8, *, Combining Macron Below, Combining Low Line, Combining Double Low Line, Combining Inverted Breve Below, Combining Circumflex Accent, Combining Breve Below
key <AE09> { [ 9,parenleft, bracketleft, braceleft, U035F, U035D, U035E, U035C ] }; // 9 ( [ { Combining Double Macron Below, Combining Double Breve, Combining Double Macron, Combining Double Breve Below
key <AE10> { [ 0,parenright,bracketright, braceright, U27E8, U27E9, U04A7, U04A6 ] }; // 0 ) ] } ⟨⟩ ҧ Ҧ
key <AE11> { [ minus, underscore, emdash, endash, U2011, U00AD, U2010, U2212 ] }; // Hyphen-Minus, Underscore, Em Dash, En Dash, Non-Breaking-Hyphen, Soft Hyphen, Hyphen, Minus Sign
key <AE11> { [ minus, underscore, emdash, endash, U2011,hyphen, U2010, U2212 ] }; // Hyphen-Minus, Underscore, Em Dash, En Dash, Non-Breaking-Hyphen, Soft Hyphen, Hyphen, Minus Sign
key <AE12> { [ equal, plus,notequal, U2248, U04FF, U04FE, U050D, U050C ] }; // = + ≠ ≈ ӿ Ӿ ԍ Ԍ
key <AD01> { [ Cyrillic_shorti, Cyrillic_SHORTI, Cyrillic_je, Cyrillic_JE, U04CF, U04C0, U030A, U0325 ] }; // й Й ј Ј ӏ Ӏ, Combining Ring Above and Below
key <AD02> { [ Cyrillic_tse, Cyrillic_TSE, U04B5, U04B4, Cyrillic_u_straight, Cyrillic_U_straight, U051B, U051A ] }; // ц Ц ҵ Ҵ ү Ү ԛ Ԛ
key <AD03> { [ Cyrillic_u, Cyrillic_U, Byelorussian_shortu, Byelorussian_SHORTU, Cyrillic_u_straight_bar,Cyrillic_U_straight_bar, Byelorussian_shortu, Byelorussian_SHORTU ] }; // у У ў Ў ұ Ұ ў Ў
key <AD04> { [ Cyrillic_ka, Cyrillic_KA, Cyrillic_ka_descender,Cyrillic_KA_descender, U049F, U049E, U046F, U046E ] }; // к К Қ қ ҟ Ҟ ѯ Ѯ
key <AD03> { [ Cyrillic_u, Cyrillic_U, Byelorussian_shortu, Byelorussian_SHORTU, Cyrillic_u_straight_bar,Cyrillic_U_straight_bar, Byelorussian_shortu, Byelorussian_SHORTU ] }; // у У ў Ў ұ Ұ ў Ў
key <AD04> { [ Cyrillic_ka, Cyrillic_KA, Cyrillic_ka_descender, Cyrillic_KA_descender, U049F, U049E, U046F, U046E ] }; // к К Қ қ ҟ Ҟ ѯ Ѯ
key <AD05> { [ Cyrillic_ie, Cyrillic_IE, Cyrillic_io, Cyrillic_IO, U0463, U0462, UA653, UA652 ] }; // е Е ё Ё ѣ Ѣ ꙓ Ꙓ
key <AD06> { [ Cyrillic_en, Cyrillic_EN, Cyrillic_nje, Cyrillic_NJE, Cyrillic_en_descender, Cyrillic_EN_descender, U04C8, U04C7 ] }; // н Н њ Њ ң Ң ӈ Ӈ
key <AD07> { [ Cyrillic_ghe, Cyrillic_GHE, Ukrainian_ghe_with_upturn,Ukrainian_GHE_WITH_UPTURN, Cyrillic_ghe_bar, Cyrillic_GHE_bar, U04F7, U04F6 ] }; // г Г Ґ ґ ғ Ғ ӷ Ӷ
key <AD08> { [ Cyrillic_sha, Cyrillic_SHA, U04A1, U04A0, U04AB, U04AA, UA67D, UA67F ] }; // ш Ш ҡ Ҡ ҫ Ҫ Combining Payerok Payerok
key <AD09> { [ Cyrillic_shcha, Cyrillic_SHCHA, U0505, U0504, UA68D, UA68C, U050F, U050E ] }; // щ Щ ԅ Ԅ ꚍ Ꚍ ԏ Ԏ
key <AD10> { [ Cyrillic_ze, Cyrillic_ZE, U04E1, U04E0, U0499, U0498, U0507, U0506 ] }; // з З ӡ Ӡ ҙ Ҙ ԇ Ԇ
key <AD11> { [ Cyrillic_ha, Cyrillic_HA, Cyrillic_shha, Cyrillic_SHHA, Cyrillic_ha_descender, Cyrillic_HA_descender, U04FD, U04FC ] }; // х Х һ Һ ҳ Ҳ ӽ Ӽ
key <AD12> { [Cyrillic_hardsign,Cyrillic_HARDSIGN, Ukrainian_yi, Ukrainian_YI, Macedonia_dse, Macedonia_DSE, U033E, U2E2F ] }; // ъ Ъ ї Ї ѕ Ѕ, Combining Yerok, Yerok
key <AD11> { [ Cyrillic_ha, Cyrillic_HA, Cyrillic_shha, Cyrillic_SHHA, Cyrillic_ha_descender, Cyrillic_HA_descender, U04FD, U04FC ] }; // х Х һ Һ ҳ Ҳ ӽ Ӽ
key <AD12> { [Cyrillic_hardsign,Cyrillic_HARDSIGN, Ukrainian_yi, Ukrainian_YI, Macedonia_dse, Macedonia_DSE, U033E, U2E2F ] }; // ъ Ъ ї Ї ѕ Ѕ, Combining Yerok, Yerok
key <AC01> { [ Cyrillic_ef, Cyrillic_EF, U0473, U0472, U04C4, U04C3, U04FB, U04FA ] }; // ф Ф ѳ Ѳ ӄ Ӄ ӻ Ӻ
key <AC02> { [ Cyrillic_yeru, Cyrillic_YERU, Ukrainian_i, Ukrainian_I, U04D5, U04D4, U04A9, U04A8 ] }; // ы Ы і І ӕ Ӕ ҩ Ҩ
key <AC02> { [ Cyrillic_yeru, Cyrillic_YERU, Ukrainian_i, Ukrainian_I, U04D5, U04D4, U04A9, U04A8 ] }; // ы Ы і І ӕ Ӕ ҩ Ҩ
key <AC03> { [ Cyrillic_ve, Cyrillic_VE, U051D, U051C, U0529, U0528, U0527, U0526 ] }; // в В ԝ Ԝ ԩ Ԩ ԧ Ԧ
key <AC04> { [ Cyrillic_a, Cyrillic_A, U04D9, U04D8, UA657, UA656, UA655, UA654 ] }; // а А ә Ә ꙗ Ꙗ ꙕ Ꙕ
key <AC04> { [ Cyrillic_a, Cyrillic_A, Cyrillic_schwa, Cyrillic_SCHWA, UA657, UA656, UA655, UA654 ] }; // а А ә Ә ꙗ Ꙗ ꙕ Ꙕ
key <AC05> { [ Cyrillic_pe, Cyrillic_PE, U0525, U0524, U0471, U0470, UA65F, UA65E ] }; // п П ԥ Ԥ ѱ Ѱ ꙟ Ꙟ
key <AC06> { [ Cyrillic_er, Cyrillic_ER, U0481, U0480, U048F, U048E, U0521, U0520 ] }; // р Р ҁ Ҁ ҏ Ҏ ԡ Ԡ
key <AC07> { [ Cyrillic_o, Cyrillic_O, Cyrillic_o_bar, Cyrillic_O_bar, U047B, U047A, U0461, U0460 ] }; // о О ө Ө ѻ Ѻ ѡ Ѡ
@ -923,11 +948,11 @@ xkb_symbols "prxn" {
key <LSGT> { [ U0495, U0494, U0501, U0500, U0503, U0502, U0509, U0508 ] }; // ҕ Ҕ ԁ Ԁ ԃ Ԃ ԉ Ԉ
key <AB01> { [ Cyrillic_ya, Cyrillic_YA, U0469, U0468, U0467, U0466, UA657, UA656 ] }; // я Я ѩ Ѩ ѧ Ѧ ꙗ Ꙗ
key <AB02> { [ Cyrillic_che, Cyrillic_CHE, Serbian_tshe, Serbian_TSHE, U04B7, U04B6, U2016, U00A6 ] }; // ч Ч ћ Ћ ҷ Ҷ ‖ ¦
key <AB02> { [ Cyrillic_che, Cyrillic_CHE, Serbian_tshe, Serbian_TSHE, Cyrillic_che_descender, Cyrillic_CHE_descender, U2016, U00A6 ] }; // ч Ч ћ Ћ ҷ Ҷ ‖ ¦
key <AB03> { [ Cyrillic_es, Cyrillic_ES, U046D, U046C, U046B, U046A, U04F7, U04F6 ] }; // с С ѭ Ѭ ѫ Ѫ ӷ Ӷ
key <AB04> { [ Cyrillic_em, Cyrillic_EM, multiply, U00F7, U22C5, U2219, U04CE, U04CD ] }; // м М × ÷ ⋅ ∙ ӎ Ӎ
key <AB05> { [ Cyrillic_i, Cyrillic_I, U0475, U0474, U048B, U048A, periodcentered, U261B ] }; // и И ѵ Ѵ ҋ Ҋ · ☛
key <AB06> { [ Cyrillic_te, Cyrillic_TE, U04AD, U04AC, U051F, U051E, Cyrillic_che_vertstroke,Cyrillic_CHE_vertstroke]}; // т Т ҭ Ҭ ԟ Ԟ ҹ Ҹ
key <AB04> { [ Cyrillic_em, Cyrillic_EM, multiply, division, U22C5, U2219, U04CE, U04CD ] }; // м М × ÷ ⋅ ∙ ӎ Ӎ
key <AB05> { [ Cyrillic_i, Cyrillic_I, U0475, U0474, U048B, U048A, periodcentered, U261B ] }; // и И ѵ Ѵ ҋ Ҋ · ☛
key <AB06> { [ Cyrillic_te, Cyrillic_TE, U04AD, U04AC, U051F, U051E, Cyrillic_che_vertstroke, Cyrillic_CHE_vertstroke ] }; // т Т ҭ Ҭ ԟ Ԟ ҹ Ҹ
key <AB07> { [Cyrillic_softsign,Cyrillic_SOFTSIGN, U04A5, U04A4, UA64F, UA64E, U048D, U048C ] }; // ь Ь ҥ Ҥ ꙏ Ꙏ ҍ Ҍ
key <AB08> { [ Cyrillic_be, Cyrillic_BE, guillemotleft, doublelowquotemark, singlelowquotemark, U2039, U0523, U0522 ] }; // б Б « „ ԣ Ԣ
key <AB09> { [ Cyrillic_yu, Cyrillic_YU, guillemotright, leftdoublequotemark, leftsinglequotemark, U203A, rightdoublequotemark, rightsinglequotemark]}; // ю Ю » “
@ -959,3 +984,75 @@ xkb_symbols "prxn" {
// srp: Потребно да се ставља lv5:rwin_switch_lock или једна из других брава петег ступња, да би шљакао пребацивач Caps!
// https://bugs.freedesktop.org/show_bug.cgi?id=102189
};
partial alphanumeric_keys
xkb_symbols "unipunct" {
// Раскладка представляет собой обычную русскую раскладку, в которой некоторые редко используемые буквы
// убрали на третий уровень, и поставили все пунктуационные знаки на то же место, где они стоят на
// US раскладке (+ добавлен знак номера, который отсутствует в US раскладке, но часто нужен в RU).
// ru(unipunct):
// `~ 1! 2@ 3#3№ 4$ 5% 6^ 7& 8* 9( 0) -_ =+
// хХ бБ уУюЮ кК еЕэЭ нН гГ шШщЩ жЖ зЗ [{ ]} \|
// фФ ыЫ вВ аА пП рР оОёЁ лЛ дД ;: '" //"
// яЯ чЧцЦ сС мМ иИйЙ тТ ьЬъЪ ,< .> /?
include "us(basic)"
name[Group1]= "Russian (with US punctuation)";
// Единственный символ, который отсутствует на US раскладке - №
key <AE03> { [ 3, numbersign, 3, numerosign ] };
key <LatQ> { [ Cyrillic_ha, Cyrillic_HA ] };
key <LatW> { [ Cyrillic_be, Cyrillic_BE ] };
key <LatE> { [ Cyrillic_u, Cyrillic_U, Cyrillic_yu, Cyrillic_YU ] };
key <LatR> { [ Cyrillic_ka, Cyrillic_KA ] };
key <LatT> { [ Cyrillic_ie, Cyrillic_IE, Cyrillic_e, Cyrillic_E ] };
key <LatY> { [ Cyrillic_en, Cyrillic_EN ] };
key <LatU> { [ Cyrillic_ghe, Cyrillic_GHE ] };
key <LatI> { [ Cyrillic_sha, Cyrillic_SHA, Cyrillic_shcha, Cyrillic_SHCHA ] };
key <LatO> { [ Cyrillic_zhe, Cyrillic_ZHE ] };
key <LatP> { [ Cyrillic_ze, Cyrillic_ZE ] };
key <LatA> { [ Cyrillic_ef, Cyrillic_EF ] };
key <LatS> { [ Cyrillic_yeru, Cyrillic_YERU ] };
key <LatD> { [ Cyrillic_ve, Cyrillic_VE ] };
key <LatF> { [ Cyrillic_a, Cyrillic_A ] };
key <LatG> { [ Cyrillic_pe, Cyrillic_PE ] };
key <LatH> { [ Cyrillic_er, Cyrillic_ER ] };
key <LatJ> { [ Cyrillic_o, Cyrillic_O, Cyrillic_io, Cyrillic_IO ] };
key <LatK> { [ Cyrillic_el, Cyrillic_EL ] };
key <LatL> { [ Cyrillic_de, Cyrillic_DE ] };
key <LatZ> { [ Cyrillic_ya, Cyrillic_YA ] };
key <LatX> { [ Cyrillic_che, Cyrillic_CHE, Cyrillic_tse, Cyrillic_TSE ] };
key <LatC> { [ Cyrillic_es, Cyrillic_ES ] };
key <LatV> { [ Cyrillic_em, Cyrillic_EM ] };
key <LatB> { [ Cyrillic_i, Cyrillic_I, Cyrillic_shorti, Cyrillic_SHORTI ] };
key <LatN> { [ Cyrillic_te, Cyrillic_TE ] };
key <LatM> { [ Cyrillic_softsign, Cyrillic_SOFTSIGN, Cyrillic_hardsign, Cyrillic_HARDSIGN ] };
};
partial alphanumeric_keys
xkb_symbols "phonetic_mac" {
include "ru(phonetic_winkeys)"
name[Group1]= "Russian (phonetic Macintosh)";
key <LatE> { [ Cyrillic_ie, Cyrillic_IE, Cyrillic_io, Cyrillic_IO ] };
key <LatW> { [ Cyrillic_sha, Cyrillic_SHA ] };
key <LatV> { [ Cyrillic_ve, Cyrillic_VE ] };
key <TLDE> { [ Cyrillic_shcha, Cyrillic_SHCHA ] };
key <AD11> { [ Cyrillic_yu, Cyrillic_YU ] };
key <AD12> { [ Cyrillic_zhe, Cyrillic_ZHE ] };
key <AE03> { [ 3, numbersign, numerosign ] };
key <AE04> { [ 4, dollar, U20BD ] }; // ruble
key <AE05> { [ 5, percent ] };
key <AE06> { [ 6, caret ] };
key <AE11> { [ Cyrillic_softsign, Cyrillic_SOFTSIGN, minus, underscore ] };
key <AE12> { [ Cyrillic_hardsign, Cyrillic_HARDSIGN, equal, plus ] };
include "level3(ralt_switch)"
};

View File

@ -1,4 +1,4 @@
default partial modifier_keys
default partial modifier_keys
xkb_symbols "ctrl_alt_bksp" {
key <BKSP> {
type="CTRL+ALT",

View File

@ -1,4 +1,4 @@
default partial alphanumeric_keys modifier_keys
default partial alphanumeric_keys modifier_keys
xkb_symbols "basic" {
name[Group1]= "English (US)";
@ -361,7 +361,7 @@ xkb_symbols "dvorak-alt-intl" {
key <AC03> { [ e, E, eacute ] };
key <AC04> { [ u, U, ucircumflex ] };
key <AC05> { [ i, I, icircumflex ] };
key <AC10> { [ s, S, ssharp ] };
key <AC10> { [ s, S, ssharp, U1E9E ] };
key <AB01> { [ semicolon, colon, acircumflex ] };
key <AB02> { [ q, Q, odiaeresis, dead_ogonek ] };
@ -488,8 +488,8 @@ xkb_symbols "dvorak-r" {
};
// Classic dvorak layout
// by Piter Punk <piterpk@terra.com.br> - 2006-07-06
// Based on dvorak layout and e-mail from Russel L. Harris rlharris@oplink.net
// by Piter Punk <piterpk@terra.com.br> - 2006-07-06
// Based on dvorak layout and e-mail from Russel L. Harris rlharris@oplink.net
// on xorg list.
partial alphanumeric_keys
xkb_symbols "dvorak-classic" {
@ -604,7 +604,7 @@ xkb_symbols "dvp" {
key <AC07> { [ h, H, dead_acute ] };
key <AC08> { [ t, T, thorn, THORN ] };
key <AC09> { [ n, N, ntilde, Ntilde ] };
key <AC10> { [ s, S, ssharp ] };
key <AC10> { [ s, S, ssharp, U1E9E ] };
key <AC11> { [ minus, underscore, hyphen, endash ], type[Group1] = "FOUR_LEVEL_ALPHABETIC" };
key <BKSL> { [ backslash, bar ] };
@ -774,7 +774,7 @@ xkb_symbols "colemak" {
key <AC01> { [ a, A, aacute, Aacute ] };
key <AC02> { [ r, R, dead_grave, asciitilde ] };
key <AC03> { [ s, S, ssharp, asciitilde ] };
key <AC03> { [ s, S, ssharp, 0x1001e9e ] };
key <AC04> { [ t, T, dead_acute, dead_doubleacute ] };
key <AC05> { [ d, D, dead_diaeresis, asciitilde ] };
key <AC06> { [ h, H, dead_caron, asciitilde ] };
@ -878,7 +878,7 @@ xkb_symbols "classmate-intl" {
key <LSGT> { [ backslash, bar, backslash, bar ] };
key <KP7> { [ KP_Home, KP_7,
key <KP7> { [ KP_Home, KP_7,
onehalf, dead_horn ] };
key <KP8> { [ KP_Up, KP_8,
threequarters, dead_ogonek ] };
@ -957,7 +957,7 @@ xkb_symbols "classmate-altgr-intl" {
key <LSGT> { [ backslash, bar, backslash, bar ] };
key <KP7> { [ KP_Home, KP_7,
key <KP7> { [ KP_Home, KP_7,
dead_horn, dead_horn ] };
key <KP8> { [ KP_Up, KP_8,
dead_ogonek, dead_ogonek ] };
@ -1032,7 +1032,7 @@ xkb_symbols "olpc" {
key <AD12> { [bracketright, braceright, 0x1000330, 0x1000330 ] }; // combining tilde below
key <AC01> { [ a, A, ae, AE ] };
key <AC02> { [ s, S, ssharp, 0x1001E9C ] }; // uppercase S sharp
key <AC02> { [ s, S, ssharp, 0x1001E9E ] }; // uppercase S sharp
key <AC03> { [ d, D, eth, ETH ] };
key <AC04> { [ f, F, thorn, THORN ] };
key <AC06> { [ h, H, sterling, sterling ] };
@ -1056,7 +1056,7 @@ xkb_symbols "olpc" {
partial alphanumeric_keys
xkb_symbols "olpc2" {
include "us(olpc)"
name[Group1]= "English (the divide/multiply keys toggle the layout)";
name[Group1]= "English (the divide/multiply toggle the layout)";
include "group(olpc)"
};
@ -1095,7 +1095,7 @@ xkb_symbols "olpcm" {
key <AD12> { [bracketright, braceright, 0x1000330, 0x1000330 ] }; // combining tilde below
key <AC01> { [ a, A, ae, AE ] };
key <AC02> { [ s, S, ssharp, 0x1001E9C ] }; // uppercase S sharp
key <AC02> { [ s, S, ssharp, 0x1001E9E ] }; // uppercase S sharp
key <AC03> { [ d, D, eth, ETH ] };
key <AC04> { [ f, F, thorn, THORN ] };
key <AC06> { [ h, H, sterling, sterling ] };
@ -1178,6 +1178,31 @@ xkb_symbols "chr" {
key <AB10> { [ U13C2, U13C9 ] };
};
// Add Hawaiian `okina and kahako to US layout
// Author: Greg Meyer <gregory.meyer@gmail.com>, 2020
// this mapping follows the one for Windows here: http://www.olelo.hawaii.edu/enehana/winkbd.php
// `okina replaces apostrophe (apostrophe moves to level 3)
// vowels with kahako (macron) are level 3 symbols
partial alphanumeric_keys
xkb_symbols "haw" {
include "us(basic)"
name[Group1] = "Hawaiian";
// `okina replaces single apostrophe
// alt gives the literal apostrophe
key <AC11> {[ U02BB, quotedbl, apostrophe ] };
// kahako
key <AC01> {[ a, A, amacron, Amacron ]};
key <AD03> {[ e, E, emacron, Emacron ]};
key <AD07> {[ u, U, umacron, Umacron ]};
key <AD08> {[ i, I, imacron, Imacron ]};
key <AD09> {[ o, O, omacron, Omacron ]};
include "level3(ralt_switch)"
};
// Serbian charecters added as third level symbols to US keyboard layout.
partial alphanumeric_keys
@ -1203,51 +1228,6 @@ xkb_symbols "hbs" {
include "level3(ralt_switch)"
};
//based on http://upload.wikimedia.org/wikipedia/commons/1/18/T-Mobile_G1_launch_event_2.jpg
partial alphanumeric_keys
xkb_symbols "htcdream" {
include "inet(htcdream)"
name[Group1]= "English (US)";
//second row
key <AD01> { [ q, Q, Tab, Tab ] };
key <AD02> { [ w, W, grave, grave ] };
key <AD03> { [ e, E, underscore, underscore ] };
key <AD04> { [ r, R, sterling, sterling ] };
key <AD05> { [ t, T, EuroSign, EuroSign ] };
key <AD06> { [ y, Y, division, division ] };
key <AD07> { [ u, U, multiply, multiply ] };
key <AD08> { [ i, I, minus, minus ] };
key <AD09> { [ o, O, plus, plus ] };
key <AD10> { [ p, P, equal, equal ] };
//third row
key <AC01> { [ a, A, NoSymbol, NoSymbol ] };
key <AC02> { [ s, S, bar, bar ] };
key <AC03> { [ d ,D, backslash, backslash ] };
key <AC04> { [ f, F, braceleft, braceleft ] };
key <AC05> { [ g, G, braceright, braceright ] };
key <AC06> { [ h, H, colon, colon ] };
key <AC07> { [ j, J, semicolon, semicolon ] };
key <AC08> { [ k, K, quotedbl, quotedbl ] };
key <AC09> { [ l, L, apostrophe, apostrophe ] };
//forth row
key <AB01> { [ z, Z, NoSymbol, NoSymbol ] };
key <AB02> { [ x, X, NoSymbol, NoSymbol ] };
key <AB03> { [ c, C, NoSymbol, NoSymbol ] };
key <AB04> { [ v, V, bracketleft, bracketleft ] };
key <AB05> { [ b, B, bracketright, bracketright ] };
key <AB06> { [ n, N, less, less ] };
key <AB07> { [ m, M, greater, greater ] };
key <AB08> { [ comma, comma, question, question ] };
//fifth row
key <FK15> { [ at, at, asciitilde, asciitilde ] };
include "level3(alt_switch)"
};
// Workman Keyboard Layout symbols for xkb on X.Org Server 7.x
// 09-06-2010 OJ Bucao. http://www.workmanlayout.com
@ -1642,6 +1622,24 @@ xkb_symbols "cz_sk_de" {
include "level3(ralt_switch)"
};
// 03 December 2017 - Added us(scn), please refer to
// Cadèmia Siciliana <l10n@cademiasiciliana.org>
partial alphanumeric_keys
xkb_symbols "scn" {
include "us(intl)"
name[Group1]="Sicilian (US keyboard)";
key <AD03> { [ e, E, U0259, U018F ] };
key <AC03> { [ d, D, U1E0D, U1E0C ] };
key <AC04> { [ f, F, U0111, U0110 ] };
key <AC06> { [ h, H, U1E25, U1E24 ] };
key <AB02> { [ x, X, U03C7, U03A7 ] };
key <AB09> { [ period, greater, U1D58, dead_caron ] };
include "level3(ralt_switch)"
};
// XCompose is out! Unicode combining is in! For those of us who live
// on the edge: A keymap using Unicode combining characters instead of
// deadkeys. This variation does not deviate from the lame MS-style
@ -1665,7 +1663,7 @@ xkb_symbols "cz_sk_de" {
partial alphanumeric_keys
xkb_symbols "intl-unicode" {
name[Group1]= "English (US, international AltGr Unicode combining)";
name[Group1]= "English (US, intl., AltGr Unicode combining)";
include "us(intl)"
include "level3(ralt_switch)"
@ -1715,7 +1713,7 @@ xkb_symbols "intl-unicode" {
partial alphanumeric_keys
xkb_symbols "alt-intl-unicode" {
name[Group1]= "English (US, international AltGr Unicode combining, alternative)";
name[Group1]= "English (US, intl., AltGr Unicode combining, alt.)";
include "us(intl-unicode)"
@ -1787,3 +1785,224 @@ partial alphanumeric_keys
xkb_symbols "sun_type6" {
include "sun_vndr/us(sun_type6)"
};
// Implementation of the 3l keyboard layout
// See https://github.com/jackrosenthal/threelayout for specification
partial alphanumeric_keys modifier_keys
xkb_symbols "3l" {
name[Group1] = "English (3l)";
key.type[Group1] = "ONE_LEVEL";
key <TAB> { [ Escape ] };
key <CAPS> { [ Tab ] };
key <AC11> { [ ISO_Level3_Shift ] }; // Sym Modifier
key <AB10> { [ ISO_Level5_Shift ] }; // Cur/Num Modifier
// Top row numbers - not part of spec, but given for convenience
key <AE01> { [ 1 ] };
key <AE02> { [ 2 ] };
key <AE03> { [ 3 ] };
key <AE04> { [ 4 ] };
key <AE05> { [ 5 ] };
key <AE06> { [ 6 ] };
key <AE07> { [ 7 ] };
key <AE08> { [ 8 ] };
key <AE09> { [ 9 ] };
key <AE10> { [ 0 ] };
// Main keys
// Order of mods (defined by EIGHT_LEVEL_SEMIALPHABETIC) is:
// [ None, Shift, Sym, Shift+Sym, Num, Shift+Num, Sym+Num, Shift+Sym+Num ]
key.type[Group1] = "EIGHT_LEVEL_SEMIALPHABETIC";
// Second row
key <AD01> { [ q, Q, quotedbl, Greek_omicron, Prior, Prior, U21CD, Greek_OMICRON ] };
key <AD02> { [ f, F, underscore, Greek_phi, BackSpace, BackSpace, U21A4, Greek_PHI ] };
key <AD03> { [ u, U, bracketleft, Greek_upsilon, Up, Up, U2191, Greek_UPSILON ] };
key <AD04> { [ y, Y, bracketright, Greek_psi, Delete, Delete, U21A6, Greek_PSI ] };
key <AD05> { [ z, Z, asciicircum, Greek_zeta, Next, Next, U21CF, Greek_ZETA ] };
key <AD06> { [ x, X, exclam, Greek_xi, NoSymbol, NoSymbol, U2260, Greek_XI ] };
key <AD07> { [ k, K, less, Greek_kappa, 1, A, U2A7D, Greek_KAPPA ] };
key <AD08> { [ c, C, greater, Greek_chi, 2, B, U2A7E, Greek_CHI ] };
key <AD09> { [ w, W, equal, Greek_omega, 3, C, U2261, Greek_OMEGA ] };
key <AD10> { [ b, B, ampersand, Greek_beta, NoSymbol, NoSymbol, U2248, Greek_BETA ] };
// Home row
key <AC01> { [ o, O, slash, Greek_omega, Home, Home, U21D0, Greek_OMEGA ] };
key <AC02> { [ h, H, minus, Greek_theta, Left, Left, U2190, Greek_THETA ] };
key <AC03> { [ e, E, braceleft, Greek_epsilon, Down, Down, U2193, Greek_EPSILON ] };
key <AC04> { [ a, A, braceright, Greek_alpha, Right, Right, U2192, Greek_ALPHA ] };
key <AC05> { [ i, I, asterisk, Greek_iota, End, End, U21D2, Greek_IOTA ] };
key <AC06> { [ d, D, question, Greek_delta, period, colon, U2286, Greek_DELTA ] };
key <AC07> { [ r, R, parenleft, Greek_rho, 4, D, U2227, Greek_RHO ] };
key <AC08> { [ t, T, parenright, Greek_tau, 5, E, U2228, Greek_TAU ] };
key <AC09> { [ n, N, apostrophe, Greek_eta, 6, F, U2200, Greek_ETA ] };
key <AC10> { [ s, S, colon, Greek_sigma, NoSymbol, NoSymbol, U2203, Greek_SIGMA ] };
// Bottom row
key <AB01> { [ comma, comma, numbersign, NoSymbol, slash, NoSymbol, U21AE, NoSymbol ] };
key <AB02> { [ m, M, dollar, Greek_mu, asterisk, NoSymbol, U2194, Greek_MU ] };
key <AB03> { [ period, period, bar, NoSymbol, minus, NoSymbol, U21CE, NoSymbol ] };
key <AB04> { [ j, J, asciitilde, Greek_SIGMA, plus, NoSymbol, U21D4, NoSymbol ] };
key <AB05> { [ semicolon, semicolon, grave, NoSymbol, comma, NoSymbol, U2282, NoSymbol ] };
key <AB06> { [ g, G, plus, Greek_gamma, 0, NoSymbol, U2229, Greek_GAMMA ] };
key <AB07> { [ l, L, percent, Greek_lambda, 7, parenleft, U222A, Greek_LAMBDA ] };
key <AB08> { [ p, P, backslash, Greek_pi, 8, parenright, U2208, Greek_PI ] };
key <AB09> { [ v, V, at, Greek_nu, 9, NoSymbol, U2209, Greek_NU ] };
include "level5(modifier_mapping)"
};
// Chromebooks typically have the key which is normally in the caps
// lock position mapped to keycode 133 (LWIN). For 3l, it is critical
// that the key in this positon correspond to tab, so there is a
// variant available for chromebook hardware.
partial modifier_keys
xkb_symbols "3l-cros" {
include "us(3l)"
name[Group1] = "English (3l, Chromebook)";
key <LWIN> {
type[Group1] = "ONE_LEVEL",
symbols[Group1] = [ Tab ]
};
};
// A 3l variant for emacs users, which maps control to caps lock and (re)maps
// tab back to tab.
partial modifier_keys
xkb_symbols "3l-emacs" {
include "us(3l)"
name[Group1] = "English (3l, emacs)";
key <TAB> { [ Tab ] };
key <CAPS> { [ Control_L ] };
modifier_map Control { <CAPS> };
};
// Drix EU Latin - version 3.1 (2019-10-07)
// Author: Jerome Leclanche <jerome@leclan.ch>
// Latin layout based on classic US qwerty, with azerty-style second-row m key.
// Features:
// - Programmer-centric punctuation keys (All common symbols on right hand except < and > on left)
// - Most common dead accents on altgr-shift number row
// - Unicode arrows on Altgr+shift+WASD
// - Some commonly used special characters available:
// - Most common european special characters
// - Misc currency symbols, copyright/registered/trademark symbols
// - Common math symbols + some common greek letters
// - Compose key replaces Mod5
//
// This layout is in the Public Domain.
//
// ┌─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┲━━━━━━━━━┓
// │ ~ ~ │ " ´ │ ' ` │ ^ ^ │ ` ¨ │ ´ ° │ 6 ¯ │ 7 ¸ │ 8 ˛ │ 9 ˇ │ | ˝ │ _ ± │ = ≠ ┃Backspace┃
// │ @ £ │ 1 ¹ │ 2 ² │ 3 ³ │ 4 ⁴ │ 5 ⁵ │ 6 ⁶ │ 7 ⁷ │ 8 ⁸ │ 9 ⁹ │ 0 ⁰ │ - " │ + ' ┃ ⌫ ┃
// ┢━━━━━┷━┱───┴─┬───┴─┬───┴─┬───┴─┬───┴─┬───┴─┬───┴─┬───┴─┬───┴─┬───┴─┬───┴─┬───┺━┳━━━━━━━┫
// ┃Tab ┃ Q Ø │ W ↑ │ E € │ R ₽ │ T τ │ Y ¥ │ U U │ I │ O Ω │ P ₱ │ [ « │ ] » ┃ ⏎ ┃
// ┃ ↹ ┃ q ø │ w w │ e € │ r ® │ t ™ │ y ¥ │ u u │ i │ o œ │ p π │ ( { │ ) } ┃ Enter ┃
// ┣━━━━━━━┻┱────┴┬────┴┬────┴┬────┴┬────┴┬────┴┬────┴┬────┴┬────┴┬────┴┬────┴┬────┺┓ ┃
// ┃Caps ┃ A ← │ S ↓ │ D → │ F Ƒ │ G G │ H H │ J ” │ K „ │ L λ │ M M │ % ‰ │ & × ┃ ┃
// ┃Lock ⇬ ┃ a æ │ s ß │ d Δ │ f ƒ │ g g │ h h │ j “ │ k │ l £ │ m µ │ # ~ │ * $ ┃ ┃
// ┣━━━━━━┳━┹───┬─┴───┬─┴───┬─┴───┬─┴───┬─┴───┬─┴───┬─┴───┬─┴───┬─┴───┬─┴───┲━┷━━━━━┻━━━━━━┫
// ┃Shift ┃ > ≥ │ Z ¶ │ X ÷ │ C ¢ │ V V │ B ₿ │ N N │ ? ¿ │ , · │ ; ´ │ \ ¦ ┃Shift ┃
// ┃ ⇧ ┃ < ≤ │ z § │ x × │ c © │ v ♀ │ b ♂ │ n ⚥ │ ! ¡ │ . … │ : ` │ / | ┃ ⇧ ┃
// ┣━━━━━━┻┳━━━━┷━━┳━━┷━━━━┱┴─────┴─────┴─────┴─────┴─────┴────┲┷━━━━━╈━━━━━┻┳━━━━━━┳━━━━━━┫
// ┃Ctrl ┃ Fn ┃Alt ┃ ␣ Space Nobreakspace ⍽ ┃AltGr ┃Multi ┃ Ctxt ┃ Ctrl ┃
// ┃ ┃ ┃ ┃ ␣ Space Nobreakspace ⍽ ┃ ┃ ┃ Menu ┃ ┃
// ┗━━━━━━━┻━━━━━━━┻━━━━━━━┹───────────────────────────────────┺━━━━━━┻━━━━━━┻━━━━━━┻━━━━━━┛
partial alphanumeric_keys modifier_keys
xkb_symbols "drix" {
name[Group1] = "English (Drix)";
// First row
key <TLDE> {[ at, asciitilde, sterling, dead_tilde ]}; // @ ~ £ ~
key <AE01> {[ 1, quotedbl, onesuperior, dead_grave ]}; // 1 " ¹ `
key <AE02> {[ 2, apostrophe, twosuperior, dead_acute ]}; // 2 ' ² ´
key <AE03> {[ 3, asciicircum, threesuperior, dead_circumflex ]}; // 3 ^ ³ ^
key <AE04> {[ 4, grave, foursuperior, dead_diaeresis ]}; // 4 4 ⁴ ¨
key <AE05> {[ 5, degree, fivesuperior, dead_abovering ]}; // 5 ° ⁵ °
key <AE06> {[ 6, 6, sixsuperior, dead_macron ]}; // 6 6 ⁶ ¯
key <AE07> {[ 7, 7, sevensuperior, dead_cedilla ]}; // 7 7 ⁷ ¸
key <AE08> {[ 8, 8, eightsuperior, dead_ogonek ]}; // 8 8 ⁸ ˛
key <AE09> {[ 9, 9, ninesuperior, dead_caron ]}; // 9 9 ⁹ ˇ
key <AE10> {[ 0, bar, zerosuperior, dead_doubleacute ]}; // 0 | ⁰ ˝
key <AE11> {[ minus, underscore, quotedbl, plusminus ]}; // - _ " ±
key <AE12> {[ plus, equal, apostrophe, notequal ]}; // + = ' ≠
// Second row
key <AD01> {[ q, Q, oslash, Ooblique ]}; // q Q ø Ø
key <AD02> {[ w, W, w, uparrow ]}; // w W w ↑
key <AD03> {[ e, E, EuroSign, EuroS ]}; // e E € €
key <AD04> {[ r, R, registered, 0x10020bd ]}; // r R ® ₽
key <AD05> {[ t, T, trademark, Greek_tau ]}; // t T ™ τ
key <AD06> {[ y, Y, yen, yen ]}; // y Y ¥ ¥
key <AD07> {[ u, U, u, U ]}; // u U u U
key <AD08> {[ i, I, leftsinglequotemark, rightsinglequotemark ]}; // i I
key <AD09> {[ o, O, oe, Greek_OMEGA ]}; // o O œ Ω
key <AD10> {[ p, P, Greek_pi, 0x10020b1 ]}; // p P π ₱
key <AD11> {[ parenleft, bracketleft, braceleft, guillemotleft ]}; // ( [ { «
key <AD12> {[ parenright, bracketright, braceright, guillemotright ]}; // ) ] } »
// Third row
key <AC01> {[ a, A, ae, leftarrow ]}; // a A æ ←
key <AC02> {[ s, S, ssharp, downarrow ]}; // s S ß ↓
key <AC03> {[ d, D, Greek_DELTA, rightarrow ]}; // d D Δ →
key <AC04> {[ f, F, 0x1000192, 0x1000191 ]}; // f F ƒ Ƒ
key <AC05> {[ g, G, g, G ]}; // g G g G
key <AC06> {[ h, H, h, H ]}; // h H h H
key <AC07> {[ j, J, leftdoublequotemark, rightdoublequotemark ]}; // j J “ ”
key <AC08> {[ k, K, singlelowquotemark, doublelowquotemark ]}; // k K
key <AC09> {[ l, L, sterling, Greek_lambda ]}; // l L £ λ
key <AC10> {[ m, M, mu, M ]}; // m M µ M
key <AC11> {[ numbersign, percent, asciitilde, 0x1002030 ]}; // # % ~ ‰
// Fourth row
key <LSGT> {[ less, greater, lessthanequal, greaterthanequal ]}; // < > ≤ ≥
key <AB01> {[ z, Z, section, paragraph ]}; // z Z § ¶
key <AB02> {[ x, X, multiply, division ]}; // x X × ÷
key <AB03> {[ c, C, copyright, cent ]}; // c C © ¢
key <AB04> {[ v, V, 0x1002640, V ]}; // v V ♀ V
key <AB05> {[ b, B, 0x1002642, 0x10020bf ]}; // b B ♂ ₿
key <AB06> {[ n, N, 0x10026a5, N ]}; // n N ⚥ N
key <AB07> {[ exclam, question, exclamdown, questiondown ]}; // ! ? ¡ ¿
key <AB08> {[ period, comma, 0x1002026, periodcentered ]}; // . , … ·
key <AB09> {[ colon, semicolon, grave, acute ]}; // : ; ` ´
key <AB10> {[ slash, backslash, bar, brokenbar ]}; // / \ | ¦
// Next to the enter key
key <BKSL> {[ asterisk, ampersand, dollar, multiply ]}; // * & $ ×
// Rebind right Super (windows key) into a Compose key
key <RWIN> {[ Multi_key ]};
// Implement AltGr and AltGr+Shift
// For some reason, include "level3(ralt_switch)" doesn't do the trick.
key <RALT> {
type[Group1]="TWO_LEVEL",
[ ISO_Level3_Shift, Multi_key ]
};
};
// German and Swedish characters added as third level symbols to the US keyboard layout
// Author: Stephan Lachnit <stephanlachnit@protonmail.com>, 2019
// the german umlauts are placed over the characters without diaeresis, the sharp-s over the s
// the swedish ao is placed over the p, since it's closed to the position on a swedish keyboard
// the euro sign is placed over the e, as it is usual for german and swedish keyboards
partial alphanumeric_keys
xkb_symbols "de_se_fi" {
include "us(basic)"
include "eurosign(e)"
name[Group1] = "German, Swedish and Finnish (US)";
key <AC01> {[ a, A, adiaeresis, Adiaeresis ]};
key <AD09> {[ o, O, odiaeresis, Odiaeresis ]};
key <AC02> {[ s, S, ssharp, U1E9E ]};
key <AD07> {[ u, U, udiaeresis, Udiaeresis ]};
key <AD10> {[ p, P, aring, Aring ]};
include "level3(ralt_switch)"
};

View File

@ -1,4 +1,4 @@
partial default xkb_types "default" {
default partial xkb_types "default" {
// Defines a type with a four-level shift, similar to the three-level
// type used for iso9995, but it lets the Shift key behave "normally".

View File

@ -1,4 +1,4 @@
partial default xkb_types "default" {
default partial xkb_types "default" {
// A key type which can be used to implement
// an ISO9995-style level-three shift.

View File

@ -1,4 +1,4 @@
partial default xkb_types "default" {
default partial xkb_types "default" {
// Defines a type with an eight-level shift, similar to the three-level
// type used for iso9995, but it lets the Shift key behave "normally".

View File

@ -1,4 +1,4 @@
partial default xkb_types "default" {
default partial xkb_types "default" {
virtual_modifiers Alt;
type "SHIFT+ALT" {

View File

@ -1,4 +1,4 @@
partial default xkb_types "pc" {
default partial xkb_types "pc" {
type "KEYPAD" {
modifiers = Shift+NumLock;
map[None] = Level1;

View File

@ -1,4 +1,4 @@
partial default xkb_types "default" {
default partial xkb_types "default" {
// Some types that are necessary
// for a full implementation of

View File

@ -514,7 +514,7 @@ test_range(struct xkb_keymap *keymap)
xkb_keycode_t counter;
assert(xkb_keymap_min_keycode(keymap) == 9);
assert(xkb_keymap_max_keycode(keymap) == 253);
assert(xkb_keymap_max_keycode(keymap) == 569);
counter = xkb_keymap_min_keycode(keymap);
xkb_keymap_key_for_each(keymap, key_iter, &counter);