Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- ~/.config/herbstluftwm/autostart
- #!/bin/bash
- # this is a simple config for herbstluftwm
- xset -dpms
- xset s noblank
- xset s off
- feh --bg-tile ~/Images/wallpaper.jpg &
- killall dzen2 &
- #~/.config/herbstluftwm/panel.sh &
- function hc() {
- herbstclient "$@"
- }
- hc emit_hook reload
- xsetroot -solid '#333333'
- # remove all existing keybindings
- hc keyunbind --all
- # keybindings
- Mod=Mod1
- hc keybind $Mod-Shift-q quit
- hc keybind $Mod-Shift-r reload
- hc keybind $Mod-Shift-c close
- hc keybind $Mod-t spawn urxvt
- # tags
- TAG_NAMES=( {1..9} )
- TAG_KEYS=( {1..9} 0 )
- hc rename default "${TAG_NAMES[0]}" || true
- for i in ${!TAG_NAMES[@]} ; do
- hc add "${TAG_NAMES[$i]}"
- key="${TAG_KEYS[$i]}"
- if ! [ -z "$key" ] ; then
- hc keybind "$Mod-$key" use_index "$i"
- hc keybind "$Mod-Shift-$key" move_index "$i"
- fi
- done
- # cycle through tags
- hc keybind $Mod-period use_index +1 --skip-visible
- hc keybind $Mod-comma use_index -1 --skip-visible
- hc keybind $Mod-Right use_index +1 --skip-visible
- hc keybind $Mod-Left use_index -1 --skip-visible
- # layouting
- hc keybind $Mod-r remove
- hc keybind $Mod-space cycle_layout 1
- hc keybind $Mod-u split vertical 0.5
- hc keybind $Mod-o split horizontal 0.5
- hc keybind $Mod-s floating toggle
- hc keybind $Mod-f fullscreen toggle
- hc keybind $Mod-p pseudotile toggle
- # resizing
- RESIZESTEP=0.05
- hc keybind $Mod-Control-h resize left +$RESIZESTEP
- hc keybind $Mod-Control-j resize down +$RESIZESTEP
- hc keybind $Mod-Control-k resize up +$RESIZESTEP
- hc keybind $Mod-Control-l resize right +$RESIZESTEP
- # mouse
- hc mouseunbind --all
- hc mousebind $Mod-Button1 move
- hc mousebind $Mod-Button2 resize
- hc mousebind $Mod-Button3 zoom
- # focus
- hc keybind $Mod-BackSpace cycle_monitor
- hc keybind $Mod-Tab cycle_all +1
- hc keybind $Mod-Shift-Tab cycle_all -1
- hc keybind $Mod-c cycle
- hc keybind $Mod-h focus left
- hc keybind $Mod-j focus down
- hc keybind $Mod-k focus up
- hc keybind $Mod-l focus right
- hc keybind $Mod-i jumpto urgent
- hc keybind $Mod-Shift-h shift left
- hc keybind $Mod-Shift-j shift down
- hc keybind $Mod-Shift-k shift up
- hc keybind $Mod-Shift-l shift right
- # colors
- hc set frame_border_active_color '#333333'
- hc set frame_border_normal_color '#333333'
- hc set frame_bg_normal_color '#565656'
- hc set frame_bg_active_color '#333333'
- hc set frame_border_width 5
- hc set window_border_width 1
- hc set window_border_inner_width 1
- hc set window_border_normal_color '#454545'
- hc set window_border_active_color '#33CCFF'
- hc set always_show_frame 1
- hc set frame_gap 4
- # add overlapping window borders
- hc set window_gap -2
- hc set frame_padding 2
- hc set smart_window_surroundings 0
- hc set smart_frame_surroundings 1
- hc set mouse_recenter_gap 0
- # rules
- hc unrule -F
- #hc rule class=XTerm tag=3 # move all xterms to tag 3
- hc rule focus=off # normally do not focus new clients
- # give focus to most common terminals
- hc rule class~'(.*[Rr]xvt.*|.*[Tt]erm|Konsole)' focus=on
- hc rule windowtype~'_NET_WM_WINDOW_TYPE_(DIALOG|UTILITY|SPLASH)' pseudotile=on
- hc rule windowtype='_NET_WM_WINDOW_TYPE_DIALOG' focus=on
- hc rule windowtype~'_NET_WM_WINDOW_TYPE_(NOTIFICATION|DOCK)' manage=off
- # unlock, just to be sure
- hc unlock
- herbstclient set tree_style '╾│ ├└╼─┐'
- # do multi monitor setup here, e.g.:
- # hc set_monitors 1280x1024+0+0 1280x1024+1280+0
- # or simply:
- # hc detect_monitors
- # find the panel
- herbstclient pad $(herbstclient list_monitors | cut -d: -f1) 16;
- panel=~/.config/herbstluftwm/panel.sh
- [ -x "$panel" ] || panel=/etc/xdg/herbstluftwm/panel.sh
- for monitor in $(herbstclient list_monitors | cut -d: -f1) ; do
- # start it on each monitor
- $panel $monitor &
- done
Advertisement
Add Comment
Please, Sign In to add comment