I tried a tiling window manager (xmonad) once but found the concept to be too restrictive. Since then I have discovered that I don’t really need a tiling window manager for my daily needs but something which can tile windows for me conveniently within a regular window manager. tile_active_window
is my attempt at realizing this goal.
It is a python script for tiling the currently active window into preset locations on the screen using keyboard shortcuts (aka hotkeys).
It uses the wmctrl
Linux utility to resize and move windows and the xbindkeys
utility to bind itself to keyboard shortcuts.
I would recommend installing the tool as described in the installation section. However if you want to use this script yourself you may use it as follows…
tile_active_window <preset_location>
- left (Win+Left or Win+Numpad 4)
- top (Win+Up or Win+Numpad 8)
- right (Win+Right or Win+Numpad 6)
- bottom (Win+Down or Win+Numpad 2)
The following key bindings should make sense when you try them out.
- q1 (Win+Numpad 9)
- q2 (Win+Numpad 7)
- q3 (Win+Numpad 1)
- q4 (Win+Numpad 3)
- maximize (Win+Numpad 5)
Optional debug log location: /var/log/tile_active_window.log
. You may need to change the value of the DEBUG variable in tile_active_window to 1
to enable logging. Set it to 0
to disable logging.
Please backup relevant files before installation.
Run the following commands in a console to install the utility. I am assuming you are on a Debian/Ubuntu based Linux distro.
wget https://github.com/SDX2000/tile_active_window/raw/master/autoinstall
chmod +x autoinstall
./autoinstall
If you are on some other distro download the autoinstall file as above and make appropriate changes for your distro (should be easy).
As part of the installation the tile_active_window script will be copied to /usr/bin
and the .xbindkeysrc
file will be copied to your $HOME
directory.
Make sure xbindkeys has been installed and is running.
ps aux| grep xbindkeys
If xbindkeys
is not running run it using the xbindkeys
command. xbindkeys
should start automatically after a system restart henceforth.
Also check if ~/.xbindkeysrc
exists and is valid
ls ~/.xbindkeysrc
less ~/.xbindkeysrc
- Does not work as expected on a multi-monitor setup. If you have any hints on how to make this work please let me know!
- Linux
- wmctrl, xbindkeys
- python 3 (tested using python 3.3)