Skip to content
Tiling script for kwin
Branch: master
Clone or download
faho Write CHANGELOG
This might actually be enough for a new version?
Latest commit b4e39ba May 22, 2019


Tiling script for kwin, based on Mathias Gottschlag’s version

NOTE: This is the Plasma 5 version. For the Plasma 1/KWin 4 version, see the Plasma1 branch


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
cd kwin-tiling/
plasmapkg2 --type kwinscript -i .

or if updating

plasmapkg2 --type kwinscript -u .



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)

Comprehesive list of keyboard shorcuts:

ShortcutDefault Binding
Next Tiling LayoutMeta+Shift+PgDown
Previous Tiling LayoutMeta+Shift+PgUp
Toggle FloatingMeta+F
Toggle Border for all
Move Window LeftMeta+Shift+H
Move Window RightMeta+Shift+L
Move Window UpMeta+Shift+K
Move Window DownMeta+Shift+J
Toggle TilingMeta+Shift+f11
Tile now
Swap Window With MasterMeta+Shift+M
Resize Active Window To The LeftMeta+Alt+H
Resize Active Window To The RightMeta+Alt+L
Resize Active Window To The TopMeta+Alt+K
Resize Active Window To The BottomMeta+Alt+J
Increase Number Of MastersMeta+*
Decrease Number Of MastersMeta+_
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 DesktopMeta+Shift+D
Dump ClientsMeta+Shift+Escape
Cycle RotationsMeta+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

Known Issues:

Activities aren’t handled at all

Clients with min/maxSize may not tile properly

Multimonitor is untested


There is no software without bugs. If you detect one please share it.


Standard layout with two master windows Standard layout with one master Contrived example with four always-shown panels Configuration

You can’t perform that action at this time.