polygon
polygon copied to clipboard
A Mac Rectangle inspired window manager for Windows 10/11 powered by AutoHotkey.
Polygon
A Mac Rectangle inspired window manager for Windows 10/11 powered by AutoHotkey.
[!NOTE] Polygon is still a work in progress and aims to have 100% feature compatibility with Rectangle.
System Requirements
Polygon supports Windows 10/11.
Installation
Installer
You can grab the latest Polygon installer from the latest release. The installer will place a shortcut to your user startup folder to ensure that Polygon start at Windows logon.
Manual
If you rather want to install Polygon manually, please follow the steps outlined below.
- Download the compiled executable zip file based on your OS architecture from the latest release.
- Extract the
polygon-x[64|86].zipinto a location of your choice. - Right click the executable and unblock it if Windows complain about security.
- Open the user startup folder by running the
shell:startupcommand in the run (WIN+R) window. - Copy the
polygon-x[64|86].exeand thepolygon.inithat you downloaded from the previous step and copy them to theshell:startupdirectory.
If you followed everything correctly, Polygon should start at Windows logon.
Usage
Here are the shortcuts available in Polygon.
[!NOTE] Some of the shortcuts Polygon uses conflicts with Window in-built shortcuts and has been mentioned below. If you want to avoid these conflicts, please use the
polygon.inifile to configure a different shortcut of your choosing by referring to the AutoHotkey v2 List of Keys documentation.
| Status | Shortcut | Layout | Conflicts |
|---|---|---|---|
| :white_check_mark: | CTRL+WIN+C | Center | |
| :white_check_mark: | CTRL+WIN+/ | Center HD | |
| :white_check_mark: | CTRL+WIN+W | Center Half | |
| :white_check_mark: | CTRL+WIN+[ | Left Half | |
| :white_check_mark: | CTRL+WIN+] | Right Half | |
| :white_check_mark: | CTRL+WIN+R | Center Two Third | |
| :white_check_mark: | CTRL+WIN+D | First Third | Virtual Desktop |
| :white_check_mark: | CTRL+WIN+F | Center Third | Feedback Hub |
| :white_check_mark: | CTRL+WIN+G | Last Third | |
| :white_check_mark: | CTRL+WIN+Z | Top Left Sixth | |
| :white_check_mark: | CTRL+WIN+X | Bottom Left Sixth | |
| :white_check_mark: | CTRL+WIN+V | Top Right Sixth | |
| :white_check_mark: | CTRL+WIN+B | Bottom Right Sixth | |
| :white_check_mark: | CTRL+WIN+N | Top Center Sixth | Narrator |
| :white_check_mark: | CTRL+WIN+M | Bottom Center Sixth | Magnifier |
| :white_check_mark: | CTRL+WIN+- | Top Half | |
| :white_check_mark: | CTRL+WIN+= | Bottom Half | |
| :construction: | First Two Thirds | ||
| :construction: | Last Two Thirds | ||
| :white_check_mark: | CTRL+WIN+U | Top Left | |
| :white_check_mark: | CTRL+WIN+I | Top Right | |
| :white_check_mark: | CTRL+WIN+J | Bottom Left | |
| :white_check_mark: | CTRL+WIN+K | Bottom Right | |
| :white_check_mark: | CTRL+WIN+; | First Fourth | |
| :white_check_mark: | CTRL+WIN+' | Second Fourth | |
| :white_check_mark: | CTRL+WIN+, | Third Fourth | |
| :white_check_mark: | CTRL+WIN+. | Last Fourth | |
| :construction: | Next Display | ||
| :construction: | Previous Display |
Bugs and feature requests
Have a bug or a feature request, please open a new issue.
Contributing
Contributions are most welcome to fix bugs or to add new features.
Environment
- You need to have AutoHotkey v2 installed.
- I recommend using Visual Studio Code or other VS Code based editors like Cursor.
- You need to have the
AutoHotkey v2 Language Supportextension installed by searching with thethqby.vscode-autohotkey2-lspextension ID. - If AutoHotkey is located in a different location other than
C:\Program Files\AutoHotkey\v2\AutoHotkey.exe, then set theAutoHotkey2.InterpreterPathsetting to point to the correct location. - You need to have the
EditorConfig for VS Codeextension installed by searching with theEditorConfig.EditorConfigextension ID. - You need to have the
Prettier - Code formatterextension installed by searching with theesbenp.prettier-vscodeextension ID.
Structure
The repository is structured pretty flat to keep things simple and find all necessary files easily. Polygon is developed as a single AHK file named polygon.ahk for now. I may in the future refactor it into multiple files if the push comes to shove.
Commit Convention
Before you create a Pull Request, please check whether your commits comply with the commit conventions used in this repository.
When you create a commit I kindly ask you to follow the convention category(scope): message in your commit message while using one of the following categories:
feat: all changes that introduce completely new code or new featuresfix: changes that fix a bug (ideally you will additionally reference an issue if present)refactor: any code related change that is not a fix nor a featuredocs: changing existing or creating new documentation (i.e. README, docs for usage of a lib or cli usage)build: all changes regarding the build of the software, changes to dependencies or the addition of new dependenciesci: all changes regarding the configuration of continuous integration (i.e. github actions, ci system)chore: all changes to the repository that do not fit into any of the above categories
Release
Please follow the following release checklist and convention.
- :exclamation: The changes for the new version have been added to the
CHANGELOG.mdfile. - :exclamation: The new version has been updated in the
polygon.ahkfile. - :exclamation: When cutting a release, please use tags with semver like
v*.*.*format.
Use the following release note body for each release.
Please refer to [CHANGELOG.md](https://github.com/thesobercoder/polygon/blob/main/CHANGELOG.md) for details.
License
Licensed under the MIT license.