A tiling script for Plasma 6.
Plasma 5 version is archived in plasma-5
branch and can be downloaded from here.
Manual:
git clone https://github.com/Jazqa/kwin-yakts.git
kpackagetool6 --type=KWin/Script -r yakts || true
kpackagetool6 --type=KWin/Script -i ./kwin-yakts
rm -rf ./kwin-yakts
The script can be configured through its configuration interface under System Settings > Window Management > KWin Scripts
. You can filter problematic windows with process names, window captions or window sizes.
KWin shortcuts can be found in System Settings > Shortcuts > Global Shortcuts > KWin
.
All (YAKTS) <ACTION>
-shortcuts are used exclusively by the script, but the script supports a variety of KWin shortcuts as well. For example, KWin's Move Window <DIRECTION>
-shortcuts also move the script's tiles.
Binding the (YAKTS) Tile Window
-shortcut is recommended, because it makes untiling problematic windows easy.
Git:
git clone https://github.com/Jazqa/kwin-yakts.git
kpackagetool6 --type=KWin/Script -r yakts || true
kpackagetool6 --type=KWin/Script -i ./kwin-yakts
rm -rf ./kwin-yakts
Alternatively, set this repository as the origin of ~/.local/share/kwin/scripts/yakts
to update it with git pull
.
kpackagetool6 --type=KWin/Script -r yakts
qdbus org.kde.kglobalaccel /component/kwin org.kde.kglobalaccel.Component.cleanUp
The script can also be uninstalled from System Settings > Window Management > KWin Scripts
.
The script is written in TypeScript, transpiled to JavaScript and rolled up into a single main.js
file. If you modify the .ts
files, you have to run npm run transpile
New tiling layouts can be created without touching the existing code. New layouts should be placed under src/layouts
. New layouts will work as long as the layouts implement the interface described in src/layout.ts
. If you create a new layout, feel free to open a pull request and it'll be added to master.