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].zip
into 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:startup
command in the run (WIN+R) window. - Copy the
polygon-x[64|86].exe
and thepolygon.ini
that you downloaded from the previous step and copy them to theshell:startup
directory.
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.ini
file 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 Support
extension installed by searching with thethqby.vscode-autohotkey2-lsp
extension ID. - If AutoHotkey is located in a different location other than
C:\Program Files\AutoHotkey\v2\AutoHotkey.exe
, then set theAutoHotkey2.InterpreterPath
setting to point to the correct location. - You need to have the
EditorConfig for VS Code
extension installed by searching with theEditorConfig.EditorConfig
extension ID. - You need to have the
Prettier - Code formatter
extension installed by searching with theesbenp.prettier-vscode
extension 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 features -
fix
: 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 feature -
docs
: 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 dependencies -
ci
: 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.md
file. - :exclamation: The new version has been updated in the
polygon.ahk
file. - :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.