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
Hellorge 041393293d
Update sysdep-install.sh (#158)
chore: add void linux support for sysdep-install

Added sysdep-install switch case for void, it was a pain in the ass to find all the packages, the packages in long list may install as dependencies for other packages in the list, but my installation process was in bits I couldn't collect so I put everything prom the package removal process after build is complete.
2021-11-05 00:10:31 +03:00
.github chore: don't use container for docs 2021-11-03 16:54:21 +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 Update sysdep-install.sh (#158) 2021-11-05 00:10:31 +03:00
src fix: do not ignore second windows when resize 2021-11-04 19:45:19 +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 2.0.0 2021-11-03 17:14:34 +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: release 2.0.0 2021-11-03 17:14:34 +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