Підручники/Користування іншими засобами керування вікнами із Плазмою

From KDE UserBase Wiki
Revision as of 15:46, 7 February 2019 by Yurchor (talk | contribs) (Created page with "* Скопіюйте наявний файл сеансу Плазми{{Input|1=<nowiki>cp plasma.desktop plasma-i3.desktop</nowiki>}}")
Other languages:

Under Construction

This is a new page, currently under construction!


Вступ

KWin — є типовою програмою для керування вікнами у Плазмі. Ця програма має багато можливостей, але у ній передбачено підтримку лише звичайних рухомих вікон. У Плазмі передбачено можливість скористатися іншою програмою для керування вікнами, наприклад i3, bspwm або будь-якою іншою мозаїчною програмою для керування вікнами.

Попередження

Іншими засобами керування вікнами можна скористатися лише разом із графічним сервером X.org. Описані тут зміни не стосуються сеансів Wayland.


Для більшості засобів керування вікнами потрібні мінімальні зміни у файлах налаштувань, іноді можна обійтися і взагалі без змін.

Деякі речі, які слід брати до уваги, якщо ви хочете скористатися іншою програмою для керування вікнами:

  • У мозаїчних засобів керування вікнами можуть виникати проблеми із компонентами, зокрема панелями. У деяких з таких засобів проблеми можна вирішити налаштовуванням.
  • У більшості засобів керування вікнами немає власного засобу композиції, тому деякі можливості, зокрема анімація та прозорість, у них є недоступними. Якщо вам потрібні якісь із недоступних ефектів, доведеться скористатися стороннім засобом композиції, наприклад 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
  • 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

Note

If you already have an i3 configuration file (usually at .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.