diff --git a/data/keyd-application-mapper.1.gz b/data/keyd-application-mapper.1.gz index e27d6bd..40f2e11 100644 Binary files a/data/keyd-application-mapper.1.gz and b/data/keyd-application-mapper.1.gz differ diff --git a/data/keyd.1.gz b/data/keyd.1.gz index e788fb7..15d2e63 100644 Binary files a/data/keyd.1.gz and b/data/keyd.1.gz differ diff --git a/docs/keyd.scdoc b/docs/keyd.scdoc index 17c4403..fe917b0 100644 --- a/docs/keyd.scdoc +++ b/docs/keyd.scdoc @@ -277,7 +277,8 @@ composite layer ignores the modifier sets of all constituents. E.g. ``` -[control+alt] h = left +[control+alt] +h = left ``` will cause the sequence _control+alt+h_ to produce _left_ (ignoring the control @@ -317,7 +318,7 @@ Non-english layouts include a dedicated shift layer (making order of inclusion important) and *require the use of keyd's compose definitions* (see *Unicode Support*) -E.G +E.g. ``` # Include the shipped colemak layout. @@ -348,7 +349,7 @@ globally by copying the file to the appropriate location in _/usr/share/X11/locale_, or on a per-user basis by symlinking it to ~/.XCompose. -E.G +E.g. ln -s /usr/share/keyd/keyd.compose ~/.XCompose @@ -358,15 +359,22 @@ within keyd (see **Layouts**). **Note:** You may have to restart your applications for this to take effect. +**Caveat:** Modifiers (in particular shift) are applied to this compose sequence +as usual, which might not be what you want. For example, pressing a key bound to +an accented letter while a shift modifier is active does not result in the +corresponding capital letter. In such cases, an explicit mapping on the shift +layer has to be added. + ## Aliases Each key may optionally be assigned to an *alias*. This alias may be used in place of the key as a valid left hand value. Multiple keys may be bound to the same alias, but only one alias may be assigned to a key at a given time. -For example, the keys 'leftmeta' and -'rightmeta' are bound to the alias *meta* by default. Thus the binding 'meta = -a' is equivalent to the bindings 'leftmeta = a' and 'rightmeta = a'. +For example, the keys 'leftmeta' and 'rightmeta' are bound to the alias *meta* +by default. Thus the binding 'meta = a' is equivalent to the bindings 'leftmeta += a' and 'rightmeta = a'. Further default aliases are *alt*, *shift*, *control* +(with bindings analogous to *meta*) and *altgr* (an alias for the key 'rightalt'). Aliases are defined in a special section called 'aliases' where each line takes the form: @@ -433,7 +441,7 @@ directories: - /etc/keyd/ - /usr/share/keyd/ -E.G +E.g. ``` /etc/keyd/default.conf: @@ -511,36 +519,52 @@ A valid macro expression has one of the following forms: . macro() . [[-...]- + . Where __ has the form _ [...]_ and each token is one of: - - a valid key code. - - a type 2. macro. - - a contiguous group of characters, each of which is a valid key code. + - a valid key code (_keyd list-keys_ prints a list). + - a type 2 macro. + - a contiguous group of UTF-8 characters. - a group of key codes delimited by + to be depressed as a unit. - - a timeout of the form _