-
v0.2.1 -- Modernized packaging, init subcommand, and AUR publishing
StableAll checks were successfulPublish to AUR / aur (push) Successful in 39sreleased this
2026-05-20 09:09:33 +02:00 | 0 commits to master since this releaseWhat is pi3-smart-workspace?
A small CLI helper for i3. Bound to
$mod+<n>keys, it
switches (or moves a container to) the N-th workspace declared for the
output your mouse cursor is currently on, instead of i3's default global
workspace numbering. Makes multi-monitor i3 setups feel seamless.See the README
for full usage, configuration, and examples.What's new in 0.2.1
This release bundles a substantial modernization pass and adds first-class
AUR publishing.Highlights
initsubcommand: auto-generates per-monitor i3 config snippets in
~/.config/i3/pi3-smart-workspace/, ready to drop into your main config viainclude.
No more hand-writing workspace bindings for every monitor.- Fixed:
include-aware config parsing: previously the parser only saw the raw
configfile, so anyone usingincludedirectives ended up with "0 workspaces declared"
errors. The parser now resolves includes recursively (with cycle protection),
matching i3's own behavior. - No more X-on-import: the module can now be imported without a running display,
making it testable in CI.pynputis lazy-loaded insiderun(). - Modern packaging: PEP 621
pyproject.tomlwith hatchling backend.
Droppedsetup.py,build.py, andrequirements.txt. - Tests + CI: 28 unit tests covering the parser, cursor-at-output logic, include expansion,
and the init renderer's round-trip contract. CI runs on every push. - AUR publishing pipeline: Gitea Actions workflow that pushes a fresh
PKGBUILD + .SRCINFO to AUR on everyv*tag.
So this version is the first one available aspi3-smart-workspaceon the AUR.
See README.md for installation and usage
Downloads