Підручники/Користування іншими засобами керування вікнами із Плазмою
Вступ
KWin — є типовою програмою для керування вікнами у Плазмі. Ця програма має багато можливостей, але у ній передбачено підтримку лише звичайних рухомих вікон. У Плазмі передбачено можливість скористатися іншою програмою для керування вікнами, наприклад i3, bspwm або будь-якою іншою мозаїчною програмою для керування вікнами.
Для більшості засобів керування вікнами потрібні мінімальні зміни у файлах налаштувань, іноді можна обійтися і взагалі без змін.
Деякі речі, які слід брати до уваги, якщо ви хочете скористатися іншою програмою для керування вікнами:
- У мозаїчних засобів керування вікнами можуть виникати проблеми із компонентами, зокрема панелями. У деяких з таких засобів проблеми можна вирішити налаштовуванням.
- У більшості засобів керування вікнами немає власного засобу композиції, тому деякі можливості, зокрема анімація та прозорість, у них є недоступними. Якщо вам потрібні якісь із недоступних ефектів, доведеться скористатися стороннім засобом композиції, наприклад compton.
Використання іншого засобу керування вікнами у Плазмі
На рівні окремого користувача: використання Системних параметрів
Це найпростіший спосіб, але ним можна скористатися лише для окремого користувача системи.
- Створіть скрипт командної оболонки (наприклад, kde-i3.sh) із таким вмістом:
#!/bin/sh export KDEWM=/usr/bin/i3
Замініть /usr/bin/i3 на шлях до бажаної для вас програми для керування вікнами.
- Запустіть Системні параметри
- Виберіть пункт Запуск і вихід
- Виберіть пункт Автозапуск
- Натисніть розташовану під списком кнопку Додати скрипт
- Вкажіть розташування попередньо створеного скрипту або натисніть кнопку із піктограмою теки, щоб скористатися для визначення адреси діалоговим вікном. Натисніть кнопку Гаразд, і скрипт буде додано до списку.
- У стовпчику Момент виконання виберіть зі спадного списку варіант Перед запуском сеансу.
- Вибраний вами засіб для керування вікнами буде використано під час наступного входу до системи.
На загальносистемному рівні: додавання XSession
Якщо у вас є доступ до облікового запису суперкористувача (root), можна створити новий файл сеансу для X.org.
Цей підхід має декілька переваг: альтернативний варіант сеансу буде доступним для усіх користувачів системи, а для того, щоб повернутися до KWin, достатньо буде вийти з системи і увійти до неї знову.
Щоб додати сеанс для альтернативного засобу керування вікнами від імені суперкористувача (root)
- Скопіюйте наявний файл сеансу Плазми
cp plasma.desktop plasma-i3.desktop
- За допомогою текстового редактора відкрийте файл і змініть у ньому запис рядка Exec і, якщо хочете, запис 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
- Далі, засіб керування вікнами слід перезапустити. Найпростіше це зробити простим перезавантаженням системи.
Налаштування 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.