Xmonad

Xmonad


A dynamically tiling X11 window manager that is written and configured in Haskell.

In a normal WM, you spend half your time aligning and searching for windows. XMonad makes work easier, by automating this.

Finding class of a window to assign workspace #

xprop | grep WM_CLASS # X property
# Result
# WM_CLASS(STRING) = "tilix", "Tilix"(class name)
# WM_CLASS(STRING) = "emacs", "Emacs"

E.g.: For example, in WM_CLASS(STRING) = “emacs”, “Emacs” – “emacs” is resource (appName), “Emacs” is className. ref

Managing floating windows #

By default all the Dialog resources will be displayed in floating window. If this window is too big to perform the dialog action, use Mod-t to flatten it. ref.

Other relevant actions: #

  1. Mod-button1(mouse left click)-> click and drag
  2. Mod-button2(mouse middle click) -> resize
  3. Mod-button3(mouse right click) -> resize floating window

Useful references #

  1. I found this reference useful to understand floating layout.
  2. start services or applications in workspaces

Xmonad CS #

M (modifier key)
Windows/Command button
M-l
expand
M-h
shrink
M-c
close application
M-Space
rofi
M-e-
emacs
M-S-l
slock (screen lock)
M-s g
search google
M-S-b
change background wall paper
M-S-r
recompile xmonad
M-Enter
Terminal
M-,.(<>)
left right apps in a workspace
M-jk
left right across workspaces
M-e
emacs
  • M-e e: launch emacs client
  • M-e d: dired in home