darkstego / Mudeer

KDE Plasma Screen Splitting Shortcuts ideal for Ultrawide and Super-Ultrawide Monitors
MIT License
157 stars 13 forks source link
kde kde-plasma kde-plasma-5 kde-plasma-6 tiling ultrawide ultrawide-monitors

*** This script supports KDE6. For the older KDE5 version use script version 4

** Features

** Examples *** Tiling Examples

+ATTR_HTML: :style margin-left: auto; margin-right: auto;

[[https://github.com/darkstego/Mudeer/blob/media/mudeer.gif]]

*** Quickly Organize Windows

+ATTR_HTML: :style margin-left: auto; margin-right: auto;

[[https://github.com/darkstego/Mudeer/blob/media/organize.gif]]

*** Mimic Dual Screen by Tiling Fullscreen to occupy half the monitor

+ATTR_HTML: :style margin-left: auto; margin-right: auto;

[[https://github.com/darkstego/Mudeer/blob/media/fs.gif]]

** Changelog *** v5

*** v4

*** v3

** Installation

*** KDE Store (Through Systemsettings) Under SystemSettings -> Kwin Scripts, you can search for and install Mudeer.

*** Manual

+BEGIN_EXAMPLE

git clone https://github.com/darkstego/Mudeer.git
cd Mudeer && make install

+END_EXAMPLE

** Configuration Configuration is done through KDE's Kwin Script Configuration. Find Mudeer under System Settings -> Kwin Scripts and there will be an options button.

When changing the options you need to disable then enable the script for the changes to take effect. I think this is a quirk in KDE scripts.

** Shortcuts All Tiling is done with shortcut keys. The default shortcuts allow any tiling combination using 8 keys and the modifier keys. These are best explained through the diagram below.

+ATTR_HTML: :style margin-left: auto; margin-right: auto;

 [[https://github.com/darkstego/Mudeer/blob/media/Mudeer-shortcuts-simple.png]]

To tile simply hold the Win (or Super/Meta) key while pressing the corresponding button. The modifiers can be used to tile to the top or bottom half or (Shift) to increase the tile's size to encompass the neighboring tiling spots.

** Why these shortcut choices? The default shortcuts were designed to be able to quickly move windows around without the need to drag windows around. They were designed to to follow a logical pattern, so even if you don't use some of the shortcuts you can quickly remember which button tiles to which location. By picking these shortcut buttons, however, some of these shortcuts will not be enabled unless they are enabled manually* through the KDE shortcut menu. This happens when some of those shortcuts overwrite others in KDE.

You can find and edit all shortcuts by navigating to the KDE shortcuts settings (System Settings -> Shortcuts). Search for "mudeer" to view and edit all shortcuts provided by this script.

*** What if I don't like these shortcut These shortcuts are just choices I felt would work well, and provide the most flexibilty given a small number of keys. You are free to change them or, if you don't need all the shortcuts, to disable some and only use the shortcuts you need.

See previous question on how to edit the shortcuts.

*** What if I want to tile vertically into segments smaller than half? You can use sequential tiling. First enable it from the configuration menu, then you can press two shortcuts in quick succession to first tile horizontally and then vertically. This allows for tiling vertically by thirds and quarters.

*** Vertical (Portrait) Monitors When the monitor is in the Vertical orientation then the segementation (quarters and thirds) occur top to bottom instead of left to right maximizing the resolution of the splts along the long edge of the screen. In this orientation the CTRL and ALT modifier keys restricts the windows to the left and right portion of the screen respectively.

*** Prefix keys There are three prefix keys that can be used to modify the next tile you select with a shortcut.

**** Gapless This removes the gap from the next tile, even when gap is configured. Useful when playing a video in a tile.

**** Fullscreen This option allows the tile to cover any panel or dock. Useful for games or videos. This can be used to replicate the behaviour of multiple screens dynamically.

**** Fullscreen show panel When using the the fullscreen prefix, the tiling will split the entire screen area, and not just the workable area (the area left after ignoring the panel). That means each tile will have a slightly different size and position compared do the regulart tiling, which makes mixing fullscreen and non-fullscreen tiles a bit difficult. Especially when the panel resides on the sides. This option allows tilling windows next to fullscreen windows, while still keeping the panel visible.

*** Shortcut Summary Below is the list of default shortcuts. Again, Meta in KDE is the Win (or Super) key.

| Shortcut | Default Binding | |-----------------------------------+-------------------| | Whole | Meta+f | | Left Third | Meta+a | | Center Third | Meta+s | | Right Third | Meta+d | | Left Two Thirds | Meta+Shift+a | | Right Two Thirds | Meta+Shift+d | | Center Two Thirds | * | | Far Left Quarter | Meta+z | | Center Left Quarter | Meta+x | | Center Right Quarter | Meta+c | | Far Right Quarter | Meta+v | | Left Half | Meta+Shift+z | | Left Three Quarters | Meta+Shift+x | | Center Half | Meta+Shift+s | | Right Three Quarters | Meta+Shift+c | | Right Half | Meta+Shift+v | | Top half modifier | Ctrl+ | | Bottom half modifier | Alt+ | |-----------------------------------+-------------------| | Gapless Prefix | Meta+Shift+f | | Fullscreen Prefix | Meta+Ctrl+Shift+f | | Fullscreen Prefix avoiding Panels | Meta+Alt+Shift+f |

(*) Project recommendation is to use "Meta+Shift+s" if user prefers Center Two-Thirds, instead of Center Half.

**** Standard Shortcuts

+ATTR_HTML: :style margin-left: auto; margin-right: auto;

 [[https://github.com/darkstego/Mudeer/blob/media/Mudeer-shortcuts.png]]     

*** Recommendations for Non-Ultrawide Monitors For users of Non Ultrawide Monitors this script can be utilized by only mapping shortcuts for the left and right half tiling (and their top/bottom alternatives). This is functionally similar to KDE's own Quick Tile option with the added flexibility of having an adjustable gap between the windows.

** Troubleshooting

*** Registered Shortcuts Don't Work Sometimes Plasma shortcuts get messed up. This can happen if you uninstall Mudeer, or on upgrade to Plasma 6. The only way to reset them is the following song and dance.

*** No configuration menus Users on Plasma versions <5.23 check the [[https://bugs.kde.org/show_bug.cgi?id=444378#c10][following fix]] to get configuration menus to work.

*** Configuration option changes not having any affect Disable and then re-enable the script to get it the settings to register.

*** Some of the shortcuts don't work There might be a collision with existing KDE shortcuts. Try to search for the buttons in the shorcut menu in systemsettings to find the collision.

** Feedback I would really like to know what people like and dislike about this project. Please provide feedback [[https://github.com/darkstego/Mudeer/discussions/11][here]].