Web Analytics Made Easy -
StatCounter
Skip to content

My spectrwm configuration file (with comments)

See also i3 and Spectrwm Compared

Actually, the default spectrwm.conf works pretty well, apart perhaps from changing the Mod key. It's easy to try out changes on the fly; just edit the file with the help of the man page and test it with Mod+q. If you make a mistake Spectrwm will tell you by printing an error message in the bar.

Just one caution: some mistakes may prevent spectrwm from starting, so be careful about using Mod+Shift+q. If that happens you will have to edit .spectrwm.conf without using X-Windows. This doesn't apply to Mod+q.



# PLEASE READ THE MAN PAGE BEFORE EDITING THIS FILE # http://omensource.conformal.com/cgi-bin/man-cgi?spectrwm
#
# NOTE: all rgb color values in this file are in hex! see XQueryColor for examples

workspace_limit = 5 # I don't need more than this

bind[flip_layout] = Mod+r # default binding doesn't work on my keyboard.

# The next three entries to make Mod+Space alternate the focus between Main and a window in Stack. This is something I do very frequently whereas I don't need to alternate between layouts much.

bind[focus_main] = Mod+space
bind[layout_vertical] = Mod+v
bind[layout_horizontal] = Mod+z

# Window Decoration
border_width = 4
color_focus = red
# color_unfocus = rgb:88/88/88
color_unfocus = green
tile_gap = -1

# Remove window border when bar is disabled and there is only one window in workspace
disable_border = 1

# Bar Settings
bar_enabled = 1
bar_border_width = 2
# bar_border[1] = rgb:00/80/80
# bar_border_unfocus[1] = rgb:00/40/40
bar_border[1] = yellow
bar_border_unfocus[1] = yellow
# bar_color[1] = black
# bar_font_color[1] = rgb:a0/a0/a0
bar_font_color[1] = white
# bar_font = -*-terminus-medium-*--*--*--*--*--
bar_font = -*-courier-*-r-*--*-120-*--*--*-
# bar_action = conky
bar_justify = left
bar_format = %a %b %d %R +S +F +L +V
# name = ws[5]:Firefox
#bar_format = +N +I +S <+D>+4<%a %b %d %R %Z %Y+8<+A+4<+V
bar_at_bottom = 1
# stack_enabled = 1
#clock_enabled = 1
# clock_format = %a %b %c %d %R %Z %Y
# region_padding = 0
window_name_enabled = 1
# verbose_layout = 1
# urgent_enabled = 1

# Spawn Applications
spawn_position = first # better than default last?

# 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

# Customize workspace layout at start
layout = ws[1]:0:0:0:0:max
# layout = ws[2]:0:0:1:0:fullscreen
# layout = ws[3]:0:0:0:0:vertical
# layout = ws[4]:0:0:1:0:fullscreen
# layout =
# ws[5]:0:0:0:0:vertical

# Mod key, (Windows key is Mod4) (Apple key on OSX is Mod2)
modkey = Mod4
iconic_enabled = 1

# This restricts toggling bar to one workspace
bind[bar_toggle_ws] = Mod+b

# The default key bindings for screenshots are easy to hit accidentally so replace these with Mod+F12 etc.
bind[] = Mod+s
bind[] = Mod+Shift+s
bind[screenshot_all] = Mod+F12
bind[screenshot_wind] = Mod+Shift+F12


# Swap between workspaces back and forth (very useful)
# Can use alternatives
bind[ws_prior] = Mod+Shift+Up
bind[ws_prior] = Mod+Shift+Down
bind[ws_prior] = Mod+Shift+Left
bind[ws_prior] = Mod+Shift+Right

# This allows you to include pre-defined key bindings for your keyboard layout.
# keyboard_mapping = ~/.spectrwm_us.conf

# PROGRAMS
# Validated default programs:
program[lock] = xterm
# program[term] = xterm -fn -adobe-courier-bold-r-normal--18-180-75-75-m-110-iso8859-1
program[term] = xterm

# QUIRKS
# Default quirks, remove with: quirk[class:name] = NONE
# 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[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
quirk[Xsane:xsane] = FLOAT + ANYWHERE
# quirk[XaoS:xaos] = FLOAT + ANYWHERE
# quirk[Firefox:firefox] = TRANSSZ
# quirk[Firefox:Dialog] = FLOAT
quirk[Gimp:gimp] = FLOAT + ANYWHERE
# quirk[XTerm:xterm] = XTERM_FONTADJ



Trackbacks

No Trackbacks

Comments

Display comments as Linear | Threaded

Mike on :

Thank you for sharing this! I've begun reading "Totality Beliefs and the Religious Imagination" which naturally led me to your web site. Happy to see you're a fan of Unix/Linux as well! I've dabbled with some tiling window managers but this is the the first time I've tried Spectrwm. So far so good! I do appreciate the simple configuration file and sane defaults. Here's what I have so far: https://scrot.moe/image/6GQPW. I'll continue to tweak it over time but I'm quite pleased already.

Add Comment

Enclosing asterisks marks text as bold (*word*), underscore are made via _word_.
E-Mail addresses will not be displayed and will only be used for E-Mail notifications.
How many legs do snakes have?
Form options