Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/darkstego/mudeer

KDE Plasma Screen Splitting Shortcuts ideal for Ultrawide and Super-Ultrawide Monitors
https://github.com/darkstego/mudeer

kde kde-plasma kde-plasma-5 kde-plasma-6 tiling ultrawide ultrawide-monitors

Last synced: 6 days ago
JSON representation

KDE Plasma Screen Splitting Shortcuts ideal for Ultrawide and Super-Ultrawide Monitors

Awesome Lists containing this project

README

        

* Mudeer - KDE Plasma Tiling Manager for Ultrawide and Super Ultrawide monitors

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

** Features
- Split monitor by into tiles of halves, quarters or thirds, horirzontally or vertically
- Configurable width increase for the middle window when split by thirds
- Configurable gap between windows
- Allows windows to fullscreen onto a portion of the screen
- Soft tiling, allows for tiling and floating windows
- Properly handles horizontal and vertical screen orientations

** 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
- Migrate to KDE6

*** v4
- Enable sequential button presses to tile vertically by thirds and quarters

*** v3
- Switch to prefix keys for fullscreen mode to allow fullscreen application of any size
- Support Vertical screens

** 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.
- Uninstall Mudeer
- Log Out of KDE Plasma (The following edits need to be done after logout and before login)
- Edit ~/.config/kglobalshortcutsrc and remove all lines starting with Mudeer
- Log in to KDE Plasma and reinstall Mudeer
- You may need to disable and re-enable Mudeer. Go to Settings->Window Management->Kwin scripts and you'll see Mudeer checked, uncheck it, hit apply. Check it again and hit apply.

*** 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]].