Підручники/Користування іншими засобами керування вікнами із Плазмою
Вступ
KWin — є типовою програмою для керування вікнами у Плазмі. Ця програма має багато можливостей, але у ній передбачено підтримку лише звичайних рухомих вікон. У Плазмі передбачено можливість скористатися іншою програмою для керування вікнами, наприклад i3, bspwm або будь-якою іншою мозаїчною програмою для керування вікнами.
Для більшості засобів керування вікнами потрібні мінімальні зміни у файлах налаштувань, іноді можна обійтися і взагалі без змін.
Деякі речі, які слід брати до уваги, якщо ви хочете скористатися іншою програмою для керування вікнами:
- У мозаїчних засобів керування вікнами можуть виникати проблеми із компонентами, зокрема панелями. У деяких з таких засобів проблеми можна вирішити налаштовуванням.
- У більшості засобів керування вікнами немає власного засобу композиції, тому деякі можливості, зокрема анімація та прозорість, у них є недоступними. Якщо вам потрібні якісь із недоступних ефектів, доведеться скористатися стороннім засобом композиції, наприклад compton.
- Допомогти із усуванням розривів у зображенні на екрані можуть засоби композиції. Втім, вам спершу слід переконатися, що проблему не можна вирішити за допомогою відеодрайверів, оскільки усування цих проблем є найкращим з точки зору швидкодії варіантом.
Використання іншого засобу керування вікнами у Плазмі
На рівні окремого користувача: використання Системних параметрів
Це найпростіший спосіб, але ним можна скористатися лише для окремого користувача системи.
- Створіть скрипт командної оболонки (наприклад, kde-i3.sh) із таким вмістом:
#!/bin/sh export KDEWM=/usr/bin/i3
Замініть /usr/bin/i3 на шлях до бажаної для вас програми для керування вікнами.
- Запустіть Системні параметри
- Виберіть пункт Запуск і вихід
- Виберіть пункт Автозапуск
- Натисніть розташовану під списком кнопку Додати скрипт
- Вкажіть розташування попередньо створеного скрипту або натисніть кнопку із піктограмою теки, щоб скористатися для визначення адреси діалоговим вікном. Натисніть кнопку Гаразд, і скрипт буде додано до списку.
- У стовпчику Момент виконання виберіть зі спадного списку варіант Перед запуском сеансу.
- Вибраний вами засіб для керування вікнами буде використано під час наступного входу до системи.
$HOME/.config/plasma-workspace/env
.
На загальносистемному рівні: додавання XSession
Якщо у вас є доступ до облікового запису суперкористувача (root), можна створити новий файл сеансу для X.org.
Цей підхід має декілька переваг: альтернативний варіант сеансу буде доступним для усіх користувачів системи, а для того, щоб повернутися до KWin, достатньо буде вийти з системи і увійти до неї знову.
Щоб додати сеанс для альтернативного засобу керування вікнами від імені суперкористувача (root)
- Скопіюйте наявний файл сеансу Плазми
cp plasma.desktop plasma-i3.desktop
- За допомогою текстового редактора відкрийте файл і змініть у ньому запис рядка Exec і, якщо хочете, запис Description
[Desktop Entry] Type=XSession Exec=env KDEWM=/usr/bin/i3 /usr/bin/startplasma-x11 DesktopNames=KDE Name=Plasma (i3) Comment=Plasma by KDE w/i3
- Далі, засіб керування вікнами слід перезапустити. Найпростіше це зробити простим перезавантаженням системи.
Exec
. Якщо буде виявлено пробіли, запис не буде показано у меню сеансу.
Щоб обійти це обмеження, створіть скрипт із назвою plasma-i3.sh
, який міститиме такі рядки:#!/bin/sh export KDEWM=/usr/bin/i3 /usr/bin/startplasma-x11Встановіть права на виконання для скрипту і пошліться на нього у plasma-i3.desktop. Приклад:
Exec=/usr/local/bin/plasma-i3.sh
Налаштування I3
Встановлення
Перш ніж розпочинати налаштовування, вам слід переконатися, що у системі встановлено i3 або i3-gaps. Якщо це не так, встановіть відповідні пакунки за допомогою програми для керування пакунками або Discover. Вам також слід встановити засіб композиції, оскільки, на відміну від KWin, у i3 немає власного вбудованого засобу композиції. Рекомендуємо скористатися compton.
Створення типових налаштувань i3
Деякі з правил керування вікнами i3 уможливлюють використання вікон сповіщення та інших вікон Плазми як звичайних рухомих вікон:
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 for_window [class="plasmashell" window_type="notification"] floating enable, border none, move right 700px, move down 450px, no_focus
Якщо ви хочете скористатися однаковими налаштуваннями для усіх користувачів (які, втім, зможуть змінювати налаштування для свого облікового запису), вилучіть виклик майстра з загальносистемного файла налаштувань і впишіть налаштування безпосередньо.
Вказані нижче правила для вікон i3 допоможуть вам із сповіщеннями та деякими іншими вікнами Плазми:
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 for_window [class="plasmashell" window_type="notification"] floating enable, border none, move right 700px, move down 450px no_focus [class="plasmashell" window_type="notification"]
Якщо ви користуєтеся Плазмою із перекладом якоюсь мовою, вам слід визначити точну назву заголовка вікна стільниці. Одним зі способів такого визначення є команда wmctrl -l
.
Замість додавання
for_window [title="Desktop — Plasma"] kill; floating enable; border none
додайте у файл налаштувань i3 визначену назву вікна. Наприклад, у перекладі Плазми німецькою це буде
for_window [title="Arbeitsfläche — Plasma"] kill; floating enable; border none
Визначення позиції показу сповіщень може бути непростою сравою, оскільки не усі сповіщення мають однакові розміри (розміри можуть залежати від вмісту). Ви також можете скористатися позиціюванням за координатами, якщо знаєте роздільну здатність екрана. Наприклад, для екрана 1920x1080 і сповіщень у верхньому правому куті ви можете скористатися таким кодом:
for_window [class="plasmashell" window_type="notification"] floating enable, border none, move position 1450px 20px
Налаштовування Плазми
У вас можуть виникнути проблеми із можливостями «просторів дій» — активація за допомогою клавіатурних скорочень (деякі з яких використовуються у самому i3, зокрема "Meta + Q") робить i3 непрацездатним. Вилучення загальносистемних клавіатурних скорочень, які пов'язано із просторами дій, має вирішити проблему.
Щоб віджет пейджера Плазми показував стільниці у форматі i3bar, встановіть для параметра Налаштувати аплет «Пейджер» > Загальне > Показ тексту значення «Назва стільниці».
Налаштування Bspwm
В основному, для bspwm потрібне лише мінімальне додаткове налаштовування.
- Якщо у Плазмі одна панель, у переважній частині випадків bspwm виявляє її належним чином і не розташовує вікна у її частині. Якщо з панеллю виникають проблеми або використовується декілька панелей, слід додати такі рядки до .bspwmrc
bspc config top_padding size
де size— розмір панелі у пікселях. Також можна скористатися параметрами bottom_padding, left_padding та right_padding. Якщо панеле декілька, можна скористатися керуванням панелями довільною кількістю цих інструкцій.
Підказки і настанови
DBus
Відкривати компоненти Плазми можна за допомогою команд DBus. Ви можете пов'язати комбінації клавіш із командами DBus. Щоб визначити потрібну вам команду DBus, скористайтеся QDbusViewer.
Деякі з компонентів Плазми можна відкривати за допомогою команд DBus. Ви можете скористатися цим для прив'язки відповідної комбінації клавіш до команди DBus. Щоб визначити команду DBus, скористайтеся dbus-monitor
або qdbusviewer
, викликавши відповідний компонент за допомогою стандартних інструментів Плазми.
Докладніше про роботу з клавішею Meta (Alt):
Декілька прикладів:
- Відкрити Krunner
qdbus org.kde.kglobalaccel /component/krunner org.kde.kglobalaccel.Component.invokeShortcut 'run command'
- Відкрити вікно підтвердження виходу
qdbus org.kde.ksmserver /KSMServer org.kde.KSMServerInterface.logout -1 -1 -1
- Відкрити Krunner
qdbus org.kde.kglobalaccel /component/krunner org.kde.kglobalaccel.Component.invokeShortcut 'run command'
- Відкрити вікно підтвердження виходу із облікового запису
qdbus org.kde.ksmserver /KSMServer org.kde.KSMServerInterface.logout -1 -1 -1
У i3 ви можете пов'язати комбінацію клавіш із командою за допомогою програми bindsym. Приклад:
bindsym $mod+Shift+e exec <команда>
Якщо ви хочете самостійно визначити прив'язку до клавіші-модифікатора, скористайтеся командою bindcode — вам слід вказати код клавіші, визначити який можна за допомогою програми xev
.
Приклад для клавіші Meta:
bindcode 133 --release exec --no-startup-id <command>
Уr Bspwn вам слід скористатися програмою bspc
. Див. вікі Arch Linux, щоб дізнатися більше.
Додаткові відомості
- Засоби керування вікнами (Вікіпедія)
- Засоби керування вікнами (Вікі Arch Linux)
- Стільничне середовище (Вікіпедія)
- Стільничне середовище (Вікі Arch Linux)