Tiling script for kwin, based on Mathias Gottschlag’s version
The purpose of this is to create a userfriendly tiling solution that
- Integrates well with KDE Plasma
- Works for the general case
More sophisticated users may prefer dedicated tiling window managers
- Provides most of the advantages of a tiling WM in a fully composited environment
Window previews and effects alongside different tiling layouts
- Does not require the user to delve into scripting to get a sane configuration
- Four layouts, one with support for multiple “master” windows and another one with dynamic tiling capabilities (similar to i3wm’s)
- Support for minimizing and unminimizing windows
- Support for setting windows to floating or quitting tiling altogether, per-desktop (Meta+Shift+F11) and per-window (Meta-f) (“Meta” refers to the “super” or “windows” key here)
- Support for a list of ignored windows in configuration (by class)
- An option to start windows at the master position (like in xmonad)
- Mouse resizing
- Useractionsmenu and keybinding (Meta+f) for toggling tiling/floating
- An option to turn off borders for tiled windows
- A hotkey to tile once
- Many bugfixes over mgottschlag’s version
git clone https://github.com/kwin-scripts/kwin-tiling.git
cd kwin-tiling/
plasmapkg2 --type kwinscript -i .
or if updating
plasmapkg2 --type kwinscript -u .
Install
Activate the script using kcmshell5 kwinscripts
Move windows around and see that they are tiled :-)
Resize windows to resize the tiles
Declare shortcuts (in Systemsettings->Shortcuts_and_Gestures->Global_Keyboard_Shortcuts) for resize, minimize and maximize operations.
Press Meta-Shift-PgUp or Meta-Shift-PgDn to switch the layout
Use the configuration menu (in System Settings->Window Management->KWin Scripts)
Shortcut | Default Binding |
---|---|
Next Tiling Layout | Meta+Shift+PgDown |
Previous Tiling Layout | Meta+Shift+PgUp |
Toggle Floating | Meta+F |
Toggle Border for all | |
Move Window Left | Meta+Shift+H |
Move Window Right | Meta+Shift+L |
Move Window Up | Meta+Shift+K |
Move Window Down | Meta+Shift+J |
Toggle Tiling | Meta+Shift+f11 |
Tile now | |
Swap Window With Master | Meta+Shift+M |
Resize Active Window To The Left | Meta+Alt+H |
Resize Active Window To The Right | Meta+Alt+L |
Resize Active Window To The Top | Meta+Alt+K |
Resize Active Window To The Bottom | Meta+Alt+J |
Increase Number Of Masters | Meta+* |
Decrease Number Of Masters | Meta+_ |
Focus next tile | |
Focus previous tile | |
Swap with next tile | |
Swap with previous tile | |
I3: Set Wrap Horizontal Mode | |
I3: Set Wrap Vertical Mode | |
I3: Set Normal Mode | |
Move Window To New Desktop | Meta+Shift+D |
Dump Clients | Meta+Shift+Escape |
Cycle Rotations | Meta+Shift+R |
No configuration option is available for the KWin Scripts entry
- As suggested by @BenoitZugmeyer,
mkdir -p ~/.local/share/kservices5 ln -s ~/.local/share/kwin/scripts/kwin-script-tiling/metadata.desktop ~/.local/share/kservices5/kwin-script-tiling.desktop