Підручники/Користування іншими засобами керування вікнами із Плазмою
Вступ
KWin — є типовою програмою для керування вікнами у Плазмі. Ця програма має багато можливостей, але у ній передбачено підтримку лише звичайних рухомих вікон. У Плазмі передбачено можливість скористатися іншою програмою для керування вікнами, наприклад i3, bspwm або будь-якою іншою мозаїчною програмою для керування вікнами.
Для більшості засобів керування вікнами потрібні мінімальні зміни у файлах налаштувань, іноді можна обійтися і взагалі без змін.
Деякі речі, які слід брати до уваги, якщо ви хочете скористатися іншою програмою для керування вікнами:
- Tiling window managers may have problems with components like panels. For some configuration options will help alleviate issues
- Most window managers do not have their own compositors, and therefore lack such features as animations and transparency. If such effects are desired, a compositor, such as compton, is required
Використання іншого засобу керування вікнами у Плазмі
На рівні окремого користувача: використання Системних параметрів
Це найпростіший спосіб, але ним можна скористатися лише для окремого користувача системи.
- Створіть скрипт командної оболонки (наприклад, kde-i3.sh) із таким вмістом:
#!/bin/sh export KDEWM=/usr/bin/i3
Замініть /usr/bin/i3 на шлях до бажаної для вас програми для керування вікнами.
- Запустіть Системні параметри
- Виберіть пункт Запуск і вихід
- Виберіть пункт Автозапуск
- Натисніть розташовану під списком кнопку Додати скрипт
- Enter the location of the script created earlier, or use the folder icon to use a dialog to find it. Click OK, the script will be added to the list
- In the Run On column, select Before Session Startup from the drop down list
- The chosen window manager will be used the next time you log in
На загальносистемному рівні: додавання XSession
Якщо у вас є доступ до облікового запису суперкористувача (root), можна створити новий файл сеансу для X.org.
This has several advantages: the alternate session is available to all users of the system, and changing back to KWin is as simple as logging out and then back in
To add a session for an alternate window manager, as the superuser
- Copy the existing Plasma session flie
cp plasma.desktop plasma-i3.desktop
- Using a text editor, open the file and change the Exec line, and optionally the Description
[Desktop Entry] Type=XSession Exec=env KDEWM=/usr/bin/i3 DesktopNames=KDE Name=Plasma (i3) Comment=Plasma by KDE w/i3 X-KDE-PluginInfo-Version=5.14.4
- The display manager must be restarted, most easily by rebooting
Налаштування I3
Встановлення
Before starting the configuration, you should make sure i3 or i3-gaps are installed on your system. If not use your packet manager or Discover to install one of this two packages. You should also install a compositor, because unlike KWin, i3 don't ship with an integrated compositor. I recommend the use of compton.
Створення типових налаштувань i3
.i3/config
or .config/i3/config
), you can skip this step.
Open a console and type i3-config-wizard
. This command open a small windows that will help you create a configuration file.
Some i3 keybinding can be used to provide better integration with Plasma.
# Open logout confirmation screen with $mod+e bindsym $mod+Shift+e exec qdbus org.kde.ksmserver /KSMServer org.kde.KSMServerInterface.logout -1 -1 -1 # Open krunner with $mod+d bindsym $mod+d exec qdbus org.kde.kglobalaccel /component/krunner org.kde.kglobalaccel.Component.invokeShortcut 'run command'
Some i3 window rules help you to have notification and some other plasma windows as floating windows:
for_window [title="Desktop — Plasma"] kill; floating enable; border none for_window [class="plasmashell"] floating enable; for_window [class="Plasma"] floating enable; border none for_window [title="plasma-desktop"] floating enable; border none for_window [title="win7"] floating enable; border none for_window [class="krunner"] floating enable; border none for_window [class="Kmix"] floating enable; border none for_window [class="Klipper"] floating enable; border none for_window [class="Plasmoidviewer"] floating enable; border none for_window [class="(?i)*nextcloud*"] floating disable
bspwm
For the most part, bspwm requires little additional configuration.
- A single Plasma panel, in most cases, is detected properly and bspwm will not place windows in its space. If the panel does present a problem, or when using multiple panels, the following may be added to .bspwmrc
bspc config top_padding size
where size is the size in pixels of the panel. Also valid are bottom_padding, left_padding, and right_padding. As many of these directive may be used as necessary for multiple panels.