DragonFly On-Line Manual Pages
    
    
	
SXHKD(1)                         Sxhkd Manual                         SXHKD(1)
NAME
       sxhkd - Simple X hotkey daemon
SYNOPSIS
       sxhkd [OPTIONS] [EXTRA_CONFIG ...]
DESCRIPTION
       sxhkd is a simple X hotkey daemon with a powerful and compact
       configuration syntax.
OPTIONS
       -h
           Print the synopsis to standard output and exit.
       -v
           Print the version information to standard output and exit.
       -m COUNT
           Handle the first COUNT mapping notify events.
       -t TIMEOUT
           Timeout in seconds for the recording of chord chains.
       -c CONFIG_FILE
           Read the main configuration from the given file.
       -r REDIR_FILE
           Redirect the commands output to the given file.
       -s STATUS_FIFO
           Output status information to the given FIFO.
       -f FREQUENCY
           Set the maximum frequency for motion events.
BEHAVIOR
       sxhkd is a daemon that listens to keyboard events and execute commands.
       It reads its configuration file from $XDG_CONFIG_HOME/sxhkd/sxhkdrc by
       default, or from the given file if the -c option is used.
       Additionnal configuration files can be passed as arguments.
       If sxhkd receives a SIGUSR1 signal, it will reload its configuration
       file.
       The commands are executed via SHELL -c COMMAND (hence you can use
       environment variables).
       SHELL will be the content of the first defined environment variable in
       the following list: SXHKD_SHELL, SHELL.
       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).
CONFIGURATION
       Each line of the configuration file is interpreted as so:
       o   If it is empty or starts with #, it is ignored.
       o   If it starts with a space, it is read as a command.
       o   Otherwise, it is read as a hotkey.
       General syntax:
           HOTKEY
               COMMAND
           HOTKEY      := CHORD_1 ; CHORD_2 ; ... ; CHORD_n
           CHORD_i     := [MODIFIERS_i +] [@|!|~]KEYSYM_i
           MODIFIERS_i := MODIFIER_i1 + MODIFIER_i2 + ... + MODIFIER_ik
       The valid modifier names are: super, hyper, meta, alt, control, ctrl,
       shift, mode_switch, lock, mod1, mod2, mod3, mod4, mod5 and any.
       The keysym names are given by the output of xev.
       Hotkeys and commands can be spread across multiple lines by ending each
       partial line with a backslash character.
       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.
       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.
       The Escape key can be used to abort a chord chain.
       If @ is added at the beginning of the keysym, the command will be run
       on key release events, otherwise on key press events.
       If ! is added at the beginning of the keysym, the command will be run
       on motion notify events and must contain two integer conversion
       specifications which will be replaced by the x and y coordinates of the
       pointer relative to the root window referential (the only valid button
       keysyms for this type of hotkeys are: button1, ..., button5).
       If ~ is added at the beginning of the keysym, the captured event will
       be replayed for the other clients.
       Mouse hotkeys can be defined by using one of the following special
       keysym names: button1, button2, button3, ..., button24.
       The hotkey and the command may contain sequences of the form
       {STRING_1,...,STRING_N}.
       In addition, the sequences can contain ranges of the form A-Z where A
       and Z are alphanumeric characters.
       The underscore character represents an empty sequence element.
EXAMPLE BINDINGS
           XF86Audio{Prev,Next}
               mpc -q {prev,next}
           @XF86LaunchA
               scrot -s -e 'image_viewer $f'
           super + shift + equal
               sxiv -rt "$HOME/image"
           XF86LaunchB
               xdotool selectwindow | xsel -bi
           super + {h,j,k,l}
               bspc window -f {left,down,up,right}
           super + alt + {0-9}
               mpc -q seek {0-9}0%
           super + {alt,ctrl,alt + ctrl} + XF86Eject
               sudo systemctl {suspend,reboot,poweroff}
           ~button1
               bspc pointer -g focus
           super + button{1-3}
               bspc pointer -g {move,resize_side,resize_corner}
           super + !button{1-3}
               bspc pointer -t %i %i
           super + {_,shift + }{h,j,k,l}
               bspc window {-f,-s} {left,down,up,right}
           {_,shift + ,super + }XF86MonBrightness{Down,Up}
               bright {-1,-10,min,+1,+10,max}
           super + o ; {e,w,m}
               {gvim,firefox,thunderbird}
           super + m : {h,j,k,l}
               xdo move {-x -5,-y +5,-y -5,-x +5}
           super + alt + control + {h,j,k,l} ; {0-9}
               bspc window -e {left,down,up,right} 0.{0-9}
           super + alt + p
               bspc config focus_follows_pointer {true,false}
AUTHOR
       Bastien Dejean <nihilhill at gmail.com>
MAILING LIST
       sxhkd at librelist.com
Sxhkd 0.5.5                       03/20/2015                          SXHKD(1)