KDE Plasma add-on, that tiles your windows automatically and lets you manage them via keyboard, similarly to i3, Sway or dwm.
Go to file
2021-11-03 16:34:53 +03:00
.github chore: adjust github actions workflows to 2.0 2021-11-03 16:34:53 +03:00
.husky fix: 🐛 Monocle Layout "minimize unfocused windows" fixes and improvements 2021-09-30 14:47:14 +03:00
.reuse build: 📝 use SPDX statements for licencing 2021-09-04 18:22:29 +03:00
.vscode chore: add kcm and kwinscript scopes to CC 2021-11-03 16:34:53 +03:00
contrib chore: remove not working anyway installation script 2021-11-03 16:34:53 +03:00
img docs: document configuration dialog 2021-11-03 16:34:53 +03:00
LICENSES build: 📝 use SPDX statements for licencing 2021-09-04 18:22:29 +03:00
scripts chore: adjust github actions workflows to 2.0 2021-11-03 16:34:53 +03:00
src refactor: use qmlformat for qmlfiles 2021-11-03 16:34:53 +03:00
.editorconfig chore: add editorconfig for qml files 2021-11-01 14:13:06 +03:00
.eslintrc.json ci: 👷 add prettier eslint plugin 2021-09-30 19:21:10 +03:00
.eslintrc.json.license build: mode eslint to a separate file 2021-09-09 00:16:48 +03:00
.git-blame-ignore-revs build: 📝 use SPDX statements for licencing 2021-09-04 18:22:29 +03:00
.gitignore chore: add CPP related stuff to gitignore 2021-11-03 16:34:53 +03:00
.prettierignore build: 📝 use SPDX statements for licencing 2021-09-04 18:22:29 +03:00
CHANGELOG.md chore: release 1.1.0 2021-10-23 12:55:39 +03:00
config.ts test: add a few basic tests with mocks 2021-09-16 18:25:18 +03:00
CONTRIBUTING.md chore: adjust github actions workflows to 2.0 2021-11-03 16:34:53 +03:00
LICENSE chore: 📝 add license symlink for GitHub recognition 2021-09-23 23:00:15 +03:00
package.json chore: adjust github actions workflows to 2.0 2021-11-03 16:34:53 +03:00
package.json.license build: 📝 use SPDX statements for licencing 2021-09-04 18:22:29 +03:00
README.md docs: adjust readme 2021-11-03 16:34:53 +03:00
tsconfig.json test: add a few basic tests with mocks 2021-09-16 18:25:18 +03:00
tsconfig.json.license build: 📝 use SPDX statements for licencing 2021-09-04 18:22:29 +03:00
TWEAKS.md docs: remove config tweak 2021-11-03 16:34:53 +03:00

🌈 Bismuth

Conventional Commits code style: prettier wayland: supported

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 Bismuth on any KDE Plasma powered Linux distribution and you are ready to go! 🦾

script demo

This is a fork of Krohnkite. The fork was made, because the old project seems to be unmaintained. If you want to import your old shortcuts from it, use the contrib/import_krohnkite.sh script.

🌟 Features

  • Full KDE Plasma integration
    • Multiple Screens, Activities and Virtual desktops
    • Built-in KWin features (minimize, full-screen and rules)
    • Floating Dialog windows
  • Multiple Layouts
    • Classic Tiling layout
    • Monocle layout for focusing on one application
    • Three-Column for wide monitors
    • Floating layout for traditional experience
  • Works on Wayland Plasma session

🔧 Installation

From Source

Install script from source:

npm install # Installs dependencies for building
npm run sysdep-install # Install system dependencies for building
npm run bi-install # Installs all Bismuth components

To uninstall:

npm run bi-uninstall

I want a simple installation!

Understandable. Bismuth is a complex extension to KDE Plasma and therefore it requires complex packaging for different Linux distributions, at least for main ones: Ubuntu-based, Fedora-based and Arch-based. This is a complex task, so if you're skillful, you're welcome to create a package for your distribution and share it with others via PR to Bismuth.

Tweaks

You may want to make a couple of manual fixes and tweaks, to improve your experience. See Tweaks section.

⚙️ Configuration

You can configure Bismuth in the System Settings > Window Management > Window Tiling.

Bismuth Configuration Module

⌨️ 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 Meta + ]
Decrease Master Area Window Count Meta + [
Increase Master Area Size None
Decrease Master Area Size None
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 Meta + Shift + F
Set Quarter Layout None
Rotate Meta + R
Rotate Part Meta + Shift + R