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
Fabian Preuß 3d9c874439 fix: properly maximize windows via window decoration buttons
Apparently pressing the maximize button doesn't actually force the
window into any specific geometry. This resulted in windows staying in their
tiled geometry while all other windows would be rearranged as if the
maximized window would be floating.

This fix makes the maximized window fill the entire working area.
2021-11-24 17:05:42 +03:00
.github chore: pin super linter version 2021-11-13 20:43:58 +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 feat: new KCM icon 2021-11-12 00:57:02 +03:00
scripts chore: add KDE Neon to the sysdep-install.sh 2021-11-15 10:51:28 +03:00
src fix: properly maximize windows via window decoration buttons 2021-11-24 17:05:42 +03:00
.editorconfig chore: remove file specific rules from the .editorconfig 2021-11-08 20:42:32 +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: ignore all clang format files 2021-11-20 04:56:14 +03:00
.prettierignore build: 📝 use SPDX statements for licencing 2021-09-04 18:22:29 +03:00
CHANGELOG.md chore: release 2.1.0 2021-11-10 00:38:10 +03:00
CMakeLists.txt chore: support not using npm for some packagers 2021-11-20 04:56:14 +03:00
config.ts test: add a few basic tests with mocks 2021-09-16 18:25:18 +03:00
CONTRIBUTING.md docs: add api docs link in contrib guide 2021-11-15 01:20:34 +03:00
LICENSE chore: 📝 add license symlink for GitHub recognition 2021-09-23 23:00:15 +03:00
package.json chore: add eslint_d as a devdep 2021-11-20 04:56:14 +03:00
package.json.license build: 📝 use SPDX statements for licencing 2021-09-04 18:22:29 +03:00
README.md docs: add roadmap 2021-11-15 01:20:34 +03:00
ROADMAP.md docs: add roadmap 2021-11-15 01:20:34 +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 AUR version

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

Project vision and road map can be found here.

🔧 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

From distribution packages

⚠️ These packages are not affiliated with plugin developers. If you encounter any issues, you should contact the package maintainer first.

Arch-based distros

Bismuth is available on AUR. Install the kwin-bismuth package with your favorite AUR helper.

Gentoo

Updated ebuilds provided in viperML-overlay.

Other distributions

If you are know a packaging solution for a distibution, that is not in this list, please provide a link to it via pull request.

Tweaks

☝️ Don't forget to enable window tiling in the new settings module: System Settings > Window Management > Window Tiling.

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 (Reverse) None
Rotate Part Meta + Shift + R