.github | ||
.husky | ||
.reuse | ||
.vscode | ||
bin | ||
img | ||
LICENSES | ||
res | ||
src | ||
test | ||
.eslintrc.json | ||
.eslintrc.json.license | ||
.git-blame-ignore-revs | ||
.gitignore | ||
.prettierignore | ||
config.ts | ||
CONTRIBUTING.md | ||
package.json | ||
package.json.license | ||
README.md | ||
tsconfig.json | ||
tsconfig.json.license | ||
TWEAKS.md |
🌈 Bismuth
Arrange your windows automatically and switch between them using keyboard shortcuts. All of that with different layouts and without a complicated setup of classic tiling window managers (i3, dwm or XMonad). Just install the script on any KDE Plasma powered Linux distribution and enjoy your computing! 🦾
This is a fork of Krohnkite. The fork was made, because the old project seems to be unmaintained.
🗺️ Goals
Project goals are the following:
- Provide full-fledged tiling window manager experience in KDE Plasma with minimal effort on user side
- Wayland support
🌟 Features
- Automatic window tiling
- Dynamically tile windows, rather than manually placing each.
- Floating windows
- Fully integrates into KWin features, including:
- Multi-screen
- Activities & Virtual desktop
- Basic window management (minimize, fullscreen, switching, etc)
- Multiple Layout Support
- Tiling layout
- Monocle layout
- Desktop-friendly layouts (Spread, Stair)
🔧 Installation
Install script via script:
npm install # Installs dependencies for building
npm run script-install
To uninstall:
npm run script-uninstall
Enabling User-Configuration
It is reported that a manual step is required to enable user configuration of KWin scripts. This is a limitation of KWin scripting.
To enable configuration, you must perform the following in command-line:
mkdir -p ~/.local/share/kservices5/
ln -s ~/.local/share/kwin/scripts/bismuth/metadata.desktop ~/.local/share/kservices5/bismuth.desktop
A configuration button will appear in KWin Scripts
in System Settings
.
To make changes effective, the script must be reactivated:
- On
KWin Scripts
dialog, untick Bismuth Apply
- tick Bismuth
Apply
Tweaks
Proceed to the TWEAKS section.
⌨️ Actions and Default Keyboard Shortcuts
Action | Key |
---|---|
Focus Next Window | None |
Focus Previous Window | None |
Focus Upper Window | Meta + J |
Focus Bottom Window | Meta + K |
Focus Left Window | Meta + H |
Focus Right Window | Meta + L |
Move Window To Next Position | None |
Move Window To Previous Position | None |
Move Window Up | Meta + Shift + J |
Move Window Down | Meta + Shift + K |
Move Window Left | Meta + Shift + H |
Move Window Right | Meta + Shift + L |
Increase Window Width | Meta + Ctrl + L |
Increase Window Height | Meta + Ctrl + J |
Decrease Window Width | Meta + Ctrl + H |
Decrease Window Height | Meta + Ctrl + K |
Increase Master Area Window Count | None |
Decrease Master Area Window Count | None |
Increase Master Area Size | Meta + I |
Decrease Master Area Size | Meta + D |
Push Window Into Master Area | Meta + Return |
Toggle Active Window Floating | Meta + F |
Switch To Next Layout | Meta + \ |
Switch To Previous Layout | Meta + | |
Set Tile Layout | Meta + T |
Set Monocle Layout | Meta + M |
Set Three Column Layout | None |
Set Spread Layout | None |
Set Stair Layout | None |
Set Floating Layout | None |
Set Quarter Layout | None |
Rotate | Meta + R |
Rotate Part | Meta + Shift + R |