Utility for automatically storing & restoring application window layouts for specific screen configurations on the X Window System.
For example, if a user frequently changes their setup between a single laptop screen and two external monitors, this tool remembers & automatically restores all windows to their original positions for each monitor setup without the need for manual rearrangement.
Run pip install truhanen.windowlayouts
to install the script windowlayouts
to be used from the command line.
To install from source, run pip install .
in the project root directory.
- Python 3.7+
- wmctrl command line tool
usage: windowlayouts [-h] [--verbose] {store,restore,switch} ...
positional arguments:
{store,restore,switch}
store Store the current window layout for the current screen
layout. Replace a previously stored window layout if
such a window layout exists for the current screen
layout.
restore Restore a window layout if one with the current screen
layout has previously been stored.
switch Run store, then switch to a screen layout configured
in ~/.config/windowlayouts/config.ini, and
then run restore. Screen layout values in the
configuration file must be valid input for xrandr that
apply a specific screen layout. Each "output" of a
screen layout should be defined on a separate line in
the configuration value. See examples/config.ini for
example.
optional arguments:
-h, --help show this help message and exit
--verbose, -v Increase verbosity.