sxhkd-rc

[fork] simple X hotkey daemon (but for the rc shell)
git clone https://hhvn.uk/sxhkd-rc
git clone git://hhvn.uk/sxhkd-rc
Log | Files | Refs | README | LICENSE

sxhkd.1.asciidoc (3917B)


      1 :man source:   Sxhkd
      2 :man version:  {revnumber}
      3 :man manual:   Sxhkd Manual
      4 
      5 sxhkd(1)
      6 ========
      7 
      8 Name
      9 ----
     10 
     11 sxhkd - Simple X hotkey daemon
     12 
     13 Synopsis
     14 --------
     15 
     16 *sxhkd* [_OPTIONS_] [_EXTRA_CONFIG_ …]
     17 
     18 Description
     19 -----------
     20 
     21 sxhkd is a simple X hotkey daemon with a powerful and compact configuration syntax.
     22 
     23 Options
     24 -------
     25 
     26 
     27 *-h*::
     28     Print the synopsis to standard output and exit.
     29 
     30 *-v*::
     31     Print the version information to standard output and exit.
     32 
     33 *-m* _COUNT_::
     34     Handle the first _COUNT_ mapping notify events.
     35 
     36 *-t* _TIMEOUT_::
     37     Timeout in seconds for the recording of chord chains.
     38 
     39 *-c* _CONFIG_FILE_::
     40     Read the main configuration from the given file.
     41 
     42 *-r* _REDIR_FILE_::
     43     Redirect the commands output to the given file.
     44 
     45 *-s* _STATUS_FIFO_::
     46     Output status information to the given FIFO.
     47 
     48 *-a* _ABORT_KEYSYM_::
     49     Name of the keysym used for aborting chord chains.
     50 
     51 
     52 Behavior
     53 --------
     54 
     55 *sxhkd* is a daemon that listens to keyboard events and execute commands.
     56 
     57 It reads its configuration file from *$XDG_CONFIG_HOME/sxhkd/sxhkdrc* by default, or from the given file if the *-c* option is used.
     58 
     59 Additional configuration files can be passed as arguments.
     60 
     61 If *sxhkd* receives a _SIGUSR1_ (resp. _SIGUSR2_) signal, it will reload its configuration file (resp. toggle the grabbing state of all its bindings).
     62 
     63 The commands are executed via *SHELL* _-c_ *COMMAND* (hence you can use environment variables).
     64 
     65 *SHELL* will be the content of the first defined environment variable in the following list: *SXHKD_SHELL*, *SHELL*.
     66 
     67 If you have a non-QWERTY keyboard or a non-standard layout configuration, you should provide a _COUNT_ of _1_ to the *-m* option or _-1_ (interpreted as infinity) if you constantly switch from one layout to the other (*sxhkd* ignores all mapping notify events by default because the majority of those events are pointless).
     68 
     69 
     70 Configuration
     71 -------------
     72 
     73 Each line of the configuration file is interpreted as so:
     74 
     75 * If it is empty or starts with `#`, it is ignored.
     76 * If it starts with a space, it is read as a command.
     77 * Otherwise, it is read as a hotkey.
     78 
     79 General syntax:
     80 
     81 ----
     82 HOTKEY
     83     [;]COMMAND
     84 
     85 HOTKEY      := CHORD_1 ; CHORD_2 ; … ; CHORD_n
     86 CHORD_i     := [MODIFIERS_i +] [~][@]KEYSYM_i
     87 MODIFIERS_i := MODIFIER_i1 + MODIFIER_i2 + … + MODIFIER_ik
     88 ----
     89 
     90 The valid modifier names are: _super_, _hyper_, _meta_, _alt_, _control_, _ctrl_, _shift_, _mode_switch_, _lock_, _mod1_, _mod2_, _mod3_, _mod4_, _mod5_ and _any_.
     91 
     92 The keysym names are given by the output of *xev -event keyboard*.
     93 
     94 Hotkeys and commands can be spread across multiple lines by ending each partial line with a backslash character.
     95 
     96 When multiple chords are separated by semicolons, the hotkey is a chord chain: the command will only be executed after receiving each chord of the chain in consecutive order.
     97 
     98 The colon character can be used instead of the semicolon to indicate that the chord chain shall not be aborted when the chain tail is reached.
     99 
    100 If a command starts with a semicolon, it will be executed synchronously, otherwise asynchronously.
    101 
    102 The _Escape_ key can be used to abort a chord chain.
    103 
    104 If *@* is added at the beginning of the keysym, the command will be run on key release events, otherwise on key press events.
    105 
    106 If *~* is added at the beginning of the keysym, the captured event will be replayed for the other clients.
    107 
    108 Pointer hotkeys can be defined by using one of the following special keysym names: _button1_, _button2_, _button3_, …, _button24_.
    109 
    110 The hotkey and the command may contain sequences of the form '[STRING_1,…,STRING_N]'.
    111 
    112 In addition, the sequences can contain ranges of the form _A_-_Z_ where _A_ and _Z_ are alphanumeric characters.
    113 
    114 The underscore character represents an empty sequence element.
    115 
    116 Author
    117 ------
    118 
    119 Bastien Dejean <nihilhill at gmail.com>
    120 
    121 Mailing List
    122 ------------
    123 
    124 sxhkd at librelist.com
    125 
    126 ////
    127 vim: set ft=asciidoc:
    128 ////