Configuring Calm Window Manager

· 2min · Dan F.
Table of Contents

Even though I am such a proponent of OpenBSD, and BSD's in general, my first foray into opensource was actually with linux. Since I was so young at the time, all I really seemed to care about was gnome vs kde. I quickly learned about the importance of the command line, and gradually shifted to become more interested in more minimal window managers. Trying out wm's like fluxbox, openbox, and ratpoison, I quickly became obsessed with the minimal.

I eventually settled on using i3wm on my thinkpad for awhile, but have since moved to simply ssh'ing into my servers from a chromebook. However, I recently game calm window manager a try, and have since fallen in love.

I only just started using CWM, in the end, CWM was quite simple to configure and provided powerful functionality. I quickly started using it as my every-day window manager while on the job. I will post my updates as I find better ways to utilize CWM. Keep in mind that this is my personal favorite way to use this wm, and your config could end up being vastly different. You can read about how to stay current by compiling cwm from source here.

~/.cwmrc

# Override terminal default
command term "xfce4-terminal"

# Set default font for menus
fontname "sans-serif:pixelsize=14:bold"

# Inherit current selected group
sticky yes

# Color things up
borderwidth 2
color activeborder   "#444444"
color inactiveborder "#111111"

# Application menu
command chrome      google-chrome
command xterm       xfce4-terminal

# Groupings
autogroup 1     "Terminal,terminal"
autogroup 2     "Google Chrome"

# Unbind some keys that are used in bash and tmux
unbind-key M-period
unbind-key M-Left
unbind-key M-Right
unbind-key M-Up
unbind-key M-Down

# Use Alt + num to focus on only specific group
bind-key M-1 group-only-1
bind-key M-2 group-only-2
bind-key M-3 group-only-3

# Add window to group
bind-key CMS-1 window-movetogroup-1
bind-key CMS-2 window-movetogroup-2
bind-key CMS-3 window-movetogroup-3
bind-key M-m menu-cmd

Has been tested on OpenBSD 6.4