Tutorials/Using Other Window Managers with Plasma/uk: Difference between revisions

From KDE UserBase Wiki
(Created page with "** Допомогти із усуванням розривів у зображенні на екрані можуть засоби композиції. Втім, вам сп...")
(Updating to match new version of source page)
 
(29 intermediate revisions by 2 users not shown)
Line 1: Line 1:
<languages />
<languages />


<span id="Introduction"></span>
==Вступ==
==Вступ==


Line 18: Line 19:
** Допомогти із усуванням розривів у зображенні на екрані можуть засоби композиції. Втім, вам спершу слід переконатися, що проблему не можна вирішити за допомогою відеодрайверів, оскільки усування цих проблем є найкращим з точки зору швидкодії варіантом.
** Допомогти із усуванням розривів у зображенні на екрані можуть засоби композиції. Втім, вам спершу слід переконатися, що проблему не можна вирішити за допомогою відеодрайверів, оскільки усування цих проблем є найкращим з точки зору швидкодії варіантом.


==Використання іншого засобу керування вікнами у Плазмі==
<span id="Set-up"></span>
==Налаштовування==


===На рівні окремого користувача: використання Системних параметрів===
Щоб скористатися іншою програмою для керування вікнами з Плазмою, замініть службу systemd для KWin новим модулем користувача для бажаного засобу керування вікнами. Настанови можна знайти в [https://wiki.archlinux.org/title/KDE#Use_a_different_window_manager ArchWiki].


Це найпростіший спосіб, але ним можна скористатися лише для окремого користувача системи.
<span id="Configuration"></span>
==Налаштування==


[[Image:kde-i3-integration_uk.png]]
Щоб змусити нестандартну програму для керування вікнами працювати з Плазмою, можуть знадобитися додаткове налаштовування.


*Створіть скрипт командної оболонки (наприклад, kde-i3.sh) із таким вмістом:{{Input|1=<nowiki>
===i3===  
#!/bin/sh
export KDEWM=/usr/bin/i3
</nowiki>}}
Замініть /usr/bin/i3 на шлях до бажаної для вас програми для керування вікнами.
 
* Запустіть '''Системні параметри'''
 
* Виберіть пункт '''Запуск і вихід'''
 
* Виберіть пункт '''Автозапуск'''
 
* Натисніть розташовану під списком кнопку '''Додати скрипт'''
 
* Вкажіть розташування попередньо створеного скрипту або натисніть кнопку із піктограмою теки, щоб скористатися для визначення адреси діалоговим вікном. Натисніть кнопку '''Гаразд''', і скрипт буде додано до списку.
 
* У стовпчику '''Момент виконання''' виберіть зі спадного списку варіант '''Перед запуском сеансу'''.
 
* Вибраний вами засіб для керування вікнами буде використано під час наступного входу до системи.
 
===На загальносистемному рівні: додавання XSession===
 
Якщо у вас є доступ до облікового запису суперкористувача (root), можна створити новий файл сеансу для X.org.
 
Цей підхід має декілька переваг: альтернативний варіант сеансу буде доступним для усіх користувачів системи, а для того, щоб повернутися до KWin, достатньо буде вийти з системи і увійти до неї знову.
 
{{Note_(uk)|Розташування файла XSession у різних дистрибутивах є різним, але здебільшого він зберігається у {{Path|/usr/share/xsessions}}. }}
 
Щоб додати сеанс для альтернативного засобу керування вікнами від імені суперкористувача (root)
 
* Скопіюйте наявний файл сеансу Плазми{{Input|1=<nowiki>cp plasma.desktop plasma-i3.desktop</nowiki>}}
 
* За допомогою текстового редактора відкрийте файл і змініть у ньому запис рядка Exec і, якщо хочете, запис Description{{Input|1=<nowiki>[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
</nowiki>}}
{{Warning_(uk)|У версіях до Плазми 5.17, користуйтеся '''startkde''' замість '''startplasma-x11''' у інструкції Exec, яку наведено вище.}}


* Далі, засіб керування вікнами слід перезапустити. Найпростіше це зробити простим перезавантаженням системи.
<span id="Installation"></span>
 
====Встановлення====
{{Warning_(uk)|Переконайтеся щодо шлях і назву до головної програми для керування вікнами у зміненій команді Exec вказано правильно. Якщо KDE не вдасться запустити програму для керування вікнами, сеанс не вдасться розпочати, і ви повернетеся до вікна входу до системи.}}
 
==Налаштування I3==
 
===Встановлення===


Перш ніж розпочинати налаштовування, вам слід переконатися, що у системі встановлено i3 або i3-gaps. Якщо це не так, встановіть відповідні пакунки за допомогою програми для керування пакунками або [[Special:myLanguage/Discover|Discover]]. Вам також слід встановити засіб композиції, оскільки, на відміну від KWin, у i3 немає власного вбудованого засобу композиції. Рекомендуємо скористатися compton.
Перш ніж розпочинати налаштовування, вам слід переконатися, що у системі встановлено i3 або i3-gaps. Якщо це не так, встановіть відповідні пакунки за допомогою програми для керування пакунками або [[Special:myLanguage/Discover|Discover]]. Вам також слід встановити засіб композиції, оскільки, на відміну від KWin, у i3 немає власного вбудованого засобу композиції. Рекомендуємо скористатися compton.


===Створення типових налаштувань i3===
<span id="Configure_i3"></span>
===Налаштовування i3===


Деякі з правил керування вікнами i3 уможливлюють використання вікон сповіщення та інших вікон Плазми як звичайних рухомих вікон:
Деякі з правил керування вікнами i3 уможливлюють використання вікон сповіщення та інших вікон Плазми як звичайних рухомих вікон:
Line 93: Line 53:
</nowiki>}}
</nowiki>}}


If you wish to maintain the same configuration across users (they can still override it with their own local config), remove the wizard invocation from the global configuration file and use it directly.
Якщо ви хочете скористатися однаковими налаштуваннями для усіх користувачів (які, втім, зможуть змінювати налаштування для свого облікового запису), вилучіть виклик майстра з загальносистемного файла налаштувань і впишіть налаштування безпосередньо.




The following i3 window rules will help you with notifications and some other plasma windows:
Вказані нижче правила для вікон i3 допоможуть вам із сповіщеннями та деякими іншими вікнами Плазми:
{{Input|1=<nowiki>for_window [title="Desktop — Plasma"] kill; floating enable; border none
{{Input|1=<nowiki>for_window [title="Desktop — Plasma"] kill, floating enable, border none
for_window [class="plasmashell"] floating enable;
for_window [class="plasmashell"] floating enable
for_window [class="Plasma"] floating enable; border none
for_window [class="Plasma"] floating enable, border none
for_window [title="plasma-desktop"] floating enable; border none
for_window [title="plasma-desktop"] floating enable, border none
for_window [title="win7"] floating enable; border none
for_window [title="win7"] floating enable, border none
for_window [class="krunner"] floating enable; border none
for_window [class="krunner"] floating enable, border none
for_window [class="Kmix"] floating enable; border none
for_window [class="Kmix"] floating enable, border none
for_window [class="Klipper"] floating enable; border none
for_window [class="Klipper"] floating enable, border none
for_window [class="Plasmoidviewer"] floating enable; border none
for_window [class="Plasmoidviewer"] floating enable, border none
for_window [class="(?i)*nextcloud*"] floating disable
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  
for_window [class="plasmashell" window_type="notification"] floating enable, border none, move right 700px, move down 450px
no_focus [class="plasmashell" window_type="notification"]
</nowiki>}}
</nowiki>}}


If you are using a non-English installation of Plasma, you need to find out what the exact window title of the Desktop is. One way is to do this is with <code>wmctrl -l</code>.
Якщо ви користуєтеся Плазмою із перекладом якоюсь мовою, вам слід визначити точну назву заголовка вікна стільниці. Одним зі способів такого визначення є команда <code>wmctrl -l</code>.


Instead of adding
Замість додавання
{{Input|1=<nowiki>for_window [title="Desktop — Plasma"] kill; floating enable; border none
{{Input|1=<nowiki>for_window [title="Desktop — Plasma"] kill; floating enable; border none
</nowiki>}}
</nowiki>}}


add the name of the window to the i3 config. This example uses the German Plasma installation.
додайте у файл налаштувань i3 визначену назву вікна. Наприклад, у перекладі Плазми німецькою це буде
{{Input|1=<nowiki>for_window [title="Arbeitsfläche — Plasma"] kill; floating enable; border none
{{Input|1=<nowiki>for_window [title="Arbeitsfläche — Plasma"] kill; floating enable; border none
</nowiki>}}
</nowiki>}}


===Configure Plasma===
Визначення позиції показу сповіщень може бути непростою сравою, оскільки не усі сповіщення мають однакові розміри (розміри можуть залежати від вмісту). Ви також можете скористатися позиціюванням за координатами, якщо знаєте роздільну здатність екрана. Наприклад, для екрана 1920x1080 і сповіщень у верхньому правому куті ви можете скористатися таким кодом:{{Input|1=<nowiki>
for_window [class="plasmashell" window_type="notification"] floating enable, border none, move position 1450px 20px
</nowiki>}}


You may get into issues related with the "Activities" feature - activating it via keyboard shortcuts (some of which are also used by i3, like "Meta + Q") seems to make i3 unresponsive. Removing Activity related global shortcuts seems to resolve this.
Якщо ви хочете розблоковувати KWallet автоматично при вході до системи, налаштуйте PAM, а потім додайте такий рядок до файла налаштувань i3:
{{Input|1=<nowiki>exec --no-startup-id /usr/lib/pam_kwallet_init
</nowiki>}}


To get the Plasma provided pager display desktops as i3bar, set '''Pager Settings''' > '''General''' > '''Text display''' to "Desktop name"
<span id="Configure_Plasma"></span>
====Налаштовування Плазми====


У вас можуть виникнути проблеми із можливостями «просторів дій» — активація за допомогою клавіатурних скорочень (деякі з яких використовуються у самому i3, зокрема "Meta + Q") робить i3 непрацездатним. Вилучення загальносистемних клавіатурних скорочень, які пов'язано із просторами дій, має вирішити проблему.


==Налаштування Bspwm==
Щоб віджет пейджера Плазми показував стільниці у форматі i3bar, встановіть для параметра '''Налаштувати аплет «Пейджер»''' > '''Загальне''' > '''Показ тексту''' значення «Назва стільниці».
 
===Bspwm===


В основному, для bspwm потрібне лише мінімальне додаткове налаштовування.
В основному, для bspwm потрібне лише мінімальне додаткове налаштовування.
Line 133: Line 102:
* Якщо у Плазмі одна панель, у переважній частині випадків bspwm виявляє її належним чином і не розташовує вікна у її частині. Якщо з панеллю виникають проблеми або використовується декілька панелей, слід додати такі рядки до '''.bspwmrc'''{{Input|1=<nowiki>bspc config top_padding size</nowiki>}}де '''size'''— розмір панелі у пікселях. Також можна скористатися параметрами bottom_padding, left_padding та right_padding. Якщо панеле декілька, можна скористатися керуванням панелями довільною кількістю цих інструкцій.
* Якщо у Плазмі одна панель, у переважній частині випадків bspwm виявляє її належним чином і не розташовує вікна у її частині. Якщо з панеллю виникають проблеми або використовується декілька панелей, слід додати такі рядки до '''.bspwmrc'''{{Input|1=<nowiki>bspc config top_padding size</nowiki>}}де '''size'''— розмір панелі у пікселях. Також можна скористатися параметрами bottom_padding, left_padding та right_padding. Якщо панеле декілька, можна скористатися керуванням панелями довільною кількістю цих інструкцій.


===awesomewm===
Following rules help Plasma to work as intended.
Add these entries into <code>awful.rules.rules</code> table
{{Input|1=<nowiki>
{ -- General plasma rules
    rule_any = {
        class = {
            "plasmashell",
            "ksmserver-logout-greeter",
        },
    },
    properties = {
        floating = true,
        border_width = 0,
        titlebars = false, -- custom property to control titlebars
    },
},
{ -- KDE apps
    rule_any = {
        class = {
            "spectacle",
            "krunner"
        }
    },
    properties = {
        floating = true,
    }
},
</nowiki>}}
Plasma widgets hide when they become unfocused. We do not want Desktop and Panel to be focusable, but want other <code>plasmashell</code> windows to remain focusable. A way to achieve this is with "manage" signal handler. An example handler:
{{Input|1=<nowiki>
client.connect_signal("manage", function(c)
--... your config
if c.type == "dock" -- Plasma Panel
    or c.type == "desktop" then -- Plasma Desktop
    c.focusable = false
    c:tags(c.screen.tags) -- show on all tags from this screen.
end
-- Show titlebars only if enabled.
if c.titlebars then
    awful.titlebar.show(c)
else
    awful.titlebar.hide(c)
end
-- Place floating windows. Plasma widgets provide this info
if c.floating then
    if c.size_hints.user_position then
        c.x = c.size_hints.user_position.x
        c.y = c.size_hints.user_position.y
    end
    if c.size_hints.user_size then
        c.width = c.size_hints.user_size.width
        c.height = c.size_hints.user_size.height
    end
end
..
end)
</nowiki>}}
You may match Plasma Desktop using the following rule:
{{Input|1=<nowiki>
rule_any = {
    name = {
      "Desktop.*Plasma",
    },
},
</nowiki>}}
<span id="Hints_and_Tips"></span>
==Підказки і настанови==
==Підказки і настанови==


Line 139: Line 182:
Відкривати компоненти Плазми можна за допомогою команд DBus. Ви можете пов'язати комбінації клавіш із командами DBus. Щоб визначити потрібну вам команду DBus, скористайтеся QDbusViewer.
Відкривати компоненти Плазми можна за допомогою команд DBus. Ви можете пов'язати комбінації клавіш із командами DBus. Щоб визначити потрібну вам команду DBus, скористайтеся QDbusViewer.


You can open some Plasma components with DBus commands. You can use this to map corresponding keybindings to DBus commands. To find a specific DBus command, you can look at <code>dbus-monitor</code> or <code>qdbusviewer</code> while you invoke the component in a standard Plasma set-up.
Деякі з компонентів Плазми можна відкривати за допомогою команд DBus. Ви можете скористатися цим для прив'язки відповідної комбінації клавіш до команди DBus. Щоб визначити команду DBus, скористайтеся <code>dbus-monitor</code> або <code>qdbusviewer</code>, викликавши відповідний компонент за допомогою стандартних інструментів Плазми.


More info on meta key handling:
Докладніше про роботу з клавішею <keycap>Meta</keycap> (<keycap>Alt</keycap>):


* [https://www.reddit.com/r/kde/comments/6wn5lk/bind_meta_key_alone_to_do_something/ Reddit post describing the ''Meta key - KWin'' relation]
* [https://www.reddit.com/r/kde/comments/6wn5lk/bind_meta_key_alone_to_do_something/ Допис на Reddit із описом зв'язку клавіші Meta із KWin]


* [https://zren.github.io/2019/03/04/activate-any-widget-with-meta-key Blog post describing the ''DBus - Component'' relation]
* [https://zren.github.io/2019/03/04/activate-any-widget-with-meta-key Допис у блозі із описом зв'язку DBus — компонент]




Line 153: Line 196:
* Відкрити вікно підтвердження виходу {{Input|1=<nowiki>qdbus org.kde.ksmserver /KSMServer org.kde.KSMServerInterface.logout -1 -1 -1</nowiki>}}
* Відкрити вікно підтвердження виходу {{Input|1=<nowiki>qdbus org.kde.ksmserver /KSMServer org.kde.KSMServerInterface.logout -1 -1 -1</nowiki>}}


* Open Krunner {{Input|1=<nowiki>qdbus org.kde.kglobalaccel /component/krunner org.kde.kglobalaccel.Component.invokeShortcut 'run command'</nowiki>}}
* Відкрити Krunner {{Input|1=<nowiki>qdbus org.kde.kglobalaccel /component/krunner org.kde.kglobalaccel.Component.invokeShortcut 'run command'</nowiki>}}


* Open logout confirmation screen {{Input|1=<nowiki>qdbus org.kde.ksmserver /KSMServer org.kde.KSMServerInterface.logout -1 -1 -1</nowiki>}}
* Відкрити вікно підтвердження виходу із облікового запису {{Input|1=<nowiki>qdbus org.kde.ksmserver /KSMServer org.kde.KSMServerInterface.logout -1 -1 -1</nowiki>}}


У i3 ви можете пов'язати комбінацію клавіш із командою за допомогою програми bindsym. Приклад:
У i3 ви можете пов'язати комбінацію клавіш із командою за допомогою програми bindsym. Приклад:
Line 161: Line 204:
{{Input|1=<nowiki>bindsym $mod+Shift+e exec <команда></nowiki>}}
{{Input|1=<nowiki>bindsym $mod+Shift+e exec <команда></nowiki>}}


If you want to map the modifier key itself, use the '''bindcode''' command - you have to specify the keycode generated by the key, which you can get via the <code>xev</code> utility.
Якщо ви хочете самостійно визначити прив'язку до клавіші-модифікатора, скористайтеся командою '''bindcode''' — вам слід вказати код клавіші, визначити який можна за допомогою програми <code>xev</code>.


Example for the Meta key:
Приклад для клавіші Meta:
{{Input|1=<nowiki>bindcode 133 --release exec --no-startup-id <command></nowiki>}}
{{Input|1=<nowiki>bindcode 133 --release exec --no-startup-id <command></nowiki>}}


Уr Bspwn вам слід скористатися програмою <code>bspc</code>. Див. [https://wiki.archlinux.org/index.php/Bspwm#Keyboard вікі Arch Linux], щоб дізнатися більше.
Уr Bspwn вам слід скористатися програмою <code>bspc</code>. Див. [https://wiki.archlinux.org/index.php/Bspwm#Keyboard вікі Arch Linux], щоб дізнатися більше.


<span id="More_Information"></span>
==Додаткові відомості==
==Додаткові відомості==


Line 175: Line 219:
* [https://wiki.archlinux.org/index.php/Desktop_environment Стільничне середовище] (Вікі Arch Linux)
* [https://wiki.archlinux.org/index.php/Desktop_environment Стільничне середовище] (Вікі Arch Linux)


<span id="References"></span>
==Посилання==
==Посилання==



Latest revision as of 01:29, 22 October 2023

Other languages:

Вступ

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

Плазма з використанням i3 як засобу керування вікнами

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

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


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

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

  • У мозаїчних засобів керування вікнами можуть виникати проблеми із компонентами, зокрема панелями. У деяких з таких засобів проблеми можна вирішити налаштовуванням.
  • У більшості засобів керування вікнами немає власного засобу композиції, тому деякі можливості, зокрема анімація та прозорість, у них є недоступними. Якщо вам потрібні якісь із недоступних ефектів, доведеться скористатися стороннім засобом композиції, наприклад compton.
    • Допомогти із усуванням розривів у зображенні на екрані можуть засоби композиції. Втім, вам спершу слід переконатися, що проблему не можна вирішити за допомогою відеодрайверів, оскільки усування цих проблем є найкращим з точки зору швидкодії варіантом.

Налаштовування

Щоб скористатися іншою програмою для керування вікнами з Плазмою, замініть службу systemd для KWin новим модулем користувача для бажаного засобу керування вікнами. Настанови можна знайти в ArchWiki.

Налаштування

Щоб змусити нестандартну програму для керування вікнами працювати з Плазмою, можуть знадобитися додаткове налаштовування.

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

Якщо ви хочете розблоковувати KWallet автоматично при вході до системи, налаштуйте PAM, а потім додайте такий рядок до файла налаштувань i3:

exec --no-startup-id /usr/lib/pam_kwallet_init

Налаштовування Плазми

У вас можуть виникнути проблеми із можливостями «просторів дій» — активація за допомогою клавіатурних скорочень (деякі з яких використовуються у самому i3, зокрема "Meta + Q") робить i3 непрацездатним. Вилучення загальносистемних клавіатурних скорочень, які пов'язано із просторами дій, має вирішити проблему.

Щоб віджет пейджера Плазми показував стільниці у форматі i3bar, встановіть для параметра Налаштувати аплет «Пейджер» > Загальне > Показ тексту значення «Назва стільниці».

Bspwm

В основному, для bspwm потрібне лише мінімальне додаткове налаштовування.

  • Якщо у Плазмі одна панель, у переважній частині випадків bspwm виявляє її належним чином і не розташовує вікна у її частині. Якщо з панеллю виникають проблеми або використовується декілька панелей, слід додати такі рядки до .bspwmrc
    bspc config top_padding size
    де size— розмір панелі у пікселях. Також можна скористатися параметрами bottom_padding, left_padding та right_padding. Якщо панеле декілька, можна скористатися керуванням панелями довільною кількістю цих інструкцій.

awesomewm

Following rules help Plasma to work as intended. Add these entries into awful.rules.rules table

{ -- General plasma rules
    rule_any = {
        class = {
            "plasmashell",
            "ksmserver-logout-greeter",
        },
    },
    properties = {
        floating = true,
        border_width = 0,
        titlebars = false, -- custom property to control titlebars
    },

},
{ -- KDE apps
    rule_any = {
        class = {
            "spectacle",
            "krunner"
        }
    },
    properties = {
        floating = true,
    }
},

Plasma widgets hide when they become unfocused. We do not want Desktop and Panel to be focusable, but want other plasmashell windows to remain focusable. A way to achieve this is with "manage" signal handler. An example handler:

client.connect_signal("manage", function(c)
--... your config

if c.type == "dock" -- Plasma Panel
    or c.type == "desktop" then -- Plasma Desktop
    c.focusable = false
    c:tags(c.screen.tags) -- show on all tags from this screen.
end

-- Show titlebars only if enabled.
if c.titlebars then 
    awful.titlebar.show(c)
else
    awful.titlebar.hide(c)
end

-- Place floating windows. Plasma widgets provide this info
 if c.floating then
    if c.size_hints.user_position then
        c.x = c.size_hints.user_position.x
        c.y = c.size_hints.user_position.y
    end
    if c.size_hints.user_size then
        c.width = c.size_hints.user_size.width
        c.height = c.size_hints.user_size.height
    end
end
..
end)

You may match Plasma Desktop using the following rule:

 rule_any = {
     name = {
       "Desktop.*Plasma",
     },
 },

Підказки і настанови

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, щоб дізнатися більше.

Додаткові відомості

Посилання