New unified Curl-DH mod; CurlAngle models

This commit is contained in:
DreymaR 2017-06-09 12:44:45 +02:00
parent c40b832ae9
commit 68a482969d
23 changed files with 705 additions and 397 deletions

53
.gitattributes vendored
View File

@ -1,17 +1,42 @@
# Auto detect text files and perform LF normalization # Set the default behavior, in case people don't have core.autocrlf set:
* text=auto * text=auto
# Custom for Visual Studio # Declare text files that will always be normalized and converted
*.cs diff=csharp # to native line endings on checkout:
*.txt text
*.md text
*.c text
*.h text
*.cpp text
*.hpp text
*.c++ text
*.h++ text
*.bat text
*.css text
*.htm text
*.html text
*.xml text
*.yaml text
*.ini text
*.hex text
LICENSE text
# Standard to msysgit # Declare files that will always have LF/CRLF line endings on checkout:
*.doc diff=astextplain *.svg text eol=lf
*.DOC diff=astextplain *.sh text eol=lf
*.docx diff=astextplain *.mk text eol=lf
*.DOCX diff=astextplain
*.dot diff=astextplain # Declare files that are truly binary and should not be modified:
*.DOT diff=astextplain *.png binary
*.pdf diff=astextplain *.jpg binary
*.PDF diff=astextplain *.jpeg binary
*.rtf diff=astextplain *.gif binary
*.RTF diff=astextplain *.tif binary
*.tiff binary
*.ico binary
*.png binary
*.pdf binary
*.zip binary
*.tar binary
*.gz binary
*.tgz binary

View File

@ -1,4 +1,4 @@
Copyright 2016, Øystein Bech Gadmar (a.k.a. "DreymaR") Copyright 2016, Øystein Bech Gadmar (a.k.a. "DreymaR")
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: 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:

View File

@ -6,7 +6,7 @@ DreymaR's Big Bag of Keyboard Tricks
* New "Colemak[eD]" AltGr mappings (lv3-4) putting dead keys on AltGr+symbol keys and reworking most other mappings * New "Colemak[eD]" AltGr mappings (lv3-4) putting dead keys on AltGr+symbol keys and reworking most other mappings
* An "Extend" layer using Caps Lock as a modifier (lv5-8) for navigation/editing from the home position and more * An "Extend" layer using Caps Lock as a modifier (lv5-8) for navigation/editing from the home position and more
* Angle/Wide ergo modifications to improve wrist angles, hand spacing and right pinky stretch/load effort * Angle/Wide ergo modifications to improve wrist angles, hand spacing and right pinky stretch/load effort
* Curl-DH ergo modifications to encourage natural finger curvature * Curl(DH) ergo modifications to encourage natural finger curvature
* For several locales, a 'Unified Symbols' layout with only a few necessary changes from the standard Colemak[eD]; * For several locales, a 'Unified Symbols' layout with only a few necessary changes from the standard Colemak[eD];
Also, a layout to 'Keep Local Symbols' like their default (QWERTY-type) counterparts for that locale Also, a layout to 'Keep Local Symbols' like their default (QWERTY-type) counterparts for that locale
* Intuitive phonetic layouts for Cyrillic, Greek and Hebrew scripts * Intuitive phonetic layouts for Cyrillic, Greek and Hebrew scripts
@ -26,4 +26,4 @@ See the [DREYMAR'S (XKB) topic on the Colemak Forums](http://forum.colemak.com/v
There are plenty of explanations and further links in there, as well as links to files. There are plenty of explanations and further links in there, as well as links to files.
Happy XKB hacking! Happy XKB hacking!
DreymaR, 2016-10 DreymaR, 2017-06

View File

@ -7,10 +7,10 @@
# in /etc/X11/xorg.conf. # in /etc/X11/xorg.conf.
#XKBMODEL="pc105" #XKBMODEL="pc105"
XKBMODEL="pc105awide-sl" XKBMODEL="pc105caw-sl"
XKBLAYOUT="no,no" XKBLAYOUT="no,no"
XKBVARIANT="cmk_ed_us," XKBVARIANT="cmk_ed_us,"
XKBOPTIONS="compose:menu,terminate:ctrl_alt_bksp,grp_led:scroll,lv5:caps_switch_lock,misc:extend" XKBOPTIONS="compose:menu,terminate:ctrl_alt_bksp,grp_led:scroll,lv5:caps_switch_lock,misc:extend,misc:cmk_curl_dh"
# If you don't want to use the XKB layout on the console, you can # If you don't want to use the XKB layout on the console, you can
# specify an alternative keymap. Make sure it will be accessible # specify an alternative keymap. Make sure it will be accessible

View File

@ -10,9 +10,13 @@
#XKBmodel='pc104' #XKBmodel='pc104'
#XKBmodel='pc104angle-z' #XKBmodel='pc104angle-z'
#XKBmodel='pc104wide-qu' #XKBmodel='pc104wide-qu'
#XKBmodel='pc104aw-zqu'
#XKBmodel='pc104curl-z'
#XKBmodel='pc104caw-zqu'
#XKBmodel='pc105' #XKBmodel='pc105'
XKBmodel='pc105awide-sl' #XKBmodel='pc105angle'
#XKBmodel='pc105angle-lg' XKBmodel='pc105aw-sl'
#XKBmodel='pc105caw-sl'
VerboseLvl=9 VerboseLvl=9
UsageStr="sh $0 [-m model]" UsageStr="sh $0 [-m model]"
HelpStr="Usage: $UsageStr\n"\ HelpStr="Usage: $UsageStr\n"\

View File

@ -10,9 +10,13 @@
#XKBmodel='pc104' #XKBmodel='pc104'
#XKBmodel='pc104angle-z' #XKBmodel='pc104angle-z'
#XKBmodel='pc104wide-qu' #XKBmodel='pc104wide-qu'
#XKBmodel='pc104aw-zqu'
#XKBmodel='pc104curl-z'
#XKBmodel='pc104caw-zqu'
XKBmodel='pc105' XKBmodel='pc105'
#XKBmodel='pc105awide-sl' #XKBmodel='pc105angle'
#XKBmodel='pc105angle-lg' #XKBmodel='pc105aw-sl'
#XKBmodel='pc105caw-sl'
VerboseLvl=9 VerboseLvl=9
UsageStr="sh $0 [-m model]" UsageStr="sh $0 [-m model]"
HelpStr="Usage: $UsageStr\n"\ HelpStr="Usage: $UsageStr\n"\

View File

@ -8,7 +8,7 @@
HeadStr="DreymaR's Big Bag Of Tricks install script (by GadOE, 2016-06)" HeadStr="DreymaR's Big Bag Of Tricks install script (by GadOE, 2016-06)"
DescStr=\ DescStr=\
"\e[1mShell script to apply DreymaR's changes to the X keyboard files:\e[0m\n"\ "\e[1mShell script to apply DreymaR's changes to the X keyboard files:\e[0m\n"\
" - AngleWide Ergonomic keyboard models for pc104/pc105 keyboards,\n"\ " - CurlAngleWide Ergonomic keyboard models for pc104/pc105 keyboards,\n"\
" - Extend mappings as a Misc option and CapsLock as a chooser (using lv5-8),\n"\ " - Extend mappings as a Misc option and CapsLock as a chooser (using lv5-8),\n"\
" - the Colemak [edition DreymaR] layout, using my own lv3-4 mappings,\n"\ " - the Colemak [edition DreymaR] layout, using my own lv3-4 mappings,\n"\
" - locale variants of Colemak[eD] with 'keep local' or 'unified' symbol keys,\n"\ " - locale variants of Colemak[eD] with 'keep local' or 'unified' symbol keys,\n"\
@ -67,7 +67,7 @@ DoBackup='ifnone' # (-n/b) Default backup behavior is "if no backups are found"
SubDirs='all' # (-m) Directory/-ies inside X11 to modify (e.g., 'xkb locale', 'all') SubDirs='all' # (-m) Directory/-ies inside X11 to modify (e.g., 'xkb locale', 'all')
InstGTK='no' # (-g) Whether to install the GTK 2.0/3.0 config (if not present) InstGTK='no' # (-g) Whether to install the GTK 2.0/3.0 config (if not present)
SetXMap='no' # (-x) Whether to run the setxkb script after installing SetXMap='no' # (-x) Whether to run the setxkb script after installing
SetXStr='5aw us us' # (-s) Shortcut string for setxkb - 'mmm ll vv' (model layout eD-variant) SetXStr='5cw us us' # (-s) Shortcut string for setxkb - 'mmm ll vv' (model layout eD-variant)
## NOTE: '# (-a)' means that the value can be set by option argument '-a <value>' ## NOTE: '# (-a)' means that the value can be set by option argument '-a <value>'
HelpStr="\e[1mUsage: bash ${MyNAME} [optional args]\e[0m\n"\ HelpStr="\e[1mUsage: bash ${MyNAME} [optional args]\e[0m\n"\

View File

@ -19,10 +19,13 @@ FootStr="Happy xkb-hacking! ~ Øystein Bech 'DreymaR' Gadmar"
# Need a full xkb dir then (not just the xkb-mod files) # Need a full xkb dir then (not just the xkb-mod files)
## NOTE: I made a handy shorthand for activating simple cmk_ed model/layout combos. ## NOTE: I made a handy shorthand for activating simple cmk_ed model/layout combos.
# Example: -s '5w no us' activates model pc105awide-sl, layout no(cmk_ed_us) # See the help text of this script for more info on the model-layout-variant syntax.
# Models: 4n 4a(pc104angle-z) 4w(pc104wide-qu) 4aw(pc104awide-zqu) 4f(pc104aframe) # Example: -s '5w no us' activates model pc105aw-sl, layout no(cmk_ed_us)
# 5n 5a(pc105angle-lg) 5w/5aw(pc105awide-sl) # Models: 4n 4a(pc104angle-z) 4w(pc104wide-qu) 4aw(pc104aw-zqu) 4f(pc104awing)
# Options left out of this: Too complex (replace all or add another, and if so, how?) # 5n 5a(pc105angle) 5w/5aw(pc105aw-sl)
# - Curl(DH) models with(-out) Wide use a c: 4c, 5cw etc
# - Thus, the allowed model short strings are (4|5)(n|a|c)[(w|f)]
# XKB options are left out of this: Too complex (e.g., replace or append?)
##-------------- init ------------------------------------------ ##-------------- init ------------------------------------------
@ -33,9 +36,8 @@ MyNAME=`basename $0`
## @@@ The default X11 dir under some (older) distros is /usr/lib/X11 @@@ ## @@@ The default X11 dir under some (older) distros is /usr/lib/X11 @@@
X11DIR='/usr/share/X11'; [ -d "${X11DIR}" ] || X11DIR='/usr/lib/X11' X11DIR='/usr/share/X11'; [ -d "${X11DIR}" ] || X11DIR='/usr/lib/X11'
#~ XKBmodel=pc104awide-zqu # ANSI-104 keyboard w/ Angle(Z)Wide(Quote) mod #~ XKBmodel=pc104aw-zqu # ANSI-104 keyboard w/ Angle(Z)Wide(Quote) mod
XKBmodel=pc105awide-sl # ISO-105 keyboard w/ AngleWide(Slash) mod XKBmodel=pc105caw-sl # ISO-105 keyboard w/ CurlAngleWide(Slash) mod
#~ XKBmodel=pc105caw-bksl # ISO-105 w/ Curl(DbgHk)AngleWide(Slash) mod
#~ XKBlayout='us(cmk_ed_us),gr(colemak),ru(colemak)' #~ XKBlayout='us(cmk_ed_us),gr(colemak),ru(colemak)'
XKBlayout='no(cmk_ed_us)' # Norwegian Colemak[eD]'Universal Symbols' layout XKBlayout='no(cmk_ed_us)' # Norwegian Colemak[eD]'Universal Symbols' layout
XKBoption='misc:extend,lv5:caps_switch_lock,grp:shifts_toggle,compose:menu' XKBoption='misc:extend,lv5:caps_switch_lock,grp:shifts_toggle,compose:menu'
@ -45,7 +47,7 @@ XKBdir="${X11DIR}/xkb" # (-d) The xkb-type dir to run setxkbmap from
AddCmd='no' # (-a) Add setxkbmap cmd to file? AddCmd='no' # (-a) Add setxkbmap cmd to file?
AddDefault="${HOME}/.bashrc" AddDefault="${HOME}/.bashrc"
AddCmdTo=${AddDefault} # (-f) File (such as '~/.bashrc') to add setxkbmap cmd to AddCmdTo=${AddDefault} # (-f) File (such as '~/.bashrc') to add setxkbmap cmd to
SetXStr='' #'5aw no us' # (-s) Shortcut string for setxkb - 'model locale eD-variant(sym)' SetXStr='' #'5cw no us' # (-s) Shortcut string for setxkb - 'model locale eD-variant(sym)'
## NOTE: '# (-a)' means that the value can be set by option argument '-a <value>' ## NOTE: '# (-a)' means that the value can be set by option argument '-a <value>'
HelpStr="\e[1mUsage: bash ${MyNAME} [optional args]\e[0m\n"\ HelpStr="\e[1mUsage: bash ${MyNAME} [optional args]\e[0m\n"\
@ -64,13 +66,13 @@ HelpStr="\e[1mUsage: bash ${MyNAME} [optional args]\e[0m\n"\
"[-f] <file> to add cmd to - '${AddCmdTo}'\n"\ "[-f] <file> to add cmd to - '${AddCmdTo}'\n"\
"\n\e[1mShortStr notation (a space separated string defining model+layout):\e[0m\n"\ "\n\e[1mShortStr notation (a space separated string defining model+layout):\e[0m\n"\
" 1) 4/5 - ANSI-104/ISO-105 keyboard,\n"\ " 1) 4/5 - ANSI-104/ISO-105 keyboard,\n"\
" n/a/b/v - Normal/Angle/Curl-DbgHk/Curl-DvbgHm\n"\ " n/a/c - Normal/Angle/Curl-DH\n"\
" w/f - Wide/AngleFrame (a.k.a. 'A-Wing')\n"\ " w/f - Wide/A-Wing (a.k.a. 'A-Frame')\n"\
" 2) Two-letter layout code like 'us' for USA, 'gb' for UK etc\n"\ " 2) Two-letter layout code like 'us' for USA, 'gb' for UK etc\n"\
" 3) 'us'/'ks' for 'Universal'/'Keep Local' symbol locale variants\n"\ " 3) 'us'/'ks' for 'Universal'/'Keep Local' symbol locale variants\n"\
" Example: '5a se us': PC105-Angle, Swedish Cmk[eD] 'UniSym'\n"\ " Examples: '5a se us': PC105-Angle, Swedish Cmk[eD] 'UniSym'\n"\
" '4bf gb ks': PC104-Curl(DbgHk)AWing, Eng.(UK) Cmk[eD] 'KeepSym'\n"\ " '4cf gb ks': PC104-Curl(DH)AWing, Eng.(UK) Cmk[eD] 'KeepSym'\n"\
" '5bw': PC105-Curl(DbgHk)AngleWide (keep existing layout)\n" " '5cw': PC105-Curl(DH)AngleWide - keep current layout/variant\n"
#~ " (See the script's comments for more info.)" #~ " (See the script's comments for more info.)"
@ -130,14 +132,14 @@ while getopts "m:l:o:v:s:d:f:akh?" cmdarg; do
l) XKBlayout="$OPTARG" ;; l) XKBlayout="$OPTARG" ;;
o) XKBoption="$OPTARG" ;; o) XKBoption="$OPTARG" ;;
v) VerboseLvl="$OPTARG" ;; v) VerboseLvl="$OPTARG" ;;
s) SetXStr=($OPTARG) ;; # Split the string s) SetXStr=($OPTARG) ;; # Split the string
d) XKBdir="$OPTARG" ;; d) XKBdir="$OPTARG" ;;
f) AddCmdTo="$OPTARG" ;; f) AddCmdTo="$OPTARG" ;;
a) AddCmd='yes' ;; a) AddCmd='yes' ;;
k) KeepXKM='yes' ;; k) KeepXKM='yes' ;;
h) PrintHelpAndExit 0 ;; h) PrintHelpAndExit 0 ;;
\?) PrintHelpAndExit 0 ;; \?) PrintHelpAndExit 0 ;;
:) PrintHelpAndExit 1 ;; :) PrintHelpAndExit 1 ;;
esac esac
done done
#~ pos_arg=${@:$OPTIND:1} # Get the remaining (positional) arg #~ pos_arg=${@:$OPTIND:1} # Get the remaining (positional) arg
@ -147,22 +149,17 @@ if [ -n "${SetXStr}" ]; then # Use the ShortStr notation
4n) XKBmodel='pc104' ;; # Generic ANSI-101/104-key 4n) XKBmodel='pc104' ;; # Generic ANSI-101/104-key
4a) XKBmodel='pc104angle-z' ;; # w/ Angle(Z) ergo mod 4a) XKBmodel='pc104angle-z' ;; # w/ Angle(Z) ergo mod
4w) XKBmodel='pc104wide-qu' ;; # w/ Wide(Quote) ergo mod 4w) XKBmodel='pc104wide-qu' ;; # w/ Wide(Quote) ergo mod
4aw) XKBmodel='pc104awide-zqu' ;; # w/ Angle(Z)Wide(Quote) ergo mod 4aw) XKBmodel='pc104aw-zqu' ;; # w/ Angle(Z)Wide(Quote) ergo mod
4f|4af) XKBmodel='pc104aframe' ;; # w/ AngleWing(Quote) ergo mod 4f|4af) XKBmodel='pc104awing' ;; # w/ AngleWing(Quote) ergo mod
4b) XKBmodel='pc104curla-bkz' ;; # w/ Curl(DbgHk)Angle(Z) ergo mod 4c) XKBmodel='pc104curl-z' ;; # w/ Curl(DH)Angle(Z) ergo mod
4v) XKBmodel='pc104curla-vmz' ;; # w/ Curl(DvbgHm)Angle(Z) ergo mod 4cw) XKBmodel='pc104caw-zqu' ;; # w/ Curl(DH)Angle(Z)Wide(Quote) mod
4bw) XKBmodel='pc104caw-bkzqu' ;; # w/ Curl(DbgHk)Angle(Z)Wide(Quote) mod 4cf) XKBmodel='pc104cawing' ;; # w/ Curl(DH)AngleWing(Quote) mod
4vw) XKBmodel='pc104caw-vmzqu' ;; # w/ Curl(DvbgHm)Angle(Z)Wide(Quote) mod
4bf) XKBmodel='pc104cawing-bk' ;; # w/ Curl(DbgHk)AngleWing(Quote) mod
4vf) XKBmodel='pc104cawing-vm' ;; # w/ Curl(DvbgHm)AngleWing(Quote) mod
5n) XKBmodel='pc105' ;; # Generic ISO-102/105-key 5n) XKBmodel='pc105' ;; # Generic ISO-102/105-key
5a) XKBmodel='pc105angle-lg' ;; # w/ Angle(LSGT) ergo mod 5a) XKBmodel='pc105angle' ;; # w/ Angle(LSGT) ergo mod
5w|5aw) XKBmodel='pc105awide-sl' ;; # w/ AngleWide(Slash) ergo mod 5w|5aw) XKBmodel='pc105aw-sl' ;; # w/ AngleWide(Slash) ergo mod
5b) XKBmodel='pc105curla-bk' ;; # w/ Curl(DbgHk)Angle ergo mod 5c) XKBmodel='pc105curl' ;; # w/ Curl(DH)Angle ergo mod
5v) XKBmodel='pc105curla-vm' ;; # w/ Curl(DvbgHm)Angle ergo mod 5cw) XKBmodel='pc105caw-sl' ;; # w/ Curl(DH)AngleWide(Slash) mod
5bw) XKBmodel='pc105caw-bksl' ;; # w/ Curl(DbgHk)AngleWide(Slash) mod
5vw) XKBmodel='pc105caw-vmsl' ;; # w/ Curl(DvbgHm)AngleWide(Slash) mod
*) MyError "ShortStr model '${SetXStr[0]}' unknown!" ;; *) MyError "ShortStr model '${SetXStr[0]}' unknown!" ;;
esac esac
@ -170,31 +167,21 @@ if [ -n "${SetXStr}" ]; then # Use the ShortStr notation
[ -n "${SetXStr[2]}" ] && XKBlayout="${SetXStr[1]}(cmk_ed_${SetXStr[2]})" \ [ -n "${SetXStr[2]}" ] && XKBlayout="${SetXStr[1]}(cmk_ed_${SetXStr[2]})" \
|| XKBlayout=`setxkbmap -query | grep layout | awk '{print $2}'` || XKBlayout=`setxkbmap -query | grep layout | awk '{print $2}'`
fi fi
## NOTE: Curl mods as models would mess up Extend, but I've kept the shortstr codes above. ## TODO: Add Curl-ZXCDV angle models (pc105cawide-sl etc)
# So, model strings are [4|5][n|a|v|b][-|w|f]
## NOTE: The code below post processes Curl models into model+option, as per my implementation. ## NOTE: The code below post processes Curl models into model+option, as per my XKB implementation.
## TODO: The Curl keyboard models sort of negate this? Only need to set the option for all of them.
case ${XKBmodel} in case ${XKBmodel} in
pc104curla-bkz) XKBmodel='pc104angle-z' # PC104-Curl(DbgHk)Angle(Z) pc104curl-z) XKBmodel='pc104angle-z' # PC104-Curl(DH)Angle(Z)
XKBoption+=',misc:cmk_curl_dbghk' ;; XKBoption+=',misc:cmk_curl_dh' ;;
pc104curla-vmz) XKBmodel='pc104angle-z' # PC104-Curl(DvbgHm)Angle(Z) pc104caw-zqu) XKBmodel='pc104aw-zqu' # PC104-Curl(DH)Angle(Z)Wide(Quote)
XKBoption+=',misc:cmk_curl_dvbghm' ;; XKBoption+=',misc:cmk_curl_dh' ;;
pc104caw-bkzqu) XKBmodel='pc104awide-zqu' # PC104-Curl(DbgHk)Angle(Z)Wide(Quote) pc104cawing) XKBmodel='pc104awing' # PC104-Curl(DH)AngleWing(Quote)
XKBoption+=',misc:cmk_curl_dbghk' ;; XKBoption+=',misc:cmk_curl_dh' ;;
pc104caw-vmzqu) XKBmodel='pc104awide-zqu' # PC104-Curl(DvbgHm)Angle(Z)Wide(Quote) pc105curl) XKBmodel='pc105angle' # PC105-Curl(DH)Angle(LSGT)
XKBoption+=',misc:cmk_curl_dvbghm' ;; XKBoption+=',misc:cmk_curl_dh' ;;
pc104cawing-bk) XKBmodel='pc104aframe' # PC104-Curl(DbgHk)AngleWing(Quote) pc105caw-sl) XKBmodel='pc105aw-sl' # PC105-Curl(DH)AngleWide(Slash)
XKBoption+=',misc:cmk_curl_dbghk' ;; XKBoption+=',misc:cmk_curl_dh' ;;
pc104cawing-vm) XKBmodel='pc104aframe' # PC104-Curl(DvbgHm)AngleWing(Quote)
XKBoption+=',misc:cmk_curl_dvbghm' ;;
pc105curla-bk) XKBmodel='pc105angle-lg' # PC105-Curl(DbgHk)Angle
XKBoption+=',misc:cmk_curl_dbghk' ;;
pc105curla-vm) XKBmodel='pc105angle-lg' # PC105-Curl(DvbgHm)Angle
XKBoption+=',misc:cmk_curl_dvbghm' ;;
pc105caw-bksl) XKBmodel='pc105awide-sl' # PC105-Curl(DbgHk)AngleWide(Slash)
XKBoption+=',misc:cmk_curl_dbghk' ;;
pc105caw-vmsl) XKBmodel='pc105awide-sl' # PC105-Curl(DvbgHm)AngleWide(Slash)
XKBoption+=',misc:cmk_curl_dvbghm' ;;
esac esac
@ -272,7 +259,7 @@ exit 0
## Extend mappings w/ Caps switch (for both), ## Extend mappings w/ Caps switch (for both),
## Switch grp w/ 2xCtrl; Compose on Menu key: ## Switch grp w/ 2xCtrl; Compose on Menu key:
#~ setxkbmap \ #~ setxkbmap \
#~ -model pc105awide-sl, \ #~ -model pc105aw-sl, \
#~ -layout "no(cmk_ed_us),gr(colemak)", \ #~ -layout "no(cmk_ed_us),gr(colemak)", \
#~ -option "misc:extend,lv5:caps_switch_lock,"\ #~ -option "misc:extend,lv5:caps_switch_lock,"\
#~ "grp:rctrl_switch_ctrls_toggle,compose:menu" #~ "grp:rctrl_switch_ctrls_toggle,compose:menu"

View File

@ -1567,11 +1567,10 @@ xkb_geometry "pc104alt" {
}; // End of "pc104alt" geometry }; // End of "pc104alt" geometry
// --> OEystein Bech "DreymaR" Gadmar, 2013: Additions to xkb/geometry/pc // --> OEystein Bech "DreymaR" Gadmar, 2017: Additions to xkb/geometry/pc
// pc104_Angle(Z) ergonomic mod (by DreymaR, 2011) // pc104_Angle(Z) ergonomic mod (by DreymaR, 2011)
xkb_geometry "pc104angle-z" { xkb_geometry "pc104angle-z" {
include "pc(pc104)" include "pc(pc104)"
description= "Generic 104 - Angle(Z)Ergo mod"; description= "Generic 104 - Angle(Z)Ergo mod";
section.left= 19; section.left= 19;
@ -1591,10 +1590,31 @@ xkb_geometry "pc104angle-z" {
}; // End of "Alpha" section }; // End of "Alpha" section
}; // End of "pc104angle-z" geometry }; // End of "pc104angle-z" geometry
// pc104_CurlAngle(Z) ergonomic mod (by DreymaR, 2017)
xkb_geometry "pc104curl-z" {
include "pc(pc104)"
description= "Generic 104 - CurlAngle(Z)Ergo mod";
section.left= 19;
row.left= 1;
key.shape= "NORM";
key.gap= 1;
section "Alpha" {
top= 61;
row {
top= 58;
keys { { <LFSH>, "LFSH", color="grey20" },
<AB02>, <AB03>, <AB05>, <AB04>, <AB01>,
<AB06>, <AB07>, <AB08>, <AB09>, <AB10>,
{ <RTSH>, "RTSH", color="grey20" }
};
}; // End of bottom row
}; // End of "Alpha" section
}; // End of "pc104curl-z" geometry
// pc104_Wide(Quote) ergonomic mod (by DreymaR, 2013) // pc104_Wide(Quote) ergonomic mod (by DreymaR, 2013)
xkb_geometry "pc104wide-qu" { xkb_geometry "pc104wide-qu" {
include "pc(pc104)" include "pc(pc104)"
description= "Generic 104 - Wide(Quote)Ergo mod"; description= "Generic 104 - Wide(Quote)Ergo mod";
section.left= 19; section.left= 19;
@ -1639,9 +1659,8 @@ xkb_geometry "pc104wide-qu" {
}; // End of "pc104wide-qu" geometry }; // End of "pc104wide-qu" geometry
// pc104_Angle(Z)Wide(Quote) ergonomic mod (by DreymaR, 2015) // pc104_Angle(Z)Wide(Quote) ergonomic mod (by DreymaR, 2015)
xkb_geometry "pc104awide-zqu" { xkb_geometry "pc104aw-zqu" {
include "pc(pc104wide-qu)" include "pc(pc104wide-qu)"
description= "Generic 104 - Angle(Z)Wide(Quote)Ergo mod"; description= "Generic 104 - Angle(Z)Wide(Quote)Ergo mod";
section.left= 19; section.left= 19;
@ -1656,16 +1675,37 @@ xkb_geometry "pc104awide-zqu" {
<AB02>, <AB03>, <AB04>, <AB05>, <AB01>, <AB02>, <AB03>, <AB04>, <AB05>, <AB01>,
<AB10>, <AB06>, <AB07>, <AB08>, <AB09>, <AB10>, <AB06>, <AB07>, <AB08>, <AB09>,
{ <RTSH>, "RTSH", color="grey20" } { <RTSH>, "RTSH", color="grey20" }
}; // pc104-AngleWide-ZQu };
}; // End of bottom row }; // End of bottom row
}; // End of "Alpha" section }; // End of "Alpha" section
}; // End of "pc104awide-zqu" geometry }; // End of "pc104aw-zqu" geometry
// pc104_AngleFrame(Quote) ergonomic mod (by DreymaR, 2015) // pc104_CurlAngle(Z)Wide(Quote) ergonomic mod (by DreymaR, 2017)
xkb_geometry "pc104aframe" { xkb_geometry "pc104caw-zqu" {
include "pc(pc104wide-qu)"
description= "Generic 104 - CurlAngle(Z)Wide(Quote)Ergo mod";
section.left= 19;
row.left= 1;
key.shape= "NORM";
key.gap= 1;
section "Alpha" {
top= 61;
row {
top= 58;
keys { { <LFSH>, "LFSH", color="grey20" },
<AB02>, <AB03>, <AB05>, <AB04>, <AB01>,
<AB10>, <AB06>, <AB07>, <AB08>, <AB09>,
{ <RTSH>, "RTSH", color="grey20" }
};
}; // End of bottom row
}; // End of "Alpha" section
}; // End of "pc104caw-zqu" geometry
// pc104_AngleWing(Quote) ergonomic mod (by DreymaR, 2015)
xkb_geometry "pc104awing" {
include "pc(pc104)" include "pc(pc104)"
description= "Generic 104 - AngleWing(Quote)Ergo mod";
description= "Generic 104 - AngleFrame ergo mod";
section.left= 19; section.left= 19;
row.left= 1; row.left= 1;
@ -1706,13 +1746,34 @@ xkb_geometry "pc104aframe" {
}; };
}; // End of bottom row }; // End of bottom row
}; // End of "Alpha" section }; // End of "Alpha" section
}; // End of "pc104aframe" geometry }; // End of "pc104awing" geometry
// pc104_CurlAngleWing(Quote) ergonomic mod (by DreymaR, 2017)
xkb_geometry "pc104cawing" {
include "pc(pc104awing)"
description= "Generic 104 - CurlAngleWing(Quote)Ergo mod";
section.left= 19;
row.left= 1;
key.shape= "NORM";
key.gap= 1;
section "Alpha" {
top= 61;
row {
top= 58;
keys { { <LFSH>, "LFSH", color="grey20" },
<AB01>, <AB02>, <AB03>, <AB05>, <AB04>,
<AB10>, <AB06>, <AB07>, <AB08>, <AB09>,
{ <RTSH>, "RTSH", color="grey20" }
};
}; // End of bottom row
}; // End of "Alpha" section
}; // End of "pc104caw-zqu" geometry
// pc105_Angle(LSGT) ergonomic mod (by DreymaR, 2011) // pc105_Angle(LSGT) ergonomic mod (by DreymaR, 2011)
xkb_geometry "pc105angle-lg" { xkb_geometry "pc105angle" {
include "pc(pc105)" include "pc(pc105)"
description= "Generic 105 - Angle_Ergo mod";
description= "Generic 105 - Angle(LSGT)Ergo mod";
section.left= 19; section.left= 19;
row.left= 1; row.left= 1;
@ -1729,12 +1790,33 @@ xkb_geometry "pc105angle-lg" {
}; };
}; // End of bottom row }; // End of bottom row
}; // End of "Alpha" section }; // End of "Alpha" section
}; // End of "pc105angle-lg" geometry }; // End of "pc105angle" geometry
// pc105_CurlAngle(LSGT) ergonomic mod (by DreymaR, 2017)
xkb_geometry "pc105curl" {
include "pc(pc105)"
description= "Generic 105 - CurlAngle_Ergo mod";
section.left= 19;
row.left= 1;
key.shape= "NORM";
key.gap= 1;
section "Alpha" {
top= 61;
row {
top= 58;
keys { { <LFSH>, "LFSH", color="grey20" },
<AB01>, <AB02>, <AB03>, <AB05>, <AB04>, <LSGT>,
<AB06>, <AB07>, <AB08>, <AB09>, <AB10>,
{ <RTSH>, "RTSH", color="grey20" }
};
}; // End of bottom row
}; // End of "Alpha" section
}; // End of "pc105curl" geometry
// pc105_AngleWide(Slash) ergonomic mod (by DreymaR, 2011) // pc105_AngleWide(Slash) ergonomic mod (by DreymaR, 2011)
xkb_geometry "pc105awide-sl" { xkb_geometry "pc105aw-sl" {
include "pc(pc105)" include "pc(pc105)"
description= "Generic 105 - AngleWide(/)Ergo mod"; description= "Generic 105 - AngleWide(/)Ergo mod";
section.left= 19; section.left= 19;
@ -1776,5 +1858,27 @@ xkb_geometry "pc105awide-sl" {
}; };
}; // End of bottom row }; // End of bottom row
}; // End of "Alpha" section }; // End of "Alpha" section
}; // End of "pc105awide-sl" geometry }; // End of "pc105aw-sl" geometry
// pc105_CurlAngleWide(Slash) ergonomic mod (by DreymaR, 2017)
xkb_geometry "pc105caw-sl" {
include "pc(pc105aw-sl)"
description= "Generic 105 - CurlAngleWide(/)Ergo mod";
section.left= 19;
row.left= 1;
key.shape= "NORM";
key.gap= 1;
section "Alpha" {
top= 61;
row {
top= 58;
keys { { <LFSH>, "LFSH", color="grey20" },
<AB01>, <AB02>, <AB03>, <AB05>, <AB04>, <LSGT>,
<BKSL>, <AB06>, <AB07>, <AB08>, <AB09>,
{ <RTSH>, "RTSH", color="grey20" }
};
}; // End of bottom row
}; // End of "Alpha" section
}; // End of "pc105caw-sl" geometry
// <-- DreymaR: Additions to xkb/geometry/pc // <-- DreymaR: Additions to xkb/geometry/pc

View File

@ -130,4 +130,36 @@ xkb_keycodes "colemak" {
alias <LatK> = <AB06>; alias <LatK> = <AB06>;
alias <LatM> = <AB07>; alias <LatM> = <AB07>;
}; };
xkb_keycodes "colemak_dh" {
alias <LatQ> = <AD01>;
alias <LatW> = <AD02>;
alias <LatF> = <AD03>;
alias <LatP> = <AD04>;
alias <LatB> = <AD05>;
alias <LatJ> = <AD06>;
alias <LatL> = <AD07>;
alias <LatU> = <AD08>;
alias <LatY> = <AD09>;
alias <LatA> = <AC01>;
alias <LatR> = <AC02>;
alias <LatS> = <AC03>;
alias <LatT> = <AC04>;
alias <LatG> = <AC05>;
alias <LatK> = <AC06>;
alias <LatN> = <AC07>;
alias <LatE> = <AC08>;
alias <LatI> = <AC09>;
alias <LatO> = <AC10>;
alias <LatZ> = <AB01>;
alias <LatX> = <AB02>;
alias <LatC> = <AB03>;
alias <LatD> = <AB04>;
alias <LatV> = <AB05>;
alias <LatM> = <AB06>;
alias <LatH> = <AB07>;
};
// <-- DreymaR: Additions to xkb/keycodes/aliases // <-- DreymaR: Additions to xkb/keycodes/aliases

View File

@ -314,7 +314,7 @@ xkb_keycodes "pc98" {
}; };
// --> OEystein Bech "DreymaR" Gadmar, 2015: Additions to xkb/keycodes/evdev // --> OEystein Bech "DreymaR" Gadmar, 2017: Additions to xkb/keycodes/evdev
// pc104_Angle(Z) ergonomic mod (by DreymaR, 2011) // pc104_Angle(Z) ergonomic mod (by DreymaR, 2011)
xkb_keycodes "pc104angle-z" { xkb_keycodes "pc104angle-z" {
@ -327,38 +327,99 @@ xkb_keycodes "pc104angle-z" {
augment "evdev(evdev)" augment "evdev(evdev)"
}; };
// pc104_Wide(Quote) ergonomic mod (by DreymaR, 2013) // pc104_CurlAngle(Z) ergonomic mod (by DreymaR, 2017)
xkb_keycodes "pc104wide-qu" { xkb_keycodes "pc104curl-z" {
include "evdev(pc104wide-rightpart)" <AB02> = 52; // X < Z
<AB03> = 53; // C < X
<AE12> = 16; // = < 7 <AB05> = 54; // B < C
<AD11> = 29; // [ < Y <AB04> = 55; // V < V
<AC11> = 35; // ' < ] <AB01> = 56; // Z < B
<AD12> = 43; // ] < H
<AB10> = 57; // / < N
augment "evdev(evdev)" augment "evdev(evdev)"
}; };
// pc104_Angle(Z)Wide(Quote) ergonomic mod (by DreymaR, 2015) // pc104_Wide(Quote) ergonomic mod (by DreymaR, 2013)
xkb_keycodes "pc104awide-zqu" { xkb_keycodes "pc104wide-qu" {
include "evdev(pc104wide-rightpart)" include "evdev(pc104wide-rightpart)"
include "evdev(pc104wide-midpart)"
augment "evdev(evdev)"
};
// pc104_Angle(Z)Wide(Quote) ergonomic mod (by DreymaR, 2013)
xkb_keycodes "pc104aw-zqu" {
include "evdev(pc104wide-rightpart)"
include "evdev(pc104wide-midpart)"
augment "evdev(pc104angle-z)"
};
// pc104_AngleWing(Quote) ergonomic mod (by DreymaR, 2015)
xkb_keycodes "pc104awing" {
include "evdev(pc104wide-rightpart)"
include "evdev(pc104awing-leftpart)"
augment "evdev(evdev)"
};
// pc104_CurlAngle(Z)Wide(Quote) ergonomic mod (by DreymaR, 2017)
xkb_keycodes "pc104caw-zqu" {
include "evdev(pc104wide-rightpart)"
include "evdev(pc104wide-midpart)"
augment "evdev(pc104curl-z)"
};
// pc104_CurlAngleWing(Quote) ergonomic mod (by DreymaR, 2017)
xkb_keycodes "pc104cawing" {
<AB05> = 55; // B < V
<AB04> = 56; // V < B
augment "evdev(pc104awing)"
};
// pc104_Wide partial ergonomic mod (by DreymaR, 2013)
xkb_keycodes "pc104wide-midpart" {
<AE12> = 16; // = < 7 <AE12> = 16; // = < 7
<AD11> = 29; // [ < Y <AD11> = 29; // [ < Y
<AC11> = 35; // ' < ] <AC11> = 35; // ' < ]
<AD12> = 43; // ] < H <AD12> = 43; // ] < H
<AB10> = 57; // / < N <AB10> = 57; // / < N
augment "evdev(pc104angle-z)"
}; };
// pc104_AngleFrame(Quote) ergonomic mod (by DreymaR, 2015) // pc104_Wide partial ergonomic mod (by DreymaR, 2013)
xkb_keycodes "pc104aframe" { xkb_keycodes "pc104wide-rightpart" {
include "evdev(pc104wide-rightpart)" <AE07> = 17; // 7 < 8
<AE08> = 18; // 8 < 9
<AE09> = 19; // 9 < 0
<AE10> = 20; // 0 < -
<AE11> = 21; // - < =
<AD06> = 30; // Y < U
<AD07> = 31; // U < I
<AD08> = 32; // I < O
<AD09> = 33; // O < P
<AD10> = 34; // P < [
<AC06> = 44; // H < J
<AC07> = 45; // J < K
<AC08> = 46; // K < L
<AC09> = 47; // L < ;
<AC10> = 48; // ; < '
<AC12> = 51; // \ < \
<AB06> = 58; // N < M
<AB07> = 59; // M < ,
<AB08> = 60; // , < .
<AB09> = 61; // . < /
};
// pc104_AngleWing partial ergonomic mod (by DreymaR, 2015)
xkb_keycodes "pc104awing-leftpart" {
<AE12> = 10; // = < 1 <AE12> = 10; // = < 1
<AD11> = 24; // [ < Q <AD11> = 24; // [ < Q
@ -384,41 +445,10 @@ xkb_keycodes "pc104aframe" {
<AC03> = 41; // D < F <AC03> = 41; // D < F
<AC04> = 42; // F < G <AC04> = 42; // F < G
<AC05> = 43; // G < H <AC05> = 43; // G < H
augment "evdev(evdev)"
};
// pc104_Wide partial ergonomic mod (by DreymaR, 2013)
xkb_keycodes "pc104wide-rightpart" {
<AE07> = 17; // 7 < 8
<AE08> = 18; // 8 < 9
<AE09> = 19; // 9 < 0
<AE10> = 20; // 0 < -
<AE11> = 21; // - < =
<AD06> = 30; // Y < U
<AD07> = 31; // U < I
<AD08> = 32; // I < O
<AD09> = 33; // O < P
<AD10> = 34; // P < [
<AC06> = 44; // H < J
<AC07> = 45; // J < K
<AC08> = 46; // K < L
<AC09> = 47; // L < ;
<AC10> = 48; // ; < '
// <AC12> = 51; // \ < \
<AB06> = 58; // N < M
<AB07> = 59; // M < ,
<AB08> = 60; // , < .
<AB09> = 61; // . < /
}; };
// pc105_Angle(LSGT) ergonomic mod (by DreymaR, 2011) // pc105_Angle(LSGT) ergonomic mod (by DreymaR, 2011)
xkb_keycodes "pc105angle-lg" { xkb_keycodes "pc105angle" {
<AB01> = 94; // Z < LG <AB01> = 94; // Z < LG
<AB02> = 52; // X < Z <AB02> = 52; // X < Z
@ -430,8 +460,35 @@ xkb_keycodes "pc105angle-lg" {
augment "evdev(evdev)" augment "evdev(evdev)"
}; };
// pc105_CurlAngle(LSGT) ergonomic mod (by DreymaR, 2017)
xkb_keycodes "pc105curl" {
<AB01> = 94; // Z < LG
<AB02> = 52; // X < Z
<AB03> = 53; // C < X
<AB05> = 54; // B < C
<AB04> = 55; // V < V
<LSGT> = 56; // LG < B
augment "evdev(evdev)"
};
// pc105_AngleWide(Slash) ergonomic mod (by DreymaR, 2011) // pc105_AngleWide(Slash) ergonomic mod (by DreymaR, 2011)
xkb_keycodes "pc105awide-sl" { xkb_keycodes "pc105aw-sl" {
include "evdev(pc105wide-rightpart)"
augment "evdev(pc105angle)"
};
// pc105_CurlAngleWide(Slash) ergonomic mod (by DreymaR, 2017)
xkb_keycodes "pc105caw-sl" {
include "evdev(pc105wide-rightpart)"
augment "evdev(pc105curl)"
};
// pc105_Wide(Slash) partial ergonomic mod (by DreymaR, 2011)
xkb_keycodes "pc105wide-rightpart" {
<AE12> = 16; // = < 7 <AE12> = 16; // = < 7
<AE07> = 17; // 7 < 8 <AE07> = 17; // 7 < 8
@ -463,7 +520,6 @@ xkb_keycodes "pc105awide-sl" {
<AB07> = 59; // M < , <AB07> = 59; // M < ,
<AB08> = 60; // , < . <AB08> = 60; // , < .
<AB09> = 61; // . < / <AB09> = 61; // . < /
augment "evdev(pc105angle-lg)"
}; };
// <-- DreymaR: Additions to xkb/keycodes/evdev // <-- DreymaR: Additions to xkb/keycodes/evdev

View File

@ -410,7 +410,7 @@ xkb_keycodes "thinkpadz60" {
}; };
// --> OEystein Bech "DreymaR" Gadmar, 2013: Additions to xkb/keycodes/xfree86 // --> OEystein Bech "DreymaR" Gadmar, 2017: Additions to xkb/keycodes/xfree86
// pc104_Angle(Z) ergonomic mod (by DreymaR, 2011) // pc104_Angle(Z) ergonomic mod (by DreymaR, 2011)
xkb_keycodes "pc104angle-z" { xkb_keycodes "pc104angle-z" {
@ -423,38 +423,99 @@ xkb_keycodes "pc104angle-z" {
augment "xfree86(xfree86)" augment "xfree86(xfree86)"
}; };
// pc104_Wide(Quote) ergonomic mod (by DreymaR, 2013) // pc104_CurlAngle(Z) ergonomic mod (by DreymaR, 2017)
xkb_keycodes "pc104wide-qu" { xkb_keycodes "pc104curl-z" {
include "xfree86(pc104wide-rightpart)" <AB02> = 52; // X < Z
<AB03> = 53; // C < X
<AE12> = 16; // = < 7 <AB05> = 54; // B < C
<AD11> = 29; // [ < Y <AB04> = 55; // V < V
<AC11> = 35; // ' < ] <AB01> = 56; // Z < B
<AD12> = 43; // ] < H
<AB10> = 57; // / < N
augment "xfree86(xfree86)" augment "xfree86(xfree86)"
}; };
// pc104_Angle(Z)Wide(Quote) ergonomic mod (by DreymaR, 2015) // pc104_Wide(Quote) ergonomic mod (by DreymaR, 2013)
xkb_keycodes "pc104awide-zqu" { xkb_keycodes "pc104wide-qu" {
include "xfree86(pc104wide-rightpart)" include "xfree86(pc104wide-rightpart)"
include "xfree86(pc104wide-midpart)"
augment "xfree86(xfree86)"
};
// pc104_Angle(Z)Wide(Quote) ergonomic mod (by DreymaR, 2013)
xkb_keycodes "pc104aw-zqu" {
include "xfree86(pc104wide-rightpart)"
include "xfree86(pc104wide-midpart)"
augment "xfree86(pc104angle-z)"
};
// pc104_AngleWing(Quote) ergonomic mod (by DreymaR, 2015)
xkb_keycodes "pc104awing" {
include "xfree86(pc104wide-rightpart)"
include "xfree86(pc104awing-leftpart)"
augment "xfree86(xfree86)"
};
// pc104_CurlAngle(Z)Wide(Quote) ergonomic mod (by DreymaR, 2017)
xkb_keycodes "pc104caw-zqu" {
include "xfree86(pc104wide-rightpart)"
include "xfree86(pc104wide-midpart)"
augment "xfree86(pc104curl-z)"
};
// pc104_CurlAngleWing(Quote) ergonomic mod (by DreymaR, 2017)
xkb_keycodes "pc104cawing" {
<AB05> = 55; // B < V
<AB04> = 56; // V < B
augment "xfree86(pc104awing)"
};
// pc104_Wide partial ergonomic mod (by DreymaR, 2013)
xkb_keycodes "pc104wide-midpart" {
<AE12> = 16; // = < 7 <AE12> = 16; // = < 7
<AD11> = 29; // [ < Y <AD11> = 29; // [ < Y
<AC11> = 35; // ' < ] <AC11> = 35; // ' < ]
<AD12> = 43; // ] < H <AD12> = 43; // ] < H
<AB10> = 57; // / < N <AB10> = 57; // / < N
augment "xfree86(pc104angle-z)"
}; };
// pc104_AngleFrame(Quote) ergonomic mod (by DreymaR, 2015) // pc104_Wide partial ergonomic mod (by DreymaR, 2013)
xkb_keycodes "pc104aframe" { xkb_keycodes "pc104wide-rightpart" {
include "xfree86(pc104wide-rightpart)" <AE07> = 17; // 7 < 8
<AE08> = 18; // 8 < 9
<AE09> = 19; // 9 < 0
<AE10> = 20; // 0 < -
<AE11> = 21; // - < =
<AD06> = 30; // Y < U
<AD07> = 31; // U < I
<AD08> = 32; // I < O
<AD09> = 33; // O < P
<AD10> = 34; // P < [
<AC06> = 44; // H < J
<AC07> = 45; // J < K
<AC08> = 46; // K < L
<AC09> = 47; // L < ;
<AC10> = 48; // ; < '
<AC12> = 51; // \ < \
<AB06> = 58; // N < M
<AB07> = 59; // M < ,
<AB08> = 60; // , < .
<AB09> = 61; // . < /
};
// pc104_AngleWing partial ergonomic mod (by DreymaR, 2015)
xkb_keycodes "pc104awing-leftpart" {
<AE12> = 10; // = < 1 <AE12> = 10; // = < 1
<AD11> = 24; // [ < Q <AD11> = 24; // [ < Q
@ -480,46 +541,10 @@ xkb_keycodes "pc104aframe" {
<AC03> = 41; // D < F <AC03> = 41; // D < F
<AC04> = 42; // F < G <AC04> = 42; // F < G
<AC05> = 43; // G < H <AC05> = 43; // G < H
augment "xfree86(xfree86)"
};
// pc104_Wide partial ergonomic mod (by DreymaR, 2013)
xkb_keycodes "pc104wide-rightpart" {
<AE12> = 16; // = < 7
<AE07> = 17; // 7 < 8
<AE08> = 18; // 8 < 9
<AE09> = 19; // 9 < 0
<AE10> = 20; // 0 < -
<AE11> = 21; // - < =
<AD11> = 29; // [ < Y
<AD06> = 30; // Y < U
<AD07> = 31; // U < I
<AD08> = 32; // I < O
<AD09> = 33; // O < P
<AD10> = 34; // P < [
<AC11> = 35; // ' < ]
<AD12> = 43; // ] < H
<AC06> = 44; // H < J
<AC07> = 45; // J < K
<AC08> = 46; // K < L
<AC09> = 47; // L < ;
<AC10> = 48; // ; < '
// <AC12> = 51; // \ < \
<AB10> = 57; // / < N
<AB06> = 58; // N < M
<AB07> = 59; // M < ,
<AB08> = 60; // , < .
<AB09> = 61; // . < /
}; };
// pc105_Angle(LSGT) ergonomic mod (by DreymaR, 2011) // pc105_Angle(LSGT) ergonomic mod (by DreymaR, 2011)
xkb_keycodes "pc105angle-lg" { xkb_keycodes "pc105angle" {
<AB01> = 94; // Z < LG <AB01> = 94; // Z < LG
<AB02> = 52; // X < Z <AB02> = 52; // X < Z
@ -531,8 +556,35 @@ xkb_keycodes "pc105angle-lg" {
augment "xfree86(xfree86)" augment "xfree86(xfree86)"
}; };
// pc105_CurlAngle(LSGT) ergonomic mod (by DreymaR, 2017)
xkb_keycodes "pc105curl" {
<AB01> = 94; // Z < LG
<AB02> = 52; // X < Z
<AB03> = 53; // C < X
<AB05> = 54; // B < C
<AB04> = 55; // V < V
<LSGT> = 56; // LG < B
augment "xfree86(xfree86)"
};
// pc105_AngleWide(Slash) ergonomic mod (by DreymaR, 2011) // pc105_AngleWide(Slash) ergonomic mod (by DreymaR, 2011)
xkb_keycodes "pc105awide-sl" { xkb_keycodes "pc105aw-sl" {
include "xfree86(pc105wide-rightpart)"
augment "xfree86(pc105angle)"
};
// pc105_CurlAngleWide(Slash) ergonomic mod (by DreymaR, 2017)
xkb_keycodes "pc105caw-sl" {
include "xfree86(pc105wide-rightpart)"
augment "xfree86(pc105curl)"
};
// pc105_Wide(Slash) partial ergonomic mod (by DreymaR, 2011)
xkb_keycodes "pc105wide-rightpart" {
<AE12> = 16; // = < 7 <AE12> = 16; // = < 7
<AE07> = 17; // 7 < 8 <AE07> = 17; // 7 < 8
@ -564,7 +616,6 @@ xkb_keycodes "pc105awide-sl" {
<AB07> = 59; // M < , <AB07> = 59; // M < ,
<AB08> = 60; // , < . <AB08> = 60; // , < .
<AB09> = 61; // . < / <AB09> = 61; // . < /
augment "xfree86(pc105angle-lg)"
}; };
// <-- DreymaR: Additions to xkb/keycodes/xfree86 // <-- DreymaR: Additions to xkb/keycodes/xfree86

View File

@ -13,7 +13,9 @@
// ori pk ru scc sy syr tel th tj tam ua uz // ori pk ru scc sy syr tel th tj tam ua uz
// PC models // PC models
! $pcmodels = pc101 pc102 pc104 pc105 pc104angle-z pc104wide-qu pc104awide-zqu pc104aframe pc105angle-lg pc105awide-sl ! $pcmodels = pc101 pc102 pc104 pc105 \
pc104angle-z pc104wide-qu pc104aw-zqu pc104awing pc105angle pc105aw-sl \
pc104curl-z pc104caw-zqu pc104cawing pc105curl pc105caw-sl
// Jolla devices and keyboards // Jolla devices and keyboards
! $jollamodels = jollasbj ! $jollamodels = jollasbj
@ -100,10 +102,15 @@
olpcm = evdev+olpc(olpcm) olpcm = evdev+olpc(olpcm)
pc104angle-z = evdev(pc104angle-z) pc104angle-z = evdev(pc104angle-z)
pc104wide-qu = evdev(pc104wide-qu) pc104wide-qu = evdev(pc104wide-qu)
pc104awide-zqu = evdev(pc104awide-zqu) pc104aw-zqu = evdev(pc104aw-zqu)
pc104aframe = evdev(pc104aframe) pc104awing = evdev(pc104awing)
pc105angle-lg = evdev(pc105angle-lg) pc104curl-z = evdev(pc104curl-z)
pc105awide-sl = evdev(pc105awide-sl) pc104caw-zqu = evdev(pc104caw-zqu)
pc104cawing = evdev(pc104cawing)
pc105angle = evdev(pc105angle)
pc105aw-sl = evdev(pc105aw-sl)
pc105curl = evdev(pc105curl)
pc105caw-sl = evdev(pc105caw-sl)
* = evdev * = evdev
! layout[1] = keycodes ! layout[1] = keycodes
@ -938,36 +945,31 @@
$threelevellayouts grp:alts_toggle = +level3(ralt_switch_for_alts_toggle) $threelevellayouts grp:alts_toggle = +level3(ralt_switch_for_alts_toggle)
* misc:typo = +typo(base) * misc:typo = +typo(base)
* misc:extend = +extend(basic) * misc:extend = +extend(basic)
* misc:cmk_curl_dbghk = +colemak(cmk_dbg-hk_ed) * misc:cmk_curl_dh = +colemak(cmk_ed_dh)
* misc:cmk_curl_dvbghm = +colemak(cmk_dvbg-hm_ed)
! layout[1] option = symbols ! layout[1] option = symbols
$threelevellayouts grp:alts_toggle = +level3(ralt_switch_for_alts_toggle):1 $threelevellayouts grp:alts_toggle = +level3(ralt_switch_for_alts_toggle):1
* misc:typo = +typo(base):1 * misc:typo = +typo(base):1
* misc:extend = +extend(basic):1 * misc:extend = +extend(basic):1
* misc:cmk_curl_dbghk = +colemak(cmk_dbg-hk_ed):1 * misc:cmk_curl_dh = +colemak(cmk_ed_dh):1
* misc:cmk_curl_dvbghm = +colemak(cmk_dvbg-hm_ed):1
! layout[2] option = symbols ! layout[2] option = symbols
$threelevellayouts grp:alts_toggle = +level3(ralt_switch_for_alts_toggle):2 $threelevellayouts grp:alts_toggle = +level3(ralt_switch_for_alts_toggle):2
* misc:typo = +typo(base):2 * misc:typo = +typo(base):2
* misc:extend = +extend(basic):2 * misc:extend = +extend(basic):2
// * misc:cmk_curl_dbghk = +colemak(cmk_dbg-hk_ed):2 // * misc:cmk_curl_dh = +colemak(cmk_ed_dh):2
// * misc:cmk_curl_dvbghm = +colemak(cmk_dvbg-hm_ed):2
! layout[3] option = symbols ! layout[3] option = symbols
$threelevellayouts grp:alts_toggle = +level3(ralt_switch_for_alts_toggle):3 $threelevellayouts grp:alts_toggle = +level3(ralt_switch_for_alts_toggle):3
* misc:typo = +typo(base):3 * misc:typo = +typo(base):3
* misc:extend = +extend(basic):3 * misc:extend = +extend(basic):3
// * misc:cmk_curl_dbghk = +colemak(cmk_dbg-hk_ed):3 // * misc:cmk_curl_dh = +colemak(cmk_ed_dh):3
// * misc:cmk_curl_dvbghm = +colemak(cmk_dvbg-hm_ed):3
! layout[4] option = symbols ! layout[4] option = symbols
$threelevellayouts grp:alts_toggle = +level3(ralt_switch_for_alts_toggle):4 $threelevellayouts grp:alts_toggle = +level3(ralt_switch_for_alts_toggle):4
* misc:typo = +typo(base):4 * misc:typo = +typo(base):4
* misc:extend = +extend(basic):4 * misc:extend = +extend(basic):4
// * misc:cmk_curl_dbghk = +colemak(cmk_dbg-hk_ed):4 // * misc:cmk_curl_dh = +colemak(cmk_ed_dh):4
// * misc:cmk_curl_dvbghm = +colemak(cmk_dvbg-hm_ed):4
! option = symbols ! option = symbols
grp:shift_toggle = +group(shifts_toggle) grp:shift_toggle = +group(shifts_toggle)

View File

@ -5,10 +5,15 @@
pc105 Generic 105-key (Intl) PC pc105 Generic 105-key (Intl) PC
pc104angle-z Generic 104-key PC Angle(Z)Ergo pc104angle-z Generic 104-key PC Angle(Z)Ergo
pc104wide-qu Generic 104-key PC Wide(Quote)Ergo pc104wide-qu Generic 104-key PC Wide(Quote)Ergo
pc104awide-zqu Generic 104-key PC Angle(Z)Wide(Quote)Ergo pc104aw-zqu Generic 104-key PC Angle(Z)Wide(Quote)Ergo
pc104aframe Generic 104-key PC AngleWing(Quote)Ergo pc104awing Generic 104-key PC AngleWing(Quote)Ergo
pc105angle-lg Generic 105-key (Intl) PC Angle(LSGT)Ergo pc104curl-z Generic 104-key PC CurlAngle(Z)Ergo
pc105awide-sl Generic 105-key (Intl) PC AngleWide(/)Ergo pc104caw-zqu Generic 104-key PC CurlAngle(Z)Wide(Quote)Ergo
pc104cawing Generic 104-key PC CurlAngleWing(Quote)Ergo
pc105angle Generic 105-key (Intl) PC Angle_Ergo
pc105aw-sl Generic 105-key (Intl) PC AngleWide(/)Ergo
pc105curl Generic 105-key (Intl) PC CurlAngle_Ergo
pc105caw-sl Generic 105-key (Intl) PC CurlAngleWide(/)Ergo
dell101 Dell 101-key PC dell101 Dell 101-key PC
latitude Dell Latitude series laptop latitude Dell Latitude series laptop
dellm65 Dell Precision M65 dellm65 Dell Precision M65
@ -296,15 +301,13 @@
alt-intl us: English (US, alternative international) alt-intl us: English (US, alternative international)
colemak us: English (Colemak) colemak us: English (Colemak)
cmk_ed_us us: English (Colemak[eD] - edition DreymaR) cmk_ed_us us: English (Colemak[eD] - edition DreymaR)
tarmak1_e us: English (Tarmak1 - Colemak[eD] transitional) tarmak1__e us: English (Tarmak1 - Colemak[eD] transitional)
tarmak1k_e us: English (Tarmak1k - Colemak[eD] transit. w/ Curl-Hk mod) tarmak1c_e us: English (Tarmak1C - Colemak[eD] Curl-DH transitional)
tarmak2_et us: English (Tarmak2 - Colemak[eD] transitional) tarmak2__et us: English (Tarmak2 - Colemak[eD] transitional)
tarmak2bk_et us: English (Tarmak2bk - Colemak[eD] transit. w/ Curl-DbgHk mod) tarmak2c_et us: English (Tarmak2C - Colemak[eD] Curl-DH transitional)
tarmak2vm_et us: English (Tarmak2vm - Colemak[eD] transit. w/ Curl-DvbgHm mod) tarmak3__etr us: English (Tarmak3 - Colemak[eD] transitional)
tarmak3_etr us: English (Tarmak3 - Colemak[eD] transitional) tarmak4__etro us: English (Tarmak4 - Colemak[eD] transitional)
tarmak4_etro us: English (Tarmak4 - Colemak[eD] transitional) cmk_ed_dh us: English (Colemak[eD], Curl-DH ergo mod)
cmk_ed_dvbghm us: English (Colemak[eD], Curl-DvbgHm ergo)
cmk_ed_dbghk us: English (Colemak[eD], Curl-DbgHk ergo)
cmk_ed_mirror us: English (Colemak[eD], mirrored) cmk_ed_mirror us: English (Colemak[eD], mirrored)
dvorak us: English (Dvorak) dvorak us: English (Dvorak)
dvorak-intl us: English (Dvorak, international with dead keys) dvorak-intl us: English (Dvorak, international with dead keys)
@ -935,8 +938,7 @@
shift:breaks_caps Shift cancels Caps Lock shift:breaks_caps Shift cancels Caps Lock
misc:typo Enable extra typographic characters misc:typo Enable extra typographic characters
misc:extend Enable level5 Extend mappings (home position arrows etc) misc:extend Enable level5 Extend mappings (home position arrows etc)
misc:cmk_curl_dbghk Colemak Curl ergo mod (DbgHk variant) misc:cmk_curl_dh Colemak Curl(DH) ergo mod
misc:cmk_curl_dvbghm Colemak Curl ergo mod (DvbgHm variant)
shift:both_capslock Both Shift keys together toggle Caps Lock shift:both_capslock Both Shift keys together toggle Caps Lock
shift:both_capslock_cancel Both Shift keys together activate Caps Lock, one Shift key deactivates shift:both_capslock_cancel Both Shift keys together activate Caps Lock, one Shift key deactivates
shift:both_shiftlock Both Shift keys together toggle ShiftLock shift:both_shiftlock Both Shift keys together toggle ShiftLock

View File

@ -46,32 +46,67 @@
</model> </model>
<model> <model>
<configItem> <configItem>
<name>pc104awide-zqu</name> <name>pc104aw-zqu</name>
<description>Generic 104-key PC (Angle(Z)Wide(Quote)Ergo mod)</description> <description>Generic 104-key PC (Angle(Z)Wide(Quote)Ergo mod)</description>
<vendor>Generic</vendor> <vendor>Generic</vendor>
</configItem> </configItem>
</model> </model>
<model> <model>
<configItem> <configItem>
<name>pc104aframe</name> <name>pc104awing</name>
<description>Generic 104-key PC (AngleWing(Quote)Ergo mod)</description> <description>Generic 104-key PC (AngleWing(Quote)Ergo mod)</description>
<vendor>Generic</vendor> <vendor>Generic</vendor>
</configItem> </configItem>
</model> </model>
<model> <model>
<configItem> <configItem>
<name>pc105angle-lg</name> <name>pc104curl-z</name>
<description>Generic 105-key (Intl) PC (Angle(LSGT)Ergo mod)</description> <description>Generic 104-key PC (CurlAngle(Z)Ergo mod)</description>
<vendor>Generic</vendor> <vendor>Generic</vendor>
</configItem> </configItem>
</model> </model>
<model> <model>
<configItem> <configItem>
<name>pc105awide-sl</name> <name>pc104caw-zqu</name>
<description>Generic 104-key PC (CurlAngle(Z)Wide(Quote)Ergo mod)</description>
<vendor>Generic</vendor>
</configItem>
</model>
<model>
<configItem>
<name>pc104cawing</name>
<description>Generic 104-key PC (CurlAngleWing(Quote)Ergo mod)</description>
<vendor>Generic</vendor>
</configItem>
</model>
<model>
<configItem>
<name>pc105angle</name>
<description>Generic 105-key (Intl) PC (Angle_Ergo mod)</description>
<vendor>Generic</vendor>
</configItem>
</model>
<model>
<configItem>
<name>pc105aw-sl</name>
<description>Generic 105-key (Intl) PC (AngleWide(/)Ergo mod)</description> <description>Generic 105-key (Intl) PC (AngleWide(/)Ergo mod)</description>
<vendor>Generic</vendor> <vendor>Generic</vendor>
</configItem> </configItem>
</model> </model>
<model>
<configItem>
<name>pc105curl</name>
<description>Generic 105-key (Intl) PC (CurlAngle_Ergo mod)</description>
<vendor>Generic</vendor>
</configItem>
</model>
<model>
<configItem>
<name>pc105caw-sl</name>
<description>Generic 105-key (Intl) PC (CurlAngleWide(/)Ergo mod)</description>
<vendor>Generic</vendor>
</configItem>
</model>
<model> <model>
<configItem> <configItem>
<name>dell101</name> <name>dell101</name>
@ -1407,56 +1442,44 @@
</variant> </variant>
<variant> <variant>
<configItem> <configItem>
<name>tarmak1_e</name> <name>tarmak1__e</name>
<description>English (Tarmak1 - Colemak[eD] transitional)</description> <description>English (Tarmak1 - Colemak[eD] transitional)</description>
</configItem> </configItem>
</variant> </variant>
<variant> <variant>
<configItem> <configItem>
<name>tarmak1k_e</name> <name>tarmak1c_e</name>
<description>English (Tarmak1k - Colemak[eD] transit. w/ Curl-Hk mod)</description> <description>English (Tarmak1C - Colemak[eD] Curl-DH transitional)</description>
</configItem> </configItem>
</variant> </variant>
<variant> <variant>
<configItem> <configItem>
<name>tarmak2_et</name> <name>tarmak2__et</name>
<description>English (Tarmak2 - Colemak[eD] transitional)</description> <description>English (Tarmak2 - Colemak[eD] transitional)</description>
</configItem> </configItem>
</variant> </variant>
<variant> <variant>
<configItem> <configItem>
<name>tarmak2bk_et</name> <name>tarmak2c_et</name>
<description>English (Tarmak2bk - Colemak[eD] transit. w/ Curl-DbgHk mod)</description> <description>English (Tarmak2C - Colemak[eD] Curl-DH transitional)</description>
</configItem> </configItem>
</variant> </variant>
<variant> <variant>
<configItem> <configItem>
<name>tarmak2vm_et</name> <name>tarmak3__etr</name>
<description>English (Tarmak2vm - Colemak[eD] transit. w/ Curl-DvbgHm mod)</description>
</configItem>
</variant>
<variant>
<configItem>
<name>tarmak3_etr</name>
<description>English (Tarmak3 - Colemak[eD] transitional)</description> <description>English (Tarmak3 - Colemak[eD] transitional)</description>
</configItem> </configItem>
</variant> </variant>
<variant> <variant>
<configItem> <configItem>
<name>tarmak4_etro</name> <name>tarmak4__etro</name>
<description>English (Tarmak4 - Colemak[eD] transitional)</description> <description>English (Tarmak4 - Colemak[eD] transitional)</description>
</configItem> </configItem>
</variant> </variant>
<variant> <variant>
<configItem> <configItem>
<name>cmk_ed_dvbghm</name> <name>cmk_ed_dh</name>
<description>English (Colemak[eD], Curl-DvbgHm ergo)</description> <description>English (Colemak[eD], Curl-DH ergo mod)</description>
</configItem>
</variant>
<variant>
<configItem>
<name>cmk_ed_dbghk</name>
<description>English (Colemak[eD], Curl-DbgHk ergo)</description>
</configItem> </configItem>
</variant> </variant>
<variant> <variant>
@ -7253,14 +7276,8 @@
</option> </option>
<option> <option>
<configItem> <configItem>
<name>misc:cmk_curl_dbghk</name> <name>misc:cmk_curl_dh</name>
<description>Colemak Curl ergo mod (DbgHk variant)</description> <description>Colemak Curl(DH) ergo mod</description>
</configItem>
</option>
<option>
<configItem>
<name>misc:cmk_curl_dvbghm</name>
<description>Colemak Curl ergo mod (DvbgHm variant)</description>
</configItem> </configItem>
</option> </option>
<option> <option>

View File

@ -79,7 +79,7 @@ xkb_symbols "cmk_standard" {
// ***************************************************************************************** // *****************************************************************************************
// ****** ****** // ****** ******
// ***** START of DreymaR's Colemak additions (Cmk[eD], Tarmak1-4, National var.) ***** // ***** START of DreymaR's Colemak addons (Cmk[eD], Curl-DH, Tarmak1-4, Mirrored) *****
// ****** ****** // ****** ******
// ***************************************************************************************** // *****************************************************************************************
@ -151,10 +151,10 @@ xkb_symbols "cmk_ed_letters" {
key <AB07> { [ m, M, multiply, downarrow ] }; // QWE/Cmk M key <AB07> { [ m, M, multiply, downarrow ] }; // QWE/Cmk M
// U0292/01B7 ezh/EZH // U0292/01B7 ezh/EZH
//// NOTE: Activating the line below will "hard" enable the Curl-Dvbg/Hm mod by Stevep99; see below. //// Activating the line below will "hard" enable the old Curl(DHm) mod; see below.
// include "colemak(cmk_dvbg-hm_ed)" // include "colemak(cmk_ed_dhm)"
//// NOTE: This is my lighter Curl-Dbg/Hk Colemak ergo mod, keeping V and M in place. //// This is the old Curl(DvH) Colemak ergo mod, keeping V and M in place.
// include "colemak(cmk_dbg-hk_ed)" // include "colemak(cmk_ed_dvh)"
}; };
hidden partial alphanumeric_keys hidden partial alphanumeric_keys
@ -216,61 +216,74 @@ xkb_symbols "cmk_ed_symbols" {
// Make sure dead_hook has rhotic hooks for schwa and turned epsilon! // Make sure dead_hook has rhotic hooks for schwa and turned epsilon!
// Similarly with smallcap letters and their turned counterparts? // Similarly with smallcap letters and their turned counterparts?
// TODO: Add IPA (broad English?) somewhere. Too few free slots, so it'll have to be by dead_keys. // TODO: Add IPA (broad English?) somewhere. Too few free slots, so it'll have to be by dead_keys.
// TODO: Phonetic 'colemak_curl' layouts with Curl-DH (it's best to rewire the whole layout in this case).
// DONE: Add Greek, Kyrillic and Hebrew phonetic Colemak layouts (nice for group 'switch' layout). // DONE: Add Greek, Kyrillic and Hebrew phonetic Colemak layouts (nice for group 'switch' layout).
// DONE: Update the Tarmak and Mirrored layouts when Colemak[eD] is changed, using search-replace. // DONE: Update the Tarmak and Mirrored layouts when Colemak[eD] is changed, using search-replace.
// ****************************************************** // ******************************************************
// ***** DreymaR/Stevep99: Curl-DH ergonomic mods ***** // ***** Stevep99/DreymaR: Curl(DH) ergonomic mods *****
// ****************************************************** // ******************************************************
// Here are the Colemak "Curl-D/H" ergo mods by colemak forum users stevep99 and myself. // This is the Colemak Curl(DH) ergo mod, bringing D and H down to comfortable lower row positions.
// See http://colemakmods.github.io/mod-dh/ and http://forum.colemak.com/viewtopic.php?id=1942 for more info. // See http://colemakmods.github.io/mod-dh/ and http://forum.colemak.com/viewtopic.php?id=1942 for more info.
// • Stevep99's Dvbg left-hand mod gives the D a good bottom-row place (<AB04>) at the cost of V and B. // • Curl(DH) is implemented both as an US English variant (cmk_ed_dh) and an option (misc:cmk_curl_dh).
// • DreymaR's Dbg left-hand variant is lighter and avoids separating V by replacing B with D directly. // • There is now one unified Curl(DH) mod; it moves zxc Dbg Hmk (ZXC are moved in the CurlAngle mod).
// Both left-hand mods put the G back in its QWERTY place at the lesser cost of the less frequent B. // For this mod to work as intended, a CurlAngle mod (such as the pc105cawide-sl model) is necessary.
// For the D(v)bg mod to work as intended, an Angle mod (such as the pc105awide-sl model) is necessary! // • Stevep99's old Curl-DHm(DvbgHm) mod gave D a good bottom-row place (<AB04>) at the cost of V and B, and
// • Stevep99's Hm right-hand mod gives H a good bottom-row position at the cost of M. // gave H a good bottom-row position at the cost of M.
// • DreymaR's Hk right-hand variant avoids moving M, swapping H and K instead. // • DreymaR's old Curl-DvH(DbgHk) mod avoided splitting ZXCV by replacing B with D in the full Angle mod, and
// The Dbg/Hk mods are intended for normal-staggered keyboards; Dvbg/Hm works on matrix boards too. // avoided moving M, swapping H and K instead.
// The Hk/Hm switches cause lv3-4 trouble with Cmk[eD] locales that remap H (and in rare cases, D(v)bg w/ D/G). // • Some may prefer the old Curl-DHm mod to keep M on the home row; rename cmk_ed_[dh/dhm] below for that.
// In the Hk/Hm mods, any H in symbols/locale 'cmk_ed_us' sections must change from <AC06> to <AB06>/<AB07>. // • The mod causes lv3-4 trouble with Cmk[eD] locales that remap H (and in some cases, D/G/K).
// NOTE: The Curl-DH mod are implemented both as US English layouts and as options (e.g., misc:cmk_curl_dbghk). // To use Curl-DH, any H in symbols/locale 'cmk_ed_us' sections should change from <AC06> to <AB06>/<AB07>.
hidden partial alphanumeric_keys hidden partial alphanumeric_keys
xkb_symbols "cmk_dvbg-hm_ed" { xkb_symbols "cmk_ed_dh" {
// This is the Curl-DvbgHm ergo mod for Colemak, by stevep99. // This is the Curl(DH) ergo mod for Colemak
include "colemak(cmk_dvbg_ed)" // D is moved inside V by one of the CurlAngle mods (to affect Extend)
include "colemak(cmk_hm_ed)" include "colemak(cmk_ed_dbg)"
include "colemak(cmk_ed_hmk)"
}; };
hidden partial alphanumeric_keys hidden partial alphanumeric_keys
xkb_symbols "cmk_dbg-hk_ed" { xkb_symbols "cmk_ed_dhm" {
// This is the Curl-DbgHk ergo mod for Colemak, by DreymaR, keeping V and M in place. // This is the old Curl(DHm/DvbgHm) ergo mod for Colemak, with M on the home row
include "colemak(cmk_dbg_ed)" // In the new implementation, D is moved inside V by one of the CurlAngle mods
include "colemak(cmk_hk_ed)" include "colemak(cmk_ed_dbg)"
include "colemak(cmk_ed_hm)"
}; };
hidden partial alphanumeric_keys hidden partial alphanumeric_keys
xkb_symbols "cmk_dvbg_ed" { xkb_symbols "cmk_ed_dvh" {
// This is the 'Dvbg' loop for the Colemak Curl-D/H ergo mod by stevep99. // This is the old Curl(DvH/DbgHk) ergo mod for Colemak, keeping V and M in place
key <AD05> { [ b, B, enfilledcircbullet, Greek_beta ] }; // QWE T Cmk G // By default, it doesn't use a CurlAngle(Wide) model but just an Angle(Wide) one
key <AC05> { [ g, G, eng, ENG ] }; // QWE G Cmk D include "colemak(cmk_ed_dbg)"
key <AB04> { [ d, D, eth, ETH ] }; // QWE/Cmk V include "colemak(cmk_ed_hk)"
key <AB05> { [ v, V, division, Greek_gamma ] }; // QWE/Cmk B
}; };
hidden partial alphanumeric_keys hidden partial alphanumeric_keys
xkb_symbols "cmk_dbg_ed" { xkb_symbols "cmk_ed_dbg" {
// This is the 'Dbg' loop for the Colemak Curl-D/H ergo mod, leaving the V in place. // This is the 'Dbg' loop for the Colemak Curl-DH ergo mod.
// In the new implementation, D is moved inside V by one of the CurlAngle mods (to affect Extend)
key <AD05> { [ b, B, enfilledcircbullet, Greek_beta ] }; // QWE T Cmk G key <AD05> { [ b, B, enfilledcircbullet, Greek_beta ] }; // QWE T Cmk G
key <AC05> { [ g, G, eng, ENG ] }; // QWE G Cmk D key <AC05> { [ g, G, eng, ENG ] }; // QWE G Cmk D
key <AB05> { [ d, D, eth, ETH ] }; // QWE/Cmk B key <AB05> { [ d, D, eth, ETH ] }; // QWE/Cmk B
// key <AB04> { [ d, D, eth, ETH ] }; // QWE/Cmk V
// key <AB05> { [ v, V, division, Greek_gamma ] }; // QWE/Cmk B
}; };
hidden partial alphanumeric_keys hidden partial alphanumeric_keys
xkb_symbols "cmk_hm_ed" { xkb_symbols "cmk_ed_hmk" {
// This is the 'Hm' switch for the Colemak Curl-D/H ergo mod by stevep99. // This is the 'Hmk' switch for the Colemak Curl-DH ergo mod
key <AC06> { [ k, K, ccedilla, Ccedilla ] }; // QWE/Cmk H
key <AB06> { [ m, M, multiply, leftarrow ] }; // QWE N Cmk K
key <AB07> { [ h, H, hstroke, Hstroke ] }; // QWE/Cmk M
};
hidden partial alphanumeric_keys
xkb_symbols "cmk_ed_hm" {
// This is the 'Hm' switch for the old Colemak Curl-DHm ergo mod, with M on the home row.
// N isn't changed in this mod, but the Cmk[eD] arrow symbols are rearranged into a Vim-like line! // N isn't changed in this mod, but the Cmk[eD] arrow symbols are rearranged into a Vim-like line!
key <AC06> { [ m, M, multiply, leftarrow ] }; // QWE/Cmk H key <AC06> { [ m, M, multiply, leftarrow ] }; // QWE/Cmk H
key <AC07> { [ n, N, endash, downarrow ] }; // QWE J Cmk N key <AC07> { [ n, N, endash, downarrow ] }; // QWE J Cmk N
@ -278,8 +291,8 @@ xkb_symbols "cmk_hm_ed" {
}; };
hidden partial alphanumeric_keys hidden partial alphanumeric_keys
xkb_symbols "cmk_hk_ed" { xkb_symbols "cmk_ed_hk" {
// This is the 'Hk' switch for the Colemak Curl-D/H ergo mod, leaving the M in place. // This is the 'Hk' switch for the old Colemak Curl-DvH ergo mod, leaving M in place.
key <AC06> { [ k, K, ccedilla, Ccedilla ] }; // QWE/Cmk H key <AC06> { [ k, K, ccedilla, Ccedilla ] }; // QWE/Cmk H
key <AB06> { [ h, H, hstroke, Hstroke ] }; // QWE N Cmk K key <AB06> { [ h, H, hstroke, Hstroke ] }; // QWE N Cmk K
}; };
@ -296,9 +309,9 @@ xkb_symbols "cmk_hk_ed" {
// This section defines the differences between a full Colemak[eD] and the first Tarmak layout step. // This section defines the differences between a full Colemak[eD] and the first Tarmak layout step.
// The Tarmak1(E) step moves the E>K>N keys to their Colemak positions, leaving the J at QWERTY 'E'. // The Tarmak1(E) step moves the E>K>N keys to their Colemak positions, leaving the J at QWERTY 'E'.
partial alphanumeric_keys partial alphanumeric_keys
xkb_symbols "tarmak1_e" { xkb_symbols "tarmak1__e" {
include "colemak(cmk_ed)" include "colemak(cmk_ed)"
// To exclude the partial (F)EKNJ loop in this step, include its mask and comment out the F-J line below // To exclude the initial (F)EKNJ loop in this step, include its mask and comment out the F-J line below
// (This would only be useful if you want to learn the LUI loop as a warmup; if so, comment out that too) // (This would only be useful if you want to learn the LUI loop as a warmup; if so, comment out that too)
//include "colemak(tarmak_mask_fekn_to_eknj)" //include "colemak(tarmak_mask_fekn_to_eknj)"
include "colemak(tarmak_mask_dgt_to_gtf)" include "colemak(tarmak_mask_dgt_to_gtf)"
@ -309,28 +322,28 @@ xkb_symbols "tarmak1_e" {
name[Group1]= "English/Intl (Tarmak1_E - Colemak transitional)"; name[Group1]= "English/Intl (Tarmak1_E - Colemak transitional)";
}; };
// This is the first Tarmak step for those who want to learn the Curl-DbgHk mod; it includes the Curl-Hk mod. // This is the first Tarmak step for those who want to learn the Curl(DH) mod, including the HMK switch.
// There is no step for the Curl-Hm mod, as it doesn't affect the first Tarmak step. It can be learnt independently. // The old Curl(Hm) mod doesn't affect the first Tarmak step, so it can use the unmodded Tarmak1__e.
partial alphanumeric_keys partial alphanumeric_keys
xkb_symbols "tarmak1k_e" { xkb_symbols "tarmak1c_e" {
include "colemak(cmk_ed)" include "colemak(cmk_ed)"
include "colemak(tarmak_mask_dgt_to_gtf)" include "colemak(tarmak_mask_dgt_to_gtf)"
include "colemak(tarmak_mask_prs_to_rsd)" include "colemak(tarmak_mask_prs_to_rsd)"
include "colemak(tarmak_mask_jyoc_to_yocp)" include "colemak(tarmak_mask_jyoc_to_yocp)"
include "colemak(tarmak_mask_lui_to_uil)" include "colemak(tarmak_mask_lui_to_uil)"
include "colemak(cmk_hk_ed)" include "colemak(cmk_ed_hk)"
key <AD03> { [ j, J, U0283, U01A9 ] }; // Cmk F - stray J key <AD03> { [ j, J, U0283, U01A9 ] }; // Cmk F - stray J
// NOTE: Re-enforcing of the V and B keys as below is only necessary when running a DBG/DVBG mod (see above) // NOTE: Re-enforcing of the V and B keys as below is only necessary when running a DBG/DVBG mod (see above)
key <AB04> { [ v, V, division, Greek_gamma ] }; // QWE/Cmk V key <AB04> { [ v, V, division, Greek_gamma ] }; // QWE/Cmk V
key <AB05> { [ b, B, enfilledcircbullet, Greek_beta ] }; // QWE/Cmk B key <AB05> { [ b, B, enfilledcircbullet, Greek_beta ] }; // QWE/Cmk B
name[Group1]= "English/Intl (Tarmak1k_E - Colemak transitional w/ Curl-Hk)"; name[Group1]= "English/Intl (Tarmak1c_E - Colemak Curl-DH transitional)";
}; };
// Tarmak symbols for xkb on X.Org Server 7.x // Tarmak symbols for xkb on X.Org Server 7.x
// See the first Tarmak layout above for more info. This is a QWERTY mask for one Tarmak step. // See the first Tarmak layout above for more info. This is a QWERTY mask for one Tarmak step.
// The Tarmak2(ET) step moves the G>T>F keys to their Colemak positions, leaving the J at QWERTY 'G'. // The Tarmak2(ET) step moves the G>T>F keys to their Colemak positions, leaving the J at QWERTY 'G'.
partial alphanumeric_keys partial alphanumeric_keys
xkb_symbols "tarmak2_et" { xkb_symbols "tarmak2__et" {
include "colemak(cmk_ed)" include "colemak(cmk_ed)"
include "colemak(tarmak_mask_prs_to_rsd)" include "colemak(tarmak_mask_prs_to_rsd)"
include "colemak(tarmak_mask_jyoc_to_yocp)" include "colemak(tarmak_mask_jyoc_to_yocp)"
@ -339,42 +352,31 @@ xkb_symbols "tarmak2_et" {
name[Group1]= "English/Intl (Tarmak2_ET - Colemak transitional)"; name[Group1]= "English/Intl (Tarmak2_ET - Colemak transitional)";
}; };
// The Tarmak2bk(ET) step moves the B>T>F keys to their Colemak-Curl(DbgHk) positions, leaving the J at QWERTY 'B'. // The Tarmak2c(ET) step moves the B>T>F keys to their Colemak-Curl(DH) positions, leaving the J at QWERTY 'B'.
// NOTE: The standard Curl(DH) mod requires activating a CurlAngle model to work. (My old variant only used Angle.)
partial alphanumeric_keys partial alphanumeric_keys
xkb_symbols "tarmak2bk_et" { xkb_symbols "tarmak2c_et" {
include "colemak(cmk_ed)" include "colemak(cmk_ed)"
include "colemak(tarmak_mask_prs_to_rsd)" include "colemak(tarmak_mask_prs_to_rsd)"
include "colemak(tarmak_mask_jyoc_to_yocp)" include "colemak(tarmak_mask_jyoc_to_yocp)"
include "colemak(tarmak_mask_lui_to_uil)" include "colemak(tarmak_mask_lui_to_uil)"
// TODO: Make this go away, implementing proper CurlAngle models in its stead.
//// For the old Curl(DvbgHm) mod, activating the right-hand HM switch is still optional.
// include "colemak(cmk_ed_dbg)"
// include "colemak(cmk_ed_dbghm)"
//// NOTE: The below is for DBG/DVBG mods (VJ/JV on <AB04>/<AB05> respectively) //// NOTE: The below is for DBG/DVBG mods (VJ/JV on <AB04>/<AB05> respectively)
//// For the Curl-DbgHk mod, both sides are activated at this point forward. (Activate it normally for step 34.) //// For the Curl-DH mod, both sides are activated at this point forward. (Activate it normally for step 34.)
include "colemak(cmk_dbg-hk_ed)" include "colemak(cmk_ed_dbghk)"
key <AB04> { [ v, V, division, Greek_gamma ] }; // QWE/Cmk V key <AB04> { [ v, V, division, Greek_gamma ] }; // QWE/Cmk V
key <AB05> { [ j, J, U0283, U01A9 ] }; // QWE/Cmk B - stray J key <AB05> { [ j, J, U0283, U01A9 ] }; // QWE/Cmk B - stray J
name[Group1]= "English/Intl (Tarmak2bk_ET - Colemak transitional w/ Curl-DbgHk)"; name[Group1]= "English/Intl (Tarmak2c_ET - Colemak Curl-DH transitional)";
};
// The Tarmak2vm(ET) step moves the B>T>F keys to their Colemak-Curl(DvbgHm) positions, leaving the J at QWERTY 'B'.
partial alphanumeric_keys
xkb_symbols "tarmak2vm_et" {
include "colemak(cmk_ed)"
include "colemak(tarmak_mask_prs_to_rsd)"
include "colemak(tarmak_mask_jyoc_to_yocp)"
include "colemak(tarmak_mask_lui_to_uil)"
//// NOTE: The below is for DBG/DVBG mods (VJ/JV on <AB04>/<AB05> respectively)
//// For the Curl-DvbgHm mod, activating the right-hand HM switch is still optional.
include "colemak(cmk_dvbg_ed)"
// include "colemak(cmk_dvbg-hm_ed)"
key <AB04> { [ j, J, U0283, U01A9 ] }; // QWE/Cmk V - stray J
key <AB05> { [ v, V, division, Greek_gamma ] }; // QWE/Cmk B
name[Group1]= "English/Intl (Tarmak2vm_ET - Colemak transitional w/ Curl-DvbgHm)";
}; };
// Tarmak symbols for xkb on X.Org Server 7.x // Tarmak symbols for xkb on X.Org Server 7.x
// See the first Tarmak layout above for more info. This is a QWERTY mask for one Tarmak step. // See the first Tarmak layout above for more info. This is a QWERTY mask for one Tarmak step.
// The Tarmak3(ETR) step moves the R>S>D keys to their Colemak positions, leaving the J at QWERTY 'R'. // The Tarmak3(ETR) step moves the R>S>D keys to their Colemak positions, leaving the J at QWERTY 'R'.
partial alphanumeric_keys partial alphanumeric_keys
xkb_symbols "tarmak3_etr" { xkb_symbols "tarmak3__etr" {
include "colemak(cmk_ed)" include "colemak(cmk_ed)"
include "colemak(tarmak_mask_jyoc_to_yocp)" include "colemak(tarmak_mask_jyoc_to_yocp)"
// To include the standalone LUI loop in this or any step, comment out its mask (below) // To include the standalone LUI loop in this or any step, comment out its mask (below)
@ -388,16 +390,16 @@ xkb_symbols "tarmak3_etr" {
// The Tarmak4(ETRO) step moves the L>U>I keys to their Colemak positions, finalizing the big loop. // The Tarmak4(ETRO) step moves the L>U>I keys to their Colemak positions, finalizing the big loop.
// This is the 4th step of the Tarmak(ETROI) and (ETORI) variants, leaving only the LUI loop. // This is the 4th step of the Tarmak(ETROI) and (ETORI) variants, leaving only the LUI loop.
partial alphanumeric_keys partial alphanumeric_keys
xkb_symbols "tarmak4_etro" { xkb_symbols "tarmak4__etro" {
include "colemak(cmk_ed)" include "colemak(cmk_ed)"
include "colemak(tarmak_mask_lui_to_uil)" include "colemak(tarmak_mask_lui_to_uil)"
name[Group1]= "English/Intl (Tarmak4_ETRO - Colemak transitional)"; name[Group1]= "English/Intl (Tarmak4_ETRO - Colemak transitional)";
}; };
// NOTE: The Tarmak(ETO) and (ETOI) steps below are the old defaults. They won't show up in the menus anymore. // NOTE: The Tarmak(ETO) and (ETOI) steps below are the old versions. They won't show up in the menus anymore.
// A quick way of getting them back would be to edit the xkb_symbols names of steps 3 and 4 here. // A quick way of getting them back would be to edit the xkb_symbols names of steps 3 and 4 here.
// A more proper way would be to edit the rules/evdev.xml and evdev.lst files, // A more proper way would be to edit the rules/evdev.xml and evdev.lst files,
// replacing 'tarmak3_etr' with 'tarmak3_eto' and likewise for '4_etro'/'4_etoi', // replacing 'tarmak3__etr' with 'tarmak3__eto' and likewise for '4__etro'/'4__etoi',
// and finally editing the corresponding entries in the 'us' symbols file. // and finally editing the corresponding entries in the 'us' symbols file.
// Tarmak symbols for xkb on X.Org Server 7.x // Tarmak symbols for xkb on X.Org Server 7.x
@ -405,7 +407,7 @@ xkb_symbols "tarmak4_etro" {
// The Tarmak3(ETO) step moves the J>Y>O keys to their Colemak positions, leaving the ; at QWERTY 'G'. // The Tarmak3(ETO) step moves the J>Y>O keys to their Colemak positions, leaving the ; at QWERTY 'G'.
// This is the 3rd step of the Tarmak(ETOIR) and (ETORI) variants, performing the JYO loop earlier. // This is the 3rd step of the Tarmak(ETOIR) and (ETORI) variants, performing the JYO loop earlier.
partial alphanumeric_keys partial alphanumeric_keys
xkb_symbols "tarmak3_eto" { xkb_symbols "tarmak3__eto" {
include "colemak(cmk_ed)" include "colemak(cmk_ed)"
include "colemak(tarmak_mask_prs_to_rsd)" include "colemak(tarmak_mask_prs_to_rsd)"
// To include the standalone LUI loop in this step, comment out its mask below // To include the standalone LUI loop in this step, comment out its mask below
@ -420,7 +422,7 @@ xkb_symbols "tarmak3_eto" {
// The Tarmak4(ETOI) step moves the L>U>I keys to their Colemak positions, stranding the ; at QWERTY 'G'. // The Tarmak4(ETOI) step moves the L>U>I keys to their Colemak positions, stranding the ; at QWERTY 'G'.
// This is the 4th step of the Tarmak(ETOIR) variant, performing the LUI loop earlier. // This is the 4th step of the Tarmak(ETOIR) variant, performing the LUI loop earlier.
partial alphanumeric_keys partial alphanumeric_keys
xkb_symbols "tarmak4_etoi" { xkb_symbols "tarmak4__etoi" {
include "colemak(cmk_ed)" include "colemak(cmk_ed)"
include "colemak(tarmak_mask_prs_to_rsd)" include "colemak(tarmak_mask_prs_to_rsd)"
// The standalone LUI loop is included in this step; if unwanted here, include its mask instead // The standalone LUI loop is included in this step; if unwanted here, include its mask instead
@ -618,6 +620,6 @@ xkb_symbols "cmk_ed_mirror_special" {
// ***************************************************************************************** // *****************************************************************************************
// ****** ****** // ****** ******
// ***** END of DreymaR's Colemak additions (Cmk[eD], Tarmak1-4, National var.) ***** // ***** END of DreymaR's Colemak addons (Cmk[eD], Curl-DH, Tarmak1-4, Mirrored) *****
// ****** ****** // ****** ******
// ***************************************************************************************** // *****************************************************************************************

View File

@ -55,7 +55,7 @@ xkb_symbols "cmk_ed_us" {
// key <AD12> { [ bracketright, braceright, §, § ] }; // key <AD12> { [ bracketright, braceright, §, § ] };
key <AD11> { [ §, §, bracketleft, braceleft ] }; // from <AD11> key <AD11> { [ §, §, bracketleft, braceleft ] }; // from <AD11>
key <AD12> { [ §, §, bracketright, braceright ] }; // from <AC11> key <AD12> { [ §, §, bracketright, braceright ] }; // from <AC11>
// NOTE: The "Curl-DH" ergo mod moves H (and possibly K) which may interfere with these mappings. // NOTE: The Curl(DH) ergo mod moves H and K, which may interfere with these mappings.
// key <AB06> { [ k, K, §, § ] }; // from <A> // key <AB06> { [ k, K, §, § ] }; // from <A>
// key <AC06> { [ h, H, §, § ] }; // from <A> // key <AC06> { [ h, H, §, § ] }; // from <A>
// key <AD06> { [ j, J, §, § ] }; // from <A> // key <AD06> { [ j, J, §, § ] }; // from <A>

View File

@ -476,7 +476,7 @@ xkb_symbols "cmk_ed_us" {
// key <AD11> { [ eacute, Eacute, bracketleft, braceleft ] }; // from <AC10> // key <AD11> { [ eacute, Eacute, bracketleft, braceleft ] }; // from <AC10>
// key <AD12> { [ odiaeresis, Odiaeresis, bracketright, braceright ] }; // from <AE10> // key <AD12> { [ odiaeresis, Odiaeresis, bracketright, braceright ] }; // from <AE10>
// key <LSGT> { [ aacute, Aacute, oe, OE ] }; // from <AC11> // key <LSGT> { [ aacute, Aacute, oe, OE ] }; // from <AC11>
// NOTE: The "Curl-DH" ergo mod moves H (and possibly K) which may interfere with these mappings. // NOTE: The Curl(DH) ergo mod moves H and K, which may interfere with these mappings.
// key <AB06> { [ k, K, odoubleacute, Odoubleacute ] }; // from <AD11> // key <AB06> { [ k, K, odoubleacute, Odoubleacute ] }; // from <AD11>
// key <AC06> { [ h, H, oacute, Oacute ] }; // from <AE12> // key <AC06> { [ h, H, oacute, Oacute ] }; // from <AE12>
// key <AD06> { [ j, J, udiaeresis, Udiaeresis ] }; // from <AE11> // key <AD06> { [ j, J, udiaeresis, Udiaeresis ] }; // from <AE11>

View File

@ -323,19 +323,55 @@ xkb_symbols "biblicalSIL" {
}; };
// --> OEystein Bech "DreymaR" Gadmar, 2014-08: Additions to xkb/symbols/il // --> OEystein Bech "DreymaR" Gadmar, 2014-08: Additions to xkb/symbols/il
// The default layout for Israel is il(basic); this is a phonetic Colemak version.
// 2006-01-01 Shai Coleman, http://colemak.com/ // 2006-01-01 Shai Coleman, http://colemak.com/
// See the Colemak forum topic on Cmk[eD] locales: http://forum.colemak.com/viewtopic.php?id=1458 // See the Colemak forum topic on Cmk[eD] locales: http://forum.colemak.com/viewtopic.php?id=1458
// I moved the key on <AC10> to <AD10>, just like the standard Colemak does.
partial alphanumeric_keys partial alphanumeric_keys
xkb_symbols "colemak" { xkb_symbols "colemak" {
include "il(basic)" include "il(phonetic)"
// The phonetic layout for Hebrew is il(phonetic)???; this is a Colemak translation.
// TODO: Proper implementation with more glyphs, like the SIL Biblical!?!
// NOTE: The basic layout didn't define some keys (no Space?); I've no idea why. // NOTE: The basic layout didn't define some keys (no Space?); I've no idea why.
// To compensate, I include the below which defines SPCE. // To compensate, I include the below which defines SPCE.
include "nbsp(level4)" include "nbsp(level4)"
name[Group1]= "Hebrew (Colemak, phonetic)"; name[Group1]= "Hebrew (Colemak, phonetic)";
key <LatE> { [ hebrew_pe, hebrew_finalpe ] };
key <LatR> { [ hebrew_pe, hebrew_finalpe ] };
key <LatT> { [ hebrew_gimel, hebrew_gimel ] };
key <LatY> { [ hebrew_yod, hebrew_yod ] };
key <LatU> { [ hebrew_lamed, hebrew_lamed ] };
key <LatI> { [ hebrew_waw, hebrew_waw ] }; // vav
key <LatO> { [ hebrew_ayin, hebrew_ayin ] };
key <LatP> { [ hebrew_finalpe, colon, doublelowquotemark ] };
key <LatS> { [ hebrew_resh, hebrew_resh ] };
key <LatD> { [ hebrew_shin, hebrew_shin ] };
key <LatF> { [ hebrew_taw, hebrew_tet ] };
key <LatG> { [ hebrew_dalet, hebrew_dalet ] };
key <LatJ> { [ hebrew_nun, hebrew_finalnun ] };
key <LatK> { [ hebrew_aleph, hebrew_aleph ] };
key <LatL> { [ hebrew_yod, hebrew_yod ] };
key <AC10> { [ hebrew_samech, hebrew_samech ] };
key <LatN> { [ hebrew_kaph, hebrew_finalkaph ] };
// key <LatH> { [ hebrew_he, hebrew_he ] };
// key <LatB> { [ hebrew_bet, hebrew_bet ] };
// key <LatM> { [ hebrew_mem, hebrew_finalmem ] };
};
partial alphanumeric_keys
xkb_symbols "colemak_il" {
include "il(basic)"
// The default layout for Israel is il(basic); this is a Colemak translation.
// Based on the latin letters on the keys, it's not phonetic but maybe easier for some.
// I moved the key on <AC10> to <AD10>, just like the standard Colemak does.
// NOTE: The basic layout didn't define some keys (no Space?); I've no idea why.
// To compensate, I include the below which defines SPCE.
include "nbsp(level4)"
name[Group1]= "Hebrew (Colemak, Israel)";
key <AD03> { [ hebrew_kaph, F ] }; key <AD03> { [ hebrew_kaph, F ] };
key <AD04> { [ hebrew_pe, P, U05B7 ] }; // Patah key <AD04> { [ hebrew_pe, P, U05B7 ] }; // Patah
key <AD05> { [ hebrew_ayin, G, U05F1 ] }; // Yiddish Vav Yod key <AD05> { [ hebrew_ayin, G, U05F1 ] }; // Yiddish Vav Yod

View File

@ -289,7 +289,7 @@ xkb_symbols "cmk_ed_us" {
key <AC03> { [ s, S, 0x1000219, 0x1000218 ] }; // comma-s from 's' key <AC03> { [ s, S, 0x1000219, 0x1000218 ] }; // comma-s from 's'
key <AC04> { [ t, T, 0x100021b, 0x100021a ] }; // comma-t from 't' key <AC04> { [ t, T, 0x100021b, 0x100021a ] }; // comma-t from 't'
key <AC05> { [ d, D, dstroke, Dstroke ] }; // from 'd' key <AC05> { [ d, D, dstroke, Dstroke ] }; // from 'd'
// NOTE: The "Curl-DH" ergo mod moves H (and possibly K) which may interfere with these mappings. // NOTE: The Curl(DH) ergo mod moves H and K, which may interfere with these mappings.
key <AC06> { [ h, H, ssharp, section ] }; // from Cmk[eD] 's' key <AC06> { [ h, H, ssharp, section ] }; // from Cmk[eD] 's'
key <AB06> { [ k, K, ibreve, Ibreve ] }; // Crimean Tatar key <AB06> { [ k, K, ibreve, Ibreve ] }; // Crimean Tatar
key <AD07> { [ l, L, lstroke, Lstroke ] }; // from 'l' key <AD07> { [ l, L, lstroke, Lstroke ] }; // from 'l'

View File

@ -371,7 +371,7 @@ xkb_symbols "cmk_ed_us" {
// key <AD12> { [ bracketright, braceright, dstroke, Dstroke ] }; // on <AD12> // key <AD12> { [ bracketright, braceright, dstroke, Dstroke ] }; // on <AD12>
key <AD11> { [ dead_caron, Greek_alpha, bracketleft, braceleft ] }; // from <AD11>++ key <AD11> { [ dead_caron, Greek_alpha, bracketleft, braceleft ] }; // from <AD11>++
key <AD12> { [ dstroke, Dstroke, bracketright, braceright ] }; // on <AD12> key <AD12> { [ dstroke, Dstroke, bracketright, braceright ] }; // on <AD12>
// NOTE: The "Curl-DH" ergo mod moves H (and possibly K) which may interfere with these mappings. // NOTE: The Curl(DH) ergo mod moves H and K, which may interfere with these mappings.
// key <AB06> { [ k, K, ccaron, Ccaron ] }; // from <AC10> // key <AB06> { [ k, K, ccaron, Ccaron ] }; // from <AC10>
// key <AC06> { [ h, H, zcaron, Zcaron ] }; // from <BKSL> // key <AC06> { [ h, H, zcaron, Zcaron ] }; // from <BKSL>
// key <AD07> { [ l, L, scaron, Scaron ] }; // from <AD11> // key <AD07> { [ l, L, scaron, Scaron ] }; // from <AD11>

View File

@ -410,7 +410,7 @@ xkb_symbols "cmk_ed_us" {
key <LSGT> { [ scedilla, Scedilla, odiaeresis, Odiaeresis ] }; // from tr <AC10>/<AB08> key <LSGT> { [ scedilla, Scedilla, odiaeresis, Odiaeresis ] }; // from tr <AC10>/<AB08>
// key <LSGT> { [ dead_circumflex, dead_tilde, odiaeresis, Odiaeresis ] }; // needed '^'; tr <AB08> // key <LSGT> { [ dead_circumflex, dead_tilde, odiaeresis, Odiaeresis ] }; // needed '^'; tr <AB08>
// key <AC03> { [ s, S, scedilla, Scedilla ] }; // from tr <AC10> // key <AC03> { [ s, S, scedilla, Scedilla ] }; // from tr <AC10>
// NOTE: The "Curl-DH" ergo mod moves H (and possibly K) which may interfere with these mappings. // NOTE: The Curl(DH) ergo mod moves H and K, which may interfere with these mappings.
// key <AC06> { [ h, H, ssharp, section ] }; // from Cmk[eD] 's' // key <AC06> { [ h, H, ssharp, section ] }; // from Cmk[eD] 's'
key <AD05> { [ g, G, gbreve, Gbreve ] }; // from tr <AD11> key <AD05> { [ g, G, gbreve, Gbreve ] }; // from tr <AD11>
key <AB06> { [ k, K, ibreve, Ibreve ] }; // Crimean Turkish key <AB06> { [ k, K, ibreve, Ibreve ] }; // Crimean Turkish

View File

@ -818,76 +818,62 @@ xkb_symbols "cmk_ed_us" {
// 2012-01-01 OEystein Bech "DreymaR" Gadmar: Paving the way; 'Tarmak (transitional Colemak)'. // 2012-01-01 OEystein Bech "DreymaR" Gadmar: Paving the way; 'Tarmak (transitional Colemak)'.
// 2006-01-01 Shai Coleman, http://colemak.com/ // 2006-01-01 Shai Coleman, http://colemak.com/
partial alphanumeric_keys partial alphanumeric_keys
xkb_symbols "tarmak1_e" { xkb_symbols "tarmak1__e" {
include "colemak(tarmak1_e)" include "colemak(tarmak1__e)"
name[Group1]= "English/Intl (Tarmak1_E - Colemak transitional)"; name[Group1]= "English/Intl (Tarmak1__E - Colemak transitional)";
}; };
partial alphanumeric_keys partial alphanumeric_keys
xkb_symbols "tarmak1k_e" { xkb_symbols "tarmak1c_e" {
include "colemak(tarmak1k_e)" include "colemak(tarmak1c_e)"
name[Group1]= "English/Intl (Tarmak1k_E - Colemak transit. w/ Curl-Hk mod)"; name[Group1]= "English/Intl (Tarmak1C_E - Colemak transit. w/ Curl-DH mod)";
}; };
partial alphanumeric_keys partial alphanumeric_keys
xkb_symbols "tarmak2_et" { xkb_symbols "tarmak2__et" {
include "colemak(tarmak2_et)" include "colemak(tarmak2__et)"
name[Group1]= "English/Intl (Tarmak2_ET - Colemak transitional)"; name[Group1]= "English/Intl (Tarmak2__ET - Colemak transitional)";
}; };
partial alphanumeric_keys partial alphanumeric_keys
xkb_symbols "tarmak2bk_et" { xkb_symbols "tarmak2c_et" {
include "colemak(tarmak2bk_et)" include "colemak(tarmak2c_et)"
name[Group1]= "English/Intl (Tarmak2bk_ET - Colemak transit. w/ Curl-DbgHk mod)"; name[Group1]= "English/Intl (Tarmak2C_ET - Colemak transit. w/ Curl-DH mod)";
}; };
partial alphanumeric_keys partial alphanumeric_keys
xkb_symbols "tarmak2vm_et" { xkb_symbols "tarmak3__etr" {
include "colemak(tarmak2vm_et)" include "colemak(tarmak3__etr)"
name[Group1]= "English/Intl (Tarmak2vm_ET - Colemak transit. w/ Curl-DvbgHm mod)"; name[Group1]= "English/Intl (Tarmak3__ETR - Colemak transitional)";
}; };
partial alphanumeric_keys partial alphanumeric_keys
xkb_symbols "tarmak3_etr" { xkb_symbols "tarmak4__etro" {
include "colemak(tarmak3_etr)" include "colemak(tarmak4__etro)"
name[Group1]= "English/Intl (Tarmak3_ETR - Colemak transitional)"; name[Group1]= "English/Intl (Tarmak4__ETRO - Colemak transitional)";
};
partial alphanumeric_keys
xkb_symbols "tarmak4_etro" {
include "colemak(tarmak4_etro)"
name[Group1]= "English/Intl (Tarmak4_ETRO - Colemak transitional)";
}; };
//partial alphanumeric_keys //partial alphanumeric_keys
//xkb_symbols "tarmak3_eto" { //xkb_symbols "tarmak3__eto" {
// include "colemak(tarmak3_eto)" // include "colemak(tarmak3__eto)"
// name[Group1]= "English/Intl (Tarmak3_ETO - Colemak transitional)"; // name[Group1]= "English/Intl (Tarmak3__ETO - Colemak transitional)";
//}; //};
//partial alphanumeric_keys //partial alphanumeric_keys
//xkb_symbols "tarmak4_etoi" { //xkb_symbols "tarmak4__etoi" {
// include "colemak(tarmak4_etoi)" // include "colemak(tarmak4__etoi)"
// name[Group1]= "English/Intl (Tarmak4_ETOI - Colemak transitional)"; // name[Group1]= "English/Intl (Tarmak4__ETOI - Colemak transitional)";
//}; //};
// Colemak-Curl(D/H) symbols for xkb on X.Org Server 7.x // Colemak-Curl(DH) symbols for xkb on X.Org Server 7.x
// 2015-01-18 OEystein Bech "DreymaR" Gadmar // 2015-01-18 OEystein Bech "DreymaR" Gadmar
// 2006-01-01 Shai Coleman, http://colemak.com/ // 2006-01-01 Shai Coleman, http://colemak.com/
// This is the Curl-Dvbg/Hm Colemak ergo mod by Stevep99. // This is the Curl-DH Colemak ergo mod by Stevep99 and DreymaR.
partial alphanumeric_keys partial alphanumeric_keys
xkb_symbols "cmk_ed_dvbghm" { xkb_symbols "cmk_ed_dh" {
include "colemak(cmk_ed)" include "colemak(cmk_ed)"
include "colemak(cmk_dvbg-hm_ed)" include "colemak(cmk_ed_dh)"
name[Group1]= "English/Intl (Colemak[eD], Curl-DvbgHm ergo)"; name[Group1]= "English/Intl (Colemak[eD], Curl-DH ergo)";
};
// This is the Curl-Dbg/Hk Colemak ergo mod, keeping V and M in place.
partial alphanumeric_keys
xkb_symbols "cmk_ed_dbghk" {
include "colemak(cmk_ed)"
include "colemak(cmk_dbg-hk_ed)"
name[Group1]= "English/Intl (Colemak[eD], Curl-DbgHk ergo)";
}; };
// 2012-04-01 OEystein Bech "DreymaR" Gadmar: Mirrored Colemak[eD] for one-handed typing // 2012-04-01 OEystein Bech "DreymaR" Gadmar: Mirrored Colemak[eD] for one-handed typing