Petronia
A Python Window Tiler for Windows
Install / Use
/learn @groboclown/PetroniaREADME
Petronia: A Python Tiling Window Manager
Or: How We Retrained Windows To Be Useful
Version 3 In Development!
Because you didn't ask for it!
It is turning into a cross-platform window manager.
Version 2.2 Is Out!
- petronia-2.2-x64.zip (12.4 MB) Pre-bundled Python 3.5 and Petronia in a handy-dandy 64-bit executable. For x64 Windows Computers Only
- petronia-2.2-x86.zip (11.7 MB) Pre-bundled Python 3.5 and Petronia in a handy-dandy executable. For 32-bit and 64-bit Windows Computers
- petronia-2.2-src.zip (< 1 MB) The source distribution, for users who want to see what's happening, and to use their own installed version of Python.
<a href="http://www.youtube.com/watch?feature=player_embedded&v=SRBJnFcBuqI" target="_blank"><img src="http://img.youtube.com/vi/SRBJnFcBuqI/0.jpg" alt="Introduction to Petronia" width="240" height="180" border="10" /></a>
Manage Your Windows as Tiles
Tiles allow you to divide up your monitors into distinct areas for your applications.
Petronia can carve up your screen into a variety of rectangular shapes, while still accommodating floating windows for the windows that work best in them, or overlapping full-screen windows.
Petronia also allows for different tile layouts per monitor layout, so your laptop can look good by itself or docked with 3 additional monitors.
Really, it's up to you on how to setup your screen.
Easily Move Windows Between Tiles
Petronia gives you control. With easy key strokes, you can move a window between different tiles. You can flip between windows within a tile. You can change to a window within another tile. So many options!
You can setup your keys however you like. You can have a keystroke to enter a window movement mode, or use hotkeys.
You can also prevent Windows from using the <kbd>❖ Win</kbd> key and use it for whatever you like.
Strip off Useless Borders to See More of What's Important
With a tile layout, and the availability of keys to perform the same actions, the title bar and resize borders are useless wastes of space. Remove them and see more of what's actually important.

Windows 8.1 - Look at all that wasted screen space

Windows 8.1 stripped of all the chrome - Oh mi gorsh I can see so much more of my work!
Current State of the Software
The code is in a good working order, if you're running in a tested environment.
This was written against 64-bit Windows 8.1, with some limited testing on 64-bit Windows 10. I'm not sure if it will work with other versions. The Windows interfacing code allows for working with different bit-ness and different versions, but those haven't been tested.
If you find issues with your environment, please file a bug, and be sure to include which version of Windows you're using, and whether it's 32-bit or 64-bit.
Running
You have two ways to run Petronia, either from source, or from a pre-bundled executable.
See the Getting Started Guide for details on how to run and setup your Petronia environment.
I Don't Like Source Code
Download the latest release for your platform (64-bit or 32-bit) and uncompress it to a directory on your computer using a tool like 7-zip, or WinZip, or unzip.
From a command-prompt, you can run:
> petronia example-configs\user_test_config.yaml
Or, drag a configuration file on top of the petronia.exe file. Press
<kbd>❖ Win</kbd><kbd>F4</kbd> to stop the program.
I Like Pain
You'll need to ensure you're running Python 3.5 or higher. This has been tested on the python.org release version 3.5.2. You'll need to install the proper version of Python for your system. If you're running a 64-bit OS, then use the 64-bit Python. If you are running a 32-bit OS, then use the 32-bit Python.
Then, download the source. You'll need to configure the setup for your
computer; the example is user_test_config.py. You can name the file
whatever you want, but it should live in the src directory.
Once you have your configuration setup, you just run in a cmd prompt:
> set Path=(python 3.5.2 directory);%Path%
> cd (petronia dir)\src
> python -u -m petronia.cmd my_config_file.yaml
Press <kbd>↵ Enter</kbd> in the command window to stop the program.
So bleeding edge!
