i3zen for Tabbing and Floating Windows

HOME Articles Downloads Bash Shell Command Line Python and Data Science Books You Should Read NOW!

i3zen is one of several helpul scripts from Budlabs/i3ass which improves features of the i3 Window Manager. It streamlines and automates i3 window setups on-the-fly when you're working - making it easier to focus and get things done on your computer. When it is smart to use a floating window in an uncluttered workspace, it is just a keytap away. When it is smart for new windows to open in a tabbed container, they do. Easy, smart, and yet another reason why I really like the combination of Linux and i3wm. Here, I will show how I have set it up on a Linux system I use every day.

i3zen floats and tabs a container in i3wm
Floating and tabbed containers in i3zen

The way to implement i3zen is fairly simple. You need the git and build-essential packages (or equivalents) installed on your system. If you are on Catbird Linux, they are installed (eh - so is i3ass).

  1. Git clone the Budlabs/i3ass repository referenced above and execute sudo make install in the new directory to install the scripts.
  2. I3zen should run on a hot key. On my system, I use [Ctrl] + [Super] + [Space] for i3zen. Program your keybinds in .config/i3/config and then restart i3.

In the following image, see the i3 configuration code which sets a variable for conveying execution instructions for i3zen:

i3zen execution code
Code in the i3 config for executing i3zen.

Further down in my i3 config file, there is a keybinding for triggering i3zen, abbreviated above as ".":

i3zen keybinding
Setting the keybinding for i3zen.

To use i3zen, focus on the application window to "zennify" and hit the proper keybind. The application should move to a new workspace and float. If you hit the key combination again, the app should move back into place, tiled, in the original workspace. While a window is floating in zen mode, new applications will open in tabs. Technically, the windows float within a container, programmed in tabbing mode - independent of other containers open during the computing session.

How does one use i3zen in practice? In my case, I often use it to focus and declutter when working with code or plain language text. It is a lean and clean way to do computing. When editing audio or video, I want to see the data on the whole screen, rarely floating. For terminal-intensive tasks, i3zen is fantastic. I can very quickly bring up several terminals, all neatly tabbed in one floating container. "Tap - tap - tap" and there they are!

The i3 window manager is much more configurable than most people would expect. In the stock configuration, i3 is effective and efficient as a tiling window manager. For more features, like sophisticated sizing and positioning of containers, extra scripts and the use of an external listener for interprocess communication is necessary. No one uses the word "plugin" to describe and "extra script which acts in response to IPC signals" but that's what they are... Here we use it to manage floating and tabbing, but anything is possible with i3, as it is with Linux.

Enjoy i3zen and lean into ricing your i3.

©2020 - 2022 Catbirdlinux.com, All Rights Reserved.
Contact Us, Privacy Policy and Affiliate Disclosure, XML Sitemap.