Christian Stryczynski

Freelance software developer. Haskelling at night. Hopefully unconventional. Fan of Dvorak

Windows tiling manager 4K / large monitor friendly layout - XMonad layout

I've found windows tiling managers really useful, having used Awesome served me quite well. However as soon as I upgrade to a large 40" 4K monitor - it didn't quite work as effectively. 

I migrated to XMonad as it provides unlimited functionality. In fact the configuration file is a Haskell program - you can pretty much do anything imaginable as long as you can develop it. There is a huge collection of modules available for it, with all sorts of crazy layouts.

So I've created my own layout optimized for my workflow - which works wonderfully on a large monitor. It's available on github:

I've used this layout extensively for the past 8 months, I'm often adding additional functionality - it's a breeze when using Haskell too (strong types, compile errors etc).

The layout creates a single main window with two side columns. The two side columns have the windows vertically stacked.

It's similar to but it does not "collapse" the columns if there is less then 3 windows.

Main features:

  • Main rectangle that is centered.
  • Additional rows can be added in the middle column.
  • Set a specific ratio between rows in the middle column can be set when there are two or three windows in the middle column.
  • Pin the left or right to have a maximum amount windows. (I usually have two left pinned windows). So for example you can pin the left column to only have a maximum of two windows, of which additional windows would accumulate on the right column.
  • Swop the left or right column with the middle column.
  • Swop or focus a window in the left or right column by the position in the column. For example you can focus the 3rd Window in the left column.
  • Set the left or right column width individually.

Written by Christian Stryczynski on Saturday April 8, 2017

Permalink -

« Awesome podcasts / talks about software development - Going freelance fulltime! »