2021-12-07 20:59:05 +01:00
|
|
|
# PLEASE READ THE MAN PAGE BEFORE EDITING THIS FILE!
|
|
|
|
# https://htmlpreview.github.io/?https://github.com/conformal/spectrwm/blob/master/spectrwm.html
|
|
|
|
# NOTE: all rgb color values in this file are in hex! see XQueryColor for examples
|
|
|
|
|
|
|
|
workspace_limit = 10
|
|
|
|
# focus_mode = default
|
|
|
|
# focus_close = previous
|
|
|
|
# focus_close_wrap = 1
|
|
|
|
# focus_default = last
|
|
|
|
# spawn_position = next
|
|
|
|
# workspace_clamp = 1
|
|
|
|
# warp_focus = 1
|
|
|
|
# warp_pointer = 1
|
|
|
|
|
|
|
|
# Window Decoration
|
|
|
|
border_width = 1
|
|
|
|
color_focus = rgb:bb/c5/ff
|
|
|
|
color_focus_maximized = yellow
|
|
|
|
color_unfocus = rgb:88/88/88
|
|
|
|
color_unfocus_maximized = rgb:88/88/00
|
|
|
|
region_padding = 8
|
|
|
|
tile_gap = 8
|
|
|
|
|
|
|
|
# Region containment
|
|
|
|
# Distance window must be dragged/resized beyond the region edge before it is
|
|
|
|
# allowed outside the region.
|
|
|
|
# boundary_width = 50
|
|
|
|
|
|
|
|
# Remove window border when bar is disabled and there is only one window in workspace
|
|
|
|
# disable_border = 1
|
|
|
|
|
|
|
|
# Bar Settings
|
|
|
|
bar_action = ~/.config/polybar/launch-spectrwm.sh
|
|
|
|
bar_action_expand = 1
|
|
|
|
bar_enabled = 1
|
|
|
|
bar_border_width = 5
|
|
|
|
bar_border[1] = rgb:28/2a/36
|
|
|
|
bar_border_unfocus[1] = rgb:28/2a/36
|
|
|
|
bar_color[1] = rgb:28/2a/36, rgb:00/80/80
|
|
|
|
bar_color_selected[1] = rgb:00/80/80
|
|
|
|
bar_delay = 5
|
|
|
|
bar_font_color[1] = rgb:bb/c5/ff, rgb:e1/ac/ff, rgb:dd/ff/a7, rgb:ff/8b/92, rgb:ff/e5/85, rgb:89/dd/ff
|
|
|
|
bar_font_color_selected = black
|
|
|
|
#bar_font = Mononoki Nerd Font:size=9, JoyPixels:size=9
|
|
|
|
#bar_font = Mononoki Nerd Font:size=9
|
|
|
|
bar_font = Noto Sans Font:size=9
|
|
|
|
bar_justify = center # Don't touch
|
|
|
|
|
|
|
|
#bar_format = +|L+1<+N:+I +S (+D) +P +|R+A+1< # Bars on the sides
|
|
|
|
#bar_format = +|L+1<+N:+I +S (+D) +W +|R+A+1< # Bars on the sides + window titles
|
|
|
|
bar_format = +N:+I +S (+D) +P +4< +8<+A+4<+V # Bar in the center
|
|
|
|
#bar_format = +N:+I +S (+D) +C +4< +8<+A+4<+V # Bar in the center (more simple)
|
|
|
|
#bar_format = +N:+I +S <+D>+4< +8<+A+4<+V # Bar in the center (minimal)
|
|
|
|
|
|
|
|
workspace_indicator = listcurrent,listactive,markcurrent,printnames
|
|
|
|
bar_at_bottom = 0
|
|
|
|
stack_enabled = 1
|
|
|
|
#clock_enabled = 1
|
|
|
|
#clock_format = %a %b %d %R %Z %Y
|
|
|
|
iconic_enabled = 0
|
|
|
|
maximize_hide_bar = 0
|
|
|
|
window_class_enabled = 1
|
|
|
|
window_instance_enabled = 1
|
|
|
|
window_name_enabled = 1
|
|
|
|
verbose_layout = 1
|
|
|
|
urgent_enabled = 1
|
|
|
|
|
|
|
|
# Dialog box size ratio when using TRANSSZ quirk; 0.3 < dialog_ratio <= 1.0
|
|
|
|
# dialog_ratio = 0.6
|
|
|
|
|
|
|
|
# Split a non-RandR dual head setup into one region per monitor
|
|
|
|
# (non-standard driver-based multihead is not seen by spectrwm)
|
|
|
|
# region = screen[1]:1280x1024+0+0
|
|
|
|
# region = screen[1]:1280x1024+1280+0
|
|
|
|
|
|
|
|
# Launch applications in a workspace of choice
|
|
|
|
#autorun = ws[1]:xterm
|
|
|
|
# autorun = ws[2]:xombrero http://www.openbsd.org
|
|
|
|
autorun = ws[1]:~/.config/spectrwm/startwallpaper.sh
|
|
|
|
|
|
|
|
# Configure screens and resolution
|
|
|
|
autorun = ws[1]:~/.config/spectrwm/startxrandr.sh
|
|
|
|
|
|
|
|
# Load compton of picom
|
|
|
|
autorun = ws[1]:~/.config/spectrwm/startcompositor.sh
|
|
|
|
|
2021-12-13 21:55:51 +01:00
|
|
|
# Start screensaver
|
|
|
|
autorun = ws[1]:~/.config/spectrwm/startscreensaver.sh
|
2021-12-07 20:59:05 +01:00
|
|
|
|
|
|
|
# Autostart script
|
|
|
|
autorun = ws[1]:~/.config/spectrwm/autostart.sh
|
|
|
|
|
|
|
|
# Autostart tray on Workspace 7
|
|
|
|
#autorun = ws[7]:~/.config/spectrwm/showtray.sh
|
|
|
|
|
|
|
|
# Customize workspace layout at start
|
|
|
|
# layout = ws[1]:4:0:0:0:vertical
|
|
|
|
# layout = ws[2]:0:0:0:0:horizontal
|
|
|
|
# layout = ws[3]:0:0:0:0:fullscreen
|
|
|
|
# layout = ws[4]:4:0:0:0:vertical_flip
|
|
|
|
# layout = ws[5]:0:0:0:0:horizontal_flip
|
|
|
|
|
|
|
|
# Set workspace name at start
|
|
|
|
name = ws[1]:term
|
|
|
|
name = ws[2]:www
|
|
|
|
name = ws[3]:chat
|
|
|
|
name = ws[4]:files
|
|
|
|
name = ws[5]:media
|
|
|
|
name = ws[6]:game
|
|
|
|
name = ws[7]:mail
|
|
|
|
name = ws[8]:dev
|
|
|
|
name = ws[9]:vm
|
|
|
|
name = ws[10]:all
|
|
|
|
|
|
|
|
# Mod key, (Windows key is Mod4) (Apple key on OSX is Mod2)
|
|
|
|
modkey = Mod4
|
|
|
|
|
|
|
|
# This allows you to include pre-defined key bindings for your keyboard layout.
|
|
|
|
# keyboard_mapping = ~/.spectrwm_us.conf
|
|
|
|
|
|
|
|
# PROGRAMS
|
|
|
|
|
|
|
|
# Validated default programs:
|
|
|
|
# program[lock] = xlock
|
2022-04-07 10:24:16 +02:00
|
|
|
program[term] = kitty
|
2021-12-07 20:59:05 +01:00
|
|
|
program[menu] = dmenu_run $dmenu_bottom -fn $bar_font -nb $bar_color -nf $bar_font_color -sb $bar_color_selected -sf $bar_font_color_selected
|
|
|
|
#program[search] = dmenu $dmenu_bottom -i -fn $bar_font -nb $bar_color -nf $bar_font_color -sb $bar_color_selected -sf $bar_font_color_selected
|
|
|
|
#program[name_workspace] = dmenu $dmenu_bottom -p Workspace -fn $bar_font -nb $bar_color -nf $bar_font_color -sb $bar_color_selected -sf $bar_font_color_selected
|
|
|
|
|
|
|
|
# Key bindings for United States (us) keyboards
|
|
|
|
# unbind with: bind[] = <keys>
|
|
|
|
#bind[bar_toggle] = MOD+b
|
|
|
|
#bind[bar_toggle_ws] = MOD+Shift+b
|
|
|
|
bind[button2] = MOD+v
|
|
|
|
bind[cycle_layout] = MOD+space
|
|
|
|
bind[flip_layout] = MOD+Shift+backslash
|
|
|
|
bind[float_toggle] = MOD+t
|
|
|
|
bind[focus_main] = MOD+m
|
|
|
|
bind[focus_next] = MOD+j
|
|
|
|
bind[focus_next] = MOD+Tab
|
|
|
|
bind[focus_prev] = MOD+k
|
|
|
|
bind[focus_prev] = MOD+Shift+Tab
|
|
|
|
#bind[focus_urgent] = MOD+u
|
|
|
|
bind[height_grow] = MOD+Shift+equal
|
|
|
|
bind[height_shrink] = MOD+Shift+minus
|
|
|
|
#bind[iconify] = MOD+w
|
|
|
|
bind[initscr] = MOD+Shift+i
|
|
|
|
#bind[lock] = MOD+Shift+Delete
|
|
|
|
#bind[master_add] = MOD+Shift+comma
|
|
|
|
#bind[master_del] = MOD+Shift+period
|
|
|
|
#bind[master_grow] = MOD+l
|
|
|
|
#bind[master_shrink] = MOD+h
|
|
|
|
bind[maximize_toggle] = MOD+e
|
|
|
|
bind[move_down] = MOD+Shift+bracketright
|
|
|
|
bind[move_left] = MOD+bracketleft
|
|
|
|
bind[move_right] = MOD+bracketright
|
|
|
|
bind[move_up] = MOD+Shift+bracketleft
|
|
|
|
bind[mvrg_1] = MOD+Shift+KP_End
|
|
|
|
bind[mvrg_2] = MOD+Shift+KP_Down
|
|
|
|
bind[mvrg_3] = MOD+Shift+KP_Next
|
|
|
|
bind[mvrg_4] = MOD+Shift+KP_Left
|
|
|
|
bind[mvrg_5] = MOD+Shift+KP_Begin
|
|
|
|
bind[mvrg_6] = MOD+Shift+KP_Right
|
|
|
|
bind[mvrg_7] = MOD+Shift+KP_Home
|
|
|
|
bind[mvrg_8] = MOD+Shift+KP_Up
|
|
|
|
bind[mvrg_9] = MOD+Shift+KP_Prior
|
|
|
|
bind[mvws_1] = MOD+Shift+1
|
|
|
|
bind[mvws_2] = MOD+Shift+2
|
|
|
|
bind[mvws_3] = MOD+Shift+3
|
|
|
|
bind[mvws_4] = MOD+Shift+4
|
|
|
|
bind[mvws_5] = MOD+Shift+5
|
|
|
|
bind[mvws_6] = MOD+Shift+6
|
|
|
|
bind[mvws_7] = MOD+Shift+7
|
|
|
|
bind[mvws_8] = MOD+Shift+8
|
|
|
|
bind[mvws_9] = MOD+Shift+9
|
|
|
|
bind[mvws_10] = MOD+Shift+0
|
|
|
|
bind[mvws_11] = MOD+Shift+F1
|
|
|
|
bind[mvws_12] = MOD+Shift+F2
|
|
|
|
bind[mvws_13] = MOD+Shift+F3
|
|
|
|
bind[mvws_14] = MOD+Shift+F4
|
|
|
|
bind[mvws_15] = MOD+Shift+F5
|
|
|
|
bind[mvws_16] = MOD+Shift+F6
|
|
|
|
bind[mvws_17] = MOD+Shift+F7
|
|
|
|
bind[mvws_18] = MOD+Shift+F8
|
|
|
|
bind[mvws_19] = MOD+Shift+F9
|
|
|
|
bind[mvws_20] = MOD+Shift+F10
|
|
|
|
bind[mvws_21] = MOD+Shift+F11
|
|
|
|
bind[mvws_22] = MOD+Shift+F12
|
|
|
|
bind[name_workspace] = MOD+Shift+slash
|
|
|
|
#bind[quit] = MOD+Shift+q
|
|
|
|
bind[quit] = MOD+Shift+Delete
|
|
|
|
bind[raise_toggle] = MOD+Control+r
|
|
|
|
bind[restart] = MOD+Shift+r
|
|
|
|
bind[rg_1] = MOD+KP_End
|
|
|
|
bind[rg_2] = MOD+KP_Down
|
|
|
|
bind[rg_3] = MOD+KP_Next
|
|
|
|
bind[rg_4] = MOD+KP_Left
|
|
|
|
bind[rg_5] = MOD+KP_Begin
|
|
|
|
bind[rg_6] = MOD+KP_Right
|
|
|
|
bind[rg_7] = MOD+KP_Home
|
|
|
|
bind[rg_8] = MOD+KP_Up
|
|
|
|
bind[rg_9] = MOD+KP_Prior
|
|
|
|
bind[rg_next] = MOD+period
|
|
|
|
bind[rg_prev] = MOD+comma
|
|
|
|
#bind[screenshot_all] = MOD+s
|
|
|
|
bind[screenshot_wind] = MOD+Shift+s
|
|
|
|
bind[search_win] = MOD+f
|
|
|
|
bind[search_workspace] = MOD+slash
|
|
|
|
bind[stack_dec] = MOD+Shift+period
|
|
|
|
bind[stack_inc] = MOD+Shift+comma
|
|
|
|
bind[stack_reset] = MOD+Shift+space
|
|
|
|
# bind[swap_main] = MOD+Return
|
|
|
|
#bind[swap_next] = MOD+Shift+j
|
|
|
|
#bind[swap_prev] = MOD+Shift+k
|
|
|
|
#bind[uniconify] = MOD+Shift+w
|
|
|
|
bind[version] = MOD+Shift+v
|
|
|
|
bind[width_grow] = MOD+equal
|
|
|
|
bind[width_shrink] = MOD+minus
|
|
|
|
bind[wind_del] = MOD+Shift+c
|
|
|
|
bind[wind_kill] = MOD+Shift+x
|
|
|
|
bind[ws_1] = MOD+1
|
|
|
|
bind[ws_2] = MOD+2
|
|
|
|
bind[ws_3] = MOD+3
|
|
|
|
bind[ws_4] = MOD+4
|
|
|
|
bind[ws_5] = MOD+5
|
|
|
|
bind[ws_6] = MOD+6
|
|
|
|
bind[ws_7] = MOD+7
|
|
|
|
bind[ws_8] = MOD+8
|
|
|
|
bind[ws_9] = MOD+9
|
|
|
|
bind[ws_10] = MOD+0
|
|
|
|
bind[ws_11] = MOD+F1
|
|
|
|
bind[ws_12] = MOD+F2
|
|
|
|
bind[ws_13] = MOD+F3
|
|
|
|
bind[ws_14] = MOD+F4
|
|
|
|
bind[ws_15] = MOD+F5
|
|
|
|
bind[ws_16] = MOD+F6
|
|
|
|
bind[ws_17] = MOD+F7
|
|
|
|
bind[ws_18] = MOD+F8
|
|
|
|
bind[ws_19] = MOD+F9
|
|
|
|
bind[ws_20] = MOD+F10
|
|
|
|
bind[ws_21] = MOD+F11
|
|
|
|
bind[ws_22] = MOD+F12
|
|
|
|
bind[ws_next] = MOD+Right
|
|
|
|
bind[ws_next_all] = MOD+Up
|
|
|
|
bind[ws_next_move] = MOD+Shift+Up
|
|
|
|
bind[ws_prev] = MOD+Left
|
|
|
|
bind[ws_prev_all] = MOD+Down
|
|
|
|
bind[ws_prev_move] = MOD+Shift+Down
|
|
|
|
bind[ws_prior] = MOD+a
|
|
|
|
|
|
|
|
# To disable validation of the above, free the respective binding(s):
|
|
|
|
# bind[] = MOD+Shift+Delete # disable lock
|
|
|
|
# bind[] = MOD+Shift+Return # disable term
|
|
|
|
# bind[] = MOD+p # disable menu
|
|
|
|
bind[] = MOD+Shift+q # Disable close session
|
|
|
|
bind[] = MOD+q # Disable restart spectrwm (Use Win+Shift+r)
|
|
|
|
|
|
|
|
# Optional default programs that will only be validated if you override:
|
|
|
|
# program[screenshot_all] = screenshot.sh full # optional
|
|
|
|
# program[screenshot_wind] = screenshot.sh window # optional
|
|
|
|
# program[initscr] = initscreen.sh # optional
|
|
|
|
|
|
|
|
## Volume Bindings
|
|
|
|
program[volup] = pactl set-sink-volume @DEFAULT_SINK@ +5%
|
|
|
|
program[voldown] = pactl set-sink-volume @DEFAULT_SINK@ -5%
|
|
|
|
program[mute] = pactl set-sink-mute @DEFAULT_SINK@ toggle
|
|
|
|
bind[volup] = XF86_AudioRaiseVolume
|
|
|
|
bind[voldown] = XF86_AudioLowerVolume
|
|
|
|
bind[mute] = XF86_AudioMute
|
|
|
|
|
|
|
|
## Brightmess Bindings
|
|
|
|
program[brightup] = light -A 10
|
|
|
|
#program[brightup] = xrandr --output HDMI1 --brightness 1.0
|
|
|
|
program[brightdown] = light -U 10
|
|
|
|
#program[brightdown] = xrandr --output HDMI1 --brightness 0.75
|
|
|
|
bind[brightup] = XF86_MonBrightnessUp
|
|
|
|
bind[brightdown] = XF86_MonBrightnessDown
|
|
|
|
|
|
|
|
# EXAMPLE: Define 'firefox' action and bind to key.
|
|
|
|
program[firefox] = firefox
|
|
|
|
bind[firefox] = MOD+b
|
|
|
|
|
|
|
|
# Choose between NetworkManager or Connman
|
|
|
|
program[connection] = nm-connection-editor
|
|
|
|
#program[connection] = connman-gtk --no-icon
|
|
|
|
bind[connection] = MOD+c
|
|
|
|
|
|
|
|
program[pavucontrol] = pavucontrol
|
|
|
|
bind[pavucontrol] = MOD+v
|
|
|
|
|
2022-04-07 10:24:16 +02:00
|
|
|
program[kitty] = kitty
|
|
|
|
bind[kitty] = MOD+Return
|
2021-12-07 20:59:05 +01:00
|
|
|
|
|
|
|
program[terminal] = xterm
|
|
|
|
bind[terminal] = MOD+u
|
|
|
|
|
|
|
|
program[downscreen] = ~/.config/spectrwm/down-screen.sh
|
|
|
|
bind[downscreen] = MOD+Delete
|
|
|
|
|
|
|
|
program[pcmanfm] = pcmanfm
|
|
|
|
bind[pcmanfm] = MOD+n
|
|
|
|
|
|
|
|
program[rofirun] = rofi -show run
|
|
|
|
bind[rofirun] = MOD+p
|
|
|
|
|
|
|
|
program[rofitheme] = rofi-theme-selector
|
|
|
|
bind[rofitheme] = MOD+d
|
|
|
|
|
|
|
|
program[rofidrun] = rofi -modi drun,run -show drun
|
|
|
|
bind[rofidrun] = MOD+o
|
|
|
|
|
|
|
|
program[rofiwindow] = rofi -show window
|
|
|
|
bind[rofiwindow] = MOD+Shift+w
|
|
|
|
|
|
|
|
program[lxappearance] = lxappearance
|
|
|
|
bind[lxappearance] = MOD+i
|
|
|
|
|
|
|
|
program[lxrandr] = lxrandr
|
|
|
|
bind[lxrandr] = MOD+x
|
|
|
|
|
|
|
|
program[xfce4-screenshooter] = xfce4-screenshooter
|
|
|
|
bind[xfce4-screenshooter] = MOD+s
|
|
|
|
|
|
|
|
program[nitrogen] = nitrogen
|
|
|
|
bind[nitrogen] = MOD+z
|
|
|
|
|
|
|
|
program[showtray] = ~/.config/polybar/launch-spectrwm.sh
|
|
|
|
bind[showtray] = MOD+Shift+t
|
|
|
|
|
|
|
|
# QUIRKS
|
|
|
|
# Default quirks, remove with: quirk[class:name] = NONE
|
|
|
|
quirk[Nitrogen:nitrogen] = FLOAT
|
|
|
|
quirk[Lxrandr:lxrandr] = FLOAT
|
|
|
|
quirk[Connman-gtk:connman-gtk] = FLOAT
|
|
|
|
quirk[Nm-connection-editor:nm-connection-editor] = FLOAT
|
|
|
|
quirk[Pavucontrol:pavucontrol] = FLOAT
|
|
|
|
quirk[Lxappearance:lxappearance] = FLOAT
|
|
|
|
quirk[vlc:vlc] = FLOAT
|
|
|
|
quirk[mpv:gl] = FLOAT
|
|
|
|
quirk[Engrampa:engrampa] = FLOAT
|
|
|
|
quirk[Xarchiver:xarchiver] = FLOAT
|
|
|
|
quirk[Ristretto:ristretto] = FLOAT
|
|
|
|
quirk[Gimp:gimp] = FLOAT + ANYWHERE
|
|
|
|
quirk[Gimp-2.10:gimp-2.10] = FLOAT + ANYWHERE
|
|
|
|
quirk[Mozilla VPN:mozillavpn] = FLOAT
|
|
|
|
quirk[VirtualBoxVM:VirtualBoxVM] = FLOAT + ANYWHERE
|
|
|
|
quirk[VirtualBox Machine:VirtualBox Machine] = FLOAT + ANYWHERE
|
|
|
|
# quirk[MPlayer:xv] = FLOAT + FULLSCREEN + FOCUSPREV
|
|
|
|
# quirk[OpenOffice.org 2.4:VCLSalFrame] = FLOAT
|
|
|
|
# quirk[OpenOffice.org 3.0:VCLSalFrame] = FLOAT
|
|
|
|
# quirk[OpenOffice.org 3.1:VCLSalFrame] = FLOAT
|
|
|
|
# quirk[Firefox-bin:firefox-bin] = TRANSSZ
|
|
|
|
# quirk[Firefox:Dialog] = FLOAT
|
|
|
|
# quirk[Gimp:gimp] = FLOAT + ANYWHERE
|
|
|
|
# quirk[XTerm:xterm] = XTERM_FONTADJ
|
|
|
|
# quirk[xine:Xine Window] = FLOAT + ANYWHERE
|
|
|
|
# quirk[Xitk:Xitk Combo] = FLOAT + ANYWHERE
|
|
|
|
# quirk[xine:xine Panel] = FLOAT + ANYWHERE
|
|
|
|
# quirk[Xitk:Xine Window] = FLOAT + ANYWHERE
|
|
|
|
# quirk[xine:xine Video Fullscreen Window] = FULLSCREEN + FLOAT
|
|
|
|
# quirk[pcb:pcb] = FLOAT
|