├── .github └── FUNDING.yml ├── .gitignore ├── xkb-data_xmod └── xkb │ ├── symbols │ ├── br │ ├── at │ ├── ba │ ├── si │ ├── hr │ ├── dk │ ├── colemak_eD_template │ ├── symkeys │ ├── level5 │ ├── al │ ├── nl │ ├── sk │ └── epo │ ├── keycodes │ └── aliases │ └── types │ └── level5 ├── console ├── Colemak_ConsoleMode.txt ├── colemak.iso15.kmap └── data_keymaps_i386_colemak_en-latin9.map ├── docs_dreymar-xmod ├── Extend-ISO-NoWi-Linux_90d.png ├── Cmk-eD-locales_X-img │ ├── Cmk-eD-usym_Xm.png │ ├── Cmk-eD-al-ksym_Xm.png │ ├── Cmk-eD-be-ksym_Xm.png │ ├── Cmk-eD-br-ksym_Xm.png │ ├── Cmk-eD-ca-ksym_Xm.png │ ├── Cmk-eD-cz-ksym_Xm.png │ ├── Cmk-eD-dk-ksym_Xm.png │ ├── Cmk-eD-es-ksym_Xm.png │ ├── Cmk-eD-fi-ksym_Xm.png │ ├── Cmk-eD-fr-ksym_Xm.png │ ├── Cmk-eD-gb-ksym_Xm.png │ ├── Cmk-eD-hr-ksym_Xm.png │ ├── Cmk-eD-hu-ksym_Xm.png │ ├── Cmk-eD-is-ksym_Xm.png │ ├── Cmk-eD-it-ksym_Xm.png │ ├── Cmk-eD-nl-ksym_Xm.png │ ├── Cmk-eD-no-ksym_Xm.png │ ├── Cmk-eD-pl-ksym_Xm.png │ ├── Cmk-eD-pt-ksym_Xm.png │ ├── Cmk-eD-ro-ksym_Xm.png │ ├── Cmk-eD-se-ksym_Xm.png │ ├── Cmk-eD-si-ksym_Xm.png │ ├── Cmk-eD-sym-wide_Xm.xcf │ ├── Cmk-eD-tr-ksym_Xm.png │ ├── Cmk-eD-usym-aw_Xm.png │ ├── Cmk-eD-usym-aw_Xmc.png │ ├── Cmk-eD-al-usym-aw_Xm.png │ ├── Cmk-eD-al-usym-aw_Xmc.png │ ├── Cmk-eD-at+de-ksym_Xm.png │ ├── Cmk-eD-ba+rs-ksym_Xm.png │ ├── Cmk-eD-cz-usym-aw_Xm.png │ ├── Cmk-eD-cz-usym-aw_Xmc.png │ ├── Cmk-eD-hu-usym-aw_Xm.png │ ├── Cmk-eD-hu-usym-aw_Xmc.png │ ├── Cmk-eD-is-usym-aw_Xm.png │ ├── Cmk-eD-is-usym-aw_Xmc.png │ ├── Cmk-eD-it-usym-aw_Xm.png │ ├── Cmk-eD-it-usym-aw_Xmc.png │ ├── Cmk-eD-latam-ksym_Xm.png │ ├── Cmk-eD-nl-usym-aw_Xm.png │ ├── Cmk-eD-nl-usym-aw_Xmc.png │ ├── Cmk-eD-pl-ksym_Xm-old.png │ ├── Cmk-eD-pl-usym-aw_Xm.png │ ├── Cmk-eD-pl-usym-aw_Xmc.png │ ├── Cmk-eD-ro-usym-aw_Xm.png │ ├── Cmk-eD-ro-usym-aw_Xmc.png │ ├── Cmk-eD-tr-usym-aw_Xm.png │ ├── Cmk-eD-tr-usym-aw_Xmc.png │ ├── Cmk-eD-at+de-usym-aw_Xm.png │ ├── Cmk-eD-br+pt-usym-aw_Xm.png │ ├── Cmk-eD-dk+no-usym-aw_Xm.png │ ├── Cmk-eD-fi+se-usym-aw_Xm.png │ ├── Cmk-eD-gb+us-usym-aw_Xm.png │ ├── Cmk-eD-at+de-usym-aw_Xmc.png │ ├── Cmk-eD-be+ca+fr-usym-aw_Xm.png │ ├── Cmk-eD-br+pt-usym-aw_Xmc.png │ ├── Cmk-eD-dk+no-usym-aw_Xmc.png │ ├── Cmk-eD-es+latam-usym-aw_Xm.png │ ├── Cmk-eD-fi+se-usym-aw_Xmc.png │ ├── Cmk-eD-gb+us-usym-aw_Xmc.png │ ├── Cmk-eD-at+de-usym-aw_Xm-old.png │ ├── Cmk-eD-be+ca+fr-usym-aw_Xmc.png │ ├── Cmk-eD-es+latam-usym-aw_Xmc.png │ ├── Cmk-eD-ba+hr+rs+si-usym-aw_Xm.png │ └── Cmk-eD-ba+hr+rs+si-usym-aw_Xmc.png └── Cmk-phon-locales_X-img │ ├── Cmk-X-phon-bg.png │ ├── Cmk-X-phon-ru.png │ ├── Cmk-X-phon-bg_2015-02.png │ ├── Cmk-X-phon-ru_2015-02.png │ ├── Cmk-X-phon-gr-awide-sl_mask.png │ └── Cmk-X-phon-il-awide-sl_mask.png ├── xkb-data_orig ├── xkb-data_2-35-1-1_xkb-symbols.zip ├── xkb │ ├── symbols │ │ ├── at │ │ ├── si │ │ ├── ba │ │ ├── hr │ │ ├── dk │ │ ├── level5 │ │ ├── al │ │ ├── sk │ │ ├── nl │ │ ├── epo │ │ ├── be │ │ └── latam │ ├── keycodes │ │ ├── aliases │ │ └── xfree86 │ └── types │ │ └── level5 └── README.md ├── dreymar-xtools ├── key-xev.sh ├── sample_etc-default-keyboard ├── show-xkb.sh ├── xkbmodel-pc105.sh ├── xkbmodel-awide-sl.sh ├── README_gtk_edit.txt └── gtk_edit_install.sh ├── LICENSE.md └── .gitattributes /.github/FUNDING.yml: -------------------------------------------------------------------------------- 1 | # These are supported funding model platforms 2 | 3 | github: DreymaR 4 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | *_ignore* 2 | *_test* 3 | *_Shortcut.* 4 | * Copy* 5 | *_tmp* 6 | *rc-file 7 | #~ testfil* 8 | -------------------------------------------------------------------------------- /xkb-data_xmod/xkb/symbols/br: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DreymaR/BigBagKbdTrixXKB/HEAD/xkb-data_xmod/xkb/symbols/br -------------------------------------------------------------------------------- /console/Colemak_ConsoleMode.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DreymaR/BigBagKbdTrixXKB/HEAD/console/Colemak_ConsoleMode.txt -------------------------------------------------------------------------------- /docs_dreymar-xmod/Extend-ISO-NoWi-Linux_90d.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DreymaR/BigBagKbdTrixXKB/HEAD/docs_dreymar-xmod/Extend-ISO-NoWi-Linux_90d.png -------------------------------------------------------------------------------- /xkb-data_orig/xkb-data_2-35-1-1_xkb-symbols.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DreymaR/BigBagKbdTrixXKB/HEAD/xkb-data_orig/xkb-data_2-35-1-1_xkb-symbols.zip -------------------------------------------------------------------------------- /docs_dreymar-xmod/Cmk-eD-locales_X-img/Cmk-eD-usym_Xm.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DreymaR/BigBagKbdTrixXKB/HEAD/docs_dreymar-xmod/Cmk-eD-locales_X-img/Cmk-eD-usym_Xm.png -------------------------------------------------------------------------------- /docs_dreymar-xmod/Cmk-phon-locales_X-img/Cmk-X-phon-bg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DreymaR/BigBagKbdTrixXKB/HEAD/docs_dreymar-xmod/Cmk-phon-locales_X-img/Cmk-X-phon-bg.png -------------------------------------------------------------------------------- /docs_dreymar-xmod/Cmk-phon-locales_X-img/Cmk-X-phon-ru.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DreymaR/BigBagKbdTrixXKB/HEAD/docs_dreymar-xmod/Cmk-phon-locales_X-img/Cmk-X-phon-ru.png -------------------------------------------------------------------------------- /docs_dreymar-xmod/Cmk-eD-locales_X-img/Cmk-eD-al-ksym_Xm.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DreymaR/BigBagKbdTrixXKB/HEAD/docs_dreymar-xmod/Cmk-eD-locales_X-img/Cmk-eD-al-ksym_Xm.png -------------------------------------------------------------------------------- /docs_dreymar-xmod/Cmk-eD-locales_X-img/Cmk-eD-be-ksym_Xm.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DreymaR/BigBagKbdTrixXKB/HEAD/docs_dreymar-xmod/Cmk-eD-locales_X-img/Cmk-eD-be-ksym_Xm.png -------------------------------------------------------------------------------- /docs_dreymar-xmod/Cmk-eD-locales_X-img/Cmk-eD-br-ksym_Xm.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DreymaR/BigBagKbdTrixXKB/HEAD/docs_dreymar-xmod/Cmk-eD-locales_X-img/Cmk-eD-br-ksym_Xm.png -------------------------------------------------------------------------------- /docs_dreymar-xmod/Cmk-eD-locales_X-img/Cmk-eD-ca-ksym_Xm.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DreymaR/BigBagKbdTrixXKB/HEAD/docs_dreymar-xmod/Cmk-eD-locales_X-img/Cmk-eD-ca-ksym_Xm.png -------------------------------------------------------------------------------- /docs_dreymar-xmod/Cmk-eD-locales_X-img/Cmk-eD-cz-ksym_Xm.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DreymaR/BigBagKbdTrixXKB/HEAD/docs_dreymar-xmod/Cmk-eD-locales_X-img/Cmk-eD-cz-ksym_Xm.png -------------------------------------------------------------------------------- /docs_dreymar-xmod/Cmk-eD-locales_X-img/Cmk-eD-dk-ksym_Xm.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DreymaR/BigBagKbdTrixXKB/HEAD/docs_dreymar-xmod/Cmk-eD-locales_X-img/Cmk-eD-dk-ksym_Xm.png -------------------------------------------------------------------------------- /docs_dreymar-xmod/Cmk-eD-locales_X-img/Cmk-eD-es-ksym_Xm.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DreymaR/BigBagKbdTrixXKB/HEAD/docs_dreymar-xmod/Cmk-eD-locales_X-img/Cmk-eD-es-ksym_Xm.png -------------------------------------------------------------------------------- /docs_dreymar-xmod/Cmk-eD-locales_X-img/Cmk-eD-fi-ksym_Xm.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DreymaR/BigBagKbdTrixXKB/HEAD/docs_dreymar-xmod/Cmk-eD-locales_X-img/Cmk-eD-fi-ksym_Xm.png -------------------------------------------------------------------------------- /docs_dreymar-xmod/Cmk-eD-locales_X-img/Cmk-eD-fr-ksym_Xm.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DreymaR/BigBagKbdTrixXKB/HEAD/docs_dreymar-xmod/Cmk-eD-locales_X-img/Cmk-eD-fr-ksym_Xm.png -------------------------------------------------------------------------------- /docs_dreymar-xmod/Cmk-eD-locales_X-img/Cmk-eD-gb-ksym_Xm.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DreymaR/BigBagKbdTrixXKB/HEAD/docs_dreymar-xmod/Cmk-eD-locales_X-img/Cmk-eD-gb-ksym_Xm.png -------------------------------------------------------------------------------- /docs_dreymar-xmod/Cmk-eD-locales_X-img/Cmk-eD-hr-ksym_Xm.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DreymaR/BigBagKbdTrixXKB/HEAD/docs_dreymar-xmod/Cmk-eD-locales_X-img/Cmk-eD-hr-ksym_Xm.png -------------------------------------------------------------------------------- /docs_dreymar-xmod/Cmk-eD-locales_X-img/Cmk-eD-hu-ksym_Xm.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DreymaR/BigBagKbdTrixXKB/HEAD/docs_dreymar-xmod/Cmk-eD-locales_X-img/Cmk-eD-hu-ksym_Xm.png -------------------------------------------------------------------------------- /docs_dreymar-xmod/Cmk-eD-locales_X-img/Cmk-eD-is-ksym_Xm.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DreymaR/BigBagKbdTrixXKB/HEAD/docs_dreymar-xmod/Cmk-eD-locales_X-img/Cmk-eD-is-ksym_Xm.png -------------------------------------------------------------------------------- /docs_dreymar-xmod/Cmk-eD-locales_X-img/Cmk-eD-it-ksym_Xm.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DreymaR/BigBagKbdTrixXKB/HEAD/docs_dreymar-xmod/Cmk-eD-locales_X-img/Cmk-eD-it-ksym_Xm.png -------------------------------------------------------------------------------- /docs_dreymar-xmod/Cmk-eD-locales_X-img/Cmk-eD-nl-ksym_Xm.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DreymaR/BigBagKbdTrixXKB/HEAD/docs_dreymar-xmod/Cmk-eD-locales_X-img/Cmk-eD-nl-ksym_Xm.png -------------------------------------------------------------------------------- /docs_dreymar-xmod/Cmk-eD-locales_X-img/Cmk-eD-no-ksym_Xm.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DreymaR/BigBagKbdTrixXKB/HEAD/docs_dreymar-xmod/Cmk-eD-locales_X-img/Cmk-eD-no-ksym_Xm.png -------------------------------------------------------------------------------- /docs_dreymar-xmod/Cmk-eD-locales_X-img/Cmk-eD-pl-ksym_Xm.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DreymaR/BigBagKbdTrixXKB/HEAD/docs_dreymar-xmod/Cmk-eD-locales_X-img/Cmk-eD-pl-ksym_Xm.png -------------------------------------------------------------------------------- /docs_dreymar-xmod/Cmk-eD-locales_X-img/Cmk-eD-pt-ksym_Xm.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DreymaR/BigBagKbdTrixXKB/HEAD/docs_dreymar-xmod/Cmk-eD-locales_X-img/Cmk-eD-pt-ksym_Xm.png -------------------------------------------------------------------------------- /docs_dreymar-xmod/Cmk-eD-locales_X-img/Cmk-eD-ro-ksym_Xm.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DreymaR/BigBagKbdTrixXKB/HEAD/docs_dreymar-xmod/Cmk-eD-locales_X-img/Cmk-eD-ro-ksym_Xm.png -------------------------------------------------------------------------------- /docs_dreymar-xmod/Cmk-eD-locales_X-img/Cmk-eD-se-ksym_Xm.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DreymaR/BigBagKbdTrixXKB/HEAD/docs_dreymar-xmod/Cmk-eD-locales_X-img/Cmk-eD-se-ksym_Xm.png -------------------------------------------------------------------------------- /docs_dreymar-xmod/Cmk-eD-locales_X-img/Cmk-eD-si-ksym_Xm.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DreymaR/BigBagKbdTrixXKB/HEAD/docs_dreymar-xmod/Cmk-eD-locales_X-img/Cmk-eD-si-ksym_Xm.png -------------------------------------------------------------------------------- /docs_dreymar-xmod/Cmk-eD-locales_X-img/Cmk-eD-sym-wide_Xm.xcf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DreymaR/BigBagKbdTrixXKB/HEAD/docs_dreymar-xmod/Cmk-eD-locales_X-img/Cmk-eD-sym-wide_Xm.xcf -------------------------------------------------------------------------------- /docs_dreymar-xmod/Cmk-eD-locales_X-img/Cmk-eD-tr-ksym_Xm.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DreymaR/BigBagKbdTrixXKB/HEAD/docs_dreymar-xmod/Cmk-eD-locales_X-img/Cmk-eD-tr-ksym_Xm.png -------------------------------------------------------------------------------- /docs_dreymar-xmod/Cmk-eD-locales_X-img/Cmk-eD-usym-aw_Xm.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DreymaR/BigBagKbdTrixXKB/HEAD/docs_dreymar-xmod/Cmk-eD-locales_X-img/Cmk-eD-usym-aw_Xm.png -------------------------------------------------------------------------------- /docs_dreymar-xmod/Cmk-eD-locales_X-img/Cmk-eD-usym-aw_Xmc.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DreymaR/BigBagKbdTrixXKB/HEAD/docs_dreymar-xmod/Cmk-eD-locales_X-img/Cmk-eD-usym-aw_Xmc.png -------------------------------------------------------------------------------- /docs_dreymar-xmod/Cmk-eD-locales_X-img/Cmk-eD-al-usym-aw_Xm.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DreymaR/BigBagKbdTrixXKB/HEAD/docs_dreymar-xmod/Cmk-eD-locales_X-img/Cmk-eD-al-usym-aw_Xm.png -------------------------------------------------------------------------------- /docs_dreymar-xmod/Cmk-eD-locales_X-img/Cmk-eD-al-usym-aw_Xmc.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DreymaR/BigBagKbdTrixXKB/HEAD/docs_dreymar-xmod/Cmk-eD-locales_X-img/Cmk-eD-al-usym-aw_Xmc.png -------------------------------------------------------------------------------- /docs_dreymar-xmod/Cmk-eD-locales_X-img/Cmk-eD-at+de-ksym_Xm.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DreymaR/BigBagKbdTrixXKB/HEAD/docs_dreymar-xmod/Cmk-eD-locales_X-img/Cmk-eD-at+de-ksym_Xm.png -------------------------------------------------------------------------------- /docs_dreymar-xmod/Cmk-eD-locales_X-img/Cmk-eD-ba+rs-ksym_Xm.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DreymaR/BigBagKbdTrixXKB/HEAD/docs_dreymar-xmod/Cmk-eD-locales_X-img/Cmk-eD-ba+rs-ksym_Xm.png -------------------------------------------------------------------------------- /docs_dreymar-xmod/Cmk-eD-locales_X-img/Cmk-eD-cz-usym-aw_Xm.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DreymaR/BigBagKbdTrixXKB/HEAD/docs_dreymar-xmod/Cmk-eD-locales_X-img/Cmk-eD-cz-usym-aw_Xm.png -------------------------------------------------------------------------------- /docs_dreymar-xmod/Cmk-eD-locales_X-img/Cmk-eD-cz-usym-aw_Xmc.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DreymaR/BigBagKbdTrixXKB/HEAD/docs_dreymar-xmod/Cmk-eD-locales_X-img/Cmk-eD-cz-usym-aw_Xmc.png -------------------------------------------------------------------------------- /docs_dreymar-xmod/Cmk-eD-locales_X-img/Cmk-eD-hu-usym-aw_Xm.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DreymaR/BigBagKbdTrixXKB/HEAD/docs_dreymar-xmod/Cmk-eD-locales_X-img/Cmk-eD-hu-usym-aw_Xm.png -------------------------------------------------------------------------------- /docs_dreymar-xmod/Cmk-eD-locales_X-img/Cmk-eD-hu-usym-aw_Xmc.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DreymaR/BigBagKbdTrixXKB/HEAD/docs_dreymar-xmod/Cmk-eD-locales_X-img/Cmk-eD-hu-usym-aw_Xmc.png -------------------------------------------------------------------------------- /docs_dreymar-xmod/Cmk-eD-locales_X-img/Cmk-eD-is-usym-aw_Xm.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DreymaR/BigBagKbdTrixXKB/HEAD/docs_dreymar-xmod/Cmk-eD-locales_X-img/Cmk-eD-is-usym-aw_Xm.png -------------------------------------------------------------------------------- /docs_dreymar-xmod/Cmk-eD-locales_X-img/Cmk-eD-is-usym-aw_Xmc.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DreymaR/BigBagKbdTrixXKB/HEAD/docs_dreymar-xmod/Cmk-eD-locales_X-img/Cmk-eD-is-usym-aw_Xmc.png -------------------------------------------------------------------------------- /docs_dreymar-xmod/Cmk-eD-locales_X-img/Cmk-eD-it-usym-aw_Xm.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DreymaR/BigBagKbdTrixXKB/HEAD/docs_dreymar-xmod/Cmk-eD-locales_X-img/Cmk-eD-it-usym-aw_Xm.png -------------------------------------------------------------------------------- /docs_dreymar-xmod/Cmk-eD-locales_X-img/Cmk-eD-it-usym-aw_Xmc.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DreymaR/BigBagKbdTrixXKB/HEAD/docs_dreymar-xmod/Cmk-eD-locales_X-img/Cmk-eD-it-usym-aw_Xmc.png -------------------------------------------------------------------------------- /docs_dreymar-xmod/Cmk-eD-locales_X-img/Cmk-eD-latam-ksym_Xm.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DreymaR/BigBagKbdTrixXKB/HEAD/docs_dreymar-xmod/Cmk-eD-locales_X-img/Cmk-eD-latam-ksym_Xm.png -------------------------------------------------------------------------------- /docs_dreymar-xmod/Cmk-eD-locales_X-img/Cmk-eD-nl-usym-aw_Xm.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DreymaR/BigBagKbdTrixXKB/HEAD/docs_dreymar-xmod/Cmk-eD-locales_X-img/Cmk-eD-nl-usym-aw_Xm.png -------------------------------------------------------------------------------- /docs_dreymar-xmod/Cmk-eD-locales_X-img/Cmk-eD-nl-usym-aw_Xmc.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DreymaR/BigBagKbdTrixXKB/HEAD/docs_dreymar-xmod/Cmk-eD-locales_X-img/Cmk-eD-nl-usym-aw_Xmc.png -------------------------------------------------------------------------------- /docs_dreymar-xmod/Cmk-eD-locales_X-img/Cmk-eD-pl-ksym_Xm-old.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DreymaR/BigBagKbdTrixXKB/HEAD/docs_dreymar-xmod/Cmk-eD-locales_X-img/Cmk-eD-pl-ksym_Xm-old.png -------------------------------------------------------------------------------- /docs_dreymar-xmod/Cmk-eD-locales_X-img/Cmk-eD-pl-usym-aw_Xm.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DreymaR/BigBagKbdTrixXKB/HEAD/docs_dreymar-xmod/Cmk-eD-locales_X-img/Cmk-eD-pl-usym-aw_Xm.png -------------------------------------------------------------------------------- /docs_dreymar-xmod/Cmk-eD-locales_X-img/Cmk-eD-pl-usym-aw_Xmc.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DreymaR/BigBagKbdTrixXKB/HEAD/docs_dreymar-xmod/Cmk-eD-locales_X-img/Cmk-eD-pl-usym-aw_Xmc.png -------------------------------------------------------------------------------- /docs_dreymar-xmod/Cmk-eD-locales_X-img/Cmk-eD-ro-usym-aw_Xm.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DreymaR/BigBagKbdTrixXKB/HEAD/docs_dreymar-xmod/Cmk-eD-locales_X-img/Cmk-eD-ro-usym-aw_Xm.png -------------------------------------------------------------------------------- /docs_dreymar-xmod/Cmk-eD-locales_X-img/Cmk-eD-ro-usym-aw_Xmc.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DreymaR/BigBagKbdTrixXKB/HEAD/docs_dreymar-xmod/Cmk-eD-locales_X-img/Cmk-eD-ro-usym-aw_Xmc.png -------------------------------------------------------------------------------- /docs_dreymar-xmod/Cmk-eD-locales_X-img/Cmk-eD-tr-usym-aw_Xm.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DreymaR/BigBagKbdTrixXKB/HEAD/docs_dreymar-xmod/Cmk-eD-locales_X-img/Cmk-eD-tr-usym-aw_Xm.png -------------------------------------------------------------------------------- /docs_dreymar-xmod/Cmk-eD-locales_X-img/Cmk-eD-tr-usym-aw_Xmc.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DreymaR/BigBagKbdTrixXKB/HEAD/docs_dreymar-xmod/Cmk-eD-locales_X-img/Cmk-eD-tr-usym-aw_Xmc.png -------------------------------------------------------------------------------- /docs_dreymar-xmod/Cmk-eD-locales_X-img/Cmk-eD-at+de-usym-aw_Xm.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DreymaR/BigBagKbdTrixXKB/HEAD/docs_dreymar-xmod/Cmk-eD-locales_X-img/Cmk-eD-at+de-usym-aw_Xm.png -------------------------------------------------------------------------------- /docs_dreymar-xmod/Cmk-eD-locales_X-img/Cmk-eD-br+pt-usym-aw_Xm.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DreymaR/BigBagKbdTrixXKB/HEAD/docs_dreymar-xmod/Cmk-eD-locales_X-img/Cmk-eD-br+pt-usym-aw_Xm.png -------------------------------------------------------------------------------- /docs_dreymar-xmod/Cmk-eD-locales_X-img/Cmk-eD-dk+no-usym-aw_Xm.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DreymaR/BigBagKbdTrixXKB/HEAD/docs_dreymar-xmod/Cmk-eD-locales_X-img/Cmk-eD-dk+no-usym-aw_Xm.png -------------------------------------------------------------------------------- /docs_dreymar-xmod/Cmk-eD-locales_X-img/Cmk-eD-fi+se-usym-aw_Xm.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DreymaR/BigBagKbdTrixXKB/HEAD/docs_dreymar-xmod/Cmk-eD-locales_X-img/Cmk-eD-fi+se-usym-aw_Xm.png -------------------------------------------------------------------------------- /docs_dreymar-xmod/Cmk-eD-locales_X-img/Cmk-eD-gb+us-usym-aw_Xm.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DreymaR/BigBagKbdTrixXKB/HEAD/docs_dreymar-xmod/Cmk-eD-locales_X-img/Cmk-eD-gb+us-usym-aw_Xm.png -------------------------------------------------------------------------------- /docs_dreymar-xmod/Cmk-phon-locales_X-img/Cmk-X-phon-bg_2015-02.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DreymaR/BigBagKbdTrixXKB/HEAD/docs_dreymar-xmod/Cmk-phon-locales_X-img/Cmk-X-phon-bg_2015-02.png -------------------------------------------------------------------------------- /docs_dreymar-xmod/Cmk-phon-locales_X-img/Cmk-X-phon-ru_2015-02.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DreymaR/BigBagKbdTrixXKB/HEAD/docs_dreymar-xmod/Cmk-phon-locales_X-img/Cmk-X-phon-ru_2015-02.png -------------------------------------------------------------------------------- /docs_dreymar-xmod/Cmk-eD-locales_X-img/Cmk-eD-at+de-usym-aw_Xmc.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DreymaR/BigBagKbdTrixXKB/HEAD/docs_dreymar-xmod/Cmk-eD-locales_X-img/Cmk-eD-at+de-usym-aw_Xmc.png -------------------------------------------------------------------------------- /docs_dreymar-xmod/Cmk-eD-locales_X-img/Cmk-eD-be+ca+fr-usym-aw_Xm.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DreymaR/BigBagKbdTrixXKB/HEAD/docs_dreymar-xmod/Cmk-eD-locales_X-img/Cmk-eD-be+ca+fr-usym-aw_Xm.png -------------------------------------------------------------------------------- /docs_dreymar-xmod/Cmk-eD-locales_X-img/Cmk-eD-br+pt-usym-aw_Xmc.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DreymaR/BigBagKbdTrixXKB/HEAD/docs_dreymar-xmod/Cmk-eD-locales_X-img/Cmk-eD-br+pt-usym-aw_Xmc.png -------------------------------------------------------------------------------- /docs_dreymar-xmod/Cmk-eD-locales_X-img/Cmk-eD-dk+no-usym-aw_Xmc.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DreymaR/BigBagKbdTrixXKB/HEAD/docs_dreymar-xmod/Cmk-eD-locales_X-img/Cmk-eD-dk+no-usym-aw_Xmc.png -------------------------------------------------------------------------------- /docs_dreymar-xmod/Cmk-eD-locales_X-img/Cmk-eD-es+latam-usym-aw_Xm.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DreymaR/BigBagKbdTrixXKB/HEAD/docs_dreymar-xmod/Cmk-eD-locales_X-img/Cmk-eD-es+latam-usym-aw_Xm.png -------------------------------------------------------------------------------- /docs_dreymar-xmod/Cmk-eD-locales_X-img/Cmk-eD-fi+se-usym-aw_Xmc.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DreymaR/BigBagKbdTrixXKB/HEAD/docs_dreymar-xmod/Cmk-eD-locales_X-img/Cmk-eD-fi+se-usym-aw_Xmc.png -------------------------------------------------------------------------------- /docs_dreymar-xmod/Cmk-eD-locales_X-img/Cmk-eD-gb+us-usym-aw_Xmc.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DreymaR/BigBagKbdTrixXKB/HEAD/docs_dreymar-xmod/Cmk-eD-locales_X-img/Cmk-eD-gb+us-usym-aw_Xmc.png -------------------------------------------------------------------------------- /docs_dreymar-xmod/Cmk-eD-locales_X-img/Cmk-eD-at+de-usym-aw_Xm-old.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DreymaR/BigBagKbdTrixXKB/HEAD/docs_dreymar-xmod/Cmk-eD-locales_X-img/Cmk-eD-at+de-usym-aw_Xm-old.png -------------------------------------------------------------------------------- /docs_dreymar-xmod/Cmk-eD-locales_X-img/Cmk-eD-be+ca+fr-usym-aw_Xmc.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DreymaR/BigBagKbdTrixXKB/HEAD/docs_dreymar-xmod/Cmk-eD-locales_X-img/Cmk-eD-be+ca+fr-usym-aw_Xmc.png -------------------------------------------------------------------------------- /docs_dreymar-xmod/Cmk-eD-locales_X-img/Cmk-eD-es+latam-usym-aw_Xmc.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DreymaR/BigBagKbdTrixXKB/HEAD/docs_dreymar-xmod/Cmk-eD-locales_X-img/Cmk-eD-es+latam-usym-aw_Xmc.png -------------------------------------------------------------------------------- /docs_dreymar-xmod/Cmk-eD-locales_X-img/Cmk-eD-ba+hr+rs+si-usym-aw_Xm.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DreymaR/BigBagKbdTrixXKB/HEAD/docs_dreymar-xmod/Cmk-eD-locales_X-img/Cmk-eD-ba+hr+rs+si-usym-aw_Xm.png -------------------------------------------------------------------------------- /docs_dreymar-xmod/Cmk-eD-locales_X-img/Cmk-eD-ba+hr+rs+si-usym-aw_Xmc.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DreymaR/BigBagKbdTrixXKB/HEAD/docs_dreymar-xmod/Cmk-eD-locales_X-img/Cmk-eD-ba+hr+rs+si-usym-aw_Xmc.png -------------------------------------------------------------------------------- /docs_dreymar-xmod/Cmk-phon-locales_X-img/Cmk-X-phon-gr-awide-sl_mask.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DreymaR/BigBagKbdTrixXKB/HEAD/docs_dreymar-xmod/Cmk-phon-locales_X-img/Cmk-X-phon-gr-awide-sl_mask.png -------------------------------------------------------------------------------- /docs_dreymar-xmod/Cmk-phon-locales_X-img/Cmk-X-phon-il-awide-sl_mask.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DreymaR/BigBagKbdTrixXKB/HEAD/docs_dreymar-xmod/Cmk-phon-locales_X-img/Cmk-X-phon-il-awide-sl_mask.png -------------------------------------------------------------------------------- /xkb-data_orig/xkb/symbols/at: -------------------------------------------------------------------------------- 1 | default 2 | xkb_symbols "basic" { 3 | 4 | include "de(basic)" 5 | 6 | name[Group1]="German (Austria)"; 7 | }; 8 | 9 | partial alphanumeric_keys 10 | xkb_symbols "nodeadkeys" { 11 | 12 | include "de(nodeadkeys)" 13 | 14 | name[Group1]="German (Austria, no dead keys)"; 15 | }; 16 | 17 | partial alphanumeric_keys 18 | xkb_symbols "mac" { 19 | 20 | include "de(mac)" 21 | 22 | name[Group1]= "German (Austria, Macintosh)"; 23 | }; 24 | -------------------------------------------------------------------------------- /xkb-data_orig/README.md: -------------------------------------------------------------------------------- 1 | XKB data for DreymaR's Big Bag of Keyboard Tricks 2 | ================================================= 3 | 4 | VERSION: 5 | -------- 6 | File description: Selected original xkb-data files from current Debian (Sid), as of 2023-05 7 | Files taken from: https://debian.pkgs.org/sid/debian-main-amd64/xkb-data_2.35.1-1_all.deb.html 8 | xkb-data version: 2.35.1-1_all_eD 9 | Files repository: https://gitlab.freedesktop.org/xkeyboard-config/xkeyboard-config 10 | XKB archive date: 2022-04-05 11 | Changes to files: Cherry-picked commit bc927671 "symbols/latam: remove a hobbled Colemak variant" (2022-07-04) 12 | -------------------------------------------------------------------------------- /xkb-data_orig/xkb/symbols/si: -------------------------------------------------------------------------------- 1 | default partial alphanumeric_keys 2 | xkb_symbols "basic" { 3 | 4 | include "rs(latin)" 5 | 6 | name[Group1]="Slovenian"; 7 | 8 | key { type[Group1]="TWO_LEVEL", [ cedilla, diaeresis ] }; 9 | }; 10 | 11 | partial alphanumeric_keys 12 | xkb_symbols "us" { 13 | 14 | include "rs(latinyz)" 15 | 16 | name[Group1]= "Slovenian (US)"; 17 | 18 | key { type[Group1]="TWO_LEVEL", [ cedilla, diaeresis ] }; 19 | }; 20 | 21 | partial alphanumeric_keys 22 | xkb_symbols "alternatequotes" { 23 | 24 | include "rs(latinalternatequotes)" 25 | 26 | name[Group1]= "Slovenian (with guillemets)"; 27 | 28 | key { type[Group1]="TWO_LEVEL", [ cedilla, diaeresis ] }; 29 | }; 30 | -------------------------------------------------------------------------------- /dreymar-xtools/key-xev.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | # ===================================================== 4 | # === XEV.sh for DreymaR's XKB modifications === 5 | # === by Øystein Bech "DreymaR" Gadmar, 2014 === 6 | # ===================================================== 7 | # 8 | # Shell script to run a keypress-specific XEV 9 | # 10 | # Usage: 'sh [scriptpath]' or 11 | # allow executing file then run in a term window 12 | # 13 | # Happy xkb-hacking! 14 | 15 | #---------- init -------------------------------------- 16 | SETXKB='setxkbmap -print -v 7' 17 | 18 | #---------- main -------------------------------------- 19 | echo "*** Running $XEV: ***" 20 | xev | sed -ne '/^KeyPress/,/^$/p' 21 | echo "\n*** Press to finish: ***" 22 | read dummy 23 | 24 | -------------------------------------------------------------------------------- /xkb-data_orig/xkb/symbols/ba: -------------------------------------------------------------------------------- 1 | default partial alphanumeric_keys 2 | xkb_symbols "basic" { 3 | 4 | include "rs(latin)" 5 | name[Group1]="Bosnian"; 6 | }; 7 | 8 | partial alphanumeric_keys 9 | xkb_symbols "us" { 10 | 11 | include "rs(latinyz)" 12 | name[Group1]= "Bosnian (US)"; 13 | }; 14 | 15 | partial alphanumeric_keys 16 | xkb_symbols "alternatequotes" { 17 | 18 | include "rs(latinalternatequotes)" 19 | name[Group1]= "Bosnian (with guillemets)"; 20 | }; 21 | 22 | partial alphanumeric_keys 23 | xkb_symbols "unicode" { 24 | 25 | include "rs(latinunicode)" 26 | name[Group1]= "Bosnian (with Bosnian digraphs)"; 27 | }; 28 | 29 | partial alphanumeric_keys 30 | xkb_symbols "unicodeus" { 31 | 32 | include "rs(latinunicodeyz)" 33 | name[Group1]= "Bosnian (US, with Bosnian digraphs)"; 34 | }; 35 | -------------------------------------------------------------------------------- /dreymar-xtools/sample_etc-default-keyboard: -------------------------------------------------------------------------------- 1 | # If you change any of the following variables and X is configured to 2 | # use this file, then the changes will become visible to X only if udev 3 | # is restarted. You may need to reboot the system. 4 | 5 | # The following variables describe your keyboard and can have the same 6 | # values as the XkbModel, XkbLayout, XkbVariant and XkbOptions options 7 | # in /etc/X11/xorg.conf. 8 | 9 | #XKBMODEL="pc105" 10 | XKBMODEL="pc105caw-sl" 11 | XKBLAYOUT="no,no" 12 | XKBVARIANT="cmk_ed_us," 13 | XKBOPTIONS="compose:menu,terminate:ctrl_alt_bksp,grp_led:scroll,lv5:caps_switch_lock,misc:extend,misc:cmk_curl_dh" 14 | 15 | # If you don't want to use the XKB layout on the console, you can 16 | # specify an alternative keymap. Make sure it will be accessible 17 | # before /usr is mounted. 18 | # KMAP=/etc/console-setup/defkeymap.kmap.gz 19 | 20 | -------------------------------------------------------------------------------- /LICENSE.md: -------------------------------------------------------------------------------- 1 | Copyright 2016, Øystein Bech Gadmar (a.k.a. "DreymaR"). From 2021, Øystein Bech-Aase. 2 | 3 | Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: 4 | 5 | The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. 6 | 7 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 8 | -------------------------------------------------------------------------------- /.gitattributes: -------------------------------------------------------------------------------- 1 | # Set the default behavior, in case people don't have core.autocrlf set: 2 | * text=auto 3 | 4 | # Declare text files that will always be normalized and converted 5 | # to native line endings on checkout: 6 | *.txt text 7 | *.md text 8 | *.c text 9 | *.h text 10 | *.cpp text 11 | *.hpp text 12 | *.c++ text 13 | *.h++ text 14 | *.bat text 15 | *.css text 16 | *.htm text 17 | *.html text 18 | *.xml text 19 | *.yaml text 20 | *.ini text 21 | *.hex text 22 | LICENSE text 23 | 24 | # Declare files that will always have LF/CRLF line endings on checkout: 25 | *.svg text eol=lf 26 | *.sh text eol=lf 27 | *.mk text eol=lf 28 | *.py text eol=lf 29 | 30 | # Declare files that are truly binary and should not be modified: 31 | *.png binary 32 | *.jpg binary 33 | *.jpeg binary 34 | *.gif binary 35 | *.tif binary 36 | *.tiff binary 37 | *.ico binary 38 | *.png binary 39 | *.pdf binary 40 | *.zip binary 41 | *.tar binary 42 | *.gz binary 43 | *.tgz binary 44 | -------------------------------------------------------------------------------- /dreymar-xtools/show-xkb.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | # ===================================================== 4 | # === SHOW-XKB.sh for DreymaR's XKB modifications === 5 | # === by Øystein Bech "DreymaR" Gadmar, 2012 === 6 | # ===================================================== 7 | # 8 | # Shell script to show the active Gnome XKB settings 9 | # 10 | # Usage: 'sudo sh [scriptpath]' or 11 | # allow executing file then run in a term window 12 | # 13 | # Happy xkb-hacking! 14 | 15 | HeadStr="DreymaR's Show XKB info script (by GadOE, 2014)" 16 | 17 | #-------------- functions and line parser --------------------- 18 | 19 | MyMsg() 20 | { 21 | printf "\n••• $1 •••\n\n" 22 | } 23 | 24 | MyEcho() 25 | { 26 | printf "$1\n" 27 | [ -z "$2" ] || printf "$1\n" >> "$2" 28 | } 29 | 30 | #---------- init -------------------------------------- 31 | HDR='Output from ' 32 | XPROP='xprop -root | grep "XKB"' 33 | GSETT='gsettings list-recursively org.gnome.libgnomekbd.keyboard' 34 | SETXK='setxkbmap -print' # -v 9' 35 | 36 | #---------- main -------------------------------------- 37 | 38 | MyMsg "$HeadStr" 39 | 40 | MyMsg "$HDR'$XPROP':" 41 | eval "$XPROP" 42 | #echo "`$XPROP`" | grep "XKB" 43 | MyMsg "$HDR'$GSETT':" 44 | eval "$GSETT" 45 | MyMsg "$HDR'$SETXK':" 46 | eval "$SETXK" 47 | MyMsg "Press any key to finish:" 48 | read -n 1 49 | -------------------------------------------------------------------------------- /dreymar-xtools/xkbmodel-pc105.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | # ====================================================== 4 | # === XMODEL.sh to set the XKB keyboard model === 5 | # === by Øystein Bech "DreymaR" Gadmar, 2013 === 6 | # ====================================================== 7 | # 8 | 9 | #---------- init -------------------------------------- 10 | #XKBmodel='pc104' 11 | #XKBmodel='pc104angle-z' 12 | #XKBmodel='pc104wide-qu' 13 | #XKBmodel='pc104aw-zqu' 14 | #XKBmodel='pc104curl-z' 15 | #XKBmodel='pc104caw-zqu' 16 | XKBmodel='pc105' 17 | #XKBmodel='pc105angle' 18 | #XKBmodel='pc105aw-sl' 19 | #XKBmodel='pc105caw-sl' 20 | VerboseLvl=9 21 | UsageStr="sh $0 [-m model]" 22 | HelpStr="Usage: $UsageStr\n"\ 23 | "*** Please read this script's comments for info on how it works ***" 24 | 25 | #---------- subroutines ------------------------------- 26 | PrintHelpAndExit() 27 | { 28 | printf "\n$HelpStr\n" 29 | exit $1 30 | } 31 | 32 | #---------- command line parser ----------------------- 33 | while getopts "m:v:h" cmdarg; do 34 | case $cmdarg in 35 | m) XKBmodel="$OPTARG" ;; 36 | v) VerboseLvl="$OPTARG" ;; 37 | h) PrintHelpAndExit 1 ;; 38 | \?) PrintHelpAndExit 2 ;; 39 | esac 40 | done 41 | 42 | #---------- main -------------------------------------- 43 | 44 | setxkbmap -model $XKBmodel -v $VerboseLvl 45 | -------------------------------------------------------------------------------- /dreymar-xtools/xkbmodel-awide-sl.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | # ====================================================== 4 | # === XMODEL.sh to set the XKB keyboard model === 5 | # === by Øystein Bech "DreymaR" Gadmar, 2013 === 6 | # ====================================================== 7 | # 8 | 9 | #---------- init -------------------------------------- 10 | #XKBmodel='pc104' 11 | #XKBmodel='pc104angle-z' 12 | #XKBmodel='pc104wide-qu' 13 | #XKBmodel='pc104aw-zqu' 14 | #XKBmodel='pc104curl-z' 15 | #XKBmodel='pc104caw-zqu' 16 | #XKBmodel='pc105' 17 | #XKBmodel='pc105angle' 18 | XKBmodel='pc105aw-sl' 19 | #XKBmodel='pc105caw-sl' 20 | VerboseLvl=9 21 | UsageStr="sh $0 [-m model]" 22 | HelpStr="Usage: $UsageStr\n"\ 23 | "*** Please read this script's comments for info on how it works ***" 24 | 25 | #---------- subroutines ------------------------------- 26 | PrintHelpAndExit() 27 | { 28 | printf "\n$HelpStr\n" 29 | exit $1 30 | } 31 | 32 | #---------- command line parser ----------------------- 33 | while getopts "m:v:h" cmdarg; do 34 | case $cmdarg in 35 | m) XKBmodel="$OPTARG" ;; 36 | v) VerboseLvl="$OPTARG" ;; 37 | h) PrintHelpAndExit 1 ;; 38 | \?) PrintHelpAndExit 2 ;; 39 | esac 40 | done 41 | 42 | #---------- main -------------------------------------- 43 | 44 | setxkbmap -model $XKBmodel -v $VerboseLvl 45 | -------------------------------------------------------------------------------- /xkb-data_xmod/xkb/symbols/at: -------------------------------------------------------------------------------- 1 | default 2 | xkb_symbols "basic" { 3 | 4 | include "de(basic)" 5 | 6 | name[Group1]="German (Austria)"; 7 | }; 8 | 9 | partial alphanumeric_keys 10 | xkb_symbols "nodeadkeys" { 11 | 12 | include "de(nodeadkeys)" 13 | 14 | name[Group1]="German (Austria, no dead keys)"; 15 | }; 16 | 17 | partial alphanumeric_keys 18 | xkb_symbols "mac" { 19 | 20 | include "de(mac)" 21 | 22 | name[Group1]= "German (Austria, Macintosh)"; 23 | }; 24 | 25 | // >>--> DreymaR (OEystein Bech-Aase, formerly Bech Gadmar), 2014-01: Additions to xkb/symbols/at 26 | // Colemak[eD]: National/locale Colemak "edition DreymaR" variants for German (Austria). 27 | // 2006-01-01 Shai Coleman http://colemak.com/ (Public Domain) : The Colemak keyboard layout. 28 | // See the Big Bag section on Cmk[eD] locales: https://dreymar.colemak.org/variants.html#locales 29 | 30 | // The 'keep local symbols' variant keeps the national symbol and special letter setup. 31 | partial alphanumeric_keys 32 | xkb_symbols "cmk_ed_ks" { 33 | include "de(cmk_ed_ks)" 34 | name[Group1]= "German (Austria, Colemak[eD], keep local symbols)"; 35 | }; 36 | 37 | // The 'us' variant uses the US-type symbol key setup (recommended!) as it is nearly an intl. standard. 38 | // For German (Austria), necessary local letters are added to designated flexible spots in the layout. 39 | // NOTE: German(de) and German(at) layouts are harmonized. 40 | partial alphanumeric_keys 41 | xkb_symbols "cmk_ed_us" { 42 | include "de(cmk_ed_us)" 43 | name[Group1]= "German (Austria, Colemak[eD], unified symbols)"; 44 | }; 45 | // <--<< DreymaR: Additions to xkb/symbols/at 46 | -------------------------------------------------------------------------------- /dreymar-xtools/README_gtk_edit.txt: -------------------------------------------------------------------------------- 1 | MAKING THE CUT/COPY/PASTE KEYS WORK WITH GTK APPS: 2 | ************************************************** 3 | 4 | by DreymaR, 2013 (thanks to Kuglee on the Colemak forum!) 5 | 6 | - With my Extend mappings for instance, you can make the keyboard send multimedia keys 7 | - These have virtual key names XF86### where ### is Cut/Copy/Paste for my X/C/V mappings 8 | - Those keys are sent to the system but not all of them do anything useful automatically 9 | - The snippets below tell GTK to map the edit keys to actions so they work (in GTK apps at least) 10 | - Copy the gtkrc-2.0 part into ~/.gtkrc-2.0 (make a new file if you don't have it) for gtk-2 11 | - Copy the gtk.css part into ~/.config/gtk-3.0/gtk.css for gtk-3 12 | - (If you're new to this, note the initial periods in the file/folder names: That means hidden.) 13 | 14 | # Old method: I used to enclose the below as separate files. Now, the install script contains all. 15 | # Using those files, the following commands would install them (run from their dir): 16 | # cat gtkrc-2.0 >> ~/.gtkrc-2.0 17 | # cat gtk.css >> ~/.config/gtk-3.0/gtk.css 18 | 19 | 20 | CONTENT OF THE NECESSARY FILES: 21 | ****************************** 22 | 23 | ~/.gtkrc-2.0 24 | ######################### 25 | binding "gtk-xf86cut-copy-paste" 26 | { 27 | bind "XF86Cut" { "cut-clipboard" () } 28 | bind "XF86Copy" { "copy-clipboard" () } 29 | bind "XF86Paste" { "paste-clipboard" () } 30 | } 31 | 32 | class "*" binding "gtk-xf86cut-copy-paste" 33 | ######################### 34 | 35 | ~/.config/gtk-3.0/gtk.css 36 | ######################### 37 | @binding-set gtk-xf86cut-copy-paste 38 | { 39 | bind "XF86Cut" { "cut-clipboard" () }; 40 | bind "XF86Copy" { "copy-clipboard" () }; 41 | bind "XF86Paste" { "paste-clipboard" () }; 42 | } 43 | 44 | * { 45 | gtk-key-bindings: gtk-xf86cut-copy-paste 46 | } 47 | ######################### 48 | 49 | -------------------------------------------------------------------------------- /xkb-data_xmod/xkb/symbols/ba: -------------------------------------------------------------------------------- 1 | default partial alphanumeric_keys 2 | xkb_symbols "basic" { 3 | 4 | include "rs(latin)" 5 | name[Group1]="Bosnian"; 6 | }; 7 | 8 | partial alphanumeric_keys 9 | xkb_symbols "us" { 10 | 11 | include "rs(latinyz)" 12 | name[Group1]= "Bosnian (US)"; 13 | }; 14 | 15 | partial alphanumeric_keys 16 | xkb_symbols "alternatequotes" { 17 | 18 | include "rs(latinalternatequotes)" 19 | name[Group1]= "Bosnian (with guillemets)"; 20 | }; 21 | 22 | partial alphanumeric_keys 23 | xkb_symbols "unicode" { 24 | 25 | include "rs(latinunicode)" 26 | name[Group1]= "Bosnian (with Bosnian digraphs)"; 27 | }; 28 | 29 | partial alphanumeric_keys 30 | xkb_symbols "unicodeus" { 31 | 32 | include "rs(latinunicodeyz)" 33 | name[Group1]= "Bosnian (US, with Bosnian digraphs)"; 34 | }; 35 | 36 | // >>--> DreymaR (OEystein Bech-Aase, formerly Bech Gadmar), 2014-10: Additions to xkb/symbols/ba 37 | // Colemak[eD]: National/locale Colemak "edition DreymaR" variants for Bosnian. 38 | // 2006-01-01 Shai Coleman http://colemak.com/ (Public Domain) : The Colemak keyboard layout. 39 | // See the Big Bag section on Cmk[eD] locales: https://dreymar.colemak.org/variants.html#locales 40 | 41 | // The 'keep local symbols' variant keeps the national symbol and special letter setup. 42 | partial alphanumeric_keys 43 | xkb_symbols "cmk_ed_ks" { 44 | include "rs(cmk_ed_ks)" 45 | name[Group1]= "Bosnian (Colemak[eD], keep local symbols)"; 46 | }; 47 | 48 | // The 'us' variant uses the US-type symbol key setup (recommended!) as it is nearly an intl. standard. 49 | // For Bosnian, necessary local letters are added to designated flexible spots in the layout. 50 | // NOTE: - Bosnian(ba), Croatian(hr), Slovenian(si) and Serbian(sr) layouts are harmonized. 51 | partial alphanumeric_keys 52 | xkb_symbols "cmk_ed_us" { 53 | include "rs(cmk_ed_us)" 54 | name[Group1]= "Bosnian (Colemak[eD], unified symbols)"; 55 | }; 56 | // <--<< DreymaR: Additions to xkb/symbols/ba 57 | -------------------------------------------------------------------------------- /xkb-data_xmod/xkb/symbols/si: -------------------------------------------------------------------------------- 1 | default partial alphanumeric_keys 2 | xkb_symbols "basic" { 3 | 4 | include "rs(latin)" 5 | 6 | name[Group1]="Slovenian"; 7 | 8 | key { type[Group1]="TWO_LEVEL", [ cedilla, diaeresis ] }; 9 | }; 10 | 11 | partial alphanumeric_keys 12 | xkb_symbols "us" { 13 | 14 | include "rs(latinyz)" 15 | 16 | name[Group1]= "Slovenian (US)"; 17 | 18 | key { type[Group1]="TWO_LEVEL", [ cedilla, diaeresis ] }; 19 | }; 20 | 21 | partial alphanumeric_keys 22 | xkb_symbols "alternatequotes" { 23 | 24 | include "rs(latinalternatequotes)" 25 | 26 | name[Group1]= "Slovenian (with guillemets)"; 27 | 28 | key { type[Group1]="TWO_LEVEL", [ cedilla, diaeresis ] }; 29 | }; 30 | 31 | // >>--> DreymaR (OEystein Bech-Aase, formerly Bech Gadmar), 2014-10: Additions to xkb/symbols/si 32 | // Colemak[eD]: National/locale Colemak "edition DreymaR" variants for Slovenian. 33 | // 2006-01-01 Shai Coleman http://colemak.com/ (Public Domain) : The Colemak keyboard layout. 34 | // See the Big Bag section on Cmk[eD] locales: https://dreymar.colemak.org/variants.html#locales 35 | 36 | // The 'keep local symbols' variant keeps the national symbol and special letter setup. 37 | partial alphanumeric_keys 38 | xkb_symbols "cmk_ed_ks" { 39 | include "si(basic)" 40 | include "colemak(cmk_ed_letters)" 41 | name[Group1]= "Slovenian (Colemak[eD], keep local symbols)"; 42 | 43 | // NOTE: Symbols on letter keys may be lost in cmk_ed_ks if they are not on Colemak[eD] letter keys. 44 | // EuroSign is often on 'E'. The latin(intl) and locale(winkeys) layout variants use '5'. 45 | // Colemak[eD] has EuroSign on 'E' and mu on '5'. 46 | // key { [ NoSymbol, NoSymbol, mu, dead_abovering ] }; 47 | // key { [ NoSymbol, NoSymbol, EuroSign, dead_abovering ] }; // 'degree' is mapped on dead_abovering 48 | 49 | key { [ ccaron, Ccaron, dead_acute, dead_doubleacute ] }; // from 50 | }; 51 | 52 | // The 'us' variant uses the US-type symbol key setup (recommended!) as it is nearly an intl. standard. 53 | // For Slovenian, necessary local letters are added to designated flexible spots in the layout. 54 | // NOTE: - Bosnian(ba), Croatian(hr), Slovenian(si) and Serbian(sr) layouts are harmonized. 55 | partial alphanumeric_keys 56 | xkb_symbols "cmk_ed_us" { 57 | include "rs(cmk_ed_us)" 58 | name[Group1]= "Slovenian (Colemak[eD], unified symbols)"; 59 | }; 60 | // <--<< DreymaR: Additions to xkb/symbols/si 61 | -------------------------------------------------------------------------------- /xkb-data_orig/xkb/keycodes/aliases: -------------------------------------------------------------------------------- 1 | 2 | // keycode aliases for phonetic keyboard maps 3 | 4 | default 5 | xkb_keycodes "qwerty" { 6 | 7 | alias = ; 8 | alias = ; 9 | alias = ; 10 | alias = ; 11 | alias = ; 12 | alias = ; 13 | alias = ; 14 | alias = ; 15 | alias = ; 16 | alias = ; 17 | 18 | alias = ; 19 | alias = ; 20 | alias = ; 21 | alias = ; 22 | alias = ; 23 | alias = ; 24 | alias = ; 25 | alias = ; 26 | alias = ; 27 | 28 | alias = ; 29 | alias = ; 30 | alias = ; 31 | alias = ; 32 | alias = ; 33 | alias = ; 34 | alias = ; 35 | }; 36 | 37 | xkb_keycodes "azerty" { 38 | 39 | alias = ; 40 | alias = ; 41 | alias = ; 42 | alias = ; 43 | alias = ; 44 | alias = ; 45 | alias = ; 46 | alias = ; 47 | alias = ; 48 | alias = ; 49 | 50 | alias = ; 51 | alias = ; 52 | alias = ; 53 | alias = ; 54 | alias = ; 55 | alias = ; 56 | alias = ; 57 | alias = ; 58 | alias = ; 59 | alias = ; 60 | 61 | alias = ; 62 | alias = ; 63 | alias = ; 64 | alias = ; 65 | alias = ; 66 | alias = ; 67 | }; 68 | 69 | xkb_keycodes "qwertz" { 70 | 71 | alias = ; 72 | alias = ; 73 | alias = ; 74 | alias = ; 75 | alias = ; 76 | alias = ; 77 | alias = ; 78 | alias = ; 79 | alias = ; 80 | alias = ; 81 | 82 | alias = ; 83 | alias = ; 84 | alias = ; 85 | alias = ; 86 | alias = ; 87 | alias = ; 88 | alias = ; 89 | alias = ; 90 | alias = ; 91 | 92 | alias = ; 93 | alias = ; 94 | alias = ; 95 | alias = ; 96 | alias = ; 97 | alias = ; 98 | alias = ; 99 | }; 100 | -------------------------------------------------------------------------------- /xkb-data_orig/xkb/symbols/hr: -------------------------------------------------------------------------------- 1 | default partial alphanumeric_keys 2 | xkb_symbols "basic" { 3 | 4 | include "rs(latin)" 5 | name[Group1]="Croatian"; 6 | 7 | // Redefine these keys to match the XFree86 Croatian layout. 8 | key { [ 1, exclam, asciitilde, dead_tilde ] }; 9 | key { [ 3, numbersign, asciicircum, dead_circumflex ] }; 10 | key { [ 5, percent, degree, dead_abovering ] }; 11 | key { [ 7, slash, grave, dead_grave ] }; 12 | key { [ any, any, rightdoublequotemark, guillemotleft ] }; 13 | key { [ minus, underscore, dead_belowdot, dead_abovedot ] }; 14 | }; 15 | 16 | partial alphanumeric_keys 17 | xkb_symbols "us" { 18 | 19 | include "us" 20 | name[Group1]= "Croatian (US)"; 21 | 22 | key { [ any, any, backslash ] }; 23 | key { [ any, any, bar ] }; 24 | key { [ any, any, EuroSign ] }; 25 | key { [ any, any, z, Z ] }; 26 | key { [ any, any, scaron, Scaron ] }; 27 | key { [ any, any, dstroke, Dstroke ] }; 28 | key { [ any, any, bracketleft ] }; 29 | key { [ any, any, bracketright ] }; 30 | key { [ any, any, lstroke ] }; 31 | key { [ any, any, Lstroke ] }; 32 | key { [ any, any, ccaron, Ccaron ] }; 33 | key { [ any, any, cacute, Cacute ] }; 34 | key { [ any, any, bar ] }; 35 | key { [ any, any, y, Y ] }; 36 | key { [ any, any, at ] }; 37 | key { [ any, any, braceleft ] }; 38 | key { [ any, any, braceright ] }; 39 | key { [ any, any, section ] }; 40 | key { [ any, any, semicolon ] }; 41 | key { [ any, any, colon ] }; 42 | key { [ any, any, minus, underscore ] }; 43 | key { [ any, any, zcaron, Zcaron ] }; 44 | 45 | include "level3(ralt_switch)" 46 | }; 47 | 48 | partial alphanumeric_keys 49 | xkb_symbols "alternatequotes" { 50 | 51 | include "rs(latinalternatequotes)" 52 | name[Group1]= "Croatian (with guillemets)"; 53 | }; 54 | 55 | partial alphanumeric_keys 56 | xkb_symbols "unicode" { 57 | 58 | include "rs(latinunicode)" 59 | name[Group1]= "Croatian (with Croatian digraphs)"; 60 | }; 61 | 62 | partial alphanumeric_keys 63 | xkb_symbols "unicodeus" { 64 | 65 | include "rs(latinunicodeyz)" 66 | name[Group1]= "Croatian (US, with Croatian digraphs)"; 67 | }; 68 | -------------------------------------------------------------------------------- /xkb-data_orig/xkb/symbols/dk: -------------------------------------------------------------------------------- 1 | default partial alphanumeric_keys 2 | xkb_symbols "basic" { 3 | 4 | include "latin(type2)" 5 | 6 | name[Group1]="Danish"; 7 | 8 | key { [ plus, question, plusminus, questiondown ] }; 9 | key { [dead_acute, dead_grave, bar, brokenbar ] }; 10 | 11 | 12 | key { [ ae, AE, dead_acute, dead_doubleacute ] }; 13 | key { [ oslash, Ooblique, dead_circumflex, dead_caron ] }; 14 | key { [ onehalf, section, threequarters, paragraph ] }; 15 | 16 | key { [apostrophe, asterisk, dead_doubleacute, multiply ] }; 17 | 18 | key { [ less, greater, backslash, notsign ] }; 19 | 20 | include "kpdl(comma)" 21 | 22 | include "level3(ralt_switch)" 23 | }; 24 | 25 | partial alphanumeric_keys 26 | xkb_symbols "nodeadkeys" { 27 | 28 | include "dk(basic)" 29 | 30 | name[Group1]="Danish (no dead keys)"; 31 | 32 | key { [ acute, grave, bar, ogonek ] }; 33 | key { [ aring, Aring, diaeresis, degree ] }; 34 | key { [ diaeresis, asciicircum, asciitilde, macron ] }; 35 | key { [ ae, AE, acute, doubleacute ] }; 36 | key { [ oslash, Ooblique, asciicircum, caron ] }; 37 | key { [apostrophe, asterisk, doubleacute, multiply ] }; 38 | key { [ comma, semicolon, cedilla, ogonek ] }; 39 | key { [ period, colon, periodcentered, abovedot ] }; 40 | }; 41 | 42 | partial alphanumeric_keys 43 | xkb_symbols "winkeys" { 44 | 45 | include "dk(basic)" 46 | name[Group1] = "Danish (Windows)"; 47 | include "eurosign(5)" 48 | }; 49 | 50 | // Copied from macintosh_vndr/dk 51 | partial alphanumeric_keys 52 | xkb_symbols "mac" { 53 | 54 | include "dk" 55 | name[Group1]= "Danish (Macintosh)"; 56 | 57 | key { [ space, space, nobreakspace, nobreakspace ] }; 58 | key { [ minus, underscore, hyphen, macron ] }; 59 | include "kpdl(dot)" 60 | }; 61 | 62 | 63 | partial alphanumeric_keys 64 | xkb_symbols "mac_nodeadkeys" { 65 | include "dk(mac)" 66 | name[Group1]= "Danish (Macintosh, no dead keys)"; 67 | 68 | key { [ acute, grave, bar, ogonek ] }; 69 | key { [diaeresis, asciicircum, asciitilde, dead_macron ] }; 70 | }; 71 | 72 | partial alphanumeric_keys 73 | xkb_symbols "dvorak" { 74 | include "no(dvorak)" 75 | 76 | name[Group1]= "Danish (Dvorak)"; 77 | key { [ asciitilde, asciicircum, dead_diaeresis, dead_tilde ] }; 78 | }; 79 | 80 | // EXTRAS: 81 | 82 | partial alphanumeric_keys 83 | xkb_symbols "sun_type6" { 84 | include "sun_vndr/dk(sun_type6)" 85 | }; 86 | -------------------------------------------------------------------------------- /dreymar-xtools/gtk_edit_install.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | # ====================================================== 4 | # === installgtk.sh to enable cut/copy/paste keys === 5 | # === by Øystein Bech "DreymaR" Gadmar, 2014 === 6 | # ====================================================== 7 | 8 | # - Thanks to Kuglee on the Colemak forum for researching these bindings! 9 | # - With my Extend mappings for instance, you can make the keyboard send XF86 multimedia keys 10 | # - These are called XF86### where ### is for instance Cut/Copy/Paste (on Extend X/C/V) 11 | # - Those key events are sent to the OS but not all of them do anything useful currently 12 | # - The below script tells GTK to map the edit keys to actions so they work (in GTK apps at least) 13 | 14 | 15 | HeadStr="DreymaR's GTK install script (by GadOE, 2014)" 16 | DescStr=\ 17 | "Shell script to enable cut/copy/paste XF86 keys\n"\ 18 | " for GTK 2.0 and 3.0 config files in ~/ ." 19 | 20 | #---------- init -------------------------------------- 21 | 22 | MyNAME=`basename $0` 23 | #~ MyPATH=`dirname $0` 24 | 25 | HelpStr="Usage: sh ${MyNAME} [no args]\n"\ 26 | "\n••• Please read this script's comments for more info on how it works •••\n" 27 | 28 | gtkfile[2]='.gtkrc-2.0' 29 | gtktext[2]='binding "gtk-xf86cut-copy-paste" 30 | { 31 | bind "XF86Cut" { "cut-clipboard" () } 32 | bind "XF86Copy" { "copy-clipboard" () } 33 | bind "XF86Paste" { "paste-clipboard" () } 34 | } 35 | 36 | class "*" binding "gtk-xf86cut-copy-paste" 37 | ' 38 | 39 | gtkfile[3]='.config/gtk-3.0/gtk.css' 40 | gtktext[3]='@binding-set gtk-xf86cut-copy-paste 41 | { 42 | bind "XF86Cut" { "cut-clipboard" () }; 43 | bind "XF86Copy" { "copy-clipboard" () }; 44 | bind "XF86Paste" { "paste-clipboard" () }; 45 | } 46 | 47 | * { 48 | gtk-key-bindings: gtk-xf86cut-copy-paste 49 | } 50 | ' 51 | 52 | #---------- subroutines ------------------------------- 53 | 54 | MyMsg() 55 | { 56 | printf "\n••• $1 •••\n\n" 57 | } 58 | 59 | PrintHelpAndExit() 60 | { 61 | MyMsg "${HeadStr}" 62 | printf "${DescStr}\n" 63 | printf "${HelpStr}\n" 64 | exit $1 65 | } 66 | 67 | MyEcho() 68 | { 69 | printf "$1\n" 70 | [ -z "$2" ] || printf "$1\n" >> "$2" 71 | } 72 | 73 | #---------- command line parser ----------------------- 74 | 75 | while getopts "h?" cmdarg; do 76 | case $cmdarg in 77 | h) PrintHelpAndExit 0 ;; 78 | \?) PrintHelpAndExit 0 ;; 79 | :) PrintHelpAndExit 1 ;; 80 | esac 81 | done 82 | 83 | #---------- main -------------------------------------- 84 | 85 | MyMsg "$HeadStr" 86 | #~ MyEcho "• Working from `pwd`" 87 | 88 | # If not already there, add GTK cut/copy/paste key bindings to GTK 2.0 and 3.0 config files 89 | for i in 2 3; do 90 | #~ MyEcho "${i}.0: '$(grep "gtk-xf86cut-copy-paste" "$HOME/${gtkfile[$i]}")'" 91 | #~ MyEcho "\n${gtkfile[$i]}\n'''${gtktext[$i]}'''"; continue 92 | if [ "$(grep "gtk-xf86cut-copy-paste" "$HOME/${gtkfile[$i]}" 2> /dev/null)" == "" ]; then 93 | echo "${gtktext[$i]}" >> "$HOME/${gtkfile[$i]}" 94 | MyEcho "• GTK ${i}.0 Cut/Copy/Paste config generated" 95 | else 96 | MyEcho "• GTK ${i}.0 Cut/Copy/Paste config already present" 97 | fi 98 | done 99 | 100 | MyMsg "${MyNAME} finished!"; exit 0 101 | 102 | # (Originally, I copied over files in the current dir using `cat ./"${gtkfile[$i]}"`) 103 | #~ [ "$(grep "gtk-xf86cut-copy-paste" "$HOME/config/gtk-3.0/gtk.css")" == "" ] && \ 104 | #~ cat ./gtk.css >> ~/.config/gtk-3.0/gtk.css || MyEcho "• GTK 3.0 config already present" 105 | -------------------------------------------------------------------------------- /xkb-data_xmod/xkb/symbols/hr: -------------------------------------------------------------------------------- 1 | default partial alphanumeric_keys 2 | xkb_symbols "basic" { 3 | 4 | include "rs(latin)" 5 | name[Group1]="Croatian"; 6 | 7 | // Redefine these keys to match the XFree86 Croatian layout. 8 | key { [ 1, exclam, asciitilde, dead_tilde ] }; 9 | key { [ 3, numbersign, asciicircum, dead_circumflex ] }; 10 | key { [ 5, percent, degree, dead_abovering ] }; 11 | key { [ 7, slash, grave, dead_grave ] }; 12 | key { [ any, any, rightdoublequotemark, guillemotleft ] }; 13 | key { [ minus, underscore, dead_belowdot, dead_abovedot ] }; 14 | }; 15 | 16 | partial alphanumeric_keys 17 | xkb_symbols "us" { 18 | 19 | include "us" 20 | name[Group1]= "Croatian (US)"; 21 | 22 | key { [ any, any, backslash ] }; 23 | key { [ any, any, bar ] }; 24 | key { [ any, any, EuroSign ] }; 25 | key { [ any, any, z, Z ] }; 26 | key { [ any, any, scaron, Scaron ] }; 27 | key { [ any, any, dstroke, Dstroke ] }; 28 | key { [ any, any, bracketleft ] }; 29 | key { [ any, any, bracketright ] }; 30 | key { [ any, any, lstroke ] }; 31 | key { [ any, any, Lstroke ] }; 32 | key { [ any, any, ccaron, Ccaron ] }; 33 | key { [ any, any, cacute, Cacute ] }; 34 | key { [ any, any, bar ] }; 35 | key { [ any, any, y, Y ] }; 36 | key { [ any, any, at ] }; 37 | key { [ any, any, braceleft ] }; 38 | key { [ any, any, braceright ] }; 39 | key { [ any, any, section ] }; 40 | key { [ any, any, semicolon ] }; 41 | key { [ any, any, colon ] }; 42 | key { [ any, any, minus, underscore ] }; 43 | key { [ any, any, zcaron, Zcaron ] }; 44 | 45 | include "level3(ralt_switch)" 46 | }; 47 | 48 | partial alphanumeric_keys 49 | xkb_symbols "alternatequotes" { 50 | 51 | include "rs(latinalternatequotes)" 52 | name[Group1]= "Croatian (with guillemets)"; 53 | }; 54 | 55 | partial alphanumeric_keys 56 | xkb_symbols "unicode" { 57 | 58 | include "rs(latinunicode)" 59 | name[Group1]= "Croatian (with Croatian digraphs)"; 60 | }; 61 | 62 | partial alphanumeric_keys 63 | xkb_symbols "unicodeus" { 64 | 65 | include "rs(latinunicodeyz)" 66 | name[Group1]= "Croatian (US, with Croatian digraphs)"; 67 | }; 68 | 69 | // >>--> DreymaR (OEystein Bech-Aase, formerly Bech Gadmar), 2014-10: Additions to xkb/symbols/hr 70 | // Colemak[eD]: National/locale Colemak "edition DreymaR" variants for Croatian. 71 | // 2006-01-01 Shai Coleman http://colemak.com/ (Public Domain) : The Colemak keyboard layout. 72 | // See the Big Bag section on Cmk[eD] locales: https://dreymar.colemak.org/variants.html#locales 73 | 74 | // The 'keep local symbols' variant keeps the national symbol and special letter setup. 75 | partial alphanumeric_keys 76 | xkb_symbols "cmk_ed_ks" { 77 | include "hr(basic)" 78 | include "colemak(cmk_ed_letters)" 79 | name[Group1]= "Croatian (Colemak[eD], keep local symbols)"; 80 | 81 | // NOTE: Symbols on letter keys may be lost in cmk_ed_ks if they are not on Colemak[eD] letter keys. 82 | // EuroSign is often on 'E'. The latin(intl) and locale(winkeys) layout variants use '5'. 83 | // Colemak[eD] has EuroSign on 'E' and mu on '5'. 84 | // key { [ NoSymbol, NoSymbol, mu, dead_abovering ] }; 85 | // key { [ NoSymbol, NoSymbol, EuroSign, dead_abovering ] }; // 'degree' is mapped on dead_abovering 86 | 87 | key { [ ccaron, Ccaron, dead_acute, dead_doubleacute ] }; // from 88 | }; 89 | 90 | // The 'us' variant uses the US-type symbol key setup (recommended!) as it is nearly an intl. standard. 91 | // For Croatian, necessary local letters are added to designated flexible spots in the layout. 92 | // NOTE: - Bosnian(ba), Croatian(hr), Slovenian(si) and Serbian(sr) layouts are harmonized. 93 | partial alphanumeric_keys 94 | xkb_symbols "cmk_ed_us" { 95 | include "rs(cmk_ed_us)" 96 | name[Group1]= "Croatian (Colemak[eD], unified symbols)"; 97 | }; 98 | // <--<< DreymaR: Additions to xkb/symbols/hr 99 | -------------------------------------------------------------------------------- /xkb-data_xmod/xkb/keycodes/aliases: -------------------------------------------------------------------------------- 1 | 2 | // keycode aliases for phonetic keyboard maps 3 | 4 | default 5 | xkb_keycodes "qwerty" { 6 | 7 | alias = ; 8 | alias = ; 9 | alias = ; 10 | alias = ; 11 | alias = ; 12 | alias = ; 13 | alias = ; 14 | alias = ; 15 | alias = ; 16 | alias = ; 17 | 18 | alias = ; 19 | alias = ; 20 | alias = ; 21 | alias = ; 22 | alias = ; 23 | alias = ; 24 | alias = ; 25 | alias = ; 26 | alias = ; 27 | 28 | alias = ; 29 | alias = ; 30 | alias = ; 31 | alias = ; 32 | alias = ; 33 | alias = ; 34 | alias = ; 35 | }; 36 | 37 | xkb_keycodes "azerty" { 38 | 39 | alias = ; 40 | alias = ; 41 | alias = ; 42 | alias = ; 43 | alias = ; 44 | alias = ; 45 | alias = ; 46 | alias = ; 47 | alias = ; 48 | alias = ; 49 | 50 | alias = ; 51 | alias = ; 52 | alias = ; 53 | alias = ; 54 | alias = ; 55 | alias = ; 56 | alias = ; 57 | alias = ; 58 | alias = ; 59 | alias = ; 60 | 61 | alias = ; 62 | alias = ; 63 | alias = ; 64 | alias = ; 65 | alias = ; 66 | alias = ; 67 | }; 68 | 69 | xkb_keycodes "qwertz" { 70 | 71 | alias = ; 72 | alias = ; 73 | alias = ; 74 | alias = ; 75 | alias = ; 76 | alias = ; 77 | alias = ; 78 | alias = ; 79 | alias = ; 80 | alias = ; 81 | 82 | alias = ; 83 | alias = ; 84 | alias = ; 85 | alias = ; 86 | alias = ; 87 | alias = ; 88 | alias = ; 89 | alias = ; 90 | alias = ; 91 | 92 | alias = ; 93 | alias = ; 94 | alias = ; 95 | alias = ; 96 | alias = ; 97 | alias = ; 98 | alias = ; 99 | }; 100 | 101 | // >>--> OEystein "DreymaR" Bech-Aase (formerly Bech Gadmar), 2013: Additions to xkb/keycodes/aliases 102 | xkb_keycodes "colemak" { 103 | 104 | alias = ; 105 | alias = ; 106 | alias = ; 107 | alias = ; 108 | alias = ; 109 | alias = ; 110 | alias = ; 111 | alias = ; 112 | alias = ; 113 | 114 | alias = ; 115 | alias = ; 116 | alias = ; 117 | alias = ; 118 | alias = ; 119 | alias = ; 120 | alias = ; 121 | alias = ; 122 | alias = ; 123 | alias = ; 124 | 125 | alias = ; 126 | alias = ; 127 | alias = ; 128 | alias = ; 129 | alias = ; 130 | alias = ; 131 | alias = ; 132 | }; 133 | 134 | xkb_keycodes "colemak_dh" { 135 | 136 | alias = ; 137 | alias = ; 138 | alias = ; 139 | alias = ; 140 | alias = ; 141 | alias = ; 142 | alias = ; 143 | alias = ; 144 | alias = ; 145 | 146 | alias = ; 147 | alias = ; 148 | alias = ; 149 | alias = ; 150 | alias = ; 151 | alias = ; 152 | alias = ; 153 | alias = ; 154 | alias = ; 155 | alias = ; 156 | 157 | alias = ; 158 | alias = ; 159 | alias = ; 160 | alias = ; 161 | alias = ; 162 | alias = ; 163 | alias = ; 164 | }; 165 | // <--<< DreymaR: Additions to xkb/keycodes/aliases 166 | -------------------------------------------------------------------------------- /xkb-data_orig/xkb/symbols/level5: -------------------------------------------------------------------------------- 1 | // These partial variants assign ISO_Level5_Shift to various XKB keycodes 2 | // so that the fifth shift level can be reached. 3 | 4 | // The right Ctrl key (while pressed) chooses the fifth shift level. 5 | partial modifier_keys 6 | xkb_symbols "rctrl_switch" { 7 | key { 8 | type[Group1]="ONE_LEVEL", 9 | symbols[Group1] = [ ISO_Level5_Shift ] 10 | }; 11 | include "level5(modifier_mapping)" 12 | }; 13 | 14 | // The Less/Greater key (while pressed) chooses the fifth shift level. 15 | partial modifier_keys 16 | xkb_symbols "lsgt_switch" { 17 | key { 18 | type[Group1]="ONE_LEVEL", 19 | symbols[Group1] = [ ISO_Level5_Shift ] 20 | }; 21 | include "level5(modifier_mapping)" 22 | }; 23 | 24 | // The right Alt key (while pressed) chooses the fifth shift level. 25 | partial modifier_keys 26 | xkb_symbols "ralt_switch" { 27 | key { 28 | type[Group1]="ONE_LEVEL", 29 | symbols[Group1] = [ ISO_Level5_Shift ] 30 | }; 31 | include "level5(modifier_mapping)" 32 | }; 33 | 34 | // The CapsLock key (while pressed) chooses the fifth shift level. 35 | partial modifier_keys 36 | xkb_symbols "caps_switch" { 37 | key { 38 | type[Group1]="ONE_LEVEL", 39 | symbols[Group1] = [ ISO_Level5_Shift ] 40 | }; 41 | include "level5(modifier_mapping)" 42 | }; 43 | 44 | // Ensure a mapping to a real modifier for LevelFive. 45 | partial modifier_keys 46 | xkb_symbols "modifier_mapping" { 47 | replace key { 48 | type[Group1] = "ONE_LEVEL", 49 | symbols[Group1] = [ ISO_Level5_Shift ] 50 | }; 51 | modifier_map Mod3 { }; 52 | }; 53 | 54 | 55 | // This adds the definitions needed to create a level5-lock behaviour, using 56 | // the real modifier NumLock as a lock indicator. 57 | // See also: types/level5 : EIGHT_LEVEL_LEVEL_FIVE_LOCK 58 | // See also: compat/level5(level5_lock) 59 | partial modifier_keys 60 | xkb_symbols "lock" { 61 | key.type[Group1] = "ONE_LEVEL"; 62 | include "level5(modifier_mapping)" 63 | replace key { 64 | vmods = NumLock, 65 | symbols[Group1] = [ NoSymbol ], 66 | actions[Group1] = [ SetMods(modifiers=NumLock) ] 67 | }; 68 | modifier_map Mod2 { }; 69 | }; 70 | 71 | // The following modifier keys are used to switch to the third shift level 72 | // and to set a corresponding lock, implemented as NumLock. 73 | 74 | partial modifier_keys 75 | xkb_symbols "lsgt_switch_lock" { 76 | include "level5(lock)" 77 | key { 78 | type[Group1] = "EIGHT_LEVEL", 79 | symbols[Group1] = [ ISO_Level5_Shift, ISO_Level5_Shift, ISO_Level5_Shift, ISO_Level5_Shift, 80 | ISO_Level5_Lock, ISO_Level5_Lock, ISO_Level5_Lock, ISO_Level5_Lock ] 81 | }; 82 | }; 83 | 84 | partial modifier_keys 85 | xkb_symbols "lwin_switch_lock" { 86 | include "level5(lock)" 87 | key { 88 | type[Group1] = "EIGHT_LEVEL", 89 | symbols[Group1] = [ ISO_Level5_Shift, ISO_Level5_Shift, ISO_Level5_Shift, ISO_Level5_Shift, 90 | ISO_Level5_Lock, ISO_Level5_Lock, ISO_Level5_Lock, ISO_Level5_Lock ] 91 | }; 92 | }; 93 | 94 | partial modifier_keys 95 | xkb_symbols "ralt_switch_lock" { 96 | include "level5(lock)" 97 | key { 98 | type[Group1] = "EIGHT_LEVEL", 99 | symbols[Group1] = [ ISO_Level5_Shift, ISO_Level5_Shift, ISO_Level5_Shift, ISO_Level5_Shift, 100 | ISO_Level5_Lock, ISO_Level5_Lock, ISO_Level5_Lock, ISO_Level5_Lock ] 101 | }; 102 | }; 103 | 104 | partial modifier_keys 105 | xkb_symbols "rwin_switch_lock" { 106 | include "level5(lock)" 107 | key { 108 | type[Group1] = "EIGHT_LEVEL", 109 | symbols[Group1] = [ ISO_Level5_Shift, ISO_Level5_Shift, ISO_Level5_Shift, ISO_Level5_Shift, 110 | ISO_Level5_Lock, ISO_Level5_Lock, ISO_Level5_Lock, ISO_Level5_Lock ] 111 | }; 112 | }; 113 | 114 | partial modifier_keys 115 | xkb_symbols "lsgt_switch_lock_cancel" { 116 | include "level5(lock)" 117 | key { 118 | type[Group1] = "EIGHT_LEVEL_LEVEL_FIVE_LOCK", 119 | symbols[Group1] = [ ISO_Level5_Shift, ISO_Level5_Shift, ISO_Level5_Shift, ISO_Level5_Shift, 120 | ISO_Level5_Lock, ISO_Level5_Lock, ISO_Level5_Lock, ISO_Level5_Lock ] 121 | }; 122 | }; 123 | 124 | partial modifier_keys 125 | xkb_symbols "lwin_switch_lock_cancel" { 126 | include "level5(lock)" 127 | key { 128 | type[Group1] = "EIGHT_LEVEL_LEVEL_FIVE_LOCK", 129 | symbols[Group1] = [ ISO_Level5_Shift, ISO_Level5_Shift, ISO_Level5_Shift, ISO_Level5_Shift, 130 | ISO_Level5_Lock, ISO_Level5_Lock, ISO_Level5_Lock, ISO_Level5_Lock ] 131 | }; 132 | }; 133 | 134 | partial modifier_keys 135 | xkb_symbols "ralt_switch_lock_cancel" { 136 | include "level5(lock)" 137 | key { 138 | type[Group1] = "EIGHT_LEVEL_LEVEL_FIVE_LOCK", 139 | symbols[Group1] = [ ISO_Level5_Shift, ISO_Level5_Shift, ISO_Level5_Shift, ISO_Level5_Shift, 140 | ISO_Level5_Lock, ISO_Level5_Lock, ISO_Level5_Lock, ISO_Level5_Lock ] 141 | }; 142 | }; 143 | 144 | partial modifier_keys 145 | xkb_symbols "rwin_switch_lock_cancel" { 146 | include "level5(lock)" 147 | key { 148 | type[Group1] = "EIGHT_LEVEL_LEVEL_FIVE_LOCK", 149 | symbols[Group1] = [ ISO_Level5_Shift, ISO_Level5_Shift, ISO_Level5_Shift, ISO_Level5_Shift, 150 | ISO_Level5_Lock, ISO_Level5_Lock, ISO_Level5_Lock, ISO_Level5_Lock ] 151 | }; 152 | }; 153 | -------------------------------------------------------------------------------- /xkb-data_xmod/xkb/symbols/dk: -------------------------------------------------------------------------------- 1 | default partial alphanumeric_keys 2 | xkb_symbols "basic" { 3 | 4 | include "latin(type2)" 5 | 6 | name[Group1]="Danish"; 7 | 8 | key { [ plus, question, plusminus, questiondown ] }; 9 | key { [dead_acute, dead_grave, bar, brokenbar ] }; 10 | 11 | 12 | key { [ ae, AE, dead_acute, dead_doubleacute ] }; 13 | key { [ oslash, Ooblique, dead_circumflex, dead_caron ] }; 14 | key { [ onehalf, section, threequarters, paragraph ] }; 15 | 16 | key { [apostrophe, asterisk, dead_doubleacute, multiply ] }; 17 | 18 | key { [ less, greater, backslash, notsign ] }; 19 | 20 | include "kpdl(comma)" 21 | 22 | include "level3(ralt_switch)" 23 | }; 24 | 25 | partial alphanumeric_keys 26 | xkb_symbols "nodeadkeys" { 27 | 28 | include "dk(basic)" 29 | 30 | name[Group1]="Danish (no dead keys)"; 31 | 32 | key { [ acute, grave, bar, ogonek ] }; 33 | key { [ aring, Aring, diaeresis, degree ] }; 34 | key { [ diaeresis, asciicircum, asciitilde, macron ] }; 35 | key { [ ae, AE, acute, doubleacute ] }; 36 | key { [ oslash, Ooblique, asciicircum, caron ] }; 37 | key { [apostrophe, asterisk, doubleacute, multiply ] }; 38 | key { [ comma, semicolon, cedilla, ogonek ] }; 39 | key { [ period, colon, periodcentered, abovedot ] }; 40 | }; 41 | 42 | partial alphanumeric_keys 43 | xkb_symbols "winkeys" { 44 | 45 | include "dk(basic)" 46 | name[Group1] = "Danish (Windows)"; 47 | include "eurosign(5)" 48 | }; 49 | 50 | // Copied from macintosh_vndr/dk 51 | partial alphanumeric_keys 52 | xkb_symbols "mac" { 53 | 54 | include "dk" 55 | name[Group1]= "Danish (Macintosh)"; 56 | 57 | key { [ space, space, nobreakspace, nobreakspace ] }; 58 | key { [ minus, underscore, hyphen, macron ] }; 59 | include "kpdl(dot)" 60 | }; 61 | 62 | 63 | partial alphanumeric_keys 64 | xkb_symbols "mac_nodeadkeys" { 65 | include "dk(mac)" 66 | name[Group1]= "Danish (Macintosh, no dead keys)"; 67 | 68 | key { [ acute, grave, bar, ogonek ] }; 69 | key { [diaeresis, asciicircum, asciitilde, dead_macron ] }; 70 | }; 71 | 72 | partial alphanumeric_keys 73 | xkb_symbols "dvorak" { 74 | include "no(dvorak)" 75 | 76 | name[Group1]= "Danish (Dvorak)"; 77 | key { [ asciitilde, asciicircum, dead_diaeresis, dead_tilde ] }; 78 | }; 79 | 80 | // EXTRAS: 81 | 82 | partial alphanumeric_keys 83 | xkb_symbols "sun_type6" { 84 | include "sun_vndr/dk(sun_type6)" 85 | }; 86 | 87 | // >>--> DreymaR (OEystein Bech-Aase, formerly Bech Gadmar), 2012-01: Additions to xkb/symbols/dk 88 | // Colemak[eD]: National/locale Colemak "edition DreymaR" variants for Danish. 89 | // 2006-01-01 Shai Coleman http://colemak.com/ (Public Domain) : The Colemak keyboard layout. 90 | // See the Big Bag section on Cmk[eD] locales: https://dreymar.colemak.org/variants.html#locales 91 | 92 | // The 'keep local symbols' variant keeps the national symbol and special letter setup. 93 | partial alphanumeric_keys 94 | xkb_symbols "cmk_ed_ks" { 95 | include "dk(basic)" 96 | include "colemak(cmk_ed_letters)" 97 | name[Group1]= "Danish (Colemak[eD], keep local symbols)"; 98 | 99 | // NOTE: Symbols on letter keys may be lost in cmk_ed_ks if they are not on Colemak[eD] letter keys. 100 | // EuroSign is often on 'E'. The latin(intl) and locale(winkeys) layout variants use '5'. 101 | // Colemak[eD] has EuroSign on 'E' and mu on '5'. 102 | // key { [ NoSymbol, NoSymbol, mu, onehalf ] }; 103 | // key { [ NoSymbol, NoSymbol, EuroSign, onehalf ] }; // onehalf is moved, cent is on 'c' 104 | 105 | key { [ ae, AE, dead_acute, dead_doubleacute ] }; // from 106 | }; 107 | 108 | // The 'us' variant uses the US-type symbol key setup (recommended!) as it is nearly an intl. standard. 109 | // For Danish, necessary local letters are added to designated flexible spots in the layout. 110 | // For "writing" and "coding" subvariants, move the brackets between lv1-2 and lv3-4 as shown. 111 | partial alphanumeric_keys 112 | xkb_symbols "cmk_ed_us" { 113 | include "colemak(cmk_ed_letters)" 114 | include "symkeys(cmk_ed_symbols)" 115 | include "level3(ralt_switch)" 116 | name[Group1]= "Danish (Colemak[eD], unified symbols)"; 117 | 118 | // key { [ ae, AE, oe, OE ] }; // from 119 | // key { [ oslash, Ooblique, bracketright, braceright ] }; // from 120 | 121 | // key { [ bracketleft, braceleft, aring, Aring ] }; 122 | // key { [ bracketright, braceright, ae, AE ] }; 123 | key { [ aring, Aring, bracketleft, braceleft ] }; // from 124 | key { [ ae, AE, bracketright, braceright ] }; // from 125 | key { [ oslash, Ooblique, oe, OE ] }; // from 126 | // NOTE: The Scandinavian layouts (dk/fi/no/se) have been harmonized. This shouldn't affect typing efficiency. 127 | }; 128 | // <--<< DreymaR: Additions to xkb/symbols/dk 129 | -------------------------------------------------------------------------------- /console/colemak.iso15.kmap: -------------------------------------------------------------------------------- 1 | # colemak.kmap for Linux console. 2 | # 2006-01-01 Shai Coleman, http://colemak.com/ . Public domain. 3 | alt_is_meta 4 | charset "iso-8859-15" # use a ISO-8859-15 font, e.g.: consolechars -f lat9v-14 5 | keymaps 0-12 6 | include "qwerty-layout" 7 | include "linux-with-alt-and-altgr" 8 | strings as usual 9 | 10 | keycode 41 = grave asciitilde dead_tilde asciitilde nul 11 | keycode 2 = one exclam exclamdown onesuperior 12 | keycode 3 = two at masculine twosuperior nul 13 | keycode 4 = three numbersign ordfeminine threesuperior Escape 14 | keycode 5 = four dollar cent sterling Control_backslash 15 | keycode 6 = five percent euro yen Control_bracketright # EuroSign yen 16 | keycode 7 = six asciicircum asciitilde asciitilde Control_asciicircum # hstroke Hstroke 17 | keycode 8 = seven ampersand eth ETH Control_underscore 18 | keycode 9 = eight asterisk thorn THORN Delete 19 | keycode 10 = nine parenleft asciitilde asciitilde # leftsinglequotemark leftdoublequotemark 20 | keycode 11 = zero parenright asciitilde asciitilde # rightsinglequotemark rightdoublequotemark 21 | keycode 12 = minus underscore asciitilde asciitilde Control_underscore # endash emdash 22 | keycode 13 = equal plus multiply division 23 | 24 | keycode 16 = q Q adiaeresis Adiaeresis Control_q 25 | keycode 17 = w W aring Aring Control_w 26 | keycode 18 = f F atilde Atilde Control_f 27 | keycode 19 = p P oslash Ooblique Control_p 28 | keycode 20 = g G asciitilde asciitilde Control_g # dead_ogonek asciitilde 29 | keycode 21 = j J asciitilde asciitilde Control_j # dstroke Dstroke 30 | keycode 22 = l L asciitilde asciitilde Control_l # lstroke Lstroke 31 | keycode 23 = u U uacute Uacute Control_u 32 | keycode 24 = y Y udiaeresis Udiaeresis Control_y 33 | keycode 25 = semicolon colon odiaeresis Odiaeresis 34 | keycode 26 = bracketleft braceleft guillemotleft asciitilde Escape # guillemotleft 0x1002039 35 | keycode 27 = bracketright braceright guillemotright asciitilde Control_bracketright # guillemotright 0x100203a 36 | keycode 43 = backslash bar asciitilde asciitilde Control_backslash 37 | 38 | keycode 30 = a A aacute Aacute Control_a 39 | keycode 31 = r R dead_grave asciitilde Control_r 40 | keycode 32 = s S ssharp asciitilde Control_s 41 | keycode 33 = t T dead_acute asciitilde Control_t # dead_acute dead_doubleacute 42 | keycode 34 = d D dead_diaeresis asciitilde Control_d 43 | keycode 35 = h H asciitilde asciitilde Control_h # dead_caron asciitilde 44 | keycode 36 = n N ntilde Ntilde Control_n 45 | keycode 37 = e E eacute Eacute Control_e 46 | keycode 38 = i I iacute Iacute Control_i 47 | keycode 39 = o O oacute Oacute Control_o 48 | keycode 40 = apostrophe quotedbl otilde Otilde 49 | 50 | keycode 44 = z Z ae AE Control_z 51 | keycode 45 = x X dead_circumflex asciitilde Control_x 52 | keycode 46 = c C ccedilla Ccedilla Control_c 53 | keycode 47 = v V oe OE Control_v 54 | keycode 48 = b B asciitilde asciitilde Control_b # dead_breve asciitilde 55 | keycode 49 = k K asciitilde asciitilde Control_k # dead_abovering asciitilde 56 | keycode 50 = m M asciitilde asciitilde Control_m # dead_macron asciitilde 57 | keycode 51 = comma less dead_cedilla asciitilde 58 | keycode 52 = period greater asciitilde asciitilde # dead_abovedot asciitilde 59 | keycode 53 = slash question questiondown asciitilde Delete 60 | 61 | keycode 58 = BackSpace BackSpace BackSpace BackSpace 62 | keycode 86 = minus underscore asciitilde asciitilde Control_underscore # endash emdash 63 | keycode 57 = space space space nobreakspace nul 64 | 65 | 66 | keycode 1 = Escape 67 | keycode 14 = Delete 68 | keycode 15 = Tab 69 | keycode 28 = Return 70 | alt keycode 28 = Meta_Control_m 71 | keycode 29 = Control 72 | keycode 42 = Shift 73 | keycode 54 = Shift 74 | keycode 56 = Alt 75 | keycode 97 = Control 76 | -------------------------------------------------------------------------------- /console/data_keymaps_i386_colemak_en-latin9.map: -------------------------------------------------------------------------------- 1 | # colemak.kmap for Linux console. 2 | # 2006-01-01 Shai Coleman, http://colemak.com/ . Public domain. 3 | alt_is_meta 4 | charset "iso-8859-15" # use a ISO-8859-15 font, e.g.: consolechars -f lat9v-14 5 | keymaps 0-12 6 | include "qwerty-layout" 7 | include "linux-with-alt-and-altgr" 8 | strings as usual 9 | 10 | keycode 41 = grave asciitilde dead_tilde asciitilde nul 11 | keycode 2 = one exclam exclamdown onesuperior 12 | keycode 3 = two at masculine twosuperior nul 13 | keycode 4 = three numbersign ordfeminine threesuperior Escape 14 | keycode 5 = four dollar cent sterling Control_backslash 15 | keycode 6 = five percent euro yen Control_bracketright # EuroSign yen 16 | keycode 7 = six asciicircum asciitilde asciitilde Control_asciicircum # hstroke Hstroke 17 | keycode 8 = seven ampersand eth ETH Control_underscore 18 | keycode 9 = eight asterisk thorn THORN Delete 19 | keycode 10 = nine parenleft asciitilde asciitilde # leftsinglequotemark leftdoublequotemark 20 | keycode 11 = zero parenright asciitilde asciitilde # rightsinglequotemark rightdoublequotemark 21 | keycode 12 = minus underscore asciitilde asciitilde Control_underscore # endash emdash 22 | keycode 13 = equal plus multiply division 23 | 24 | keycode 16 = q Q adiaeresis Adiaeresis Control_q 25 | keycode 17 = w W aring Aring Control_w 26 | keycode 18 = f F atilde Atilde Control_f 27 | keycode 19 = p P oslash Ooblique Control_p 28 | keycode 20 = g G asciitilde asciitilde Control_g # dead_ogonek asciitilde 29 | keycode 21 = j J asciitilde asciitilde Control_j # dstroke Dstroke 30 | keycode 22 = l L asciitilde asciitilde Control_l # lstroke Lstroke 31 | keycode 23 = u U uacute Uacute Control_u 32 | keycode 24 = y Y udiaeresis Udiaeresis Control_y 33 | keycode 25 = semicolon colon odiaeresis Odiaeresis 34 | keycode 26 = bracketleft braceleft guillemotleft asciitilde Escape # guillemotleft 0x1002039 35 | keycode 27 = bracketright braceright guillemotright asciitilde Control_bracketright # guillemotright 0x100203a 36 | keycode 43 = backslash bar asciitilde asciitilde Control_backslash 37 | 38 | keycode 30 = a A aacute Aacute Control_a 39 | keycode 31 = r R dead_grave asciitilde Control_r 40 | keycode 32 = s S ssharp asciitilde Control_s 41 | keycode 33 = t T dead_acute asciitilde Control_t # dead_acute dead_doubleacute 42 | keycode 34 = d D dead_diaeresis asciitilde Control_d 43 | keycode 35 = h H asciitilde asciitilde Control_h # dead_caron asciitilde 44 | keycode 36 = n N ntilde Ntilde Control_n 45 | keycode 37 = e E eacute Eacute Control_e 46 | keycode 38 = i I iacute Iacute Control_i 47 | keycode 39 = o O oacute Oacute Control_o 48 | keycode 40 = apostrophe quotedbl otilde Otilde 49 | 50 | keycode 44 = z Z ae AE Control_z 51 | keycode 45 = x X dead_circumflex asciitilde Control_x 52 | keycode 46 = c C ccedilla Ccedilla Control_c 53 | keycode 47 = v V oe OE Control_v 54 | keycode 48 = b B asciitilde asciitilde Control_b # dead_breve asciitilde 55 | keycode 49 = k K asciitilde asciitilde Control_k # dead_abovering asciitilde 56 | keycode 50 = m M asciitilde asciitilde Control_m # dead_macron asciitilde 57 | keycode 51 = comma less dead_cedilla asciitilde 58 | keycode 52 = period greater asciitilde asciitilde # dead_abovedot asciitilde 59 | keycode 53 = slash question questiondown asciitilde Delete 60 | 61 | keycode 58 = BackSpace BackSpace BackSpace BackSpace 62 | keycode 86 = minus underscore asciitilde asciitilde Control_underscore # endash emdash 63 | keycode 57 = space space space nobreakspace nul 64 | 65 | 66 | keycode 1 = Escape 67 | keycode 14 = Delete 68 | keycode 15 = Tab 69 | keycode 28 = Return 70 | alt keycode 28 = Meta_Control_m 71 | keycode 29 = Control 72 | keycode 42 = Shift 73 | keycode 54 = Shift 74 | keycode 56 = Alt 75 | keycode 97 = Control 76 | -------------------------------------------------------------------------------- /xkb-data_orig/xkb/symbols/al: -------------------------------------------------------------------------------- 1 | // Albanian keyboard layout, by Pablo Saratxaga . 2 | default partial alphanumeric_keys 3 | xkb_symbols "basic" { 4 | 5 | include "latin(type3)" 6 | 7 | name[Group1]="Albanian"; 8 | 9 | key { [ 1, exclam, asciitilde, dead_tilde ] }; 10 | key { [ 2, quotedbl, dead_caron, oneeighth ] }; 11 | key { [ 3, numbersign, dead_circumflex, sterling ] }; 12 | key { [ 4, dollar, dead_breve, dollar ] }; 13 | key { [ 5, percent, dead_abovering, threeeighths] }; 14 | key { [ 6, asciicircum, dead_ogonek, fiveeighths ] }; 15 | key { [ 7, ampersand, grave, dead_grave ] }; 16 | key { [ 8, asterisk, dead_abovedot, trademark ] }; 17 | key { [ 9, parenleft, dead_acute, plusminus ] }; 18 | key { [ 0, parenright, dead_doubleacute, degree ] }; 19 | key { [ minus, underscore, dead_diaeresis, questiondown] }; 20 | 21 | key { [ e, E, EuroSign, EuroSign ] }; 22 | key { [ ccedilla, Ccedilla, division, dead_abovering ] }; 23 | key { [ at, apostrophe, multiply, dead_macron ] }; 24 | 25 | key { [ s, S, dstroke, section ] }; 26 | key { [ d, D, Dstroke, ETH ] }; 27 | key { [ediaeresis, Ediaeresis, dollar, dead_doubleacute ] }; 28 | key { [bracketleft, braceleft, ssharp, dead_caron ] }; 29 | key { [ backslash, bar, notsign, notsign ] }; 30 | 31 | key { [bracketright, braceright, currency, dead_breve ] }; 32 | key { [ comma, semicolon, less, multiply ] }; 33 | key { [ period, colon, greater, division ] }; 34 | key { [ slash, question, dead_belowdot, dead_abovedot ] }; 35 | 36 | include "level3(ralt_switch)" 37 | }; 38 | 39 | 40 | // Tastiera Plisi (plisi.org) 41 | // by Getoar Mjeku 42 | // 43 | 44 | partial alphanumeric_keys 45 | xkb_symbols "plisi" { 46 | 47 | include "us" 48 | 49 | name[Group1]= "Albanian (Plisi)"; 50 | 51 | key { [ grave, asciitilde ] }; 52 | key { [ 1, exclam, U2019 ] }; 53 | key { [ 2, at, twosuperior ] }; 54 | key { [ 3, numbersign, threesuperior ] }; 55 | key { [ 4, dollar, EuroSign ] }; 56 | key { [ 5, percent, exclamdown ] }; 57 | key { [ 6, asciicircum, questiondown ] }; 58 | key { [ 7, ampersand, braceleft ] }; 59 | key { [ 8, asterisk, braceright ] }; 60 | key { [ 9, parenleft, bracketleft ] }; 61 | key { [ 0, parenright, bracketright ] }; 62 | key { [ minus, underscore, U00AD ] }; 63 | key { [ equal, plus, registered ] }; 64 | 65 | key { [ q, Q, dead_grave ] }; 66 | key { [ w, W, dead_caron ] }; 67 | key { [ e, E, dead_circumflex ] }; 68 | key { [ r, R, dead_diaeresis ] }; 69 | key { [ t, T, dead_macron ] }; 70 | key { [ y, Y, dead_doubleacute ] }; 71 | key { [ u, U, dead_breve ] }; 72 | key { [ i, I, dead_tilde, U0131 ] }; 73 | key { [ o, O, dead_abovering ] }; 74 | key { [ p, P, dead_abovedot ] }; 75 | key { [ ccedilla, Ccedilla, dead_acute ] }; 76 | key { [ greater, less, U031C ] }; 77 | 78 | key { [ a, A, U2264 ] }; 79 | key { [ s, S, U2265 ] }; 80 | key { [ d, D, U2300 ] }; 81 | key { [ f, F, U2032 ] }; 82 | key { [ g, G, U2033 ] }; 83 | key { [ h, H, section ] }; 84 | key { [ j, J, dead_cedilla ] }; 85 | key { [ k, K, dead_belowcomma ] }; 86 | key { [ l, L, dead_ogonek ] }; 87 | key { [ ediaeresis, Ediaeresis, dead_belowdot ] }; 88 | key { [ apostrophe, quotedbl ] }; 89 | 90 | key { [ z, Z, guillemotleft ] }; 91 | key { [ x, X, guillemotright ] }; 92 | key { [ c, C, copyright ] }; 93 | key { [ v, V, U2039 ] }; 94 | key { [ b, B, U203A ] }; 95 | key { [ n, N, endash ] }; 96 | key { [ m, M, emdash, U00B5 ] }; 97 | key { [ comma, semicolon, U02BB ] }; 98 | key { [ period, colon, U200C ] }; 99 | key { [ slash, question, U2011 ] }; 100 | 101 | key { [ backslash, bar, U031B ] }; 102 | 103 | include "level3(ralt_switch)" 104 | }; 105 | 106 | // EXTRAS: 107 | 108 | // Veqilharxhi layout (https://arberisht.wordpress.com/2019/09/13/an-xkb-layout-for-the-veqilharxhi-alphabet/) 109 | // by Arbër Boriçi (illyriensis@protonmail.com) 110 | // 2019-09-12 111 | 112 | 113 | partial alphanumeric_keys 114 | xkb_symbols "veqilharxhi" { 115 | 116 | include "us" 117 | 118 | name[Group1]="Albanian (Veqilharxhi)"; 119 | 120 | // QWERTYUIOP 121 | key { [ U105B0, U10589 ] }; // 𐖰, 𐖉 122 | key { [ U1059F, U10578, w, W ] }; // 𐖟, 𐕸, w, W 123 | key { [ U1059E, U10577 ] }; // 𐖞, 𐕷 124 | key { [ U105B1, U1058A, U105B2, U1058B ] }; // 𐖱, 𐖊, 𐖲, 𐖋 125 | key { [ U105B5, U1058E, U105B6, U1058F ] }; // 𐖵, 𐖎, 𐖶, 𐖏 126 | key { [ U105BB, U10594 ] }; // 𐖻, 𐖔 127 | key { [ U105B7, U10590 ] }; // 𐖷, 𐖐 128 | key { [ U105A5, U1057E ] }; // 𐖥, 𐕾 129 | key { [ U105AE, U10587 ] }; // 𐖮, 𐖇 130 | key { [ U105AF, U10588 ] }; // 𐖯, 𐖈 131 | 132 | // ASDFGHJKL 133 | key { [ U10597, U10570 ] }; // 𐖗, 𐕰 134 | key { [ U105B3, U1058C, U105B4, U1058D ] }; // 𐖳, 𐖌, 𐖴, 𐖍 135 | key { [ U1059C, U10575, U1059D, U10576 ] }; // 𐖜, 𐕵, 𐖝, 𐕶 136 | key { [ U105A0, U10579 ] }; // 𐖠, 𐕹 137 | key { [ U105A1, U1057A, U105A2, U1057B ] }; // 𐖡, 𐕺, 𐖢, 𐕻 138 | key { [ U105A3, U1057C ] }; // 𐖣, 𐕼 139 | key { [ U105A7, U10580 ] }; // 𐖧, 𐖀 140 | key { [ U105A8, U10581 ] }; // 𐖨, 𐖁 141 | key { [ U105A9, U10582, U105AA, U10583 ] }; // 𐖩, 𐖂, 𐖪, 𐖃 142 | 143 | // ZXCVBNM 144 | key { [ U105BC, U10595, U105BD, U10596 ] }; // 𐖼, 𐖕, 𐖽, 𐖖 145 | key { [ U105B9, U10592, U105BA, U10593 ] }; // 𐖹, 𐖒, 𐖺, 𐖓 146 | key { [ U1059A, U10573, U1059B, U10574 ] }; // 𐖚, 𐕳, 𐖛, 𐕴 147 | key { [ U105B8, U10591 ] }; // 𐖸, 𐖑 148 | key { [ U10598, U10571 ] }; // 𐖘, 𐕱 149 | key { [ U105AC, U10585, U105AD, U10586 ] }; // 𐖬, 𐖅, 𐖭, 𐖆 150 | key { [ U105AB, U10584 ] }; // 𐖫, 𐖄 151 | 152 | include "level3(ralt_switch)" 153 | }; 154 | -------------------------------------------------------------------------------- /xkb-data_xmod/xkb/symbols/colemak_eD_template: -------------------------------------------------------------------------------- 1 | // $XKeyboardConfig$ 2 | 3 | // ***************************************************************************************** 4 | // ****** ****** 5 | // ****** Colemak layouts - adding locale variants in a consistent fashion ****** 6 | // ****** by OEystein "DreymaR" Bech-Aase (formerly Bech Gadmar), 2012- ****** 7 | // ****** (copy this template to a new file then find/replace ''/'') ****** 8 | // ****** ('' is usually the ISO-3166 two-letter country code) ****** 9 | // ****** ****** 10 | // ***************************************************************************************** 11 | 12 | // *************************************************************************** 13 | // **** In the symbols file for **** 14 | // **** found at xkb/symbols/ **** 15 | // **** (at the end, or below other Colemak variants) **** 16 | // *************************************************************************** 17 | 18 | // >>--> DreymaR (OEystein Bech-Aase), 202?-??: Additions to xkb/symbols/ 19 | // Colemak[eD]: National/locale Colemak "edition DreymaR" variants for . 20 | // 2006-01-01 Shai Coleman http://colemak.com/ (Public Domain) : The Colemak keyboard layout. 21 | // See the Big Bag section on Cmk[eD] locales: https://dreymar.colemak.org/variants.html#locales 22 | 23 | // The 'keep local symbols' variant keeps the national symbol and special letter setup. 24 | partial alphanumeric_keys 25 | xkb_symbols "cmk_ed_ks" { 26 | include "(basic)" 27 | include "colemak(cmk_ed_letters)" 28 | name[Group1]= " (Colemak[eD], keep local symbols)"; 29 | 30 | // NOTE: Symbols on letter keys may be lost in cmk_ed_ks if they are not on Colemak[eD] letter keys. 31 | // EuroSign is often on 'E'. The latin(intl) and locale(winkeys) layout variants use '5'. 32 | // Colemak[eD] has EuroSign on 'E' and mu on '5'. 33 | // key { [ NoSymbol, NoSymbol, mu, onehalf ] }; 34 | // key { [ NoSymbol, NoSymbol, EuroSign, onehalf ] }; // onehalf is moved, threeeights is lost 35 | 36 | key { [ §, §, §, § ] }; // from 37 | // key { [ semicolon, colon, dead_diaeresis, ellipsis ] }; // Colemak[eD] 38 | }; 39 | 40 | // The 'us' variant uses the US-type symbol key setup (recommended!) as it is nearly an intl. standard. 41 | // For , necessary local letters are added to designated flexible spots in the layout. 42 | // For "writing" and "coding" subvariants, move the brackets between lv1-2 and lv3-4 as shown. 43 | partial alphanumeric_keys 44 | xkb_symbols "cmk_ed_us" { 45 | include "colemak(cmk_ed_letters)" 46 | include "symkeys(cmk_ed_symbols)" 47 | include "level3(ralt_switch)" 48 | name[Group1]= " (Colemak[eD], unified symbols)"; 49 | 50 | // NEEDED: 51 | // letter frequencies: 52 | // NOTE: 53 | 54 | key { [ §, §, oe, OE ] }; // from 55 | // key { [ bracketleft, braceleft, §, § ] }; 56 | // key { [ bracketright, braceright, §, § ] }; 57 | key { [ §, §, bracketleft, braceleft ] }; // from 58 | key { [ §, §, bracketright, braceright ] }; // from 59 | // NOTE: The Curl(DH) ergo mod moves H and K, which may interfere with these mappings. 60 | // key { [ k, K, §, § ] }; // from 61 | // key { [ h, H, §, § ] }; // from 62 | // key { [ j, J, §, § ] }; // from 63 | // key { [ l, L, §, § ] }; // from 64 | // key { [ §, §, oe, OE ] }; // keep oe 65 | }; 66 | // <--<< DreymaR: Additions to xkb/symbols/ 67 | 68 | // *************************************************************************** 69 | // **** In the rules/evdev(+base).xml file **** 70 | // **** Under the layout variantList **** 71 | // *************************************************************************** 72 | 73 | 74 | 75 | 76 | cmk_ed_ks 77 | (Colemak[eD], keep local symbols) 78 | 79 | 80 | 81 | 82 | cmk_ed_us 83 | (Colemak[eD], unified symbols) 84 | 85 | 86 | 87 | // *************************************************************************** 88 | // **** In the rules/evdev(+base).lst file **** 89 | // **** Under '! variant' (norm. ) **** 90 | // **** This file is auto-generated when rules are compiled. **** 91 | // *************************************************************************** 92 | 93 | cmk_ed_ks : (Colemak[eD], keep local symbols) 94 | cmk_ed_us : (Colemak[eD], unified symbols) 95 | 96 | // *************************************************************************** 97 | // **** In the main rules/evdev(+base) file **** 98 | // **** no changes should be necessary. **** 99 | // *************************************************************************** 100 | 101 | // ***************************************************************************************** 102 | // ****** ****** 103 | // ****** ****** 104 | // ****** THE END of DreymaR's Colemak[eD] locale variant addition template ****** 105 | // ****** ****** 106 | // ****** ****** 107 | // ***************************************************************************************** 108 | -------------------------------------------------------------------------------- /xkb-data_orig/xkb/symbols/sk: -------------------------------------------------------------------------------- 1 | default partial alphanumeric_keys 2 | xkb_symbols "basic" { 3 | 4 | // This layout conforms to a new Slovak compromise standard 5 | // designed to satisfy most Unix, Windows and Mac users. 6 | // 2001 by Kamil Toman 7 | 8 | include "latin" 9 | name[Group1] = "Slovak"; 10 | 11 | key { [ semicolon, dead_abovering, grave, asciitilde ] }; 12 | key { [ plus, 1, exclam, dead_tilde ] }; 13 | key { [ lcaron, 2, at, dead_caron ] }; 14 | key { [ scaron, 3, numbersign, dead_circumflex ] }; 15 | key { [ ccaron, 4, dollar, dead_breve ] }; 16 | key { [ tcaron, 5, percent, dead_abovering]}; 17 | key { [ zcaron, 6, asciicircum, dead_ogonek ] }; 18 | key { [ yacute, 7, ampersand, dead_grave ] }; 19 | key { [ aacute, 8, asterisk, dead_abovedot] }; 20 | key { [ iacute, 9, braceleft, dead_acute ] }; 21 | key { [ eacute, 0, braceright, dead_doubleacute ] }; 22 | key { [ equal, percent, NoSymbol, dead_diaeresis]}; 23 | key { [dead_acute, dead_caron, dead_macron, dead_cedilla ] }; 24 | 25 | key { [ q, Q, backslash, NoSymbol ] }; 26 | key { [ w, W, bar, Nosymbol ] }; 27 | key { [ e, E, EuroSign, NoSymbol ] }; 28 | key { [ r, R, NoSymbol, NoSymbol ] }; 29 | key { [ t, T, NoSymbol, NoSymbol ] }; 30 | key { [ z, Z, NoSymbol, NoSymbol ] }; 31 | key { [ u, U, NoSymbol, NoSymbol ] }; 32 | key { [ i, I, NoSymbol, NoSymbol ] }; 33 | key { [ o, O, NoSymbol, NoSymbol ] }; 34 | key { [ p, P, NoSymbol, NoSymbol ] }; 35 | 36 | key { [ uacute, slash, bracketleft, division ] }; 37 | key { [adiaeresis, parenleft, bracketright, multiply ] }; 38 | 39 | key { [ a, A, asciitilde, NoSymbol ] }; 40 | key { [ s, S, dstroke, NoSymbol ] }; 41 | key { [ d, D, Dstroke, NoSymbol ] }; 42 | key { [ f, F, bracketleft, NoSymbol ] }; 43 | key { [ g, G, bracketright, NoSymbol ] }; 44 | key { [ h, H, grave, NoSymbol ] }; 45 | key { [ j, J, apostrophe, NoSymbol ] }; 46 | key { [ k, K, lstroke, NoSymbol ] }; 47 | key { [ l, L, Lstroke, NoSymbol ] }; 48 | 49 | key { [ocircumflex, quotedbl, dollar, NoSymbol ] }; 50 | key { [ section, exclam, apostrophe, ssharp ] }; 51 | key { [ ncaron, parenright, backslash, bar ] }; 52 | 53 | key { [ backslash, bar, slash, NoSymbol ] }; 54 | key { [ y, Y, degree, NoSymbol ] }; 55 | key { [ x, X, numbersign, Nosymbol ] }; 56 | key { [ c, C, ampersand, NoSymbol ] }; 57 | key { [ v, V, at, NoSymbol ] }; 58 | key { [ b, B, braceleft, NoSymbol ] }; 59 | key { [ n, N, braceright, NoSymbol ] }; 60 | key { [ m, M, asciicircum, NoSymbol ] }; 61 | key { [ comma, question, less, NoSymbol ] }; 62 | key { [ period, colon, greater, NoSymbol ] }; 63 | key { [ minus, underscore, asterisk, NoSymbol ] }; 64 | 65 | key { [ space, space, nobreakspace, nobreakspace ] }; 66 | 67 | include "level3(ralt_switch)" 68 | }; 69 | 70 | partial alphanumeric_keys alternate_group 71 | xkb_symbols "acc" { 72 | 73 | // This layout is usually used as the second group, it contains 74 | // accented characters only, no 'latin' set. 75 | // 2017 by Pavol Babinčák 76 | 77 | // Based on cz(ucw). Slovak letter frequency is used if a letter can be 78 | // used with multiple diacritic symbols. Other accented letters of Slovak 79 | // and Czech language end up on surrounding unused keys. 80 | 81 | name[Group1] = "Slovak (ACC layout, only accented letters)"; 82 | 83 | key { [zcaron, Zcaron ] }; 84 | key { [ccaron, Ccaron ] }; 85 | key { [ncaron, Ncaron ] }; 86 | 87 | key { [aacute, Aacute ] }; 88 | key { [scaron, Scaron ] }; 89 | key { [dcaron, Dcaron ] }; 90 | key { [ecaron, Ecaron ] }; 91 | key { [rcaron, Rcaron ] }; 92 | key { [uring, Uring ] }; 93 | key { [oacute, Oacute ] }; 94 | key { [lcaron, Lcaron ] }; 95 | 96 | key { [adiaeresis, Adiaeresis ] }; 97 | key { [eacute, Eacute ] }; 98 | key { [racute, Racute ] }; 99 | key { [tcaron, Tcaron ] }; 100 | key { [yacute, Yacute ] }; 101 | key { [uacute, Uacute ] }; 102 | key { [iacute, Iacute ] }; 103 | key { [ocircumflex, Ocircumflex ] }; 104 | key { [lacute, Lacute ] }; 105 | 106 | key { [dead_acute, dead_caron ] }; 107 | }; 108 | 109 | xkb_symbols "bksl" { 110 | 111 | // Use instead of (useful for keyboards without key). 112 | 113 | include "sk(basic)" 114 | name[Group1] = "Slovak (extended backslash)"; 115 | 116 | key { [ backslash, bar, slash, parenright ] }; 117 | key { [ backslash, parenleft, slash, NoSymbol ] }; 118 | }; 119 | 120 | partial alphanumeric_keys 121 | xkb_symbols "qwerty" { 122 | 123 | // This layout works exactly as the basic Slovak one with the exception 124 | // of the 'Z' and 'Y' keys, which are in Qwerty style (i.e. swapped). 125 | // 2001 by Kamil Toman 126 | 127 | include "sk(basic)" 128 | name[Group1] = "Slovak (QWERTY)"; 129 | 130 | key { [ z, Z, degree, NoSymbol ] }; 131 | key { [ y, Y, NoSymbol, NoSymbol ] }; 132 | }; 133 | 134 | xkb_symbols "qwerty_bksl" { 135 | 136 | // Use instead of (useful for keyboards without key). 137 | 138 | include "sk(qwerty)" 139 | name[Group1] = "Slovak (QWERTY, extended backslash)"; 140 | 141 | key { [ backslash, bar, slash, parenright ] }; 142 | key { [ backslash, parenleft, slash, NoSymbol ] }; 143 | }; 144 | 145 | // EXTRAS: 146 | 147 | partial alphanumeric_keys 148 | xkb_symbols "sun_type6" { 149 | include "sun_vndr/sk(sun_type6)" 150 | }; 151 | -------------------------------------------------------------------------------- /xkb-data_orig/xkb/symbols/nl: -------------------------------------------------------------------------------- 1 | // Basic layout, based on converted file, from keytable file to xkb/symbols/ file 2 | // with mk_xkb by root@linux.chanae.stben.be Tue Sep 30 00:53:29 MET DST 1997 3 | // 4 | // Converted from the nl-latin.map of the Linux kbd package by 5 | // Pablo Saratxaga 6 | default partial alphanumeric_keys 7 | xkb_symbols "basic" { 8 | 9 | include "latin" 10 | 11 | name[Group1]="Dutch"; 12 | 13 | key { [ 2, quotedbl, twosuperior, oneeighth ] }; 14 | key { [ 6, ampersand, threequarters, fiveeighths ] }; 15 | key { [ 7, underscore, sterling, seveneighths ] }; 16 | key { [ 8, parenleft, braceleft, bracketleft ] }; 17 | key { [ 9, parenright, braceright, bracketright ] }; 18 | key { [ 0, apostrophe, degree, trademark ] }; 19 | key { [ slash, question, backslash, questiondown ] }; 20 | key { [ degree, dead_tilde, dead_cedilla, dead_ogonek ] }; 21 | 22 | key { [ e, E, EuroSign, cent ] }; 23 | key { [ t, T, thorn, THORN ] }; 24 | key { [ y, Y, ydiaeresis, yen ] }; 25 | key { [ u, U, udiaeresis, Udiaeresis ] }; 26 | key { [ i, I, idiaeresis, Idiaeresis ] }; 27 | key { [ o, O, ograve, Ograve ] }; 28 | key { [ p, P, paragraph, THORN ] }; 29 | key { [dead_diaeresis, dead_circumflex, asciitilde, asciicircum] }; 30 | key { [ asterisk, bar, dead_tilde, dead_macron ] }; 31 | 32 | key { [ a, A, aacute, Aacute ] }; 33 | key { [ f, F, ordfeminine, ordfeminine ] }; 34 | key { [ plus, plusminus, dead_acute, dead_doubleacute ] }; 35 | key { [dead_acute, dead_grave, apostrophe, grave ] }; 36 | key { [ at, section, notsign, notsign ] }; 37 | 38 | key { [ less, greater, dead_grave, dead_breve ] }; 39 | key { [ v, V, leftdoublequotemark, leftsinglequotemark ] }; 40 | key { [ b, B, rightdoublequotemark, rightsinglequotemark ] }; 41 | key { [ n, N, ntilde, Ntilde ] }; 42 | key { [ m, M, Greek_mu, masculine ] }; 43 | key { [ comma, semicolon, cedilla, guillemotleft] }; 44 | key { [ period, colon, periodcentered, guillemotright ] }; 45 | key { [ minus, equal, hyphen, dead_abovedot] }; 46 | 47 | key { [bracketright, bracketleft, bar, brokenbar ] }; 48 | 49 | include "level3(ralt_switch)" 50 | }; 51 | 52 | 53 | // Official layout, by Benno Schulenberg , January 2007, 54 | // based on ftp://ftp.software.ibm.com/software/globalization/keyboards/KBD143.pdf. 55 | partial alphanumeric_keys 56 | xkb_symbols "std" { 57 | 58 | name[Group1]= "Dutch (standard)"; 59 | 60 | key { [ at, section, notsign ] }; 61 | key { [ 1, exclam, onesuperior ] }; 62 | key { [ 2, quotedbl, twosuperior ] }; 63 | key { [ 3, numbersign, threesuperior ] }; 64 | key { [ 4, dollar, onequarter ] }; 65 | key { [ 5, percent, onehalf ] }; 66 | key { [ 6, ampersand, threequarters ] }; 67 | key { [ 7, underscore, sterling ] }; 68 | key { [ 8, parenleft, braceleft ] }; 69 | key { [ 9, parenright, braceright ] }; 70 | key { [ 0, apostrophe ] }; 71 | key { [ slash, question, backslash ] }; 72 | key { [ degree, dead_tilde, dead_cedilla ] }; 73 | 74 | key { [ q, Q ] }; 75 | key { [ w, W ] }; 76 | key { [ e, E, EuroSign ] }; 77 | key { [ r, R, paragraph ] }; 78 | key { [ t, T ] }; 79 | key { [ y, Y ] }; 80 | key { [ u, U ] }; 81 | key { [ i, I ] }; 82 | key { [ o, O ] }; 83 | key { [ p, P ] }; 84 | key { [ dead_diaeresis, dead_circumflex ] }; 85 | key { [ asterisk, bar ] }; 86 | 87 | key { [ a, A ] }; 88 | key { [ s, S, ssharp ] }; 89 | key { [ d, D ] }; 90 | key { [ f, F ] }; 91 | key { [ g, G ] }; 92 | key { [ h, H ] }; 93 | key { [ j, J ] }; 94 | key { [ k, K ] }; 95 | key { [ l, L ] }; 96 | key { [ plus, plusminus ] }; 97 | key { [ dead_acute, dead_grave ] }; 98 | key { [ less, greater ] }; 99 | 100 | key { [ bracketright, bracketleft, brokenbar ] }; 101 | key { [ z, Z, guillemotleft ] }; 102 | key { [ x, X, guillemotright ] }; 103 | key { [ c, C, cent ] }; 104 | key { [ v, V ] }; 105 | key { [ b, B ] }; 106 | key { [ n, N ] }; 107 | key { [ m, M, mu ] }; 108 | key { [ comma, semicolon ] }; 109 | key { [ period, colon, periodcentered ] }; 110 | key { [ minus, equal ] }; 111 | 112 | include "level3(ralt_switch)" 113 | }; 114 | 115 | partial alphanumeric_keys 116 | xkb_symbols "us" { 117 | include "us(euro)" 118 | 119 | name[Group1]= "Dutch (US)"; 120 | }; 121 | 122 | // Copied from macintosh_vndr/nl 123 | partial alphanumeric_keys 124 | xkb_symbols "mac" { 125 | 126 | include "latin" 127 | 128 | name[Group1]= "Dutch (Macintosh)"; 129 | 130 | include "level3(ralt_switch)" 131 | }; 132 | 133 | // EXTRAS: 134 | 135 | partial alphanumeric_keys 136 | xkb_symbols "sun_type6" { 137 | include "sun_vndr/nl(sun_type6)" 138 | }; 139 | -------------------------------------------------------------------------------- /xkb-data_orig/xkb/symbols/epo: -------------------------------------------------------------------------------- 1 | // Esperanto keyboard maps -- "Ekverto" 2 | // 3 | // Ekverto A ("legacy") (2004-01-10) 4 | // Chusslove Illich (Ĉaslavo Iliĉo) 5 | // 6 | // Ekverto B ("basic") (2006-12-02) 7 | // Benno Schulenberg (Beno Sĥilenberĥ) 8 | // Chusslove Illich (Ĉaslavo Iliĉo) 9 | 10 | default partial alphanumeric_keys 11 | xkb_symbols "basic" { 12 | 13 | include "us(basic)" 14 | name[Group1]= "Esperanto"; 15 | 16 | key.type[Group1] = "FOUR_LEVEL_ALPHABETIC"; 17 | 18 | key { [ scircumflex, Scircumflex, q, Q ] }; 19 | key { [ gcircumflex, Gcircumflex, w, W ] }; 20 | key { [ ccircumflex, Ccircumflex, x, X ] }; 21 | key { [ ubreve, Ubreve, y, Y ] }; 22 | 23 | key.type[Group1] = "FOUR_LEVEL_SEMIALPHABETIC"; 24 | 25 | key { [ jcircumflex, Jcircumflex, bracketleft, braceleft ] }; 26 | key { [ hcircumflex, Hcircumflex, bracketright, braceright ] }; 27 | 28 | key { [ o, O, braceleft, braceleft ] }; 29 | key { [ p, P, braceright, braceright ] }; 30 | 31 | key { [ a, A, leftsinglequotemark, NoSymbol ] }; 32 | key { [ s, S, rightsinglequotemark, NoSymbol ] }; 33 | key { [ d, D, leftdoublequotemark, NoSymbol ] }; 34 | key { [ f, F, rightdoublequotemark, NoSymbol ] }; 35 | 36 | key { [ n, N, endash, endash ] }; 37 | key { [ m, M, emdash, emdash ] }; 38 | 39 | key.type[Group1] = "FOUR_LEVEL"; 40 | 41 | key { [ 5, percent, EuroSign, EuroSign ] }; 42 | 43 | include "level3(ralt_switch)" 44 | }; 45 | 46 | 47 | partial alphanumeric_keys 48 | xkb_symbols "legacy" { 49 | 50 | name[Group1]= "Esperanto (legacy)"; 51 | 52 | key.type[Group1] = "FOUR_LEVEL"; 53 | 54 | key { [ grave, asciitilde, NoSymbol, NoSymbol ] }; 55 | key { [ 1, exclam, NoSymbol, NoSymbol ] }; 56 | key { [ 2, quotedbl, NoSymbol, NoSymbol ] }; 57 | key { [ 3, numbersign, NoSymbol, NoSymbol ] }; 58 | key { [ 4, dollar, NoSymbol, NoSymbol ] }; 59 | key { [ 5, percent, NoSymbol, NoSymbol ] }; 60 | key { [ 6, apostrophe, NoSymbol, NoSymbol ] }; 61 | key { [ 7, ampersand, NoSymbol, NoSymbol ] }; 62 | key { [ 8, asterisk, NoSymbol, NoSymbol ] }; 63 | key { [ 9, parenleft, NoSymbol, NoSymbol ] }; 64 | key { [ 0, parenright, NoSymbol, NoSymbol ] }; 65 | key { [ minus, underscore, NoSymbol, NoSymbol ] }; 66 | key { [ equal, plus, NoSymbol, NoSymbol ] }; 67 | 68 | key { [ comma, semicolon, NoSymbol, NoSymbol ] }; 69 | key { [ period, colon, NoSymbol, NoSymbol ] }; 70 | key { [ slash, question, NoSymbol, NoSymbol ] }; 71 | 72 | key { [ bracketleft, braceleft, NoSymbol, NoSymbol ] }; 73 | key { [ bracketright, braceright, NoSymbol, NoSymbol ] }; 74 | 75 | key { [ backslash, bar, NoSymbol, NoSymbol ] }; 76 | key { [ NoSymbol, NoSymbol, NoSymbol, NoSymbol ] }; 77 | 78 | key.type[Group1] = "FOUR_LEVEL_SEMIALPHABETIC"; 79 | 80 | key { [ scircumflex, Scircumflex, at, NoSymbol ] }; 81 | key { [ jcircumflex, Jcircumflex, asciicircum, NoSymbol ] }; 82 | key { [ e, E, EuroSign, NoSymbol ] }; 83 | key { [ r, R, emdash, NoSymbol ] }; 84 | key { [ t, T, endash, NoSymbol ] }; 85 | key { [ gcircumflex, Gcircumflex, NoSymbol, NoSymbol ] }; 86 | key { [ u, U, NoSymbol, NoSymbol ] }; 87 | key { [ i, I, NoSymbol, NoSymbol ] }; 88 | key { [ o, O, NoSymbol, NoSymbol ] }; 89 | key { [ p, P, NoSymbol, NoSymbol ] }; 90 | 91 | key { [ a, A, less, NoSymbol ] }; 92 | key { [ s, S, greater, NoSymbol ] }; 93 | key { [ d, D, leftdoublequotemark, NoSymbol ] }; 94 | key { [ f, F, rightdoublequotemark, NoSymbol ] }; 95 | key { [ g, G, NoSymbol, NoSymbol ] }; 96 | key { [ h, H, NoSymbol, NoSymbol ] }; 97 | key { [ j, J, NoSymbol, NoSymbol ] }; 98 | key { [ k, K, NoSymbol, NoSymbol ] }; 99 | key { [ l, L, NoSymbol, NoSymbol ] }; 100 | key { [ ubreve, Ubreve, NoSymbol, NoSymbol ] }; 101 | key { [ hcircumflex, Hcircumflex, NoSymbol, NoSymbol ] }; 102 | 103 | key { [ z, Z, leftsinglequotemark, NoSymbol ] }; 104 | key { [ ccircumflex, Ccircumflex, rightsinglequotemark, NoSymbol ] }; 105 | key { [ c, C, NoSymbol, NoSymbol ] }; 106 | key { [ v, V, NoSymbol, NoSymbol ] }; 107 | key { [ b, B, NoSymbol, NoSymbol ] }; 108 | key { [ n, N, NoSymbol, NoSymbol ] }; 109 | key { [ m, M, NoSymbol, NoSymbol ] }; 110 | 111 | include "level3(ralt_switch)" 112 | }; 113 | 114 | // Add the Esperanto supersigned letters to their related keys on a Qwerty keyboard. 115 | // This is a generic "component" that is not used by the other layouts in this file, 116 | // but is meant to be applied to any Qwerty layout. If you have any questions, ask 117 | // J. Pablo Fernández . 118 | partial 119 | xkb_symbols "qwerty" { 120 | key { [ NoSymbol, NoSymbol, ccircumflex, Ccircumflex ] }; 121 | key { [ NoSymbol, NoSymbol, gcircumflex, Gcircumflex ] }; 122 | key { [ NoSymbol, NoSymbol, hcircumflex, Hcircumflex ] }; 123 | key { [ NoSymbol, NoSymbol, jcircumflex, Jcircumflex ] }; 124 | key { [ NoSymbol, NoSymbol, scircumflex, Scircumflex ] }; 125 | key { [ NoSymbol, NoSymbol, ubreve, Ubreve ] }; 126 | }; 127 | 128 | // Add the Esperanto supersigned letters to their related keys in a 129 | // Dvorak layout. Similar comment as above applies. 130 | partial 131 | xkb_symbols "dvorak" { 132 | key { [ NoSymbol, NoSymbol, ccircumflex, Ccircumflex ] }; 133 | key { [ NoSymbol, NoSymbol, gcircumflex, Gcircumflex ] }; 134 | key { [ NoSymbol, NoSymbol, hcircumflex, Hcircumflex ] }; 135 | key { [ NoSymbol, NoSymbol, jcircumflex, Jcircumflex ] }; 136 | key { [ NoSymbol, NoSymbol, scircumflex, Scircumflex ] }; 137 | key { [ NoSymbol, NoSymbol, ubreve, Ubreve ] }; 138 | }; 139 | 140 | // Add the Esperanto supersigned letters to their related keys in a 141 | // Colemak layout. Similar comment as above applies. 142 | partial 143 | xkb_symbols "colemak" { 144 | key { [ NoSymbol, NoSymbol, ccircumflex, Ccircumflex ] }; 145 | key { [ NoSymbol, NoSymbol, gcircumflex, Gcircumflex ] }; 146 | key { [ NoSymbol, NoSymbol, hcircumflex, Hcircumflex ] }; 147 | key { [ NoSymbol, NoSymbol, jcircumflex, Jcircumflex ] }; 148 | key { [ NoSymbol, NoSymbol, scircumflex, Scircumflex ] }; 149 | key { [ NoSymbol, NoSymbol, ubreve, Ubreve ] }; 150 | }; 151 | -------------------------------------------------------------------------------- /xkb-data_xmod/xkb/symbols/symkeys: -------------------------------------------------------------------------------- 1 | // $XKeyboardConfig$ 2 | 3 | // ***************************************************************************************** 4 | // ****** ****** 5 | // ***** « DreymaR's Big Bag of Keyboard Tricks – XKB implementation » ***** 6 | // ***** Symbol key mappings, with "Sym" ergonomic mods ***** 7 | // ***** by OEystein "DreymaR" Bech-Aase (Bech Gadmar until 2021), 2011- ***** 8 | // ****** ****** 9 | // ***************************************************************************************** 10 | 11 | default 12 | // ****************************************************** 13 | // ***** DreymaR: Sym (symbol key) ergo mods ***** 14 | // ***** Each one selectable as misc: options ***** 15 | // ***** Note: Different ones for Wide mods ***** 16 | // ****************************************************** 17 | 18 | // 'Colemak - edition DreymaR (Cmk-eD)' symbols, for the XKeyboardConfig xkb-data package 19 | // 2021-01-01 OEystein "DreymaR" Bech-Aase, formerly Bech Gadmar : Symbol key ergo mods. 20 | // See "DreymaR's Big Bag of Keyboard Tricks": https://dreymar.colemak.org/ergo-mods.html#symbols 21 | 22 | // Standard symbol key setup, as found in QWERTY and several other layouts 23 | // NOTE: This should be read in first, before adding any locale variants and then optionally a Symbol mod. 24 | // The Sym mods below change as little as possible from this entry, to avoid overwriting locale keys. 25 | partial alphanumeric_keys 26 | xkb_symbols "cmk_ed_symbols" { 27 | include "symkeys(cmk_ed_commons)" 28 | include "symkeys(cmk_ed_numbers)" 29 | key { [ minus, underscore, dead_macron, plusminus ] }; // -_ _± 30 | key { [ equal, plus, dead_doubleacute, notequal ] }; // =+ _≠ 31 | // key { [ semicolon, colon, dead_diaeresis, ellipsis ] }; // QWE P Cmk ;: ¨… 32 | key { [ bracketleft, braceleft, aring, Aring ] }; // [{ åÅ 33 | key { [ bracketright, braceright, ae, AE ] }; // ]} æÆ 34 | key { [ apostrophe, quotedbl, dead_acute, U2032 ] }; // '" _′ 35 | key { [ slash, question, dead_stroke, questiondown ] }; // /? _¿ 36 | // NOTE: In Linux, CapsLock behavior should be in the Keyboard settings (for freedom of choice etc.) 37 | // key { [ BackSpace, BackSpace, Caps_Lock, Caps_Lock ] }; // Caps/Back 38 | }; // U2032 - prime 39 | 40 | // DreymaR's Sym (S) mod for setups not using a Wide (W) mod 41 | partial alphanumeric_keys 42 | xkb_symbols "cmk_ed_sym_non-w" { 43 | // include "symkeys(cmk_ed_commons)" 44 | // include "symkeys(cmk_ed_numbers)" 45 | key { [ equal, plus, dead_doubleacute, notequal ] }; // =+ _≠ 46 | key { [ bracketleft, braceleft, aring, Aring ] }; // [{ åÅ 47 | key { [ apostrophe, quotedbl, dead_acute, U2032 ] }; // '" _′ 48 | key { [ minus, underscore, dead_macron, plusminus ] }; // -_ _± 49 | // key { [ bracketright, braceright, ae, AE ] }; // ]} æÆ 50 | key { [ semicolon, colon, dead_diaeresis, ellipsis ] }; // QWE P Cmk ;: ¨… 51 | key { [ backslash, bar, dead_grave, brokenbar ] }; // \| _¦ 52 | // key { [ slash, question, dead_stroke, questiondown ] }; // /? _¿ 53 | }; 54 | 55 | // DreymaR's Sym mod for setups using the Wide-ANSI model (without Sym, it has the Quote key on AD12) 56 | partial alphanumeric_keys 57 | xkb_symbols "cmk_ed_sym_w-104" { 58 | // include "symkeys(cmk_ed_commons)" 59 | // include "symkeys(cmk_ed_numbers)" 60 | key { [ equal, plus, dead_doubleacute, notequal ] }; // =+ _≠ 61 | key { [ backslash, bar, dead_grave, brokenbar ] }; // \| _¦ 62 | key { [ apostrophe, quotedbl, dead_acute, U2032 ] }; // '" _′ 63 | // key { [ bracketleft, braceleft, aring, Aring ] }; // [{ åÅ 64 | // key { [ bracketright, braceright, ae, AE ] }; // ]} æÆ 65 | key { [ minus, underscore, dead_macron, plusminus ] }; // -_ _± 66 | key { [ semicolon, colon, dead_diaeresis, ellipsis ] }; // QWE P Cmk ;: ¨… 67 | // key { [ slash, question, dead_stroke, questiondown ] }; // /? _¿ 68 | }; 69 | 70 | // DreymaR's Sym mod for setups using the Wide-ISO model (without Sym, it has the Slash key on AD12) 71 | partial alphanumeric_keys 72 | xkb_symbols "cmk_ed_sym_w-105" { 73 | // include "symkeys(cmk_ed_commons)" 74 | // include "symkeys(cmk_ed_numbers)" 75 | key { [ equal, plus, dead_doubleacute, notequal ] }; // =+ _≠ 76 | key { [ backslash, bar, dead_grave, brokenbar ] }; // \| _¦ 77 | key { [ apostrophe, quotedbl, dead_acute, U2032 ] }; // '" _′ 78 | // key { [ bracketleft, braceleft, aring, Aring ] }; // [{ åÅ 79 | // key { [ bracketright, braceright, ae, AE ] }; // ]} æÆ 80 | key { [ semicolon, colon, dead_diaeresis, ellipsis ] }; // QWE P Cmk ;: ¨… 81 | key { [ slash, question, dead_stroke, questiondown ] }; // /? _¿ 82 | key { [ minus, underscore, dead_macron, plusminus ] }; // -_ _± 83 | }; 84 | 85 | hidden partial alphanumeric_keys 86 | xkb_symbols "cmk_ed_commons" { 87 | key { [ grave, asciitilde, dead_tilde, U2248 ] }; // `~ _≈ 88 | key { [ oe, OE, oslash, Ooblique ] }; // œŒ øØ 89 | key { [ comma, less, dead_cedilla, lessthanequal ] }; // ,< _≤ 90 | key { [ period, greater, dead_abovedot, greaterthanequal ] }; // .> _≥ 91 | }; // U2248 - approx. equal 92 | 93 | hidden partial alphanumeric_keys 94 | xkb_symbols "cmk_ed_numbers" { 95 | key { [ 1, exclam, dead_belowdot, exclamdown ] }; // 1! _¡ 96 | key { [ 2, at, dead_hook, twosuperior ] }; // 2@ _² 97 | key { [ 3, numbersign, dead_horn, threesuperior ] }; // 3# _³ 98 | key { [ 4, dollar, dead_currency, sterling ] }; // 4$ _£ 99 | key { [ 5, percent, mu, U2030 ] }; // 5% µ‰ 100 | key { [ 6, asciicircum, dead_circumflex, partialderivative ] }; // 6^ _∂ 101 | key { [ 7, ampersand, dead_caron, notsign ] }; // 7& _¬ 102 | key { [ 8, asterisk, dead_ogonek, infinity ] }; // 8* _∞ 103 | key { [ 9, parenleft, dead_breve, periodcentered ] }; // 9( _· 104 | key { [ 0, parenright, dead_abovering, degree ] }; // 0) _° 105 | }; // U2030 - per mille 106 | 107 | 108 | // ***************************************************************************************** 109 | // ****** ****** 110 | // ***** END of DreymaR's Big Bag addons (Symbol key mappings and "Sym" ergomods) ***** 111 | // ****** ****** 112 | // ***************************************************************************************** 113 | -------------------------------------------------------------------------------- /xkb-data_xmod/xkb/symbols/level5: -------------------------------------------------------------------------------- 1 | // These partial variants assign ISO_Level5_Shift to various XKB keycodes 2 | // so that the fifth shift level can be reached. 3 | 4 | // The right Ctrl key (while pressed) chooses the fifth shift level. 5 | partial modifier_keys 6 | xkb_symbols "rctrl_switch" { 7 | key { 8 | type[Group1]="ONE_LEVEL", 9 | symbols[Group1] = [ ISO_Level5_Shift ] 10 | }; 11 | include "level5(modifier_mapping)" 12 | }; 13 | 14 | // The Less/Greater key (while pressed) chooses the fifth shift level. 15 | partial modifier_keys 16 | xkb_symbols "lsgt_switch" { 17 | key { 18 | type[Group1]="ONE_LEVEL", 19 | symbols[Group1] = [ ISO_Level5_Shift ] 20 | }; 21 | include "level5(modifier_mapping)" 22 | }; 23 | 24 | // The right Alt key (while pressed) chooses the fifth shift level. 25 | partial modifier_keys 26 | xkb_symbols "ralt_switch" { 27 | key { 28 | type[Group1]="ONE_LEVEL", 29 | symbols[Group1] = [ ISO_Level5_Shift ] 30 | }; 31 | include "level5(modifier_mapping)" 32 | }; 33 | 34 | // The CapsLock key (while pressed) chooses the fifth shift level. 35 | partial modifier_keys 36 | xkb_symbols "caps_switch" { 37 | key { 38 | type[Group1]="ONE_LEVEL", 39 | symbols[Group1] = [ ISO_Level5_Shift ] 40 | }; 41 | include "level5(modifier_mapping)" 42 | }; 43 | 44 | // Ensure a mapping to a real modifier for LevelFive. 45 | partial modifier_keys 46 | xkb_symbols "modifier_mapping" { 47 | replace key { 48 | type[Group1] = "ONE_LEVEL", 49 | symbols[Group1] = [ ISO_Level5_Shift ] 50 | }; 51 | modifier_map Mod3 { }; 52 | }; 53 | 54 | 55 | // This adds the definitions needed to create a level5-lock behaviour, using 56 | // the real modifier NumLock as a lock indicator. 57 | // See also: types/level5 : EIGHT_LEVEL_LEVEL_FIVE_LOCK 58 | // See also: compat/level5(level5_lock) 59 | partial modifier_keys 60 | xkb_symbols "lock" { 61 | key.type[Group1] = "ONE_LEVEL"; 62 | include "level5(modifier_mapping)" 63 | replace key { 64 | vmods = NumLock, 65 | symbols[Group1] = [ NoSymbol ], 66 | actions[Group1] = [ SetMods(modifiers=NumLock) ] 67 | }; 68 | modifier_map Mod2 { }; 69 | }; 70 | 71 | // The following modifier keys are used to switch to the third shift level 72 | // and to set a corresponding lock, implemented as NumLock. 73 | 74 | partial modifier_keys 75 | xkb_symbols "lsgt_switch_lock" { 76 | include "level5(lock)" 77 | key { 78 | type[Group1] = "EIGHT_LEVEL", 79 | symbols[Group1] = [ ISO_Level5_Shift, ISO_Level5_Shift, ISO_Level5_Shift, ISO_Level5_Shift, 80 | ISO_Level5_Lock, ISO_Level5_Lock, ISO_Level5_Lock, ISO_Level5_Lock ] 81 | }; 82 | }; 83 | 84 | partial modifier_keys 85 | xkb_symbols "lwin_switch_lock" { 86 | include "level5(lock)" 87 | key { 88 | type[Group1] = "EIGHT_LEVEL", 89 | symbols[Group1] = [ ISO_Level5_Shift, ISO_Level5_Shift, ISO_Level5_Shift, ISO_Level5_Shift, 90 | ISO_Level5_Lock, ISO_Level5_Lock, ISO_Level5_Lock, ISO_Level5_Lock ] 91 | }; 92 | }; 93 | 94 | partial modifier_keys 95 | xkb_symbols "ralt_switch_lock" { 96 | include "level5(lock)" 97 | key { 98 | type[Group1] = "EIGHT_LEVEL", 99 | symbols[Group1] = [ ISO_Level5_Shift, ISO_Level5_Shift, ISO_Level5_Shift, ISO_Level5_Shift, 100 | ISO_Level5_Lock, ISO_Level5_Lock, ISO_Level5_Lock, ISO_Level5_Lock ] 101 | }; 102 | }; 103 | 104 | partial modifier_keys 105 | xkb_symbols "rwin_switch_lock" { 106 | include "level5(lock)" 107 | key { 108 | type[Group1] = "EIGHT_LEVEL", 109 | symbols[Group1] = [ ISO_Level5_Shift, ISO_Level5_Shift, ISO_Level5_Shift, ISO_Level5_Shift, 110 | ISO_Level5_Lock, ISO_Level5_Lock, ISO_Level5_Lock, ISO_Level5_Lock ] 111 | }; 112 | }; 113 | 114 | partial modifier_keys 115 | xkb_symbols "lsgt_switch_lock_cancel" { 116 | include "level5(lock)" 117 | key { 118 | type[Group1] = "EIGHT_LEVEL_LEVEL_FIVE_LOCK", 119 | symbols[Group1] = [ ISO_Level5_Shift, ISO_Level5_Shift, ISO_Level5_Shift, ISO_Level5_Shift, 120 | ISO_Level5_Lock, ISO_Level5_Lock, ISO_Level5_Lock, ISO_Level5_Lock ] 121 | }; 122 | }; 123 | 124 | partial modifier_keys 125 | xkb_symbols "lwin_switch_lock_cancel" { 126 | include "level5(lock)" 127 | key { 128 | type[Group1] = "EIGHT_LEVEL_LEVEL_FIVE_LOCK", 129 | symbols[Group1] = [ ISO_Level5_Shift, ISO_Level5_Shift, ISO_Level5_Shift, ISO_Level5_Shift, 130 | ISO_Level5_Lock, ISO_Level5_Lock, ISO_Level5_Lock, ISO_Level5_Lock ] 131 | }; 132 | }; 133 | 134 | partial modifier_keys 135 | xkb_symbols "ralt_switch_lock_cancel" { 136 | include "level5(lock)" 137 | key { 138 | type[Group1] = "EIGHT_LEVEL_LEVEL_FIVE_LOCK", 139 | symbols[Group1] = [ ISO_Level5_Shift, ISO_Level5_Shift, ISO_Level5_Shift, ISO_Level5_Shift, 140 | ISO_Level5_Lock, ISO_Level5_Lock, ISO_Level5_Lock, ISO_Level5_Lock ] 141 | }; 142 | }; 143 | 144 | partial modifier_keys 145 | xkb_symbols "rwin_switch_lock_cancel" { 146 | include "level5(lock)" 147 | key { 148 | type[Group1] = "EIGHT_LEVEL_LEVEL_FIVE_LOCK", 149 | symbols[Group1] = [ ISO_Level5_Shift, ISO_Level5_Shift, ISO_Level5_Shift, ISO_Level5_Shift, 150 | ISO_Level5_Lock, ISO_Level5_Lock, ISO_Level5_Lock, ISO_Level5_Lock ] 151 | }; 152 | }; 153 | 154 | // >>--> DreymaR (OEystein Bech-Aase, formerly Bech Gadmar), 2011-05: Additions to xkb/symbols/level5 155 | // The CapsLock Level5 switches are good for Extend overlay mappings using Caps as an Extend modifier 156 | // The Left Ctrl Level5 switches are good for Extend overlay mappings if you're using Caps as Left Ctrl 157 | // See "DreymaR's Big Bag of Keyboard Tricks": https://dreymar.colemak.org/layers-extend.html 158 | 159 | // The CapsLock key (while pressed) chooses the fifth shift level. Now included in xkb-data. 160 | //partial modifier_keys 161 | //xkb_symbols "caps_switch" { 162 | // key { 163 | // type[Group1]="ONE_LEVEL", 164 | // symbols[Group1] = [ ISO_Level5_Shift ] 165 | // }; 166 | // include "level5(modifier_mapping)" 167 | //}; 168 | 169 | // CapsLock chooses 5th level, locks when pressed together with another 5th-level-chooser 170 | partial modifier_keys 171 | xkb_symbols "caps_switch_lock" { 172 | include "level5(lock)" 173 | key { 174 | type[Group1] = "EIGHT_LEVEL", 175 | symbols[Group1] = [ ISO_Level5_Shift, ISO_Level5_Shift, ISO_Level5_Shift, ISO_Level5_Shift, 176 | ISO_Level5_Lock, ISO_Level5_Lock, ISO_Level5_Lock, ISO_Level5_Lock ] 177 | }; 178 | }; 179 | 180 | // CapsLock chooses 5th level, latches (temp lock) when pressed with another 5th-level-chooser 181 | partial modifier_keys 182 | xkb_symbols "caps_switch_lock_cancel" { 183 | include "level5(lock)" 184 | key { 185 | type[Group1] = "EIGHT_LEVEL_LEVEL_FIVE_LOCK", 186 | symbols[Group1] = [ ISO_Level5_Shift, ISO_Level5_Shift, ISO_Level5_Shift, ISO_Level5_Shift, 187 | ISO_Level5_Lock, ISO_Level5_Lock, ISO_Level5_Lock, ISO_Level5_Lock ] 188 | }; 189 | }; 190 | 191 | // The Left Ctrl key (while pressed) chooses the fifth shift level. 192 | partial modifier_keys 193 | xkb_symbols "lctl_switch" { 194 | key { 195 | type[Group1]="ONE_LEVEL", 196 | symbols[Group1] = [ ISO_Level5_Shift ] 197 | }; 198 | include "level5(modifier_mapping)" 199 | }; 200 | 201 | // Left Ctrl chooses 5th level, locks when pressed together with another 5th-level-chooser 202 | partial modifier_keys 203 | xkb_symbols "lctl_switch_lock" { 204 | include "level5(lock)" 205 | key { 206 | type[Group1] = "EIGHT_LEVEL", 207 | symbols[Group1] = [ ISO_Level5_Shift, ISO_Level5_Shift, ISO_Level5_Shift, ISO_Level5_Shift, 208 | ISO_Level5_Lock, ISO_Level5_Lock, ISO_Level5_Lock, ISO_Level5_Lock ] 209 | }; 210 | }; 211 | 212 | // Left Ctrl chooses 5th level, latches (temp lock) when pressed with another 5th-level-chooser 213 | partial modifier_keys 214 | xkb_symbols "lctl_switch_lock_cancel" { 215 | include "level5(lock)" 216 | key { 217 | type[Group1] = "EIGHT_LEVEL_LEVEL_FIVE_LOCK", 218 | symbols[Group1] = [ ISO_Level5_Shift, ISO_Level5_Shift, ISO_Level5_Shift, ISO_Level5_Shift, 219 | ISO_Level5_Lock, ISO_Level5_Lock, ISO_Level5_Lock, ISO_Level5_Lock ] 220 | }; 221 | }; 222 | // <--<< DreymaR: Additions to xkb/symbols/level5 223 | -------------------------------------------------------------------------------- /xkb-data_xmod/xkb/symbols/al: -------------------------------------------------------------------------------- 1 | // Albanian keyboard layout, by Pablo Saratxaga . 2 | default partial alphanumeric_keys 3 | xkb_symbols "basic" { 4 | 5 | include "latin(type3)" 6 | 7 | name[Group1]="Albanian"; 8 | 9 | key { [ 1, exclam, asciitilde, dead_tilde ] }; 10 | key { [ 2, quotedbl, dead_caron, oneeighth ] }; 11 | key { [ 3, numbersign, dead_circumflex, sterling ] }; 12 | key { [ 4, dollar, dead_breve, dollar ] }; 13 | key { [ 5, percent, dead_abovering, threeeighths] }; 14 | key { [ 6, asciicircum, dead_ogonek, fiveeighths ] }; 15 | key { [ 7, ampersand, grave, dead_grave ] }; 16 | key { [ 8, asterisk, dead_abovedot, trademark ] }; 17 | key { [ 9, parenleft, dead_acute, plusminus ] }; 18 | key { [ 0, parenright, dead_doubleacute, degree ] }; 19 | key { [ minus, underscore, dead_diaeresis, questiondown] }; 20 | 21 | key { [ e, E, EuroSign, EuroSign ] }; 22 | key { [ ccedilla, Ccedilla, division, dead_abovering ] }; 23 | key { [ at, apostrophe, multiply, dead_macron ] }; 24 | 25 | key { [ s, S, dstroke, section ] }; 26 | key { [ d, D, Dstroke, ETH ] }; 27 | key { [ediaeresis, Ediaeresis, dollar, dead_doubleacute ] }; 28 | key { [bracketleft, braceleft, ssharp, dead_caron ] }; 29 | key { [ backslash, bar, notsign, notsign ] }; 30 | 31 | key { [bracketright, braceright, currency, dead_breve ] }; 32 | key { [ comma, semicolon, less, multiply ] }; 33 | key { [ period, colon, greater, division ] }; 34 | key { [ slash, question, dead_belowdot, dead_abovedot ] }; 35 | 36 | include "level3(ralt_switch)" 37 | }; 38 | 39 | 40 | // Tastiera Plisi (plisi.org) 41 | // by Getoar Mjeku 42 | // 43 | 44 | partial alphanumeric_keys 45 | xkb_symbols "plisi" { 46 | 47 | include "us" 48 | 49 | name[Group1]= "Albanian (Plisi)"; 50 | 51 | key { [ grave, asciitilde ] }; 52 | key { [ 1, exclam, U2019 ] }; 53 | key { [ 2, at, twosuperior ] }; 54 | key { [ 3, numbersign, threesuperior ] }; 55 | key { [ 4, dollar, EuroSign ] }; 56 | key { [ 5, percent, exclamdown ] }; 57 | key { [ 6, asciicircum, questiondown ] }; 58 | key { [ 7, ampersand, braceleft ] }; 59 | key { [ 8, asterisk, braceright ] }; 60 | key { [ 9, parenleft, bracketleft ] }; 61 | key { [ 0, parenright, bracketright ] }; 62 | key { [ minus, underscore, U00AD ] }; 63 | key { [ equal, plus, registered ] }; 64 | 65 | key { [ q, Q, dead_grave ] }; 66 | key { [ w, W, dead_caron ] }; 67 | key { [ e, E, dead_circumflex ] }; 68 | key { [ r, R, dead_diaeresis ] }; 69 | key { [ t, T, dead_macron ] }; 70 | key { [ y, Y, dead_doubleacute ] }; 71 | key { [ u, U, dead_breve ] }; 72 | key { [ i, I, dead_tilde, U0131 ] }; 73 | key { [ o, O, dead_abovering ] }; 74 | key { [ p, P, dead_abovedot ] }; 75 | key { [ ccedilla, Ccedilla, dead_acute ] }; 76 | key { [ greater, less, U031C ] }; 77 | 78 | key { [ a, A, U2264 ] }; 79 | key { [ s, S, U2265 ] }; 80 | key { [ d, D, U2300 ] }; 81 | key { [ f, F, U2032 ] }; 82 | key { [ g, G, U2033 ] }; 83 | key { [ h, H, section ] }; 84 | key { [ j, J, dead_cedilla ] }; 85 | key { [ k, K, dead_belowcomma ] }; 86 | key { [ l, L, dead_ogonek ] }; 87 | key { [ ediaeresis, Ediaeresis, dead_belowdot ] }; 88 | key { [ apostrophe, quotedbl ] }; 89 | 90 | key { [ z, Z, guillemotleft ] }; 91 | key { [ x, X, guillemotright ] }; 92 | key { [ c, C, copyright ] }; 93 | key { [ v, V, U2039 ] }; 94 | key { [ b, B, U203A ] }; 95 | key { [ n, N, endash ] }; 96 | key { [ m, M, emdash, U00B5 ] }; 97 | key { [ comma, semicolon, U02BB ] }; 98 | key { [ period, colon, U200C ] }; 99 | key { [ slash, question, U2011 ] }; 100 | 101 | key { [ backslash, bar, U031B ] }; 102 | 103 | include "level3(ralt_switch)" 104 | }; 105 | 106 | // EXTRAS: 107 | 108 | // Veqilharxhi layout (https://arberisht.wordpress.com/2019/09/13/an-xkb-layout-for-the-veqilharxhi-alphabet/) 109 | // by Arbër Boriçi (illyriensis@protonmail.com) 110 | // 2019-09-12 111 | 112 | 113 | partial alphanumeric_keys 114 | xkb_symbols "veqilharxhi" { 115 | 116 | include "us" 117 | 118 | name[Group1]="Albanian (Veqilharxhi)"; 119 | 120 | // QWERTYUIOP 121 | key { [ U105B0, U10589 ] }; // 𐖰, 𐖉 122 | key { [ U1059F, U10578, w, W ] }; // 𐖟, 𐕸, w, W 123 | key { [ U1059E, U10577 ] }; // 𐖞, 𐕷 124 | key { [ U105B1, U1058A, U105B2, U1058B ] }; // 𐖱, 𐖊, 𐖲, 𐖋 125 | key { [ U105B5, U1058E, U105B6, U1058F ] }; // 𐖵, 𐖎, 𐖶, 𐖏 126 | key { [ U105BB, U10594 ] }; // 𐖻, 𐖔 127 | key { [ U105B7, U10590 ] }; // 𐖷, 𐖐 128 | key { [ U105A5, U1057E ] }; // 𐖥, 𐕾 129 | key { [ U105AE, U10587 ] }; // 𐖮, 𐖇 130 | key { [ U105AF, U10588 ] }; // 𐖯, 𐖈 131 | 132 | // ASDFGHJKL 133 | key { [ U10597, U10570 ] }; // 𐖗, 𐕰 134 | key { [ U105B3, U1058C, U105B4, U1058D ] }; // 𐖳, 𐖌, 𐖴, 𐖍 135 | key { [ U1059C, U10575, U1059D, U10576 ] }; // 𐖜, 𐕵, 𐖝, 𐕶 136 | key { [ U105A0, U10579 ] }; // 𐖠, 𐕹 137 | key { [ U105A1, U1057A, U105A2, U1057B ] }; // 𐖡, 𐕺, 𐖢, 𐕻 138 | key { [ U105A3, U1057C ] }; // 𐖣, 𐕼 139 | key { [ U105A7, U10580 ] }; // 𐖧, 𐖀 140 | key { [ U105A8, U10581 ] }; // 𐖨, 𐖁 141 | key { [ U105A9, U10582, U105AA, U10583 ] }; // 𐖩, 𐖂, 𐖪, 𐖃 142 | 143 | // ZXCVBNM 144 | key { [ U105BC, U10595, U105BD, U10596 ] }; // 𐖼, 𐖕, 𐖽, 𐖖 145 | key { [ U105B9, U10592, U105BA, U10593 ] }; // 𐖹, 𐖒, 𐖺, 𐖓 146 | key { [ U1059A, U10573, U1059B, U10574 ] }; // 𐖚, 𐕳, 𐖛, 𐕴 147 | key { [ U105B8, U10591 ] }; // 𐖸, 𐖑 148 | key { [ U10598, U10571 ] }; // 𐖘, 𐕱 149 | key { [ U105AC, U10585, U105AD, U10586 ] }; // 𐖬, 𐖅, 𐖭, 𐖆 150 | key { [ U105AB, U10584 ] }; // 𐖫, 𐖄 151 | 152 | include "level3(ralt_switch)" 153 | }; 154 | 155 | // >>--> OEystein "DreymaR" Bech-Aase (formerly Bech Gadmar), 2014-01: Additions to xkb/symbols/al 156 | // Colemak[eD]: National/locale Colemak "edition DreymaR" variants for Albanian. 157 | // 2006-01-01 Shai Coleman http://colemak.com/ (Public Domain) : The Colemak keyboard layout. 158 | // See the Big Bag section on Cmk[eD] locales: https://dreymar.colemak.org/variants.html#locales 159 | 160 | // The 'keep local symbols' variant keeps the national symbol and special letter setup. 161 | partial alphanumeric_keys 162 | xkb_symbols "cmk_ed_ks" { 163 | include "al(basic)" 164 | include "colemak(cmk_ed_letters)" 165 | name[Group1]= "Albanian (Colemak[eD], keep local symbols)"; 166 | 167 | // NOTE: Symbols on letter keys may be lost in cmk_ed_ks if they are not on Colemak[eD] letter keys. 168 | // EuroSign is often on 'E'. The latin(intl) and locale(winkeys) layout variants use '5'. 169 | // Colemak[eD] has EuroSign on 'E' and mu on '5'. 170 | // key { [ NoSymbol, NoSymbol, mu, onehalf ] }; 171 | // key { [ NoSymbol, NoSymbol, EuroSign, onehalf ] }; // onehalf is moved, threeeights is lost 172 | 173 | key { [ ediaeresis, Ediaeresis, dollar, dead_doubleacute ] }; // from 174 | }; 175 | 176 | // The 'us' variant uses the US-type symbol key setup (recommended!) as it is nearly an intl. standard. 177 | // For Albanian, necessary local letters are added to designated flexible spots in the layout. 178 | // For "writing" and "coding" subvariants, move the brackets between lv1-2 and lv3-4 as shown. 179 | partial alphanumeric_keys 180 | xkb_symbols "cmk_ed_us" { 181 | include "colemak(cmk_ed_letters)" 182 | include "symkeys(cmk_ed_symbols)" 183 | include "level3(ralt_switch)" 184 | name[Group1]= "Albanian (Colemak[eD], unified symbols)"; 185 | 186 | // NEEDED: Cedilla Cc; diaeresis Ee 187 | 188 | // key { [ bracketleft, braceleft, ccedilla, Ccedilla ] }; 189 | // key { [ bracketright, braceright, ediaeresis, Ediaeresis ] }; 190 | key { [ ccedilla, Ccedilla, bracketleft, braceleft ] }; // from 191 | key { [ ediaeresis, Ediaeresis, bracketright, braceright ] }; // from 192 | }; 193 | // <--<< DreymaR: Additions to xkb/symbols/al 194 | -------------------------------------------------------------------------------- /xkb-data_orig/xkb/types/level5: -------------------------------------------------------------------------------- 1 | default partial xkb_types "default" { 2 | 3 | // Defines a type with an eight-level shift, similar to the three-level 4 | // type used for iso9995, but it lets the Shift key behave "normally". 5 | 6 | virtual_modifiers LevelThree,ScrollLock,LevelFive; 7 | 8 | type "EIGHT_LEVEL" { 9 | modifiers = Shift+LevelThree+LevelFive; 10 | map[None] = Level1; 11 | map[Shift] = Level2; 12 | map[LevelThree] = Level3; 13 | map[Shift+LevelThree] = Level4; 14 | map[LevelFive] = Level5; 15 | map[Shift+LevelFive] = Level6; 16 | map[LevelThree+LevelFive] = Level7; 17 | map[Shift+LevelThree+LevelFive] = Level8; 18 | level_name[Level1] = "Base"; 19 | level_name[Level2] = "Shift"; 20 | level_name[Level3] = "Alt Base"; 21 | level_name[Level4] = "Shift Alt"; 22 | level_name[Level5] = "X"; 23 | level_name[Level6] = "X Shift"; 24 | level_name[Level7] = "X Alt Base"; 25 | level_name[Level8] = "X Shift Alt"; 26 | }; 27 | 28 | type "EIGHT_LEVEL_ALPHABETIC" { 29 | modifiers = Shift+Lock+LevelThree+LevelFive; 30 | map[None] = Level1; 31 | map[Shift] = Level2; 32 | map[Lock] = Level2; 33 | map[LevelThree] = Level3; 34 | map[Shift+LevelThree] = Level4; 35 | map[Lock+LevelThree] = Level4; 36 | map[Lock+Shift+LevelThree] = Level3; 37 | 38 | map[LevelFive] = Level5; 39 | map[Shift+LevelFive] = Level6; 40 | map[Lock+LevelFive] = Level6; 41 | map[LevelThree+LevelFive] = Level7; 42 | map[Shift+LevelThree+LevelFive] = Level8; 43 | map[Lock+LevelThree+LevelFive] = Level8; 44 | map[Lock+Shift+LevelThree+LevelFive] = Level7; 45 | 46 | level_name[Level1] = "Base"; 47 | level_name[Level2] = "Shift"; 48 | level_name[Level3] = "Alt Base"; 49 | level_name[Level4] = "Shift Alt"; 50 | level_name[Level5] = "X"; 51 | level_name[Level6] = "X Shift"; 52 | level_name[Level7] = "X Alt Base"; 53 | level_name[Level8] = "X Shift Alt"; 54 | }; 55 | 56 | type "EIGHT_LEVEL_LEVEL_FIVE_LOCK" { 57 | // Level5-Lock is implemented by using NumLock, because a real modifier 58 | // is required. 59 | 60 | modifiers = Shift + Lock + LevelThree + NumLock + LevelFive; 61 | 62 | map[None] = Level1; 63 | map[Shift] = Level2; 64 | map[LevelThree] = Level3; 65 | map[LevelThree+Shift] = Level4; 66 | 67 | map[LevelFive] = Level5; 68 | map[LevelFive+Shift] = Level6; 69 | map[LevelFive+LevelThree] = Level7; 70 | map[LevelFive+LevelThree+Shift] = Level8; 71 | 72 | map[NumLock] = Level5; 73 | map[NumLock+Shift] = Level6; 74 | map[NumLock+LevelThree] = Level7; 75 | map[NumLock+LevelThree+Shift] = Level8; 76 | 77 | map[NumLock+LevelFive] = Level1; 78 | map[NumLock+LevelFive+Shift] = Level2; 79 | map[NumLock+LevelFive+LevelThree] = Level3; 80 | map[NumLock+LevelFive+LevelThree+Shift] = Level4; 81 | 82 | // Lock has no effect 83 | map[Lock] = Level1; 84 | map[Lock+Shift] = Level2; 85 | map[Lock+LevelThree] = Level3; 86 | map[Lock+LevelThree+Shift] = Level4; 87 | 88 | map[Lock+LevelFive] = Level5; 89 | map[Lock+LevelFive+Shift] = Level6; 90 | map[Lock+LevelFive+LevelThree] = Level7; 91 | map[Lock+LevelFive+LevelThree+Shift] = Level8; 92 | 93 | map[Lock+NumLock] = Level5; 94 | map[Lock+NumLock+Shift] = Level6; 95 | map[Lock+NumLock+LevelThree] = Level7; 96 | map[Lock+NumLock+LevelThree+Shift] = Level8; 97 | 98 | map[Lock+NumLock+LevelFive] = Level1; 99 | map[Lock+NumLock+LevelFive+Shift] = Level2; 100 | map[Lock+NumLock+LevelFive+LevelThree] = Level3; 101 | map[Lock+NumLock+LevelFive+LevelThree+Shift] = Level4; 102 | 103 | preserve[LevelFive+Shift] = Shift; 104 | preserve[NumLock+Shift] = Shift; 105 | preserve[Lock+LevelFive+Shift] = Shift; 106 | preserve[Lock+NumLock+Shift] = Shift; 107 | 108 | level_name[Level1] = "Base"; 109 | level_name[Level2] = "Shift"; 110 | level_name[Level3] = "Alt Base"; 111 | level_name[Level4] = "Shift Alt"; 112 | level_name[Level5] = "X"; 113 | level_name[Level6] = "X Shift"; 114 | level_name[Level7] = "X Alt Base"; 115 | level_name[Level8] = "X Shift Alt"; 116 | }; 117 | 118 | type "EIGHT_LEVEL_ALPHABETIC_LEVEL_FIVE_LOCK" { 119 | // Level5-Lock is implemented by using NumLock, because a real modifier 120 | // is required. 121 | 122 | modifiers = Shift + Lock + LevelThree + NumLock + LevelFive; 123 | 124 | map[None] = Level1; 125 | map[Shift] = Level2; 126 | map[LevelThree] = Level3; 127 | map[LevelThree+Shift] = Level4; 128 | 129 | map[LevelFive] = Level5; 130 | map[LevelFive+Shift] = Level6; 131 | map[LevelFive+LevelThree] = Level7; 132 | map[LevelFive+LevelThree+Shift] = Level8; 133 | 134 | map[NumLock] = Level5; 135 | map[NumLock+Shift] = Level6; 136 | map[NumLock+LevelThree] = Level7; 137 | map[NumLock+LevelThree+Shift] = Level8; 138 | 139 | map[NumLock+LevelFive] = Level1; 140 | map[NumLock+LevelFive+Shift] = Level2; 141 | map[NumLock+LevelFive+LevelThree] = Level3; 142 | map[NumLock+LevelFive+LevelThree+Shift] = Level4; 143 | 144 | // Lock interchanges Level1 and Level2 145 | map[Lock] = Level2; 146 | map[Lock+Shift] = Level1; 147 | map[Lock+LevelThree] = Level3; 148 | map[Lock+LevelThree+Shift] = Level4; 149 | 150 | map[Lock+LevelFive] = Level5; 151 | map[Lock+LevelFive+Shift] = Level6; 152 | map[Lock+LevelFive+LevelThree] = Level7; 153 | map[Lock+LevelFive+LevelThree+Shift] = Level8; 154 | 155 | map[Lock+NumLock] = Level5; 156 | map[Lock+NumLock+Shift] = Level6; 157 | map[Lock+NumLock+LevelThree] = Level7; 158 | map[Lock+NumLock+LevelThree+Shift] = Level8; 159 | 160 | map[Lock+NumLock+LevelFive] = Level2; 161 | map[Lock+NumLock+LevelFive+Shift] = Level1; 162 | map[Lock+NumLock+LevelFive+LevelThree] = Level4; 163 | map[Lock+NumLock+LevelFive+LevelThree+Shift] = Level3; 164 | 165 | preserve[LevelFive+Shift] = Shift; 166 | preserve[NumLock+Shift] = Shift; 167 | 168 | level_name[Level1] = "Base"; 169 | level_name[Level2] = "Shift"; 170 | level_name[Level3] = "Alt Base"; 171 | level_name[Level4] = "Shift Alt"; 172 | level_name[Level5] = "X"; 173 | level_name[Level6] = "X Shift"; 174 | level_name[Level7] = "X Alt Base"; 175 | level_name[Level8] = "X Shift Alt"; 176 | }; 177 | 178 | type "EIGHT_LEVEL_SEMIALPHABETIC" { 179 | modifiers = Shift+Lock+LevelThree+LevelFive; 180 | map[None] = Level1; 181 | map[Shift] = Level2; 182 | map[Lock] = Level2; 183 | map[LevelThree] = Level3; 184 | map[Shift+LevelThree] = Level4; 185 | map[Lock+LevelThree] = Level3; 186 | map[Lock+Shift+LevelThree] = Level4; 187 | 188 | map[LevelFive] = Level5; 189 | map[Shift+LevelFive] = Level6; 190 | map[Lock+LevelFive] = Level6; 191 | map[Lock+Shift+LevelFive] = Level6; 192 | map[LevelThree+LevelFive] = Level7; 193 | map[Shift+LevelThree+LevelFive] = Level8; 194 | map[Lock+LevelThree+LevelFive] = Level7; 195 | map[Lock+Shift+LevelThree+LevelFive] = Level8; 196 | 197 | preserve[Lock+LevelThree] = Lock; 198 | preserve[Lock+Shift+LevelThree] = Lock; 199 | preserve[Lock+LevelFive] = Lock; 200 | preserve[Lock+Shift+LevelFive] = Lock; 201 | preserve[Lock+LevelThree+LevelFive] = Lock; 202 | preserve[Lock+Shift+LevelThree+LevelFive] = Lock; 203 | 204 | level_name[Level1] = "Base"; 205 | level_name[Level2] = "Shift"; 206 | level_name[Level3] = "Alt Base"; 207 | level_name[Level4] = "Shift Alt"; 208 | level_name[Level5] = "X"; 209 | level_name[Level6] = "X Shift"; 210 | level_name[Level7] = "X Alt Base"; 211 | level_name[Level8] = "X Shift Alt"; 212 | }; 213 | 214 | }; 215 | -------------------------------------------------------------------------------- /xkb-data_xmod/xkb/symbols/nl: -------------------------------------------------------------------------------- 1 | // Basic layout, based on converted file, from keytable file to xkb/symbols/ file 2 | // with mk_xkb by root@linux.chanae.stben.be Tue Sep 30 00:53:29 MET DST 1997 3 | // 4 | // Converted from the nl-latin.map of the Linux kbd package by 5 | // Pablo Saratxaga 6 | default partial alphanumeric_keys 7 | xkb_symbols "basic" { 8 | 9 | include "latin" 10 | 11 | name[Group1]="Dutch"; 12 | 13 | key { [ 2, quotedbl, twosuperior, oneeighth ] }; 14 | key { [ 6, ampersand, threequarters, fiveeighths ] }; 15 | key { [ 7, underscore, sterling, seveneighths ] }; 16 | key { [ 8, parenleft, braceleft, bracketleft ] }; 17 | key { [ 9, parenright, braceright, bracketright ] }; 18 | key { [ 0, apostrophe, degree, trademark ] }; 19 | key { [ slash, question, backslash, questiondown ] }; 20 | key { [ degree, dead_tilde, dead_cedilla, dead_ogonek ] }; 21 | 22 | key { [ e, E, EuroSign, cent ] }; 23 | key { [ t, T, thorn, THORN ] }; 24 | key { [ y, Y, ydiaeresis, yen ] }; 25 | key { [ u, U, udiaeresis, Udiaeresis ] }; 26 | key { [ i, I, idiaeresis, Idiaeresis ] }; 27 | key { [ o, O, ograve, Ograve ] }; 28 | key { [ p, P, paragraph, THORN ] }; 29 | key { [dead_diaeresis, dead_circumflex, asciitilde, asciicircum] }; 30 | key { [ asterisk, bar, dead_tilde, dead_macron ] }; 31 | 32 | key { [ a, A, aacute, Aacute ] }; 33 | key { [ f, F, ordfeminine, ordfeminine ] }; 34 | key { [ plus, plusminus, dead_acute, dead_doubleacute ] }; 35 | key { [dead_acute, dead_grave, apostrophe, grave ] }; 36 | key { [ at, section, notsign, notsign ] }; 37 | 38 | key { [ less, greater, dead_grave, dead_breve ] }; 39 | key { [ v, V, leftdoublequotemark, leftsinglequotemark ] }; 40 | key { [ b, B, rightdoublequotemark, rightsinglequotemark ] }; 41 | key { [ n, N, ntilde, Ntilde ] }; 42 | key { [ m, M, Greek_mu, masculine ] }; 43 | key { [ comma, semicolon, cedilla, guillemotleft] }; 44 | key { [ period, colon, periodcentered, guillemotright ] }; 45 | key { [ minus, equal, hyphen, dead_abovedot] }; 46 | 47 | key { [bracketright, bracketleft, bar, brokenbar ] }; 48 | 49 | include "level3(ralt_switch)" 50 | }; 51 | 52 | 53 | // Official layout, by Benno Schulenberg , January 2007, 54 | // based on ftp://ftp.software.ibm.com/software/globalization/keyboards/KBD143.pdf. 55 | partial alphanumeric_keys 56 | xkb_symbols "std" { 57 | 58 | name[Group1]= "Dutch (standard)"; 59 | 60 | key { [ at, section, notsign ] }; 61 | key { [ 1, exclam, onesuperior ] }; 62 | key { [ 2, quotedbl, twosuperior ] }; 63 | key { [ 3, numbersign, threesuperior ] }; 64 | key { [ 4, dollar, onequarter ] }; 65 | key { [ 5, percent, onehalf ] }; 66 | key { [ 6, ampersand, threequarters ] }; 67 | key { [ 7, underscore, sterling ] }; 68 | key { [ 8, parenleft, braceleft ] }; 69 | key { [ 9, parenright, braceright ] }; 70 | key { [ 0, apostrophe ] }; 71 | key { [ slash, question, backslash ] }; 72 | key { [ degree, dead_tilde, dead_cedilla ] }; 73 | 74 | key { [ q, Q ] }; 75 | key { [ w, W ] }; 76 | key { [ e, E, EuroSign ] }; 77 | key { [ r, R, paragraph ] }; 78 | key { [ t, T ] }; 79 | key { [ y, Y ] }; 80 | key { [ u, U ] }; 81 | key { [ i, I ] }; 82 | key { [ o, O ] }; 83 | key { [ p, P ] }; 84 | key { [ dead_diaeresis, dead_circumflex ] }; 85 | key { [ asterisk, bar ] }; 86 | 87 | key { [ a, A ] }; 88 | key { [ s, S, ssharp ] }; 89 | key { [ d, D ] }; 90 | key { [ f, F ] }; 91 | key { [ g, G ] }; 92 | key { [ h, H ] }; 93 | key { [ j, J ] }; 94 | key { [ k, K ] }; 95 | key { [ l, L ] }; 96 | key { [ plus, plusminus ] }; 97 | key { [ dead_acute, dead_grave ] }; 98 | key { [ less, greater ] }; 99 | 100 | key { [ bracketright, bracketleft, brokenbar ] }; 101 | key { [ z, Z, guillemotleft ] }; 102 | key { [ x, X, guillemotright ] }; 103 | key { [ c, C, cent ] }; 104 | key { [ v, V ] }; 105 | key { [ b, B ] }; 106 | key { [ n, N ] }; 107 | key { [ m, M, mu ] }; 108 | key { [ comma, semicolon ] }; 109 | key { [ period, colon, periodcentered ] }; 110 | key { [ minus, equal ] }; 111 | 112 | include "level3(ralt_switch)" 113 | }; 114 | 115 | partial alphanumeric_keys 116 | xkb_symbols "us" { 117 | include "us(euro)" 118 | 119 | name[Group1]= "Dutch (US)"; 120 | }; 121 | 122 | // Copied from macintosh_vndr/nl 123 | partial alphanumeric_keys 124 | xkb_symbols "mac" { 125 | 126 | include "latin" 127 | 128 | name[Group1]= "Dutch (Macintosh)"; 129 | 130 | include "level3(ralt_switch)" 131 | }; 132 | 133 | // EXTRAS: 134 | 135 | partial alphanumeric_keys 136 | xkb_symbols "sun_type6" { 137 | include "sun_vndr/nl(sun_type6)" 138 | }; 139 | 140 | // >>--> DreymaR (OEystein Bech-Aase, formerly Bech Gadmar), 2012-01: Additions to xkb/symbols/nl 141 | // Colemak[eD]: National/locale Colemak "edition DreymaR" variants for Dutch. 142 | // 2006-01-01 Shai Coleman http://colemak.com/ (Public Domain) : The Colemak keyboard layout. 143 | // See the Big Bag section on Cmk[eD] locales: https://dreymar.colemak.org/variants.html#locales 144 | 145 | // The 'keep local symbols' variant keeps the national symbol and special letter setup. 146 | partial alphanumeric_keys 147 | xkb_symbols "cmk_ed_ks" { 148 | include "nl(basic)" 149 | include "colemak(cmk_ed_letters)" 150 | name[Group1]= "Dutch (Colemak[eD], keep local symbols)"; 151 | 152 | // NOTE: Symbols on letter keys may be lost in cmk_ed_ks if they are not on Colemak[eD] letter keys. 153 | // EuroSign is often on 'E'. The latin(intl) and locale(winkeys) layout variants use '5'. 154 | // Colemak[eD] has EuroSign on 'E' and mu on '5'. 155 | // key { [ NoSymbol, NoSymbol, mu, onehalf ] }; 156 | // key { [ NoSymbol, NoSymbol, EuroSign, onehalf ] }; // onehalf is moved, threeeights is lost 157 | 158 | key { [ plus, plusminus, dead_acute, dead_doubleacute ] }; // from 159 | }; 160 | 161 | // The 'us' variant uses the US-type symbol key setup (recommended!) as it is nearly an intl. standard. 162 | // For Dutch, necessary local letters are added to designated flexible spots in the layout. 163 | partial alphanumeric_keys 164 | xkb_symbols "cmk_ed_us" { 165 | include "colemak(cmk_ed_letters)" 166 | include "symkeys(cmk_ed_symbols)" 167 | include "level3(ralt_switch)" 168 | name[Group1]= "Dutch (Colemak[eD], unified symbols)"; 169 | 170 | key { [dead_diaeresis,dead_circumflex, bracketleft, braceleft ] }; // kept 171 | key { [ dead_acute, dead_grave, bracketright, braceright ] }; // from 172 | }; 173 | // <--<< DreymaR: Additions to xkb/symbols/nl 174 | -------------------------------------------------------------------------------- /xkb-data_xmod/xkb/types/level5: -------------------------------------------------------------------------------- 1 | default partial xkb_types "default" { 2 | 3 | // Defines a type with an eight-level shift, similar to the three-level 4 | // type used for iso9995, but it lets the Shift key behave "normally". 5 | 6 | virtual_modifiers LevelThree,ScrollLock,LevelFive; 7 | 8 | type "EIGHT_LEVEL" { 9 | modifiers = Shift+LevelThree+LevelFive; 10 | map[None] = Level1; 11 | map[Shift] = Level2; 12 | map[LevelThree] = Level3; 13 | map[Shift+LevelThree] = Level4; 14 | map[LevelFive] = Level5; 15 | map[Shift+LevelFive] = Level6; 16 | map[LevelThree+LevelFive] = Level7; 17 | map[Shift+LevelThree+LevelFive] = Level8; 18 | level_name[Level1] = "Base"; 19 | level_name[Level2] = "Shift"; 20 | level_name[Level3] = "Alt Base"; 21 | level_name[Level4] = "Shift Alt"; 22 | level_name[Level5] = "X"; 23 | level_name[Level6] = "X Shift"; 24 | level_name[Level7] = "X Alt Base"; 25 | level_name[Level8] = "X Shift Alt"; 26 | }; 27 | 28 | type "EIGHT_LEVEL_ALPHABETIC" { 29 | modifiers = Shift+Lock+LevelThree+LevelFive; 30 | map[None] = Level1; 31 | map[Shift] = Level2; 32 | map[Lock] = Level2; 33 | map[LevelThree] = Level3; 34 | map[Shift+LevelThree] = Level4; 35 | map[Lock+LevelThree] = Level4; 36 | map[Lock+Shift+LevelThree] = Level3; 37 | 38 | map[LevelFive] = Level5; 39 | map[Shift+LevelFive] = Level6; 40 | map[Lock+LevelFive] = Level6; 41 | map[LevelThree+LevelFive] = Level7; 42 | map[Shift+LevelThree+LevelFive] = Level8; 43 | map[Lock+LevelThree+LevelFive] = Level8; 44 | map[Lock+Shift+LevelThree+LevelFive] = Level7; 45 | 46 | level_name[Level1] = "Base"; 47 | level_name[Level2] = "Shift"; 48 | level_name[Level3] = "Alt Base"; 49 | level_name[Level4] = "Shift Alt"; 50 | level_name[Level5] = "X"; 51 | level_name[Level6] = "X Shift"; 52 | level_name[Level7] = "X Alt Base"; 53 | level_name[Level8] = "X Shift Alt"; 54 | }; 55 | 56 | type "EIGHT_LEVEL_LEVEL_FIVE_LOCK" { 57 | // Level5-Lock is implemented by using NumLock, because a real modifier 58 | // is required. 59 | 60 | modifiers = Shift + Lock + LevelThree + NumLock + LevelFive; 61 | 62 | map[None] = Level1; 63 | map[Shift] = Level2; 64 | map[LevelThree] = Level3; 65 | map[LevelThree+Shift] = Level4; 66 | 67 | map[LevelFive] = Level5; 68 | map[LevelFive+Shift] = Level6; 69 | map[LevelFive+LevelThree] = Level7; 70 | map[LevelFive+LevelThree+Shift] = Level8; 71 | 72 | map[NumLock] = Level5; 73 | map[NumLock+Shift] = Level6; 74 | map[NumLock+LevelThree] = Level7; 75 | map[NumLock+LevelThree+Shift] = Level8; 76 | 77 | map[NumLock+LevelFive] = Level1; 78 | map[NumLock+LevelFive+Shift] = Level2; 79 | map[NumLock+LevelFive+LevelThree] = Level3; 80 | map[NumLock+LevelFive+LevelThree+Shift] = Level4; 81 | 82 | // Lock has no effect 83 | map[Lock] = Level1; 84 | map[Lock+Shift] = Level2; 85 | map[Lock+LevelThree] = Level3; 86 | map[Lock+LevelThree+Shift] = Level4; 87 | 88 | map[Lock+LevelFive] = Level5; 89 | map[Lock+LevelFive+Shift] = Level6; 90 | map[Lock+LevelFive+LevelThree] = Level7; 91 | map[Lock+LevelFive+LevelThree+Shift] = Level8; 92 | 93 | map[Lock+NumLock] = Level5; 94 | map[Lock+NumLock+Shift] = Level6; 95 | map[Lock+NumLock+LevelThree] = Level7; 96 | map[Lock+NumLock+LevelThree+Shift] = Level8; 97 | 98 | map[Lock+NumLock+LevelFive] = Level1; 99 | map[Lock+NumLock+LevelFive+Shift] = Level2; 100 | map[Lock+NumLock+LevelFive+LevelThree] = Level3; 101 | map[Lock+NumLock+LevelFive+LevelThree+Shift] = Level4; 102 | 103 | preserve[LevelFive+Shift] = Shift; 104 | preserve[NumLock+Shift] = Shift; 105 | preserve[Lock+LevelFive+Shift] = Shift; 106 | preserve[Lock+NumLock+Shift] = Shift; 107 | 108 | level_name[Level1] = "Base"; 109 | level_name[Level2] = "Shift"; 110 | level_name[Level3] = "Alt Base"; 111 | level_name[Level4] = "Shift Alt"; 112 | level_name[Level5] = "X"; 113 | level_name[Level6] = "X Shift"; 114 | level_name[Level7] = "X Alt Base"; 115 | level_name[Level8] = "X Shift Alt"; 116 | }; 117 | 118 | type "EIGHT_LEVEL_ALPHABETIC_LEVEL_FIVE_LOCK" { 119 | // Level5-Lock is implemented by using NumLock, because a real modifier 120 | // is required. 121 | 122 | modifiers = Shift + Lock + LevelThree + NumLock + LevelFive; 123 | 124 | map[None] = Level1; 125 | map[Shift] = Level2; 126 | map[LevelThree] = Level3; 127 | map[LevelThree+Shift] = Level4; 128 | 129 | map[LevelFive] = Level5; 130 | map[LevelFive+Shift] = Level6; 131 | map[LevelFive+LevelThree] = Level7; 132 | map[LevelFive+LevelThree+Shift] = Level8; 133 | 134 | map[NumLock] = Level5; 135 | map[NumLock+Shift] = Level6; 136 | map[NumLock+LevelThree] = Level7; 137 | map[NumLock+LevelThree+Shift] = Level8; 138 | 139 | map[NumLock+LevelFive] = Level1; 140 | map[NumLock+LevelFive+Shift] = Level2; 141 | map[NumLock+LevelFive+LevelThree] = Level3; 142 | map[NumLock+LevelFive+LevelThree+Shift] = Level4; 143 | 144 | // Lock interchanges Level1 and Level2 145 | map[Lock] = Level2; 146 | map[Lock+Shift] = Level1; 147 | map[Lock+LevelThree] = Level3; 148 | map[Lock+LevelThree+Shift] = Level4; 149 | 150 | map[Lock+LevelFive] = Level5; 151 | map[Lock+LevelFive+Shift] = Level6; 152 | map[Lock+LevelFive+LevelThree] = Level7; 153 | map[Lock+LevelFive+LevelThree+Shift] = Level8; 154 | 155 | map[Lock+NumLock] = Level5; 156 | map[Lock+NumLock+Shift] = Level6; 157 | map[Lock+NumLock+LevelThree] = Level7; 158 | map[Lock+NumLock+LevelThree+Shift] = Level8; 159 | 160 | map[Lock+NumLock+LevelFive] = Level2; 161 | map[Lock+NumLock+LevelFive+Shift] = Level1; 162 | map[Lock+NumLock+LevelFive+LevelThree] = Level4; 163 | map[Lock+NumLock+LevelFive+LevelThree+Shift] = Level3; 164 | 165 | preserve[LevelFive+Shift] = Shift; 166 | preserve[NumLock+Shift] = Shift; 167 | 168 | level_name[Level1] = "Base"; 169 | level_name[Level2] = "Shift"; 170 | level_name[Level3] = "Alt Base"; 171 | level_name[Level4] = "Shift Alt"; 172 | level_name[Level5] = "X"; 173 | level_name[Level6] = "X Shift"; 174 | level_name[Level7] = "X Alt Base"; 175 | level_name[Level8] = "X Shift Alt"; 176 | }; 177 | 178 | type "EIGHT_LEVEL_SEMIALPHABETIC" { 179 | modifiers = Shift+Lock+LevelThree+LevelFive; 180 | map[None] = Level1; 181 | map[Shift] = Level2; 182 | map[Lock] = Level2; 183 | map[LevelThree] = Level3; 184 | map[Shift+LevelThree] = Level4; 185 | map[Lock+LevelThree] = Level3; 186 | map[Lock+Shift+LevelThree] = Level4; 187 | 188 | map[LevelFive] = Level5; 189 | map[Shift+LevelFive] = Level6; 190 | map[Lock+LevelFive] = Level6; 191 | map[Lock+Shift+LevelFive] = Level6; 192 | map[LevelThree+LevelFive] = Level7; 193 | map[Shift+LevelThree+LevelFive] = Level8; 194 | map[Lock+LevelThree+LevelFive] = Level7; 195 | map[Lock+Shift+LevelThree+LevelFive] = Level8; 196 | 197 | // >>--> DreymaR (OEystein Bech-Aase, formerly Bech Gadmar), 2015-09: Additions to xkb/types/level5 198 | // See "DreymaR's Big Bag of Keyboard Tricks": https://dreymar.colemak.org 199 | // Space+Shift would consume the Shift which is bad for hotkeys; added a preserve[Shift] line 200 | preserve[Shift] = Shift; 201 | preserve[Shift+LevelFive] = Shift; 202 | // <--<< DreymaR: Additions to xkb/types/level5 203 | preserve[Lock+LevelThree] = Lock; 204 | preserve[Lock+Shift+LevelThree] = Lock; 205 | preserve[Lock+LevelFive] = Lock; 206 | preserve[Lock+Shift+LevelFive] = Lock; 207 | preserve[Lock+LevelThree+LevelFive] = Lock; 208 | preserve[Lock+Shift+LevelThree+LevelFive] = Lock; 209 | 210 | level_name[Level1] = "Base"; 211 | level_name[Level2] = "Shift"; 212 | level_name[Level3] = "Alt Base"; 213 | level_name[Level4] = "Shift Alt"; 214 | level_name[Level5] = "X"; 215 | level_name[Level6] = "X Shift"; 216 | level_name[Level7] = "X Alt Base"; 217 | level_name[Level8] = "X Shift Alt"; 218 | }; 219 | 220 | }; 221 | -------------------------------------------------------------------------------- /xkb-data_xmod/xkb/symbols/sk: -------------------------------------------------------------------------------- 1 | default partial alphanumeric_keys 2 | xkb_symbols "basic" { 3 | 4 | // This layout conforms to a new Slovak compromise standard 5 | // designed to satisfy most Unix, Windows and Mac users. 6 | // 2001 by Kamil Toman 7 | 8 | include "latin" 9 | name[Group1] = "Slovak"; 10 | 11 | key { [ semicolon, dead_abovering, grave, asciitilde ] }; 12 | key { [ plus, 1, exclam, dead_tilde ] }; 13 | key { [ lcaron, 2, at, dead_caron ] }; 14 | key { [ scaron, 3, numbersign, dead_circumflex ] }; 15 | key { [ ccaron, 4, dollar, dead_breve ] }; 16 | key { [ tcaron, 5, percent, dead_abovering]}; 17 | key { [ zcaron, 6, asciicircum, dead_ogonek ] }; 18 | key { [ yacute, 7, ampersand, dead_grave ] }; 19 | key { [ aacute, 8, asterisk, dead_abovedot] }; 20 | key { [ iacute, 9, braceleft, dead_acute ] }; 21 | key { [ eacute, 0, braceright, dead_doubleacute ] }; 22 | key { [ equal, percent, NoSymbol, dead_diaeresis]}; 23 | key { [dead_acute, dead_caron, dead_macron, dead_cedilla ] }; 24 | 25 | key { [ q, Q, backslash, NoSymbol ] }; 26 | key { [ w, W, bar, Nosymbol ] }; 27 | key { [ e, E, EuroSign, NoSymbol ] }; 28 | key { [ r, R, NoSymbol, NoSymbol ] }; 29 | key { [ t, T, NoSymbol, NoSymbol ] }; 30 | key { [ z, Z, NoSymbol, NoSymbol ] }; 31 | key { [ u, U, NoSymbol, NoSymbol ] }; 32 | key { [ i, I, NoSymbol, NoSymbol ] }; 33 | key { [ o, O, NoSymbol, NoSymbol ] }; 34 | key { [ p, P, NoSymbol, NoSymbol ] }; 35 | 36 | key { [ uacute, slash, bracketleft, division ] }; 37 | key { [adiaeresis, parenleft, bracketright, multiply ] }; 38 | 39 | key { [ a, A, asciitilde, NoSymbol ] }; 40 | key { [ s, S, dstroke, NoSymbol ] }; 41 | key { [ d, D, Dstroke, NoSymbol ] }; 42 | key { [ f, F, bracketleft, NoSymbol ] }; 43 | key { [ g, G, bracketright, NoSymbol ] }; 44 | key { [ h, H, grave, NoSymbol ] }; 45 | key { [ j, J, apostrophe, NoSymbol ] }; 46 | key { [ k, K, lstroke, NoSymbol ] }; 47 | key { [ l, L, Lstroke, NoSymbol ] }; 48 | 49 | key { [ocircumflex, quotedbl, dollar, NoSymbol ] }; 50 | key { [ section, exclam, apostrophe, ssharp ] }; 51 | key { [ ncaron, parenright, backslash, bar ] }; 52 | 53 | key { [ backslash, bar, slash, NoSymbol ] }; 54 | key { [ y, Y, degree, NoSymbol ] }; 55 | key { [ x, X, numbersign, Nosymbol ] }; 56 | key { [ c, C, ampersand, NoSymbol ] }; 57 | key { [ v, V, at, NoSymbol ] }; 58 | key { [ b, B, braceleft, NoSymbol ] }; 59 | key { [ n, N, braceright, NoSymbol ] }; 60 | key { [ m, M, asciicircum, NoSymbol ] }; 61 | key { [ comma, question, less, NoSymbol ] }; 62 | key { [ period, colon, greater, NoSymbol ] }; 63 | key { [ minus, underscore, asterisk, NoSymbol ] }; 64 | 65 | key { [ space, space, nobreakspace, nobreakspace ] }; 66 | 67 | include "level3(ralt_switch)" 68 | }; 69 | 70 | partial alphanumeric_keys alternate_group 71 | xkb_symbols "acc" { 72 | 73 | // This layout is usually used as the second group, it contains 74 | // accented characters only, no 'latin' set. 75 | // 2017 by Pavol Babinčák 76 | 77 | // Based on cz(ucw). Slovak letter frequency is used if a letter can be 78 | // used with multiple diacritic symbols. Other accented letters of Slovak 79 | // and Czech language end up on surrounding unused keys. 80 | 81 | name[Group1] = "Slovak (ACC layout, only accented letters)"; 82 | 83 | key { [zcaron, Zcaron ] }; 84 | key { [ccaron, Ccaron ] }; 85 | key { [ncaron, Ncaron ] }; 86 | 87 | key { [aacute, Aacute ] }; 88 | key { [scaron, Scaron ] }; 89 | key { [dcaron, Dcaron ] }; 90 | key { [ecaron, Ecaron ] }; 91 | key { [rcaron, Rcaron ] }; 92 | key { [uring, Uring ] }; 93 | key { [oacute, Oacute ] }; 94 | key { [lcaron, Lcaron ] }; 95 | 96 | key { [adiaeresis, Adiaeresis ] }; 97 | key { [eacute, Eacute ] }; 98 | key { [racute, Racute ] }; 99 | key { [tcaron, Tcaron ] }; 100 | key { [yacute, Yacute ] }; 101 | key { [uacute, Uacute ] }; 102 | key { [iacute, Iacute ] }; 103 | key { [ocircumflex, Ocircumflex ] }; 104 | key { [lacute, Lacute ] }; 105 | 106 | key { [dead_acute, dead_caron ] }; 107 | }; 108 | 109 | xkb_symbols "bksl" { 110 | 111 | // Use instead of (useful for keyboards without key). 112 | 113 | include "sk(basic)" 114 | name[Group1] = "Slovak (extended backslash)"; 115 | 116 | key { [ backslash, bar, slash, parenright ] }; 117 | key { [ backslash, parenleft, slash, NoSymbol ] }; 118 | }; 119 | 120 | partial alphanumeric_keys 121 | xkb_symbols "qwerty" { 122 | 123 | // This layout works exactly as the basic Slovak one with the exception 124 | // of the 'Z' and 'Y' keys, which are in Qwerty style (i.e. swapped). 125 | // 2001 by Kamil Toman 126 | 127 | include "sk(basic)" 128 | name[Group1] = "Slovak (QWERTY)"; 129 | 130 | key { [ z, Z, degree, NoSymbol ] }; 131 | key { [ y, Y, NoSymbol, NoSymbol ] }; 132 | }; 133 | 134 | xkb_symbols "qwerty_bksl" { 135 | 136 | // Use instead of (useful for keyboards without key). 137 | 138 | include "sk(qwerty)" 139 | name[Group1] = "Slovak (QWERTY, extended backslash)"; 140 | 141 | key { [ backslash, bar, slash, parenright ] }; 142 | key { [ backslash, parenleft, slash, NoSymbol ] }; 143 | }; 144 | 145 | // EXTRAS: 146 | 147 | partial alphanumeric_keys 148 | xkb_symbols "sun_type6" { 149 | include "sun_vndr/sk(sun_type6)" 150 | }; 151 | 152 | // >>--> DreymaR (OEystein Bech-Aase), 2023-06: Additions to xkb/symbols/sk 153 | // Colemak[eD]: National/locale Colemak "edition DreymaR" variants for Slovak. 154 | // 2006-01-01 Shai Coleman http://colemak.com/ (Public Domain) : The Colemak keyboard layout. 155 | // See the Big Bag section on Cmk[eD] locales: https://dreymar.colemak.org/variants.html#locales 156 | 157 | // The 'keep local symbols' variant keeps the national symbol and special letter setup. 158 | partial alphanumeric_keys 159 | xkb_symbols "cmk_ed_ks" { 160 | include "sk(basic)" 161 | include "colemak(cmk_ed_letters)" 162 | name[Group1]= "Slovak (Colemak[eD], keep local symbols)"; 163 | 164 | // NOTE: Symbols on letter keys may be lost in cmk_ed_ks if they are not on Colemak[eD] letter keys. 165 | // EuroSign is often on 'E'. The latin(intl) and locale(winkeys) layout variants use '5'. 166 | // Colemak[eD] has EuroSign on 'E' and mu on '5'. 167 | // key { [ NoSymbol, NoSymbol, NoSymbol, mu ] }; 168 | // key { [ NoSymbol, NoSymbol, NoSymbol, EuroSign ] }; // Added EuroSign on lv4 to keep percent. 169 | 170 | key { [ ocircumflex, quotedbl, dollar, currency ] }; // from (added lv4) 171 | }; 172 | 173 | // The 'us' variant uses the US-type symbol key setup (recommended!) as it is nearly an intl. standard. 174 | // For Slovak, necessary local letters are added to designated flexible spots in the layout. 175 | partial alphanumeric_keys 176 | xkb_symbols "cmk_ed_us" { 177 | include "colemak(cmk_ed_letters)" 178 | include "symkeys(cmk_ed_symbols)" 179 | include "level3(ralt_switch)" 180 | name[Group1]= "Slovak (Colemak[eD], unified symbols)"; 181 | 182 | // NEEDED: Acute a/e/i/l/r/u/y, caron c/e*/l/r*/s/z, stroke Dd/Ll, ocircumflex, adiaeresis, uring*. 183 | // NOTE: Slovak `ä ľ ĺ ŕ ô` are not in Czech; Czech(*) `ě ř ů` are not in Slovak. Some may need both sets. 184 | // NOTE: Many users have ANSI-type keyboards without an key. They may have to work around this limitation using lv3-4 of other keys. 185 | 186 | key { [ ocircumflex, Ocircumflex, adiaeresis, Adiaeresis ] }; // from 187 | key { [ dead_acute, dead_acute, bracketleft, braceleft ] }; // from 188 | key { [ dead_caron, dead_caron, bracketright, braceright ] }; // from 189 | }; 190 | // <--<< DreymaR: Additions to xkb/symbols/sk 191 | -------------------------------------------------------------------------------- /xkb-data_orig/xkb/symbols/be: -------------------------------------------------------------------------------- 1 | default partial alphanumeric_keys 2 | xkb_symbols "basic" { 3 | 4 | include "latin" 5 | 6 | name[Group1]="Belgian"; 7 | 8 | key { [ ampersand, 1, bar, exclamdown ] }; 9 | key { [ eacute, 2, at, oneeighth ] }; 10 | key { [ quotedbl, 3, numbersign, sterling ] }; 11 | key { [apostrophe, 4, onequarter, dollar ] }; 12 | key { [ parenleft, 5, onehalf, threeeighths ] }; 13 | key { [ section, 6, asciicircum, fiveeighths ] }; 14 | key { [ egrave, 7, braceleft, seveneighths ] }; 15 | key { [ exclam, 8, bracketleft, trademark ] }; 16 | key { [ ccedilla, 9, braceleft, plusminus ] }; 17 | key { [ agrave, 0, braceright, degree ] }; 18 | key { [parenright, degree, backslash, questiondown ] }; 19 | key { [ minus, underscore, dead_cedilla, dead_ogonek ] }; 20 | 21 | key { [ a, A, at, Greek_OMEGA ] }; 22 | key { [ z, Z, U017F, section ] }; 23 | key { [ e, E, EuroSign, cent ] }; 24 | key { [ o, O, oe, OE ] }; // o O œ Œ 25 | key { [dead_circumflex, dead_diaeresis, bracketleft, dead_abovering ] }; 26 | key { [ dollar, asterisk, bracketright, dead_macron ] }; 27 | 28 | key { [ q, Q, ae, AE ] }; 29 | key { [ m, M, dead_acute, dead_doubleacute ] }; 30 | key { [ ugrave, percent, dead_acute, dead_caron ] }; 31 | key { [twosuperior, threesuperior, notsign, notsign ] }; 32 | 33 | key { [ mu, sterling, dead_grave, dead_breve ] }; 34 | key { [ w, W, guillemotleft, less ] }; 35 | key { [ comma, question, dead_cedilla, masculine ] }; 36 | key { [ semicolon, period, U2022, multiply ] }; // bullet 37 | key { [ colon, slash, periodcentered, division ] }; 38 | key { [ equal, plus, dead_tilde, dead_abovedot] }; 39 | key { [ less, greater, backslash, backslash ] }; 40 | 41 | include "level3(ralt_switch)" 42 | }; 43 | 44 | 45 | // Variant of the fr(oss) layout for Belgium 46 | // Copyright © 2006 Nicolas Mailhot 47 | // 48 | // ┌─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┲━━━━━━━━━┓ 49 | // │ ³ ≤ │ 1 ≥ │ 2 É │ 3 ˘ │ 4 — │ 5 – │ 6 ™ │ 7 È │ 8 ¡ │ 9 Ç │ 0 À │ ° Ø │ _ ± ┃ ⌫ Retour┃ 50 | // │ ² ¹ │ & | │ é @ │ " # │ ' ¸ │ ( ˇ │ § ^ │ è ` │ ! ~ │ ç { │ à } │ ) ø │ - ‑ ┃ arrière┃ 51 | // ┢━━━━━┷━┱───┴─┬───┴─┬───┴─┬───┴─┬───┴─┬───┴─┬───┴─┬───┴─┬───┴─┬───┴─┬───┴─┬───┺━┳━━━━━━━┫ 52 | // ┃ ┃ A Æ │ Z  │ E ¢ │ R Ê │ T Þ │ Y Ÿ │ U Û │ I Î │ O Œ │ P Ô │ ¨ ˚ │ * ̨ ┃Entrée ┃ 53 | // ┃Tab ↹ ┃ a æ │ z â │ e € │ r ê │ t þ │ y ÿ │ u û │ i î │ o œ │ p ô │ ^ [ │ $ ] ┃ ⏎ ┃ 54 | // ┣━━━━━━━┻┱────┴┬────┴┬────┴┬────┴┬────┴┬────┴┬────┴┬────┴┬────┴┬────┴┬────┴┬────┺┓ ┃ 55 | // ┃ ┃ Q Ä │ S „ │ D Ë │ F ‚ │ G ¥ │ H Ð │ J Ü │ K Ï │ L │ M Ö │ % Ù │ £ ̄ ┃ ┃ 56 | // ┃Maj ⇬ ┃ q ä │ s ß │ d ë │ f ‘ │ g ’ │ h ð │ j ü │ k ï │ l / │ m ö │ ù ' │ µ ` ┃ ┃ 57 | // ┣━━━━━━━┳┹────┬┴────┬┴────┬┴────┬┴────┬┴────┬┴────┬┴────┬┴────┬┴────┬┴────┲┷━━━━━┻━━━━━━┫ 58 | // ┃ ┃ > ≠ │ W “ │ X ” │ C ® │ V ← │ B ↑ │ N → │ ? … │ . . │ / ∕ │ + − ┃ ┃ 59 | // ┃Shift ⇧┃ < \ │ w « │ x » │ c © │ v ⍽ │ b ↓ │ n ¬ │ , ¿ │ ; × │ : ÷ │ = ~ ┃Shift ⇧ ┃ 60 | // ┣━━━━━━━╋━━━━━┷━┳━━━┷━━━┱─┴─────┴─────┴─────┴─────┴─────┴───┲━┷━━━━━╈━━━━━┻━┳━━━━━━━┳━━━┛ 61 | // ┃ ┃ ┃ ┃ ␣ Espace insécable ⍽ ┃ ┃ ┃ ┃ 62 | // ┃Ctrl ┃Meta ┃Alt ┃ ␣ Espace ␣ ┃AltGr ⇮┃Menu ┃Ctrl ┃ 63 | // ┗━━━━━━━┻━━━━━━━┻━━━━━━━┹───────────────────────────────────┺━━━━━━━┻━━━━━━━┻━━━━━━━┛ 64 | partial alphanumeric_keys 65 | xkb_symbols "oss" { 66 | 67 | include "fr(oss)" 68 | include "be(oss_frbe)" 69 | 70 | name[Group1]="Belgian (alt.)"; 71 | }; 72 | 73 | partial alphanumeric_keys 74 | xkb_symbols "oss_frbe" { 75 | // First row 76 | key { [ twosuperior, threesuperior, onesuperior, lessthanequal ] }; // ² ³ ¹ ≤ 77 | key { [ ampersand, 1, bar, greaterthanequal ] }; // & 1 | ≥ 78 | key { [ eacute, 2, at, Eacute ] }; // é 2 @ É 79 | key { [ apostrophe, 4, dead_cedilla, 0x1002014 ] }; // ' 4 ¸ — (tiret cadratin) 80 | key { [ parenleft, 5, dead_caron, 0x1002013 ] }; // ( 5 ˇ – (tiret demi-cadratin) 81 | key { [ section, 6, asciicircum, trademark ] }; // § 6 ^ ™ 82 | key { [ exclam, 8, asciitilde, exclamdown ] }; // ! 8 ~ ¡ 83 | key { [ ccedilla, 9, braceleft, Ccedilla ] }; // ç 9 { Ç 84 | key { [ agrave, 0, braceright, Agrave ] }; // à 0 } À 85 | key { [ parenright, degree, oslash, Ooblique ] }; // ) ° ø Ø 86 | key { [ minus, underscore, 0x1002011, plusminus ] }; // - _ - (tiret insécable) ± 87 | 88 | // Second row 89 | key { [ dead_circumflex, dead_diaeresis, bracketleft, dead_abovering ] }; // ^ ̈ [ ˚ 90 | key { [ dollar, asterisk, bracketright, dead_ogonek ] }; // $ * ] ̨ 91 | 92 | // Third row 93 | key { [ l, L, dead_stroke ] }; 94 | key { [ mu, sterling, dead_grave, dead_macron ] }; // µ £ ` ̄ 95 | 96 | // Fourth row 97 | key { [ less, greater, backslash, notequal ] }; // < > \ ≠ 98 | key { [ equal, plus, dead_tilde, 0x1002212 ] }; // = + ~ − 99 | }; 100 | 101 | 102 | partial alphanumeric_keys 103 | xkb_symbols "oss_latin9" { 104 | 105 | // Restricts the be(oss) layout to latin9 symbols 106 | 107 | include "fr(oss_latin9)" 108 | include "be(oss_frbe)" 109 | include "keypad(oss_latin9)" 110 | 111 | name[Group1]="Belgian (Latin-9 only, alt.)"; 112 | 113 | // First row 114 | key { [ twosuperior, threesuperior, onesuperior, less ] }; // ² ³ ¹ < 115 | key { [ ampersand, 1, bar, greater ] }; // & 1 | > 116 | key { [ apostrophe, 4, dead_cedilla, minus ] }; // ' 4 ¸ - 117 | key { [ parenleft, 5, dead_caron, minus ] }; // ( 5 ˇ - 118 | key { [ section, 6, asciicircum, asciicircum ] }; // § 6 ^ ^ 119 | key { [ minus, underscore, minus, plusminus ] }; // - _ - ± 120 | 121 | // Second row 122 | key { [ dollar, asterisk, bracketright, dead_cedilla ] }; // $ * ] ¸ 123 | 124 | // Third row 125 | key { [ l, L, l, L ] }; // l L l L 126 | key { [ mu, sterling, dead_grave, dead_circumflex ] }; // µ £ ` ^ 127 | 128 | // Fourth row 129 | key { [ less, greater, backslash, equal ] }; // < > \ = 130 | key { [ equal, plus, dead_tilde, minus ] }; // = + ~ - 131 | }; 132 | 133 | 134 | partial alphanumeric_keys 135 | xkb_symbols "iso-alternate" { 136 | include "be(basic)" 137 | name[Group1]="Belgian (ISO, alt.)"; 138 | 139 | key { [ a, A, ae, AE ] }; 140 | key { [ z, Z, guillemotleft, less ] }; 141 | key { [ q, Q, at, Greek_OMEGA ] }; 142 | key { [ m, M, mu, masculine ] }; 143 | key { [ w, W, lstroke, Lstroke ] }; 144 | key { [ comma, question, dead_cedilla, dead_doubleacute ] }; 145 | }; 146 | 147 | partial alphanumeric_keys 148 | xkb_symbols "nodeadkeys" { 149 | 150 | // Eliminates dead keys from the basic Belgian layout 151 | 152 | include "be(basic)" 153 | name[Group1]="Belgian (no dead keys)"; 154 | 155 | key { [ minus, underscore, cedilla, ogonek ] }; 156 | key { [asciicircum, diaeresis, bracketleft, bracketleft] }; 157 | key { [ dollar, asterisk, bracketright, macron ] }; 158 | key { [ m, M, acute, doubleacute ] }; 159 | key { [ ugrave, percent, apostrophe, apostrophe ] }; 160 | key { [ mu, sterling, grave, grave ] }; 161 | key { [ comma, question, cedilla, masculine ] }; 162 | key { [ equal, plus, asciitilde, asciitilde ] }; 163 | }; 164 | 165 | // Wang model 724 azerty Belgium keyboard 166 | partial alphanumeric_keys 167 | xkb_symbols "wang" { 168 | 169 | include "be(basic)" 170 | include "keypad(legacy_wang)" 171 | name[Group1]="Belgian (Wang 724 AZERTY)"; 172 | 173 | // Engravings on Wang 725-3771-ae 174 | key { [ twosuperior, threesuperior, notsign, asciitilde ] }; 175 | key { [ less, greater, backslash, brokenbar ] }; 176 | }; 177 | 178 | // EXTRAS: 179 | 180 | partial alphanumeric_keys 181 | xkb_symbols "sun_type6" { 182 | include "sun_vndr/be(sun_type6)" 183 | }; 184 | -------------------------------------------------------------------------------- /xkb-data_xmod/xkb/symbols/epo: -------------------------------------------------------------------------------- 1 | // Esperanto keyboard maps -- "Ekverto" 2 | // 3 | // Ekverto A ("legacy") (2004-01-10) 4 | // Chusslove Illich (Ĉaslavo Iliĉo) 5 | // 6 | // Ekverto B ("basic") (2006-12-02) 7 | // Benno Schulenberg (Beno Sĥilenberĥ) 8 | // Chusslove Illich (Ĉaslavo Iliĉo) 9 | 10 | default partial alphanumeric_keys 11 | xkb_symbols "basic" { 12 | 13 | include "us(basic)" 14 | name[Group1]= "Esperanto"; 15 | 16 | key.type[Group1] = "FOUR_LEVEL_ALPHABETIC"; 17 | 18 | key { [ scircumflex, Scircumflex, q, Q ] }; 19 | key { [ gcircumflex, Gcircumflex, w, W ] }; 20 | key { [ ccircumflex, Ccircumflex, x, X ] }; 21 | key { [ ubreve, Ubreve, y, Y ] }; 22 | 23 | key.type[Group1] = "FOUR_LEVEL_SEMIALPHABETIC"; 24 | 25 | key { [ jcircumflex, Jcircumflex, bracketleft, braceleft ] }; 26 | key { [ hcircumflex, Hcircumflex, bracketright, braceright ] }; 27 | 28 | key { [ o, O, braceleft, braceleft ] }; 29 | key { [ p, P, braceright, braceright ] }; 30 | 31 | key { [ a, A, leftsinglequotemark, NoSymbol ] }; 32 | key { [ s, S, rightsinglequotemark, NoSymbol ] }; 33 | key { [ d, D, leftdoublequotemark, NoSymbol ] }; 34 | key { [ f, F, rightdoublequotemark, NoSymbol ] }; 35 | 36 | key { [ n, N, endash, endash ] }; 37 | key { [ m, M, emdash, emdash ] }; 38 | 39 | key.type[Group1] = "FOUR_LEVEL"; 40 | 41 | key { [ 5, percent, EuroSign, EuroSign ] }; 42 | 43 | include "level3(ralt_switch)" 44 | }; 45 | 46 | 47 | partial alphanumeric_keys 48 | xkb_symbols "legacy" { 49 | 50 | name[Group1]= "Esperanto (legacy)"; 51 | 52 | key.type[Group1] = "FOUR_LEVEL"; 53 | 54 | key { [ grave, asciitilde, NoSymbol, NoSymbol ] }; 55 | key { [ 1, exclam, NoSymbol, NoSymbol ] }; 56 | key { [ 2, quotedbl, NoSymbol, NoSymbol ] }; 57 | key { [ 3, numbersign, NoSymbol, NoSymbol ] }; 58 | key { [ 4, dollar, NoSymbol, NoSymbol ] }; 59 | key { [ 5, percent, NoSymbol, NoSymbol ] }; 60 | key { [ 6, apostrophe, NoSymbol, NoSymbol ] }; 61 | key { [ 7, ampersand, NoSymbol, NoSymbol ] }; 62 | key { [ 8, asterisk, NoSymbol, NoSymbol ] }; 63 | key { [ 9, parenleft, NoSymbol, NoSymbol ] }; 64 | key { [ 0, parenright, NoSymbol, NoSymbol ] }; 65 | key { [ minus, underscore, NoSymbol, NoSymbol ] }; 66 | key { [ equal, plus, NoSymbol, NoSymbol ] }; 67 | 68 | key { [ comma, semicolon, NoSymbol, NoSymbol ] }; 69 | key { [ period, colon, NoSymbol, NoSymbol ] }; 70 | key { [ slash, question, NoSymbol, NoSymbol ] }; 71 | 72 | key { [ bracketleft, braceleft, NoSymbol, NoSymbol ] }; 73 | key { [ bracketright, braceright, NoSymbol, NoSymbol ] }; 74 | 75 | key { [ backslash, bar, NoSymbol, NoSymbol ] }; 76 | key { [ NoSymbol, NoSymbol, NoSymbol, NoSymbol ] }; 77 | 78 | key.type[Group1] = "FOUR_LEVEL_SEMIALPHABETIC"; 79 | 80 | key { [ scircumflex, Scircumflex, at, NoSymbol ] }; 81 | key { [ jcircumflex, Jcircumflex, asciicircum, NoSymbol ] }; 82 | key { [ e, E, EuroSign, NoSymbol ] }; 83 | key { [ r, R, emdash, NoSymbol ] }; 84 | key { [ t, T, endash, NoSymbol ] }; 85 | key { [ gcircumflex, Gcircumflex, NoSymbol, NoSymbol ] }; 86 | key { [ u, U, NoSymbol, NoSymbol ] }; 87 | key { [ i, I, NoSymbol, NoSymbol ] }; 88 | key { [ o, O, NoSymbol, NoSymbol ] }; 89 | key { [ p, P, NoSymbol, NoSymbol ] }; 90 | 91 | key { [ a, A, less, NoSymbol ] }; 92 | key { [ s, S, greater, NoSymbol ] }; 93 | key { [ d, D, leftdoublequotemark, NoSymbol ] }; 94 | key { [ f, F, rightdoublequotemark, NoSymbol ] }; 95 | key { [ g, G, NoSymbol, NoSymbol ] }; 96 | key { [ h, H, NoSymbol, NoSymbol ] }; 97 | key { [ j, J, NoSymbol, NoSymbol ] }; 98 | key { [ k, K, NoSymbol, NoSymbol ] }; 99 | key { [ l, L, NoSymbol, NoSymbol ] }; 100 | key { [ ubreve, Ubreve, NoSymbol, NoSymbol ] }; 101 | key { [ hcircumflex, Hcircumflex, NoSymbol, NoSymbol ] }; 102 | 103 | key { [ z, Z, leftsinglequotemark, NoSymbol ] }; 104 | key { [ ccircumflex, Ccircumflex, rightsinglequotemark, NoSymbol ] }; 105 | key { [ c, C, NoSymbol, NoSymbol ] }; 106 | key { [ v, V, NoSymbol, NoSymbol ] }; 107 | key { [ b, B, NoSymbol, NoSymbol ] }; 108 | key { [ n, N, NoSymbol, NoSymbol ] }; 109 | key { [ m, M, NoSymbol, NoSymbol ] }; 110 | 111 | include "level3(ralt_switch)" 112 | }; 113 | 114 | // Add the Esperanto supersigned letters to their related keys on a Qwerty keyboard. 115 | // This is a generic "component" that is not used by the other layouts in this file, 116 | // but is meant to be applied to any Qwerty layout. If you have any questions, ask 117 | // J. Pablo Fernández . 118 | partial 119 | xkb_symbols "qwerty" { 120 | key { [ NoSymbol, NoSymbol, ccircumflex, Ccircumflex ] }; 121 | key { [ NoSymbol, NoSymbol, gcircumflex, Gcircumflex ] }; 122 | key { [ NoSymbol, NoSymbol, hcircumflex, Hcircumflex ] }; 123 | key { [ NoSymbol, NoSymbol, jcircumflex, Jcircumflex ] }; 124 | key { [ NoSymbol, NoSymbol, scircumflex, Scircumflex ] }; 125 | key { [ NoSymbol, NoSymbol, ubreve, Ubreve ] }; 126 | }; 127 | 128 | // Add the Esperanto supersigned letters to their related keys in a 129 | // Dvorak layout. Similar comment as above applies. 130 | partial 131 | xkb_symbols "dvorak" { 132 | key { [ NoSymbol, NoSymbol, ccircumflex, Ccircumflex ] }; 133 | key { [ NoSymbol, NoSymbol, gcircumflex, Gcircumflex ] }; 134 | key { [ NoSymbol, NoSymbol, hcircumflex, Hcircumflex ] }; 135 | key { [ NoSymbol, NoSymbol, jcircumflex, Jcircumflex ] }; 136 | key { [ NoSymbol, NoSymbol, scircumflex, Scircumflex ] }; 137 | key { [ NoSymbol, NoSymbol, ubreve, Ubreve ] }; 138 | }; 139 | 140 | // Add the Esperanto supersigned letters to their related keys in a 141 | // Colemak layout. Similar comment as above applies. 142 | partial 143 | xkb_symbols "colemak" { 144 | key { [ NoSymbol, NoSymbol, ccircumflex, Ccircumflex ] }; 145 | key { [ NoSymbol, NoSymbol, gcircumflex, Gcircumflex ] }; 146 | key { [ NoSymbol, NoSymbol, hcircumflex, Hcircumflex ] }; 147 | key { [ NoSymbol, NoSymbol, jcircumflex, Jcircumflex ] }; 148 | key { [ NoSymbol, NoSymbol, scircumflex, Scircumflex ] }; 149 | key { [ NoSymbol, NoSymbol, ubreve, Ubreve ] }; 150 | }; 151 | 152 | // >>--> DreymaR (OEystein Bech-Aase), 2023-06: Additions to xkb/symbols/epo 153 | // Colemak[eD]: National/locale Colemak "edition DreymaR" variants for Esperanto. 154 | // 2006-01-01 Shai Coleman http://colemak.com/ (Public Domain) : The Colemak keyboard layout. 155 | // See the Big Bag section on Cmk[eD] locales: https://dreymar.colemak.org/variants.html#locales 156 | 157 | // The 'keep local symbols' variant keeps the national symbol and special letter setup. 158 | partial alphanumeric_keys 159 | xkb_symbols "cmk_ed_ks" { 160 | include "colemak(cmk_ed_letters)" 161 | include "symkeys(cmk_ed_symbols)" 162 | include "level3(ralt_switch)" 163 | include "epo(colemak)" // remaps only AltGr mappings for Colemak C/G/H/J/S/U 164 | name[Group1]= "Esperanto (Colemak[eD], keep local symbols)"; 165 | }; 166 | 167 | // The 'us' variant uses the US-type symbol key setup (recommended!) as it is nearly an intl. standard. 168 | // For Esperanto, necessary local letters are added to designated flexible spots in the layout. 169 | // For "writing" and "coding" subvariants, move the brackets between lv1-2 and lv3-4 as shown. 170 | partial alphanumeric_keys 171 | xkb_symbols "cmk_ed_us" { 172 | include "colemak(cmk_ed_letters)" 173 | include "symkeys(cmk_ed_symbols)" 174 | include "level3(ralt_switch)" 175 | name[Group1]= "Esperanto (Colemak[eD], unified symbols)"; 176 | 177 | // NEEDED: circumflex cghjs (ĈĉĜĝĤĥĴĵŜŝ), ubreve (Ŭŭ) 178 | // Esperanto letter frequencies: The accented letters add up, so allegedly 6% for the above 6 letters together. 179 | // NOTE: Added dead_circumflex to both shifted and unshifted LBracket, so it's easy to use with shifted letters. 180 | 181 | // key { [ bracketleft, braceleft, dead_circumflex, dead_circumflex ] }; 182 | // key { [ bracketright, braceright, ubreve, Ubreve ] }; 183 | key { [ dead_circumflex, dead_circumflex, bracketleft, braceleft ] }; // common accent 184 | key { [ ubreve, Ubreve, bracketright, braceright ] }; // from 185 | }; 186 | // <--<< DreymaR: Additions to xkb/symbols/epo 187 | -------------------------------------------------------------------------------- /xkb-data_orig/xkb/symbols/latam: -------------------------------------------------------------------------------- 1 | // Modified for a real Latin American keyboard by Fabian Mandelbaum. 2 | default partial alphanumeric_keys 3 | xkb_symbols "basic" { 4 | 5 | include "latin(type4)" 6 | 7 | name[Group1]="Spanish (Latin American)"; 8 | 9 | key { [ 1, exclam, bar, exclamdown ] }; 10 | key { [ 3, numbersign, periodcentered, sterling ] }; 11 | key { [ 4, dollar, asciitilde, dollar ] }; 12 | key { [ 6, ampersand, notsign, fiveeighths ] }; 13 | key { [apostrophe, question, backslash, questiondown ] }; 14 | key { [questiondown, exclamdown, dead_cedilla, dead_ogonek] }; 15 | 16 | key { [dead_acute, dead_diaeresis, dead_diaeresis, dead_abovering ] }; 17 | key { [ plus, asterisk, asciitilde, dead_macron ] }; 18 | 19 | key { [ ntilde, Ntilde, asciitilde, dead_doubleacute ] }; 20 | key { [ braceleft, bracketleft, dead_circumflex, braceleft] }; 21 | key { [ bar, degree, notsign, notsign ] }; 22 | 23 | key { [braceright, bracketright, dead_grave, braceright ] }; 24 | 25 | key { [ less, greater, backslash, bar ] }; 26 | 27 | include "level3(ralt_switch)" 28 | }; 29 | 30 | partial alphanumeric_keys 31 | xkb_symbols "nodeadkeys" { 32 | 33 | include "latam(basic)" 34 | 35 | name[Group1]="Spanish (Latin American, no dead keys)"; 36 | 37 | key { [questiondown, exclamdown, cedilla, ogonek ] }; 38 | key { [ grave, asciicircum, bracketleft, degree ] }; 39 | key { [ plus, asterisk, bracketright, macron ] }; 40 | key { [ ntilde, Ntilde, asciitilde, doubleacute ] }; 41 | key { [ acute, diaeresis, braceleft, braceleft ] }; 42 | key { [ ccedilla, Ccedilla, braceright, breve ] }; 43 | key { [ minus, underscore, dead_belowdot, abovedot ] }; 44 | }; 45 | 46 | partial alphanumeric_keys 47 | xkb_symbols "deadtilde" { 48 | 49 | include "latam(basic)" 50 | 51 | name[Group1]="Spanish (Latin American, dead tilde)"; 52 | 53 | key { [ plus, asterisk, dead_tilde, dead_macron ] }; 54 | }; 55 | 56 | // Latin American Spanish Dvorak mapping (note R-H exchange) 57 | partial alphanumeric_keys 58 | xkb_symbols "dvorak" { 59 | 60 | name[Group1]="Spanish (Latin American, Dvorak)"; 61 | 62 | key {[ bar, degree, notsign, notsign ]}; 63 | key {[ 1, exclam, bar, exclamdown ]}; 64 | key {[ 2, quotedbl, at, oneeighth ]}; 65 | key {[ 3, numbersign, periodcentered, sterling ]}; 66 | key {[ 4, dollar, asciitilde, dollar ]}; 67 | key {[ 5, percent, onehalf, threeeighths ]}; 68 | key {[ 6, ampersand, notsign, fiveeighths ]}; 69 | key {[ 7, slash, braceleft, seveneighths ]}; 70 | key {[ 8, parenleft, bracketleft, trademark ]}; 71 | key {[ 9, parenright, bracketright, plusminus ]}; 72 | key {[ 0, equal, braceright, degree ]}; 73 | key {[ apostrophe, question, backslash, questiondown ]}; 74 | key {[ questiondown, exclamdown, dead_cedilla, dead_ogonek ]}; 75 | 76 | key {[ period, colon, at ]}; 77 | key {[ comma, semicolon ]}; 78 | key {[ ntilde, Ntilde, lstroke, Lstroke ]}; 79 | key {[ p, P, paragraph ]}; 80 | key {[ y, Y, yen ]}; 81 | key {[ f, F, tslash, Tslash ]}; 82 | key {[ g, G, dstroke, Dstroke ]}; 83 | key {[ c, C, cent, copyright ]}; 84 | key {[ h, H, hstroke, Hstroke ]}; 85 | key {[ l, L, sterling ]}; 86 | key {[ dead_acute, dead_diaeresis, dead_diaeresis, dead_abovering ]}; 87 | key {[ plus, asterisk, asciitilde, dead_macron ]}; 88 | 89 | key {[ a, A, ae, AE ]}; 90 | key {[ o, O, oslash, Oslash ]}; 91 | key {[ e, E, EuroSign ]}; 92 | key {[ u, U, aring, Aring ]}; 93 | key {[ i, I, oe, OE ]}; 94 | key {[ d, D, eth, ETH ]}; 95 | key {[ r, R, registered, trademark ]}; 96 | key {[ t, T, thorn, THORN ]}; 97 | key {[ n, N, eng, ENG ]}; 98 | key {[ s, S, ssharp, section ]}; 99 | key {[ braceleft, bracketleft, dead_circumflex, braceleft ]}; 100 | key {[ braceright, bracketright, dead_grave, braceright ]}; 101 | 102 | key {[ less, greater, guillemotleft, guillemotright ]}; 103 | key {[ minus, underscore, hyphen, macron ]}; 104 | key {[ q, Q, currency ]}; 105 | key {[ j, J ]}; 106 | key {[ k, K, kra ]}; 107 | key {[ x, X, multiply, division ]}; 108 | key {[ b, B ]}; 109 | key {[ m, M, mu ]}; 110 | key {[ w, W ]}; 111 | key {[ v, V ]}; 112 | key {[ z, Z ]}; 113 | 114 | include "level3(ralt_switch)" 115 | }; 116 | 117 | // Latin American Spanish Colemak mapping (inspired by DreymaR) 118 | partial alphanumeric_keys 119 | xkb_symbols "colemak" { 120 | 121 | name[Group1]="Spanish (Latin American, Colemak)"; 122 | 123 | key {[ bar, degree, notsign, notsign ]}; 124 | key {[ 1, exclam, bar, exclamdown ]}; 125 | key {[ 2, quotedbl, at, oneeighth ]}; 126 | key {[ 3, numbersign, periodcentered, sterling ]}; 127 | key {[ 4, dollar, asciitilde, dollar ]}; 128 | key {[ 5, percent, onehalf, threeeighths ]}; 129 | key {[ 6, ampersand, notsign, fiveeighths ]}; 130 | key {[ 7, slash, braceleft, seveneighths ]}; 131 | key {[ 8, parenleft, bracketleft, trademark ]}; 132 | key {[ 9, parenright, bracketright, plusminus ]}; 133 | key {[ 0, equal, braceright, degree ]}; 134 | key {[ apostrophe, question, backslash, questiondown ]}; 135 | key {[ questiondown, exclamdown, dead_cedilla, dead_ogonek ]}; 136 | 137 | key {[ q, Q, U201A, U201E ]}; 138 | key {[ w, W, U2018, U201C ]}; 139 | key {[ f, F, U2019, U201D ]}; 140 | key {[ p, P, U2293, paragraph ]}; 141 | key {[ g, G, eng, ENG ]}; 142 | key {[ j, J, U222B, U03A3 ]}; 143 | key {[ l, L, lstroke, Lstroke ]}; 144 | key {[ u, U, U2039, guillemotleft ]}; 145 | key {[ y, Y, U203A, guillemotright ]}; 146 | key {[ ntilde, Ntilde, asciitilde, U02EE ]}; 147 | key {[ dead_acute, dead_diaeresis, dead_diaeresis, dead_abovering ]}; 148 | key {[ plus, asterisk, asciitilde, dead_macron ]}; 149 | 150 | key {[ a, A, ae, AE ]}; 151 | key {[ r, R, registered, trademark ]}; 152 | key {[ s, S, ssharp, section ]}; 153 | key {[ t, T, thorn, THORN ]}; 154 | key {[ d, D, eth, ETH ]}; 155 | key {[ h, H, hstroke, Hstroke ]}; 156 | key {[ n, N, hyphen, U2190 ]}; 157 | key {[ e, E, EuroSign, U2191 ]}; 158 | key {[ i, I, U2015, U2192 ]}; 159 | key {[ o, O, U00BA, U00AA ]}; 160 | key {[ braceleft, bracketleft, dead_circumflex, braceleft ]}; 161 | key {[ braceright, bracketright, dead_grave, braceright ]}; 162 | 163 | key {[ less, greater, bar, U00A6 ]}; 164 | key {[ z, Z, U0292, U01B7 ]}; 165 | key {[ x, X, U2020, U2021 ]}; 166 | key {[ c, C, cent, copyright ]}; 167 | key {[ v, V, division, U03B3 ]}; 168 | key {[ b, B, U2022, U03B2 ]}; 169 | key {[ k, K, U00E7, U00C7 ]}; 170 | key {[ m, M, multiply, U2193 ]}; 171 | key {[ comma, semicolon, hyphen, multiply ]}; 172 | key {[ period, colon, U0323, division ]}; 173 | key {[ minus, underscore ]}; 174 | 175 | include "level3(ralt_switch)" 176 | }; 177 | -------------------------------------------------------------------------------- /xkb-data_orig/xkb/keycodes/xfree86: -------------------------------------------------------------------------------- 1 | // "standard" XFree86 codes 2 | // It seems that the "default" must be the first entry in the file. 3 | 4 | default xkb_keycodes "xfree86" { 5 | include "xfree86(basic)" 6 | = 51; 7 | alias = ; 8 | = 94; 9 | }; 10 | 11 | xkb_keycodes "basic" { 12 | 13 | minimum= 8; 14 | maximum= 255; 15 | 16 | = 49; 17 | alias = ; // Some geometries use AE00 18 | = 10; 19 | = 11; 20 | = 12; 21 | = 13; 22 | = 14; 23 | = 15; 24 | = 16; 25 | = 17; 26 | = 18; 27 | = 19; 28 | = 20; 29 | = 21; 30 | = 22; 31 | 32 | = 23; 33 | = 24; 34 | = 25; 35 | = 26; 36 | = 27; 37 | = 28; 38 | = 29; 39 | = 30; 40 | = 31; 41 | = 32; 42 | = 33; 43 | = 34; 44 | = 35; 45 | = 36; 46 | 47 | = 66; 48 | = 38; 49 | = 39; 50 | = 40; 51 | = 41; 52 | = 42; 53 | = 43; 54 | = 44; 55 | = 45; 56 | = 46; 57 | = 47; 58 | = 48; 59 | 60 | = 50; 61 | = 52; 62 | = 53; 63 | = 54; 64 | = 55; 65 | = 56; 66 | = 57; 67 | = 58; 68 | = 59; 69 | = 60; 70 | = 61; 71 | = 62; 72 | 73 | = 64; 74 | = 37; 75 | = 65; 76 | = 109; 77 | = 113; 78 | // Microsoft keyboard extra keys 79 | = 115; 80 | = 116; 81 | = 117; 82 | 83 | = 9; 84 | = 67; 85 | = 68; 86 | = 69; 87 | = 70; 88 | = 71; 89 | = 72; 90 | = 73; 91 | = 74; 92 | = 75; 93 | = 76; 94 | = 95; 95 | = 96; 96 | 97 | = 111; 98 | = 92; 99 | = 78; 100 | = 110; 101 | = 114; 102 | 103 | = 106; 104 | = 97; 105 | = 99; 106 | = 107; 107 | = 103; 108 | = 105; 109 | 110 | = 98; 111 | = 100; 112 | = 104; 113 | = 102; 114 | 115 | = 77; 116 | = 112; 117 | = 63; 118 | = 82; 119 | 120 | = 79; 121 | = 80; 122 | = 81; 123 | = 86; 124 | 125 | = 83; 126 | = 84; 127 | = 85; 128 | 129 | = 87; 130 | = 88; 131 | = 89; 132 | = 108; 133 | 134 | = 90; 135 | = 91; 136 | = 126; 137 | 138 | = 118; 139 | = 119; 140 | = 120; 141 | = 121; 142 | = 122; 143 | = 123; 144 | 145 | // Keys that are generated on Japanese keyboards 146 | 147 | alias = ; // Hankaku_Zenkaku toggle 148 | = 208; // Hiragana_Katakana toggle 149 | = 211; // backslash/underscore 150 | = 129; // Henkan 151 | = 131; // Muhenkan 152 | = 133; // Yen 153 | = 210; // Alphanumeric mode on macintosh 154 | = 209; // Kana mode on macintosh 155 | 156 | // Keys that are generated on Korean keyboards 157 | 158 | alias = ; // Hangul Latin toggle 159 | alias = ; // Hangul to Hanja conversion 160 | 161 | // Extended keys that may be generated on "Internet" keyboards. 162 | // These are not standardised, hence the meaningless names. 163 | // The entries commented out are never generated because the raw codes 164 | // in those positions are already used for well-defined keys. 165 | 166 | = 130; 167 | = 132; 168 | alias = ; 169 | = 134; 170 | = 135; 171 | = 136; 172 | = 137; 173 | = 138; 174 | = 139; 175 | = 140; 176 | = 141; 177 | = 142; 178 | = 143; 179 | = 144; 180 | = 145; 181 | = 146; 182 | = 147; 183 | = 148; 184 | = 149; 185 | = 150; 186 | = 151; 187 | = 152; 188 | = 153; 189 | = 154; 190 | = 155; 191 | // = 156; 192 | // = 157; 193 | = 158; 194 | = 159; 195 | = 160; 196 | = 161; 197 | = 162; 198 | = 163; 199 | = 164; 200 | = 165; 201 | = 166; 202 | = 167; 203 | = 168; 204 | = 169; 205 | // = 170; 206 | = 171; 207 | = 172; 208 | = 173; 209 | = 174; 210 | = 175; 211 | = 176; 212 | = 177; 213 | = 178; 214 | = 179; 215 | = 180; 216 | // = 181; 217 | // = 182; 218 | // = 183; 219 | // = 184; 220 | = 185; 221 | = 186; 222 | = 187; 223 | = 188; 224 | // = 189; 225 | // = 190; 226 | // = 191; 227 | // = 192; 228 | // = 193; 229 | = 194; 230 | = 195; 231 | = 196; 232 | = 197; 233 | // = 198; 234 | // = 199; 235 | // = 200; 236 | // = 201; 237 | = 202; 238 | // = 203; 239 | // = 204; 240 | // = 205; 241 | // = 206; 242 | // = 207; 243 | // = 208; 244 | // = 209; 245 | // = 210; 246 | // = 211; 247 | = 212; 248 | = 213; 249 | = 214; 250 | = 215; 251 | = 216; 252 | = 217; 253 | = 218; 254 | // = 219; 255 | // = 220; 256 | // = 221; 257 | = 222; 258 | = 223; 259 | = 224; 260 | = 225; 261 | = 226; 262 | = 227; 263 | = 228; 264 | = 229; 265 | = 230; 266 | = 231; 267 | = 232; 268 | = 233; 269 | = 234; 270 | = 235; 271 | = 236; 272 | = 237; 273 | = 238; 274 | = 239; 275 | = 240; 276 | = 241; 277 | = 242; 278 | = 243; 279 | = 244; 280 | = 245; 281 | = 246; 282 | = 247; 283 | = 248; 284 | = 249; 285 | = 250; 286 | = 251; 287 | = 252; 288 | alias = ; 289 | = 253; 290 | alias = ; 291 | = 254; 292 | = 255; 293 | 294 | // MacBooks generate 0x65 for the lower brightness key 295 | = 101; 296 | 297 | // Required for apple/logitech_g15 keyboard 298 | = 93; 299 | 300 | // Codes generated for scancodes 0x59-0x5f, 0x62-0x76 301 | = 157; // 302 | = 170; // 303 | = 181; // 304 | alias = ; 305 | = 182; // 306 | = 183; // 307 | = 184; // 308 | = 189; // 309 | = 190; // 310 | = 191; // 311 | = 192; // 312 | = 193; // 313 | = 198; // 314 | = 199; // 315 | = 200; // 316 | = 201; // 317 | = 203; // 318 | = 204; // 319 | = 205; // 320 | = 206; // 321 | = 207; // 322 | alias = ; // 323 | alias = ; // 324 | alias = ; // 325 | alias = ; // 326 | = 219; // 327 | = 220; // 328 | = 221; // 329 | 330 | // Solaris compatibility 331 | 332 | alias = ; 333 | alias = ; 334 | alias = ; 335 | alias = ; 336 | alias = ; 337 | alias = ; 338 | alias = ; 339 | alias = ; 340 | alias = ; 341 | alias = ; 342 | alias = ; 343 | alias = ; 344 | alias = ; 345 | alias = ; 346 | alias = ; 347 | alias = ; 348 | alias = ; 349 | alias = ; 350 | alias = ; 351 | alias = ; 352 | alias = ; 353 | alias = ; 354 | 355 | // Other codes never generated. The XFree86 ddx never generates 356 | // these codes. 357 | // Thus we can use them as fake keys 358 | = 8; 359 | = 124; // 360 | = 125; // 361 | = 156; // 362 | = 127; // 363 | = 128; // 364 | 365 | indicator 1 = "Caps Lock"; 366 | indicator 2 = "Num Lock"; 367 | indicator 3 = "Scroll Lock"; 368 | 369 | alias = ; 370 | 371 | // For Brazilian ABNT2 372 | alias = ; 373 | }; 374 | 375 | // What keyboard is this? 376 | 377 | xkb_keycodes "102" { 378 | include "xfree86(xfree86)" 379 | 380 | // There will be warnings from xkbcomp because of multiple definitions. 381 | 382 | = 122; 383 | = 123; 384 | 385 | = 121; 386 | = 118; 387 | 388 | = 131; 389 | = 135; 390 | = 119; 391 | = 129; 392 | = 130; 393 | = 134; 394 | 395 | = 128; 396 | = 132; 397 | = 120; 398 | = 133; 399 | 400 | = 125; 401 | 402 | = 124; 403 | }; 404 | 405 | 406 | // IBM ThinkPad Z60m/Z60t/Z61m/Z61t 407 | xkb_keycodes "thinkpadz60" { 408 | include "xfree86(xfree86)" 409 | = 227; 410 | }; 411 | --------------------------------------------------------------------------------