From: Amin Bandali Date: Sat, 19 Nov 2016 03:28:31 +0000 (-0500) Subject: Update bspwm & sxhkd dots X-Git-Url: https://git.shemshak.org/~bandali/configs/commitdiff_plain/7791c200d9b385f722863cbaf2341dafffdb272f?ds=inline Update bspwm & sxhkd dots --- diff --git a/bspwm/.config/bspwm/bspwmrc b/bspwm/.config/bspwm/bspwmrc index 5c3081b..6601cf8 100755 --- a/bspwm/.config/bspwm/bspwmrc +++ b/bspwm/.config/bspwm/bspwmrc @@ -1,24 +1,21 @@ #! /bin/sh -bspc config border_width 3 -bspc config window_gap 10 +sxhkd & -bspc config top_padding 30 +bspc monitor -d I II III IV V VI VII VIII IX X -bspc config split_ratio 0.6 -bspc config borderless_monocle true -bspc config gapless_monocle true -bspc config focus_by_distance true +bspc config border_width 2 +bspc config window_gap 12 +#bspc config bottom_padding 32 -bspc monitor -d web code term iv v vi vii viii ix x +# bspc config split_ratio 0.52 +bspc config borderless_monocle true +bspc config click_to_focus true +bspc config gapless_monocle true -bspc config normal_border_color '#1d1f21' -bspc config focused_border_color '#093748' - -# bspc rule -a Firefox desktop=^1 focus=on -# bspc rule -a emacs desktop=^2 focus=on -# bspc rule -a Chromium desktop=^3 focus=on -# bspc rule -a zathura desktop=^5 focus=on -bspc rule -a xfce4-appfinder floating=on - -# panel & +bspc rule -a Firefox desktop='^1' follow=on +bspc rule -a Emacs desktop='^2' state=tiled follow=on +bspc rule -a Chromium desktop='^4' follow=on +bspc rule -a Termite state=floating +bspc rule -a URxvt state=floating +bspc rule -a qterminal state=floating diff --git a/bspwm/.local/bin/panel b/bspwm/.local/bin/panel deleted file mode 100755 index f04841b..0000000 --- a/bspwm/.local/bin/panel +++ /dev/null @@ -1,30 +0,0 @@ -#! /bin/sh - -if [ $(pgrep -cx panel) -gt 1 ] ; then - printf "%s\n" "The panel is already running." >&2 - exit 1 -fi - -trap 'trap - TERM; kill 0' INT TERM QUIT EXIT - -[ -e "$PANEL_FIFO" ] && rm "$PANEL_FIFO" -mkfifo "$PANEL_FIFO" - -bspc config top_padding $PANEL_HEIGHT -bspc control --subscribe > "$PANEL_FIFO" & -#xtitle -sf 'T%s' > "$PANEL_FIFO" & -#clock -sf 'S%a %H:%M' > "$PANEL_FIFO" & - -pamixer --get-volume > /tmp/volinfo -if $(pamixer --get-mute) ; then - echo ⮝ > /tmp/spkicon -else - echo ⮟ > /tmp/spkicon -fi -conky > "$PANEL_FIFO" & - -. panel_colors - -cat "$PANEL_FIFO" | panel_bar | bar-aint-recursive -g x$PANEL_HEIGHT -f "$PANEL_FONT_FAMILY1","$PANEL_FONT_FAMILY2","$PANEL_FONT_FAMILY3" -F "$COLOR_FOREGROUND" -B "$COLOR_BACKGROUND" & - -wait diff --git a/bspwm/.local/bin/panel_bar b/bspwm/.local/bin/panel_bar deleted file mode 100755 index 2ad2f15..0000000 --- a/bspwm/.local/bin/panel_bar +++ /dev/null @@ -1,74 +0,0 @@ -#! /bin/sh -# -# Example panel for LemonBoy's bar - -. panel_colors - -num_mon=$(bspc query -M | wc -l) - -while read -r line ; do - case $line in - S*) - # clock output - sys_infos="%{F$COLOR_STATUS_FG}%{B$COLOR_STATUS_BG} ${line#?} %{B-}%{F-}" - ;; - T*) - # xtitle output - title="%{F$COLOR_TITLE_FG}%{B$COLOR_TITLE_BG} ${line#?} %{B-}%{F-}" - ;; - W*) - # bspwm internal state - wm_infos="" - IFS=':' - set -- ${line#?} - while [ $# -gt 0 ] ; do - item=$1 - name=${item#?} - case $item in - M*) - # active monitor - if [ $num_mon -gt 1 ] ; then - wm_infos="$wm_infos %{F$COLOR_ACTIVE_MONITOR_FG}%{B$COLOR_ACTIVE_MONITOR_BG} ${name} %{B-}%{F-} " - fi - ;; - m*) - # inactive monitor - if [ $num_mon -gt 1 ] ; then - wm_infos="$wm_infos %{F$COLOR_INACTIVE_MONITOR_FG}%{B$COLOR_INACTIVE_MONITOR_BG} ${name} %{B-}%{F-} " - fi - ;; - O*) - # focused occupied desktop - wm_infos="${wm_infos}%{F$COLOR_FOCUSED_OCCUPIED_FG}%{B$COLOR_FOCUSED_OCCUPIED_BG}%{U$COLOR_FOREGROUND}%{+u} ${name} %{-u}%{B-}%{F-}" - ;; - F*) - # focused free desktop - wm_infos="${wm_infos}%{F$COLOR_FOCUSED_FREE_FG}%{B$COLOR_FOCUSED_FREE_BG}%{U$COLOR_FOREGROUND}%{+u} ${name} %{-u}%{B-}%{F-}" - ;; - U*) - # focused urgent desktop - wm_infos="${wm_infos}%{F$COLOR_FOCUSED_URGENT_FG}%{B$COLOR_FOCUSED_URGENT_BG}%{U$COLOR_FOREGROUND}%{+u} ${name} %{-u}%{B-}%{F-}" - ;; - o*) - # occupied desktop - wm_infos="${wm_infos}%{F$COLOR_OCCUPIED_FG}%{B$COLOR_OCCUPIED_BG} ${name} %{B-}%{F-}" - ;; - f*) - # free desktop - wm_infos="${wm_infos}%{F$COLOR_FREE_FG}%{B$COLOR_FREE_BG} ${name} %{B-}%{F-}" - ;; - u*) - # urgent desktop - wm_infos="${wm_infos}%{F$COLOR_URGENT_FG}%{B$COLOR_URGENT_BG} ${name} %{B-}%{F-}" - ;; - L*) - # layout - # wm_infos="$wm_infos %{F$COLOR_LAYOUT_FG}%{B$COLOR_LAYOUT_BG} ${name} %{B-}%{F-}" - ;; - esac - shift - done - ;; - esac - printf "%s\n" "%{l}${wm_infos}%{c}${title}%{r}${sys_infos}" -done diff --git a/bspwm/.local/bin/panel_colors b/bspwm/.local/bin/panel_colors deleted file mode 100644 index 6327864..0000000 --- a/bspwm/.local/bin/panel_colors +++ /dev/null @@ -1,29 +0,0 @@ -COLOR_FOREGROUND='#FFffffff' -COLOR_BACKGROUND='#FF1d1f21' -COLOR_ACTIVE_MONITOR_FG='#FF1d1f21' -COLOR_ACTIVE_MONITOR_BG='#FFcc6666' -COLOR_INACTIVE_MONITOR_FG='#FFffffff' -COLOR_INACTIVE_MONITOR_BG='#FF1d1f21' -COLOR_FOCUSED_OCCUPIED_FG='#FFffffff' -COLOR_FOCUSED_OCCUPIED_BG='#FF373b41' -COLOR_FOCUSED_OCCUPIED_UL='#FFbcbac2' -COLOR_FOCUSED_FREE_FG='#FFffffff' -COLOR_FOCUSED_FREE_BG='#FF1d1f21' -COLOR_FOCUSED_FREE_UL='#FFa39e98' -COLOR_FOCUSED_URGENT_FG='white' -COLOR_FOCUSED_URGENT_BG='#FFF9A299' -COLOR_FOCUSED_URGENT_UL='white' -COLOR_OCCUPIED_FG='#FFffffff' -COLOR_OCCUPIED_BG='#FF1d1f21' -#COLOR_FREE_FG='#FF6F7277' -COLOR_FREE_FG='#FF969896' -COLOR_FREE_BG='#FF1d1f21' -COLOR_URGENT_FG='#FFF9A299' -COLOR_URGENT_BG='#FF1d1f21' -COLOR_LAYOUT_FG='#FFffffff' -COLOR_LAYOUT_BG='#FF1d1f21' -COLOR_TITLE_FG='#FFffffff' -COLOR_TITLE_BG='#FF1d1f21' -COLOR_STATUS_FG='#FFffffff' -COLOR_STATUS_BG='#FF1d1f21' -COLOR_STATUS_IC='#FFcc6666' diff --git a/bspwm/.local/bin/spk-icon b/bspwm/.local/bin/spk-icon deleted file mode 100755 index 10a2e7c..0000000 --- a/bspwm/.local/bin/spk-icon +++ /dev/null @@ -1,5 +0,0 @@ -if $(pamixer --get-mute) ; then -echo ⮝ -else -cat /tmp/spkicon -fi diff --git a/bspwm/.local/bin/toggle_tray b/bspwm/.local/bin/toggle_tray new file mode 100755 index 0000000..c081995 --- /dev/null +++ b/bspwm/.local/bin/toggle_tray @@ -0,0 +1,16 @@ +#!/bin/bash + +# from https://github.com/kallith/Dotfiles + +if [ $(pgrep -cf stalonetray) -gt 0 ]; then + wid=$(xdotool search --class stalonetray) + if [ "$(xdotool search --onlyvisible --class stalonetray)" != "" ]; then + xdotool windowunmap $wid + else + xdotool windowmap $wid + xdotool windowraise $wid + fi +else + xdotool search --class stalonetray + stalonetray +fi diff --git a/sxhkd/.config/sxhkd/sxhkdrc b/sxhkd/.config/sxhkd/sxhkdrc index 53ce423..461d1cd 100644 --- a/sxhkd/.config/sxhkd/sxhkdrc +++ b/sxhkd/.config/sxhkd/sxhkdrc @@ -1,153 +1,170 @@ # -# bspwm hotkeys +# wm independent hotkeys # -super + alt + Escape - bspc quit - -super + w - bspc window -c - -super + t - bspc desktop -l next - -super + b - bspc desktop -B - -super + {p,s,f} - state={pseudo_tiled,floating,fullscreen}; \ - bspc query -W -w "focused.$\{state\}" && state=tiled; \ - bspc window -t "$state" +# terminal emulator +super + Return + urxvt -super + {grave,Tab} - bspc {window,desktop} -f last +# program launcher +super + space + rofi -show run -font "Inconsolata 13" -super + apostrophe - bspc window -s last +super + z ; t + urxvt -super + {o,i} - bspc control --record-history off; \ - bspc window {older,newer} -f; \ - bspc control --record-history on +super + z ; f + firefox-nightly -super + y - bspc window -w last.manual +# firefox +#super + r +# firefox -super + m - bspc window -s biggest +# chromium +#super + c +# chromium -super + {_,shift + }{h,j,k,l} - bspc window -{f,s} {left,down,up,right} +# emacs +super + e + emacs -super + {_,shift + }slash - bspc window -f {next,prev} +# stalonetray +#super + minus +# toggle_tray& -super + {comma,period} - bspc desktop -C {backward,forward} +# volume up +XF86AudioRaiseVolume + pamixer --allow-boost --increase 5 -super + bracket{left,right} - bspc desktop -f {prev,next} +# volume down +XF86AudioLowerVolume + pamixer --allow-boost --decrease 5 -super + shift + bracket{left,right} - bspc window -d {prev,next} +# mute +XF86AudioMute + pamixer --toggle-mute -super + ctrl + {h,j,k,l} - bspc window -p {left,down,up,right} +# monitor brightness +#XF86MonBrightness{Up,Down} +# xbacklight -time 0 {+5,-5} -super + ctrl + {_,shift + }space - bspc {window -p cancel,desktop -c} +# keyboard brightness +#XF86KbdBrightness{Up,Down} +# kbdlight {up,down} -super + alt + {h,j,k,l} - bspc window -e {left -10,down +10,up -10,right +10} +XF86LaunchA + toggle-layout -super + alt + shift + {h,j,k,l} - bspc window -e {right -10,up +10,down -10,left +10} +# make sxhkd reload its configuration files: +super + Escape + pkill -USR1 -x sxhkd -super + ctrl + {1-9} - bspc window -r 0.{1-9} +# +# bspwm hotkeys +# -super + {_,shift + }{1-9,0} - bspc {desktop -f,window -d} ^{1-9,10} +# quit bspwm normally +super + alt + Escape + bspc quit -~button1 - bspc pointer -g focus +# close and kill +super + {w,q} + bspc node -{c,k} -super + button{1-3} - bspc pointer -g {move,resize_side,resize_corner} +# alternate between the tiled and monocle layout +super + m + bspc desktop -l next -super + !button{1-3} - bspc pointer -t %i %i +# if the current node is automatic, send it to the last manual, otherwise pull the last leaf +super + y + bspc query -N -n focused.automatic && bspc node -n last.!automatic || bspc node last.leaf -n focused -super + @button{1-3} - bspc pointer -u +# swap the current node and the biggest node +super + g + bspc node -s biggest # -# wm independent hotkeys +# state/flags # -super + Return - urxvt +# set the window state +super + {t,shift + t,s,f} + bspc node -t {tiled,pseudo_tiled,floating,fullscreen} -super + space - rofi -show run -font "Source Code Pro 11" -fg "#195465" -bg "#0A0F14" -hlfg "#EDB54B" -hlbg "#0A0F14" -o 85 +# set the node flags +super + ctrl + {x,y,z} + bspc node -g {locked,sticky,private} -super + x - slimlock - -super + e - emacs - -super + r - firefox +# +# focus/swap +# -super + c - chromium -incognito +# focus the node in the given direction +super + {_,shift + }{h,j,k,l} + bspc node -{f,s} {west,south,north,east} -# make sxhkd reload its configuration files: -super + Escape - pkill -USR1 -x sxhkd +# focus the node for the given path jump +super + {p,b,comma,period} + bspc node -f @{parent,brother,first,second} -#XF86MonBrightnessDown -# xbacklight -dec 5 +# focus the next/previous node +super + {_,shift + }slash + bspc node -f {next,prev} -#XF86MonBrightnessUp -# xbacklight -inc 5 +# focus the next/previous desktop +super + bracket{left,right} + bspc desktop -f {prev,next} -# XF86KbdBrightnessDown - #kbdlight down +# send to next/prev desktop +super + shift + bracket{left,right} + bspc node -d {prev,next} -# XF86KbdBrightnessUp - #kbdlight up +# focus the last node/desktop +super + {grave,Tab} + bspc {node,desktop} -f last -#XF86AudioRaiseVolume -# pulseaudio-ctl up +# focus the older or newer node in the focus history +super + {o,i} + bspc wm -h off; \ + bspc node {older,newer} -f; \ + bspc wm -h on -#XF86AudioLowerVolume -# pulseaudio-ctl down +# focus or send to the given desktop +super + {_,shift + }{1-9,0} + bspc {desktop -f,node -d} '^{1-9,10}' -#XF86AudioMute -# pulseaudio-ctl mute +# +# preselect +# -XF86AudioPlay - mpc toggle +# preselect the direction +super + ctrl + {h,j,k,l} + bspc node -p {west,south,north,east} -XF86AudioPrev - mpc prev +# preselect the ratio +super + ctrl + {1-9} + bspc node -o 0.{1-9} -XF86AudioNext - mpc next +# cancel the preselection for the focused node +super + ctrl + space + bspc node -p cancel -XF86AudioRaiseVolume - pamixer --allow-boost --increase 5 +# cancel the preselection for the focused desktop +super + ctrl + shift + space + bspc query -N -d | xargs -I id -n 1 bspc node id -p cancel -XF86AudioLowerVolume - pamixer --allow-boost --decrease 5 +# +# move/resize +# -XF86AudioMute - pamixer --toggle-mute +# expand a window by moving one of its side outward +super + alt + {h,j,k,l} + bspc node -z {left -20 0,bottom 0 20,top 0 -20,right 20 0} -XF86LaunchA - toggle-layout +# contract a window by moving one of its side inward +super + alt + shift + {h,j,k,l} + bspc node -z {right -20 0,top 0 20,bottom 0 -20,left 20 0} -XF86LaunchB - toggle-mouse +# move a floating window +super + {Left,Down,Up,Right} + bspc node -v {-20 0,0 20,0 -20,20 0} diff --git a/sxhkd/.local/bin/em b/sxhkd/.local/bin/em deleted file mode 100755 index 6d087f3..0000000 --- a/sxhkd/.local/bin/em +++ /dev/null @@ -1,13 +0,0 @@ -#!/bin/sh - -if [ -z "$DISPLAY" ]; then - IS_GRAPHICAL=true -else - IS_GRAPHICAL=$(emacs --batch -Q --eval='(if (fboundp '"'"'tool-bar-mode) (message "true") (message "false"))' 2>&1) -fi - -if $IS_GRAPHICAL; then - emacsclient -a "" -nc "$@" -else - emacsclient -a "" -t "$@" -fi diff --git a/sxhkd/.local/bin/toggle-mouse b/sxhkd/.local/bin/toggle-mouse deleted file mode 100755 index 906fdbb..0000000 --- a/sxhkd/.local/bin/toggle-mouse +++ /dev/null @@ -1,11 +0,0 @@ -#!/bin/bash - -touchpad_off="$(synclient -l | grep TouchpadOff | cut -d'=' -f 2 | xargs)" - -if [ "$touchpad_off" = "0" ]; then - synclient TouchpadOff=1 - unclutter -idle 1 & -else - synclient TouchpadOff=0 - killall unclutter -fi