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 (5736B)


      1 '\" t
      2 .\"     Title: sxhkd
      3 .\"    Author: [see the "Author" section]
      4 .\" Generator: DocBook XSL Stylesheets vsnapshot <http://docbook.sf.net/>
      5 .\"      Date: 01/15/2022
      6 .\"    Manual: Sxhkd Manual
      7 .\"    Source: Sxhkd 0.6.2-2-g736cf7e
      8 .\"  Language: English
      9 .\"
     10 .TH "SXHKD" "1" "01/15/2022" "Sxhkd 0\&.6\&.2\-2\-g736cf7e" "Sxhkd Manual"
     11 .\" -----------------------------------------------------------------
     12 .\" * Define some portability stuff
     13 .\" -----------------------------------------------------------------
     14 .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
     15 .\" http://bugs.debian.org/507673
     16 .\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html
     17 .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
     18 .ie \n(.g .ds Aq \(aq
     19 .el       .ds Aq '
     20 .\" -----------------------------------------------------------------
     21 .\" * set default formatting
     22 .\" -----------------------------------------------------------------
     23 .\" disable hyphenation
     24 .nh
     25 .\" disable justification (adjust text to left margin only)
     26 .ad l
     27 .\" -----------------------------------------------------------------
     28 .\" * MAIN CONTENT STARTS HERE *
     29 .\" -----------------------------------------------------------------
     30 .SH "NAME"
     31 sxhkd \- Simple X hotkey daemon
     32 .SH "SYNOPSIS"
     33 .sp
     34 \fBsxhkd\fR [\fIOPTIONS\fR] [\fIEXTRA_CONFIG\fR \&...]
     35 .SH "DESCRIPTION"
     36 .sp
     37 sxhkd is a simple X hotkey daemon with a powerful and compact configuration syntax\&.
     38 .SH "OPTIONS"
     39 .PP
     40 \fB\-h\fR
     41 .RS 4
     42 Print the synopsis to standard output and exit\&.
     43 .RE
     44 .PP
     45 \fB\-v\fR
     46 .RS 4
     47 Print the version information to standard output and exit\&.
     48 .RE
     49 .PP
     50 \fB\-m\fR \fICOUNT\fR
     51 .RS 4
     52 Handle the first
     53 \fICOUNT\fR
     54 mapping notify events\&.
     55 .RE
     56 .PP
     57 \fB\-t\fR \fITIMEOUT\fR
     58 .RS 4
     59 Timeout in seconds for the recording of chord chains\&.
     60 .RE
     61 .PP
     62 \fB\-c\fR \fICONFIG_FILE\fR
     63 .RS 4
     64 Read the main configuration from the given file\&.
     65 .RE
     66 .PP
     67 \fB\-r\fR \fIREDIR_FILE\fR
     68 .RS 4
     69 Redirect the commands output to the given file\&.
     70 .RE
     71 .PP
     72 \fB\-s\fR \fISTATUS_FIFO\fR
     73 .RS 4
     74 Output status information to the given FIFO\&.
     75 .RE
     76 .PP
     77 \fB\-a\fR \fIABORT_KEYSYM\fR
     78 .RS 4
     79 Name of the keysym used for aborting chord chains\&.
     80 .RE
     81 .SH "BEHAVIOR"
     82 .sp
     83 \fBsxhkd\fR is a daemon that listens to keyboard events and execute commands\&.
     84 .sp
     85 It reads its configuration file from \fB$XDG_CONFIG_HOME/sxhkd/sxhkdrc\fR by default, or from the given file if the \fB\-c\fR option is used\&.
     86 .sp
     87 Additional configuration files can be passed as arguments\&.
     88 .sp
     89 If \fBsxhkd\fR receives a \fISIGUSR1\fR (resp\&. \fISIGUSR2\fR) signal, it will reload its configuration file (resp\&. toggle the grabbing state of all its bindings)\&.
     90 .sp
     91 The commands are executed via \fBSHELL\fR \fI\-c\fR \fBCOMMAND\fR (hence you can use environment variables)\&.
     92 .sp
     93 \fBSHELL\fR will be the content of the first defined environment variable in the following list: \fBSXHKD_SHELL\fR, \fBSHELL\fR\&.
     94 .sp
     95 If you have a non\-QWERTY keyboard or a non\-standard layout configuration, you should provide a \fICOUNT\fR of \fI1\fR to the \fB\-m\fR option or \fI\-1\fR (interpreted as infinity) if you constantly switch from one layout to the other (\fBsxhkd\fR ignores all mapping notify events by default because the majority of those events are pointless)\&.
     96 .SH "CONFIGURATION"
     97 .sp
     98 Each line of the configuration file is interpreted as so:
     99 .sp
    100 .RS 4
    101 .ie n \{\
    102 \h'-04'\(bu\h'+03'\c
    103 .\}
    104 .el \{\
    105 .sp -1
    106 .IP \(bu 2.3
    107 .\}
    108 If it is empty or starts with
    109 #, it is ignored\&.
    110 .RE
    111 .sp
    112 .RS 4
    113 .ie n \{\
    114 \h'-04'\(bu\h'+03'\c
    115 .\}
    116 .el \{\
    117 .sp -1
    118 .IP \(bu 2.3
    119 .\}
    120 If it starts with a space, it is read as a command\&.
    121 .RE
    122 .sp
    123 .RS 4
    124 .ie n \{\
    125 \h'-04'\(bu\h'+03'\c
    126 .\}
    127 .el \{\
    128 .sp -1
    129 .IP \(bu 2.3
    130 .\}
    131 Otherwise, it is read as a hotkey\&.
    132 .RE
    133 .sp
    134 General syntax:
    135 .sp
    136 .if n \{\
    137 .RS 4
    138 .\}
    139 .nf
    140 HOTKEY
    141     [;]COMMAND
    142 
    143 HOTKEY      := CHORD_1 ; CHORD_2 ; \&... ; CHORD_n
    144 CHORD_i     := [MODIFIERS_i +] [~][@]KEYSYM_i
    145 MODIFIERS_i := MODIFIER_i1 + MODIFIER_i2 + \&... + MODIFIER_ik
    146 .fi
    147 .if n \{\
    148 .RE
    149 .\}
    150 .sp
    151 The valid modifier names are: \fIsuper\fR, \fIhyper\fR, \fImeta\fR, \fIalt\fR, \fIcontrol\fR, \fIctrl\fR, \fIshift\fR, \fImode_switch\fR, \fIlock\fR, \fImod1\fR, \fImod2\fR, \fImod3\fR, \fImod4\fR, \fImod5\fR and \fIany\fR\&.
    152 .sp
    153 The keysym names are given by the output of \fBxev \-event keyboard\fR\&.
    154 .sp
    155 Hotkeys and commands can be spread across multiple lines by ending each partial line with a backslash character\&.
    156 .sp
    157 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\&.
    158 .sp
    159 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\&.
    160 .sp
    161 If a command starts with a semicolon, it will be executed synchronously, otherwise asynchronously\&.
    162 .sp
    163 The \fIEscape\fR key can be used to abort a chord chain\&.
    164 .sp
    165 If \fB@\fR is added at the beginning of the keysym, the command will be run on key release events, otherwise on key press events\&.
    166 .sp
    167 If \fB~\fR is added at the beginning of the keysym, the captured event will be replayed for the other clients\&.
    168 .sp
    169 Pointer hotkeys can be defined by using one of the following special keysym names: \fIbutton1\fR, \fIbutton2\fR, \fIbutton3\fR, \&..., \fIbutton24\fR\&.
    170 .sp
    171 The hotkey and the command may contain sequences of the form \fI[STRING_1,\&...,STRING_N]\fR\&.
    172 .sp
    173 In addition, the sequences can contain ranges of the form \fIA\fR\-\fIZ\fR where \fIA\fR and \fIZ\fR are alphanumeric characters\&.
    174 .sp
    175 The underscore character represents an empty sequence element\&.
    176 .SH "AUTHOR"
    177 .sp
    178 Bastien Dejean <nihilhill at gmail\&.com>
    179 .SH "MAILING LIST"
    180 .sp
    181 sxhkd at librelist\&.com