bspc binary writes messages to bspwm’s socket. Those messages are all the commands executed in bspwmrc init file
$ command -V bspcbspc is /usr/local/bin/bspc
IMPORTANT
Note that bspwm does not handle any input since its fd 0 is pointing to /dev/null
$ file /proc/$( pgrep --exact bspwm )/fd/0/proc/2604/fd/0: symbolic link to /dev/null
Thus, sxhkd translate keyboard and pointers events to bspc
sxhkd process listens to an input event and executes the command related to it. It can be any command, most of them are the bspc ones that write to bspwm’s socket
That sxhkd’s input event is usually a keyboard shortcut
This Windows Manager generates and divides each OS Window in half (Binary Partitioning)
#!/usr/bin/env sh # Import required Functions and Parametersif [ -f ~/.config/bspwm/src/bspwmrc.sh ] ; then . ~/.config/bspwm/src/bspwmrc.shfibspc monitor -d I II III IV V VI VII VIII IX Xbspc config border_width 2bspc config window_gap 12bspc config split_ratio 0.52bspc config borderless_monocle truebspc config gapless_monocle truebspc rule -a Gimp desktop='^8' state=floating follow=onbspc rule -a Chromium desktop='^2'bspc rule -a mplayer2 state=floatingbspc rule -a Kupfer.py focus=onbspc rule -a Screenkey manage=off# No Windows Borderbspc config border_width 0# VMWare Bidirectional Clipboardvmware-user-suid-wrapper &# Sxhkd InitcheckProcess sxhkd || launchProcess sxhkd# Polybar InitcheckProcess polybar || { launchProcess "$_pbl" ; unset -v -- _pbl ; }# Picom InitcheckProcess picom || launchProcess picom# Feh Init (Desktop Wallpaper)/usr/bin/feh --bg-fill /home/al3xbb/Desktop/Fondos/Fondo.jpg &# Avoid Compatibility errors with Java applications (Burpsuite...)# Change the Windows Manager Name from bspwm to LG3D (Only the name)wmname LG3D &
Non POSIX Compliant Version
~/.config/bspwm/bspwmrc
#!/usr/bin/env bash# Import required Functions and Parametersif [[ -f ~/.config/bspwm/src/bspwmrc.sh ]] ; then . ~/.config/bspwm/src/bspwmrc.shfibspc monitor -d I II III IV V VI VII VIII IX Xbspc config border_width 2bspc config window_gap 12bspc config split_ratio 0.52bspc config borderless_monocle truebspc config gapless_monocle truebspc rule -a Gimp desktop='^8' state=floating follow=onbspc rule -a Chromium desktop='^2'bspc rule -a mplayer2 state=floatingbspc rule -a Kupfer.py focus=onbspc rule -a Screenkey manage=off# No Windows Borderbspc config border_width 0# VMWare Bidirectional Clipboardvmware-user-suid-wrapper &# Sxhkd InitcheckProcess sxhkd || launchProcess sxhkd# Polybar InitcheckProcess polybar || { launchProcess "$_pbl" ; unset -v -- _pbl ; }# Picom InitcheckProcess picom || launchProcess picom# Feh Init (Desktop Wallpaper)/usr/bin/feh --bg-fill /home/al3xbb/Desktop/Fondos/Fondo.jpg &# Avoid Compatibility errors with Java applications (Burpsuite...)# Change the Windows Manager Name from bspwm to LG3D (Only the name)wmname LG3D &