Amir XYZ

Some thoughts about i3 or sway or whatever tiling window manager you are using

April 13, 2019

To keep it short, my setup generally consists of moving things with the $mod key and WASD, $mod+1234567890 for workspaces or desktops, also some $mod+{F keys} for some special magic.

I use the Windows key as my $mod key because my alt is used in many other situations. At work I use WebStorm and that means I need my alt for all kinds of interesting hotkeys, and actually, this is the same case with VSCode (or [VSCodium][1]). A Windows $mod key lets me have all my tiling window manager perks still available with those programs.

During a few years of using a tiling window manager, I realized that even though everyone wants to be a cool kid and not use the mouse, we use the mouse. So I realized that if my right hand moved from the keyboard to the mouse, it would still be nice to operate the window manager with my left hand. Playing CS:GO for a few days, it hit me that my WM hjkl or jkl; keys are stupid and I should use WASD. This made me remap the stacking and 'windowed' tiling modes to $mod+c and $mod+t (for tabbed). $mod+e still stayed the same as my muscle memory for that is too strong. That experiment was cool because alongside with $mod+1234 I had pretty good control of things while still grasping to the mouse. In other words, move windows, change layouts/tiling modes, switch workspaces.

The only thing I can probably tweak is moving workspaces to different monitors, as I need two hands for that now on my 3 monitor setup at work. I can probably do something with z and x or something.

And now for something nice:

Floating windows by default :(

For quite some time I wanted to try something cool. I actually like floating windows on traditional window managers, I just don't like to lay them out side by side or size them or all those stupid tasks. However, I also dislike fullscreen on many apps.

So hey, why not:

I'm still only a few days with this setup and I'm trying to adjust, it feels nice that the tiling is not forced on my with only a handful of apps on the screen, and whenever I feel sad I just hit $mod+tab and my windows are tiled. $mod+shift+tab to float.

It looks something like this:

bindsym $mod+q floating toggle
bindsym $mod+Tab [workspace="__focused__"] floating disable
bindsym $mod+shift+Tab [workspace="__focused__"] floating enable

for_window [window_type="normal"] floating enable

WASD and q for resizing

Also, I forgot, I use WASD for resizing too. Instead of ESC or Enter or dunno what was the exit key for the default resize, I simply use 'q'. Cool.

bindsym $mod+r mode "resize"

mode "resize" {
    bindsym a resize shrink width 10 px or 10 ppt
    bindsym w resize grow height 10 px or 10 ppt
    bindsym s resize shrink height 10 px or 10 ppt
    bindsym d resize grow width 10 px or 10 ppt
    bindsym q mode "default"

I'm sorry it's late and I just have a Todo task about writing a blog post. So that's gonna be checked soon and good night.