англійськафранцузькаіспанська

Ad


Значок OnWorks

herbstluftwm - онлайн у хмарі

Запустіть herbstluftwm у постачальнику безкоштовного хостингу OnWorks через Ubuntu Online, Fedora Online, онлайн-емулятор Windows або онлайн-емулятор MAC OS

Це команда herbstluftwm, яку можна запустити в постачальнику безкоштовного хостингу OnWorks за допомогою однієї з наших численних безкоштовних робочих станцій, таких як Ubuntu Online, Fedora Online, онлайн-емулятор Windows або онлайн-емулятор MAC OS

ПРОГРАМА:

ІМ'Я


herbstluftwm - менеджер вікон для X

СИНТАКСИС


herbstluftwm [ВАРІАНТ ...]

ОПИС


Починає herbstluftwm віконний менеджер увімкнено DISPLAY. Він також прослуховує дзвінки з
herbstclient(1) і виконує їх. Список доступних КОМАНДИ наведено нижче.

ВАРІАНТ може бути:

-c, --авто старт PATH
використання PATH як файл автозапуску замість файлу в $XDG_CONFIG_HOME

-v, -- версія
версія для друку та вихід

-l, -- заблоковано
Спочатку встановіть для параметра monitors_locked значення 1

-багатослівний
друкувати докладну інформацію в stderr

Цей посібник документує інтерфейс сценаріїв та налаштування. Для більш багатослівного
вступ див herbstluftwm-підручник(7).

ПЛИТКА АЛГОРИТМ


Основна концепція розкладки полягає в тому, що макет представлений бінарним деревом. При запуску
ви бачите один великий кадр на всьому екрані. Рамка виконує саме одне з
наступні умови:

1. Рамка містить вікна:

Він показує деяких клієнтів і влаштовує їх. Поточні алгоритми макета:

· 0: вертикальний - клієнти розміщуються один під одним

· 1: горизонтальний - клієнти розміщуються один біля одного

· 2: Макс - усі клієнти максимізовані в цьому кадрі

· 3: сітка - клієнти розташовані майже по квадратичної сітки

2. Кадр розбивається на підкадри:

Він розділений рівно на два підрамники у настроюваному фракція або по вертикалі
або горизонтальним способом. Отже, виходить два кадри які відповідають тим самим умовам (нові
кадри завжди збираються містити windows). Якщо ви вже розділили кадр
містить вікна, вікна успадковуються першим новим дочірнім фреймом.

Якщо з’явиться нове вікно, воно поміщається в поточну рамку, на якій вибрано фокус. Тільки листя
фреймове дерево можна сфокусувати.

Фрейм можна видалити, а потім об’єднати його з сусіднім кадром. Завдяки макету
структуру двійкового дерева, кожен кадр (тобто вузол у двійковому дереві) має рівно один
сусід.

Аналогія з бінарним деревом найкраще пояснюється на невеликому прикладі: Під час запуску
у вас є просте двійкове дерево з одним фреймом, який може містити клієнтів:

C

При його розділенні (наприклад, за допомогою команди розкол вертикальний 0.5) ви отримаєте це:

V
/\
CC

Ви також можете розділити лівий кадр горизонтально, і ви отримаєте:

V
/\
HC
/\
CC

Якщо змінити фокус на клієнта праворуч і видалити цей кадр, він буде
об'єднати з лівим піддеревом, і ви отримаєте:

H
/\
CC

Команда розташування команда друкує поточний макет усіх тегів у вигляді дерева.

FRAME ІНДЕКС


Точне положення кадру в дереві компонування може бути описано його індекс який
просто рядок символів. Алгоритм пошуку починається з кореневого кадру і вибирає один
з двох його піддерев відповідно до кожного символу в індексі.

Символи інтерпретуються наступним чином:

· 0: виберіть перше піддерево

· 1: виберіть друге піддерево

· .: виберіть піддерево з фокусом

· /: виберіть піддерево, яке не має фокусу

Таким чином, порожній рядок відноситься до кореневого кадру, а «00» відноситься до першого піддерева
перше піддерево кореневої рамки.

Як особливий випадок, рядок «@» завжди посилається на кадр, який у фокусі на даний момент.

На тему


Теги дуже схожі на робочі області, віртуальні робочі столи або віконні групи. Кожен тег має один
макет. Є список тегів. Ви можете додавати або видаляти теги динамічно.

МОНИТОРИ


Монітори в herbstluftwm повністю незалежні від реальних фізичних екранів. Це
означає, що ви можете, наприклад, розділити екран на два віртуальні монітори, щоб переглянути два теги
один раз на великому екрані.

Кожен монітор відображає рівно один тег у визначеному прямокутнику на екрані.

Кожен монітор може мати назву, яку можна встановити за допомогою add_monitor та перейменувати_монітор. Він може
бути незручним з перейменувати_монітор команда. Ім’я монітора — це довільний непорожній рядок
який не повинен починатися з +, - або будь-якої цифри.

На монітор можна посилатися різними способами:

· за абсолютним індексом, зазначеним у ст список_моніторів команда

· за його відносним індексом: a + або -, за яким слідує дельта, наприклад: +3

· за його взаємним розташуванням до зосередженого монітора. -l позначає монітор зліва від
сфокусований монітор, -r праворуч від, -u вище та -d нижче, відповідно.

· через "" (порожній рядок), який представляє поточний монітор.

· за своєю назвою.

КОМАНДИ


herbstluftwm керується внутрішніми командами, які можна виконати через herbstclient(1)
або через прив'язки клавіш.

вихід
Виходить із herbstluftwm.

перезавантажувати
Виконує файл автозапуску.

версія
Друкує версію запущеного екземпляра herbstluftwm.

луна [АРГС ...]
Друкує все дано АРГС розділені одним пробілом і новим рядком після цього.

правда
Ігнорує всі аргументи і завжди повертає успіх, тобто 0.

false
Ігнорує всі аргументи і завжди повертає помилку, тобто 1.

список_команд
Перелічує всі доступні команди.

список_моніторів
Перелік поточних налаштованих моніторів з їх індексом, областю (як прямокутник), іменем (if
названий) і тег, який зараз переглядається.

список_правил
Перелічує всі активні правила. Кожен рядок складається з усіх параметрів, які було викликано правилом
з, а також його мітка, розділені табуляторами.

list_keybinds
Перелічує всі зв’язані ключі з пов’язаними з ними командами. Кожен рядок складається з одного ключа
комбінацію та команду з її параметрами, розділеними табуляторами.

попередження
Вкладки в параметрах команди не екрануються!

замикати
Збільшує monitors_locked налаштування. Використовуйте це, якщо ви хочете створити кілька вікон
дії відразу (тобто без перефарбовування між окремими кроками). Дивись також: відімкнути

відімкнути
Зменшує monitors_locked налаштування. Якщо monitors_locked змінюється на 0, тоді все
монітори перефарбовуються знову. Дивись також: замикати

клавіатура KEY КОМАНДА [АРГС ...]
Додає прив'язку клавіш. Коли KEY пресується, внутр КОМАНДА (з його АРГС) є
виконано. Прив’язка клавіш – це (можливо порожній) список модифікаторів (Mod1, Mod2, Mod3,
Mod4, Mod5, Alt, Super, Control/Ctrl, Shift) і одна клавіша (див. keysymdef.h для списку
ключів). Модифікатори та ключ пов'язані з - or + як роздільник. Якщо є
це вже є обов'язковим KEY, воно буде перезаписано. Приклади:

· вийти з комбінації клавіш Mod4+Ctrl+q

· Keybind Mod1-i перемикання always_show_frame

· прив'язка клавіш Mod1-Shift-пробілcycle_layout -1

keyunbind KEY|-F|--все
Видаляє прив’язку ключа для KEY. Синтаксис для KEY визначено в клавіатура. Якщо -F or
--все задано, тоді всі прив’язки клавіш буде видалено.

mousebind BUTTON ДІЇ [КОМАНДА ...]
Додає прив’язку миші для плаваючого режиму. Коли BUTTON натиснуто, вказане
ДІЇ буде виконано. BUTTON має синтаксис, подібний до KEY аргумент keybind:
Він складається зі списку модифікаторів (розділених символами - or +, перераховані дійсні модифікатори
опис клавіатура) і рівно одну назву кнопки:

· B1 або Button1

· B2 або Button2

· B3 або Button3

· B4 або Button4

· B5 або Button5

ДІЇ має бути одна з таких дій:

· перемістити: переміщує вікно, перетягуючи курсор.

· зміна розміру: змінює розмір вікна, перетягуючи кут.

· масштабування: змінює розмір вікна у всіх чотирьох напрямках, зберігаючи центр
віконна константа.

· дзвонити: дзвонить лише вказаному КОМАНДА в той час як клієнт.перетягував посилання на клієнта
які BUTTON було виконано.

У той час як ДІЇ виконується, client.dragged — клієнт, який перетягується. наприклад:

· прив'язка миші Mod1-Button3 масштабування

· mousebind Mod1-B4 заміна виклику WID clients.dragged.winid spawn transset-df
--inc -i WID 0.05

· mousebind Mod1-B5 заміна виклику WID clients.dragged.winid spawn transset-df
--dec -i WID -m 0.2 0.05

mouseunbind
Видаляє всі прив’язки миші.

ікру ВИКОНАННЯ [АРГС ...]
Нерестить ан ВИКОНАННЯ з його АРГС. Детальніше див людина 3 execvp. Приклад:

· spawn xterm -e man 3 execvp

wmexec [МЕНЕДЖЕР ВІКОН [АРГС ...]]
Виконує МЕНЕДЖЕР ВІКОН з його АРГС. Це корисно для перемикання диспетчера вікон
у запущеному сеансі без перезапуску сеансу. Якщо ні або недійсний
МЕНЕДЖЕР ВІКОН дається, потім herbstluftwm перезапускається. Детальніше див людина 3 execvp.
приклад:

· wmexec openbox

ланцюг СЕПАРАТОР [КОМАНДИ ...]
ланцюг очікує a СЕПАРАТОР і список КОМАНДИ з аргументами. Команди повинні
бути відокремленими зазначеними СЕПАРАТОР, СЕПАРАТОР може будь-яким словом і тільки є
розпізнається як роздільник між командами, якщо він точно збігається СЕПАРАТОР. "ланцюг"
виводить додані результати всіх команд і повертає код виходу останньої
виконана команда. Приклади:

· Створіть тег під назвою "foo" і використовуйте його безпосередньо:

chain , додати foo , використовувати foo

· Поверніть макет за годинниковою стрілкою:

ланцюг .-. замок .-. обертати .-. обертати .-. обертати .-. розблокувати

Контрприклади:

· Це створить лише тег під назвою "foo":

chain , додайте foo, використовуйте foo

· Роздільник "." визначено, але використовується ",":

ланцюг . додати foo , використовувати foo

та СЕПАРАТОР [КОМАНДИ ...]
"і" поводиться як команда ланцюга, але виконує лише вказану КОМАНДИ в той час як
команди повертають код виходу 0.

or СЕПАРАТОР [КОМАНДИ ...]
"або" поводиться як команда ланцюга, але виконує лише вказане КОМАНДИ до одного
команда повертає код виходу 0.

! КОМАНДА
"!" виконує надану команду, але інвертує її повернуте значення. Якщо надано
команда повертає відмінний від нуля "!" повертає 0, якщо команда повертає нуль, "!" повертається
і 1.

намагатися КОМАНДА
"try" виконує надану команду, друкує її результат, але завжди повертає успіх,
тобто 0.

тихий КОМАНДА
"silent" виконує надану команду, але відкидає її вихід і повертає лише її
код виходу.

focus_nth ІНДЕКС
Фокусує n-е вікно в кадрі. Перше вікно має ІНДЕКС 0 Якщо ІНДЕКС є негативним
або більше, ніж індекс останнього вікна, тоді фокусується останнє вікно.

цикл [DELTA]
Циклує виділення в поточному кадрі DELTA. Якщо DELTA пропущено, DELTA = 1
буде використовуватися. DELTA може бути негативним; DELTA = -1 означає: цикл у протилежному
напрямок на 1.

цикл_всі [--пропустити-невидимий] [НАПРЯМОК]
Переходить через усі вікна та рамки поточного тегу. НАПРЯМОК = 1 означає
вперед, НАПРЯМОК = -1 означає назад, НАПРЯМОК = 0 не впливає. НАПРЯМОК
за замовчуванням 1. Якщо всередині кадру є кілька вікон, то він діє аналогічно
цикл команда. (В цикл_всі команда фокусує наступну/попередню відпустку в
розташування дерево.). Якщо --пропустити-невидимий дається, то це лише циклічно проходить через все видиме
вікна та пропускає невидимі вікна в макс. Сфокусоване вікно піднято.

цикл_кадр [НАПРЯМОК]
Циклічний цикл по всіх кадрах поточного тегу. НАПРЯМОК = 1 означає вперед, НАПРЯМОК
= -1 означає назад, НАПРЯМОК = 0 не впливає. НАПРЯМОК за замовчуванням 1.

макет_циклу [DELTA [ПЛАНИ ...]]
Циклує алгоритм компонування в поточному кадрі DELTA. DELTA за замовчуванням 1. Ви
можна знайти список алгоритмів компонування вище. Якщо список ПЛАНИ дається,
cycle_layout буде перебирати їх замість списку алгоритмів макета за замовчуванням.
Кожна назва макета має зустрічатися не більше одного разу. приклад:

· макет_цикла -1

·cycle_layout 1 вертикальна сітка

set_layout ЗОВНІШНІЙ ВИД
Встановлює алгоритм компонування в поточному кадрі на ЗОВНІШНІЙ ВИД. Для списку макетів,
перевірте список алгоритмів компонування вище.

близько WINID
Граціозно закриває вказане вікно або сфокусоване вікно, якщо його не вказано
явно. Дивіться розділ WINDOW IDS, як посилатися на певне вікно.

close_or_remove
Закриває вікно у фокусі або видаляє поточний кадр, якщо жодне вікно не сфокусовано.

close_and_remove
Закриває вікно у фокусі та видаляє поточний кадр, якщо іншого вікна немає
в цьому кадрі.

розкол ALIGN [ФРАКЦІЯ]
Розбиває сфокусований кадр на два підкадри із зазначеним ФРАКЦІЯ між 0 і 1
який за замовчуванням дорівнює 0.5. ALIGN один з

· топ

· нижній (= вертикальний)

· залишити,

· право (= горизонтальний)

· вибухнути

· автоматичний (розділити по найдовшій стороні)

Він визначає, яка з двох половин буде порожньою після розбиття. Друга половина
буде зайнято поточним сфокусованим кадром. Після розщеплення пер
рамка фокусування залишиться у фокусі. Один особливий ALIGN режим є вибухнути, який розбивається
раму таким чином, щоб розміри та положення вікна зберігалися настільки, наскільки
можливо. Якщо ні ФРАКЦІЯ надається вибухнути режим вибирається оптимальний дріб
автоматично. приклад:

· розколоти

· розрізне дно 0.5

· split horiz 0.3

· розкол по вертикалі 0.5

· розділити ч

фокус [-i|-e] НАПРЯМОК
Переміщує фокус з поточного кадру на наступний кадр або клієнта НАПРЯМОК який
в:

· л[ліво]

· право [право]

· у [п]

· d[власний]

If -i (internal) вказано або значення default_direction_external_only не встановлено, потім наступне
клієнт в НАПРЯМОК також може бути в одному кадрі. Якщо всередині немає клієнта
цей кадр або -e (зовнішній) дається, то наступний кадр у вказаному НАПРЯМОК волі
бути зосередженим.

Напрям між кадрами визначається наступним чином: Фокус знаходиться на аркуші
бінарне дерево. Кожен внутрішній вузол дерева запам’ятовує останній напрямок фокусування (дочірній 0
або дитина 1). Алгоритм використовує найкоротший можливий шлях від аркуша (в даний момент
сфокусований кадр) до кореня, поки не можна буде змінити фокус у вказаному
НАПРЯМОК. Звідти фокус повертається на листок.

Приклад: фокус знаходиться на кадрі A. Після виконання фокус право фокус буде на кадрі
C.

Дерево: V,0 Екран: ┌─────┐┌─────┐ (до)
╱ ╲ │ B ││ C │
╱ ╲ └─────┘└─────┘
H,1 H,0 ┌─────┐┌─────┐
╱ ╲ ╱ ╲ │ A* ││ D │
A* BCD └─────┘└─────┘

Дерево: V,0 Екран: ┌─────┐┌─────┐ (після фокусування праворуч)
╱ ╲ │ Б ││ В* │
╱ ╲ └─────┘└─────┘
H,1 H,0 ┌─────┐┌─────┐
╱ ╲ ╱ ╲ │ A ││ D │
ABC* D └─────┘└─────┘

Якщо поточний зосереджений клієнт плаває, то наступне плаваюче вікно в
зазначений напрямок зосереджено і піднесено.

If фокус_перетинає_межі_монітора встановлено, а клієнт або фрейм не знайдено в
зазначений НАПРЯМОК, потім наступний монітор у цьому НАПРЯМОК є зосередженим.

focus_edge [-i|-e] НАПРЯМОК
Фокусує вікно на краю тега у вказаному НАПРЯМОК, НАПРЯМКИ
та -e поводитися так, як зазначено в фокус команда

If -i (internal) вказано або default_direction_external_only не встановлено, тоді вікно
на краю тега буде сфокусовано. В іншому випадку, тільки рамка на краю тега
буде сфокусовано, а вікно, яке було останнє сфокусовано в цьому кадрі, буде сфокусовано.

підвищення WINID
Піднімає вказане вікно. Перегляньте розділ WINDOW IDS про те, як посилатися на a
певне вікно. Його результат видно тільки в плаваючому режимі.

Чайові
Команда WINID також можна вказати некероване вікно, хоча завершення для підвищення
команда не відображає ідентифікатори некерованих вікон.

стрибок WINID
Переміщує фокус на вказане вікно. Про те, як це зробити, див. у розділі WINDOW IDS
посилання на певне вікно.

приносити WINID
Переміщує вказане вікно до поточного кадру та фокусує його. Дивіться розділ про
WINDOW IDS про те, як посилатися на певне вікно.

змінити розмір НАПРЯМОК ДРОБ ДЕЛЬТА
Змінює наступний дріб у вказаний НАПРЯМОК by ДРОБ ДЕЛЬТА. НАПРЯМОК поводиться
як зазначено в фокус команда. Ви не повинні пропускати знак - or +, тому що в
майбутніх версіях поведінка може змінитися, якщо знак пропущено. приклад:

· змінити розмір праворуч +0.05

· зменшити розмір -0.1

shift_edge [-i|-e] НАПРЯМОК
Зміщує сфокусоване вікно до краю тега у вказаному НАПРЯМОК,
НАПРЯМКИ поводитися так, як зазначено в фокус Команда і -i та -e поводитися, як зазначено
в focus_edge команда

зміна [-i|-e] НАПРЯМОК
Переміщує вікно у фокусі до наступного кадру у вказаному НАПРЯМОК, НАПРЯМКИ
та -i|-e поводитися так, як зазначено в фокус команда. Якщо зосереджений клієнт плаває
замість того, щоб бути плиткою, клієнт переміщується до наступного вікна або краю екрана.

shift_to_monitor МОНІТОР
Переміщує вікно з фокусом до тегу зазначеного МОНІТОР.

видаляти
Видаляє сфокусований кадр і об’єднує його вікна з сусіднім кадром.

обертати
Повертає макет на сфокусованому тегу проти годинникової стрілки на 90 градусів. Тільки це
маніпулює вирівнюванням фреймів, а не їх вмістом.

комплект ІМ'Я VALUE
Встановлює вказане налаштування ІМ'Я до VALUE, Всі НАЛАШТУВАННЯ перераховані в розділі
нижче.

отримати ІМ'Я
Друкує значення налаштування ІМ'Я, Всі НАЛАШТУВАННЯ перераховані в розділі нижче.

переключитися ІМ'Я
Перемикає налаштування ІМ'Я якщо це ціле значення: якщо його значення не дорівнює 0, це
стає 0; інакше його попереднє значення (яке було нерівним 0) відновлюється.

значення_циклу ІМ'Я ЗНАЧЕННЯ ...
Цикли значення налаштування ІМ'Я через ЗНАЧЕННЯ: Тобто він шукає перше входження
поточного значення в ЗНАЧЕННЯ і змінює значення на наступне в списку або на
перший, якщо досягнуто кінця або поточне значення не знайдено. приклад:

· цикл_значення frame_gap 0 5 10 15

·cycle_value frame_bg_normal_color червоний зелений синій

цикл_монітор [DELTA]
Монітор циклів зосереджений DELTA. DELTA за замовчуванням 1.

фокус_монітор МОНІТОР
Переміщує фокус на вказаний монітор.

додавати TAG
Створює новий порожній тег з іменем TAG.

використання TAG
Перемикає сфокусований монітор на вказаний TAG.

використання_індексу ІНДЕКС [--пропустити-видимий]
Перемикає сфокусований монітор на TAG із зазначеним ІНДЕКС. Якщо ІНДЕКС починається з
+ або -, тоді ІНДЕКС розглядається відносно струму TAG. Якщо --пропустити-видимий проходить
та ІНДЕКС є відносним, то теги, які вже видно на моніторі, пропускаються.
Наприклад, цей цикл повертається через теги:

· use_index -1 --пропуск-видимий

use_previous
Перемикає сфокусований монітор на попередньо переглянутий тег.

тег злиття TAG [TARGET]
Видаляє названий тег TAG і переміщує всі свої вікна до тегу TARGET. Якщо TARGET пропущено,
буде використано тег фокусування.

перейменувати OLDTAG NEWTAG
Перейменує названий тег OLDTAG до NEWTAG.

рухатися TAG
Переміщує вікно з фокусом до названого тегу TAG.

індекс_переміщення ІНДЕКС [--пропустити-видимий]
Переміщує вікно з фокусом до тегу, зазначеного в ІНДЕКС. Аналогічно аргументу за
використання_індексу: Якщо ІНДЕКС починається з + або -, потім трактується відносно. Якщо --пропустити-видимий
передається з відносним індексом, тоді вже видимі теги пропускаються.

lock_tag [МОНІТОР]
Заблокуйте перемикання тегів на зазначеному моніторі. Якщо аргумент не наведено, то
використовується сфокусований на даний момент монітор. Коли перемикання тегів вимкнено для монітора,
команди використання та використання_індексу не мають ефекту при виконанні там. Коли
swap_monitors_to_get_tag увімкнено, перемикаючись на тег, який розташований на заблокованому
monitor, перемикається на цей монітор замість того, щоб красти його звідти. Стан блокування
монітор позначається «[ЗАБЛОКОВАНО]». список_моніторів вихід.

unlock_tag [МОНІТОР]
Повторно вмикає перемикання тегів на вказаному моніторі. Якщо аргумент не наведено, то
використовується сфокусований на даний момент монітор. Це зворотна операція lock_tag і має
жодних побічних ефектів, крім зняття цього замка.

disjoin_rects RECTS ...
Бере список прямокутників і розбиває їх на менші частини, щоб отримати всі прямокутники
не перетинаються, отримані прямокутники друкуються рядок за рядком. Ця команда ні
змінити поточний список моніторів! Тому це може бути корисно в поєднанні з
команда set_monitors.

· Наприклад, disjoin_rects 600x400+0+0 600x400+300+250 друкує це:

300х150+300+250
600х250+0+0
300х150+0+250
300х150+600+250
600х250+300+400

· У наведеному вище прикладі два монітори розділені на 5 моніторів, які графічно
засоби:

┌───────┐ ┌──────┐
│ │ └───────┘
│ ┌───┼───┐ ┌─┐┌───┐┌──┐
│ │ │ │ роз’єднуються │ ││ ││ │
└──┼───┘ │ ─────────> └─┘└───┘└──┘
│ │ ┌────────┐
└────────┘ └───────┘

set_monitors RECTS ...
Встановлює список моніторів точно до списку заданих прямокутників:

· І-й існуючий монітор переміщено до i-го заданого RECT

· Нові монітори створюються, якщо їх більше RECTS потім монітори

· Існуючі монітори видаляються, якщо їх буде більше RECTS

детектувати_монітори -l|-- список|--не-роз'єднуватися
Встановлює список моніторів на доступні монітори Xinerama. Якщо Ксінерама
розширення відсутнє, воно повертатиметься на один монітор на всьому екрані. Якщо
виявлені монітори перекриваються, буде розділено на більше моніторів, які не перетинаються
але охоплюють ту саму область за допомогою disjoin_rects.

If -l or -- список передано, список прямокутників виявлених фізичних моніторів є
друкований. Отже, hc detect_monitors еквівалентний команді bash hc set_monitors $(hc
disjoin_rects $(hc detect_monitors -l)).

add_monitor RECT [TAG [ІМ'Я]]
Додає монітор до вказаного прямокутника RECT і відображає TAG на ньому. TAG в даний час
не можна відображати на будь-якому іншому моніторі. RECT є рядком форми ШхВ±Х±В. Якщо
ні або порожній TAG задано, то буде обрано будь-який вільний тег. Якщо ІМ'Я дано, тобі
може посилатися на цей монітор за його назвою замість використання індексу. приклад:

· add_monitor 1024x768-20+0 mynewtag main

видалити_монітор МОНІТОР
Видаляє вказаний монітор.

move_monitor МОНІТОР RECT [ПАДУП [ПАДРАЙТ [ПАДАУН [ПІДЛІВО]]]]
Переміщує вказаний монітор у прямокутник RECT. RECT визначається як в add_monitor. Якщо
немає або вказано порожній блокнот, він не змінюється.

raise_monitor [МОНІТОР]
Піднімає вказаний монітор або поточний, якщо МОНІТОР опускається.

перейменувати_монітор МОНІТОР ІМ'Я
(Пере)йменує вже існуючий монітор. Якщо ІМ'Я порожній, він видаляє монітор
ім'я.

стек
Друкує стос моніторів із видимими тегами та їх шарами у вигляді дерева. The
порядок друкованої стопки зверху вниз. Стиль налаштовується за допомогою дерево_стиль
установка.

monitor_rect [[-p] МОНІТОР]
Виводить прямокутник вказаного монітора у форматі: X Y W H Якщо ні МОНІТОР or
дупа дається, то використовується поточний монітор. Якщо -p подається, потім решта
надруковано rect без прокладки навколо цього монітора.

майданчик МОНІТОР [ПАДУП [ПАДРАЙТ [ПАДАУН [ПІДЛІВО]]]]
Встановлює панель вказаного монітора на вказане заповнення. Якщо немає або порожнє заповнення
дається, не змінюється.

list_padding [МОНІТОР]
Перелічує заповнення вказаного монітора або поточного сфокусованого монітора, якщо ні
надається монітор.

макет [TAG [ІНДЕКС]]
Друкує макет рамки за допомогою ІНДЕКС on TAG, у гарному стилі дерева. Його стиль такий
визначені дерево_стиль налаштування. Якщо ні TAG задано, використовується поточний тег. Якщо ні
ІНДЕКС задано, використовується коренева рамка. Щоб уточнити ІНДЕКС без уточнення TAG (тобто
використовувати поточний тег), передати порожній рядок як TAG.

Приклад виведення:

╾─┐ горизонтальний вибір 50%=1
├─╼ по вертикалі: 0xe00009
└─┐ по вертикалі 50% вибір=0
├─╼ по вертикалі: 0xa00009 [FOCUS]
└─╼ по вертикалі: 0x1000009

дамп [TAG [ІНДЕКС]]
Друкує ту саму інформацію, що й розташування команду, але у машиночитаному форматі.
Його вихід можна прочитати назад за допомогою загрузка команда

Приклад виводу (відформатований пізніше):

(розбити по горизонталі: 0.500000:1
(по вертикалі клієнтів: 0 0xe00009)
(розділене по вертикалі: 0.500000:1
(по вертикалі клієнтів: 0 0xa00009)
(по вертикалі клієнтів: 0 0x1000009)))

навантаження [TAG] ЗОВНІШНІЙ ВИД
Завантажує задане ЗОВНІШНІЙ ВИД опис до вказаного TAG або поточний тег, якщо ні TAG дається.

обережність
ЗОВНІШНІЙ ВИД це рівно один параметр. Якщо ви викликаєте його вручну зі своєї оболонки або
зі сценарію, цитуйте його правильно!

повний ПОЗИЦІЯ [КОМАНДА АРГС ...]
Друкує результат заповнення вкладки для часткового КОМАНДА з необов'язковим АРГС. Ви
зазвичай це не потрібно, тому що для bash вже є завершення вкладки. приклад:

· повний 0 м

друкує всі команди, які починаються з m

· завершити 1 перемикач фра

друкує всі налаштування, починаючи з fra, які можна перемикати

повна_оболонка ПОЗИЦІЯ [КОМАНДА АРГС ...]
Поводиться як повний з наступними додатками, корисними для завершення на posix
оболонки:

· Escape-послідовності видаляються КОМАНДА та АРГС.

· До кожного результату повного завершення додається пробіл.

· Спеціальні символи будуть екрановані у виводі.

emit_hook АРГС ...
Випускає спеціальний гачок для всіх неробочих клієнтів herbst.

tag_status [МОНІТОР]
Надрукуйте розділений вкладками список усіх тегів для вказаного МОНІТОР індекс. Якщо ні МОНІТОР
задано індекс, використовується сфокусований монітор. Кожне ім'я тегу має префікс з одного символу,
що вказує на його стан:

· . тег порожній

· : тег не порожній

· + тег переглядається на вказаному МОНІТОР, але цей монітор не сфокусований.

· # тег переглядається на вказаному МОНІТОР і це зосереджено.

· - тег переглядається на іншому МОНІТОР, але цей монітор не сфокусований.

· % тег переглядається на іншому МОНІТОР і це зосереджено.

· ! тег містить термінове вікно

попередження
Якщо ви використовуєте вкладку в одному з імен тегів, то tag_status, ймовірно, цілком марний
для вас.

плаваючий [[TAG] on|від|переключитися|статус]
Змінює поточний тег на плаваючий/розкладковий режим у вказаному TAG або друкує поточний
статус. Якщо ні TAG задано, використовується поточний тег. Якщо аргумент не вказано, плаває
режим перемикається. Якщо статус дається, то on or від друкується, залежно від
плаваючий стан TAG.

правило [[--]FLAG|[--]LABEL|[--]УМОВА|[--]НАСЛІДКИ ...]
Визначає правило, яке застосовуватиметься до всіх нових клієнтів. Його поведінка описана в
ПРАВИЛА розділ.

некерувати LABEL|--все|-F
Видаляє всі названі правила LABEL. Якщо передано --all або -F, усі правила видаляються.

повноекранний [on|від|переключитися]
Встановлює або перемикає повноекранний режим сфокусованого клієнта. Якщо аргумент не наведено,
повноекранний режим перемикається.

псевдостиль [on|від|переключитися]
Встановлює або перемикає псевдостильовий стан зосередженого клієнта. Якщо клієнт є
псевдозображений, то в режимі розкладки клієнт лише переміщується, але не змінюється розмір — клієнт
розмір залишиться плаваючим розміром. Єдина причина змінити розмір клієнта - це гарантувати
щоб він вписувався в свою плитку. Якщо аргумент не вказано, псевдостильовий режим перемикається.

дерево_об'єкта [PATH]
Друкує дерево об'єктів. Якщо шлях об’єкта PATH дано лише піддерево
починаючи з PATH друкується. Див ОБ'ЄКТИ розділ для більш докладної інформації.

attr [PATH [НОВАЦІННІСТЬ]
Друкує дочірні елементи та атрибути даного об’єкта, до якого звертається PATH. Якщо PATH is
атрибут, а потім надрукуйте значення атрибута. Якщо НОВАЦІННІСТЬ дається, призначається НОВАЦІННІСТЬ до
атрибут, заданий PATH. Дивіться ОБ'ЄКТИ розділ для більш докладної інформації.

get_attr АТРИБУТ
Надрукувати значення вказаного АТРИБУТ як описано в ОБ'ЄКТИ розділ.

set_attr АТРИБУТ НОВАЦІННІСТЬ
Призначити НОВАЦІННІСТЬ у вказаний АТРИБУТ як описано в ОБ'ЄКТИ розділ.

new_attr [бул|color|Int|рядок|мазь] PATH
Створює новий атрибут з ім’ям та в об’єкті, зазначеному в PATH. Його тип
визначається першим аргументом. Назва атрибута має починатися з my_.

видалити_аттр PATH
Видаляє визначений користувачем атрибут PATH.

замінити ІДЕНТИФІКАТОР АТРИБУТ КОМАНДА [АРГС ...]
Замінює всі точні входження ІДЕНТИФІКАТОР in КОМАНДА і її АРГС за значенням
АТРИБУТ. Зауважимо, що КОМАНДА також замінюється значенням атрибута, якщо воно
дорівнює ІДЕНТИФІКАТОР. Потім виконується замінена команда з її аргументами. приклад:

· замінити MYTITLE clients.focus.title echo MYTITLE

Друкує заголовок поточного фокусованого вікна.

спринт ІДЕНТИФІКАТОР ФОРМАТ [АТРИБУТИ ...] КОМАНДА [АРГС ...]
Замінює всі точні входження ІДЕНТИФІКАТОР in КОМАНДА і її АРГС за струною
визначено ФОРМАТ. Кожен %s в ФОРМАТ означає значення наступного атрибута в
АТРИБУТИ, подібний до printf(1) команда. Замінена команда з її аргументами
потім виконується. Приклади:

· sprintf STR title=%s clients.focus.title echo STR

Друкує назву поточного сфокусованого вікна перед заголовком title=.

· sprintf X tag=%s tags.focus.name правило один раз X

Переміщує наступного клієнта, який з’являється, до тегу, на якому зараз сфокусовано.

· sprintf X %s/%s tags.focus.index tags.count echo X

Вказує, який тег сфокусований і скільки є тегів

· sprintf l somelongstring echo lll

Друкує довгий рядок тричі, розділяючи пробіли.

mktemp [бул|Int|рядок|мазь] ІДЕНТИФІКАТОР КОМАНДА [АРГС ...]
Створює тимчасовий атрибут із заданим типом і замінює всі входження
ІДЕНТИФІКАТОР in КОМАНДА та АРГС by шляхом тимчасового атрибута. Замінений
потім виконується команда з її аргументами. Вихідний статус КОМАНДА повертається

порівняти АТРИБУТ ОПЕРАТОР VALUE
Порівнює значення АТРИБУТ з VALUE за допомогою методу порівняння ОПЕРАТОР. Якщо
порівняння успішно, воно повертає 0, інакше 1. Оператори:

· =: АТРИБУТ's значення дорівнює VALUE

· !=: АТРИБУТ's значення не дорівнює VALUE

· le: АТРИБУТзначення <= VALUE

· lt: АТРИБУТзначення 's VALUE

· ge: АТРИБУТзначення >= VALUE

· gt: АТРИБУТзначення > VALUE

Команда ОПЕРАТОРИ le,lt,ge,gt можна використовувати лише якщо АТРИБУТ має тип ціле чи
ціле число без знаку. Зауважте, що першим параметром завжди має бути атрибут і
другий постійне значення. Якщо ви хочете порівняти два атрибути, використовуйте замінник
команда:

замінити FC tags.focus.frame_count \
порівняти tags.focus.client_count gt FC

Він повертає успіх, якщо в сфокусованому тегу більше клієнтів, ніж у фреймах.

getenv ІМ'Я
Отримує значення змінної середовища ІМ'Я.

settenv ІМ'Я VALUE
Встановіть значення змінної середовища ІМ'Я до VALUE.

unsetenv ІМ'Я
Скасує змінну середовища ІМ'Я.

НАЛАШТУВАННЯ


Параметри конфігурують поведінку herbstluftwm і ними можна керувати за допомогою комплект, отримати
та переключитися команди. Є два типи налаштувань: рядки та цілі значення. An
ціле значення встановлюється, якщо його значення дорівнює 1 або інше значення, не рівне 0. Ціле значення
не встановлено, якщо його значення дорівнює 0.

frame_gap (ціле число)
Зазор між рамками в режимі розкладки.

frame_padding (ціле число)
Заповнення всередині рамки в режимі розбивки, тобто простір між межею a
рама та вікна в ній.

window_gap (ціле число)
Зазор між вікнами в межах однієї рамки в режимі розкладки.

snap_distance (ціле число)
Якщо клієнт перетягується в плаваючому режимі, він прив’язується до сусідніх клієнтів, якщо
відстань між ними менше, ніж snap_distance.

snap_gap (ціле число)
Вказує проміжок, що залишився, якщо перетягнутий клієнт прикріплюється до краю в плаваючому режимі. Якщо
snap_gap встановлено на 0, проміжків не залишиться.

mouse_recenter_gap (ціле число)
Визначає зазор навколо монітора. Якщо вибрано монітор і положення миші
буде відновлено в цьому проміжку, він встановлюється в центрі монітора. Це
корисно, коли монітор був залишений рухом миші, але повторно вибраний клавіатурою.
Якщо проміжок дорівнює 0 (за замовчуванням), миша ніколи не повертається.

frame_border_active_color (рядок/колір)
Колір межі сфокусованої рамки.

frame_border_normal_color (рядок/колір)
Колір межі нерозфокусованої рамки.

frame_border_inner_color (рядок/колір)
Колір внутрішньої межі рамки.

frame_bg_active_color (рядок/колір)
Колір заливки сфокусованої рамки.

frame_bg_normal_color (рядок/колір)
Колір заливки не сфокусованого кадру (його видно, лише якщо встановлено always_show_frame).

frame_bg_transparent (ціле число)
Якщо встановлено, фон кадрів буде прозорим. Це означає, що вирізається прямокутник
з внутрішньої так, щоб тільки рамка рамки і смуга ширини
frame_transparent_width можна побачити. Використовуйте frame_active_opacity та frame_normal_opacity
для справжньої прозорості.

frame_transparent_width (ціле число)
Визначає ширину решти кадру, забарвленого frame_bg_active_color if
frame_bg_transparent встановлено.

frame_border_width (ціле число)
Ширина межі рамки.

frame_border_inner_width (ціле число)
Ширина внутрішньої межі рами. Має бути менше, ніж frame_border_width, оскільки
він не додає до ширини межі рамки, а є її частиною.

focus_crosses_monitor_boundaries (ціле число)
Якщо встановлено, команда фокусування перетинає межі монітора. Якщо немає клієнта в
напрямок, заданий фокусу, то монітор фокусується у зазначеному напрямку.

raise_on_focus (ціле число)
Якщо встановлено, вікно піднімається, якщо воно сфокусовано. Значення цього параметра використовується лише в
плаваючий режим.

raise_on_focus_temporarily (ціле число)
Якщо встановлено, вікно тимчасово відкривається, якщо воно сфокусовано на його тегу. Тимчасово в
цей випадок означає, що вікно повернеться до свого попереднього положення, якщо
сфокусовано інше вікно.

raise_on_click (ціле число)
Якщо встановлено, вікно відкривається, якщо його клацнути. Значення цього параметра лише помічено
у плаваючому режимі.

window_border_width (ціле число)
Ширина межі вікна.

window_border_inner_width (ціле число)
Ширина внутрішньої межі вікна. Має бути менше за window_border_width,
оскільки він не додає ширини межі вікна, а є його частиною.

window_border_active_color (рядок/колір)
Колір межі сфокусованого вікна.

window_border_normal_color (рядок/колір)
Колір межі нерозфокусованого вікна.

window_border_urgent_color (рядок/колір)
Колір межі несфокусованого, але термінового вікна.

window_border_inner_color (рядок/колір)
Колір внутрішньої межі вікна.

always_show_frame (ціле число)
Якщо встановлено, відображаються всі кадри. Якщо не встановлено, лише кадри з фокусом або вікнами
воно відображається.

frame_active_opacity (ціле число)
Непрозорість сфокусованого кадру у відсотках. Для роботи потрібен запущений менеджер компонування
фактичний ефект.

frame_normal_opacity (ціле число)
Непрозорість кадру у відсотках. Для роботи потрібен запущений менеджер композицій
фактичний ефект.

default_frame_layout (ціле число)
Індекс макета кадру, який використовується, якщо створюється новий фрейм (розщепленням або на a
новий тег). Щоб отримати список дійсних індексів та їх значення, перевірте список макета
алгоритми вище.

default_direction_external_only (ціле число)
Цей параметр контролює поведінку фокусування та зсуву, якщо ні -e or -i аргумент є
дано. якщо встановлено, фокус і зсув змінюють сфокусований кадр, навіть якщо є інші
клієнтів у цьому фреймі у вказаному НАПРЯМОК. Інакше, клієнт у поточному фреймі
вибирається, якщо він знаходиться у вказаному НАПРЯМОК.

gapless_grid (ціле число)
Цей параметр впливає на розмір останнього клієнта у фреймі, упорядкованому за сіткою
макет. Якщо встановлено, то останній клієнт завжди заповнює пробіл у цьому фреймі. Якщо не встановлено,
тоді останній клієнт має такий самий розмір, як і всі інші клієнти в цьому фреймі.

smart_frame_surroundings (ціле число)
Якщо встановлено, межі кадру та прогалини будуть видалені, якщо не буде двозначності щодо
сфокусована рамка.

smart_window_surroundings (ціле число)
Якщо встановлено, межі вікон та прогалини будуть видалені та мінімальні, якщо немає двозначності
щодо сфокусованого вікна. Це мінімальне оформлення вікна можна налаштувати за допомогою
тема.мінімальний об'єкт.

focus_follows_mouse (ціле число)
Якщо встановлено і вікно фокусується курсором миші, це вікно буде сфокусованим (ця функція
також відомий як неохайний фокус). Якщо не встановлено, потрібно клацнути, щоб змінити фокус вікна
за допомогою миші.

Якщо інше вікно приховано зміною фокусу (наприклад, якщо вікна з псевдозображенням
у макеті max), то для зміни фокусу потрібно додаткове клацання.

focus_stealing_prevention (ціле число)
Якщо встановлено, лише пейджери та панелі завдань можуть змінювати фокус. Якщо не налаштовано, все
програми можуть запитувати зміну фокуса.

monitors_locked (ціле число)
Якщо більше 0, клієнти на всіх моніторах більше не переміщуються та не змінюються.
Якщо встановлено значення 0, упорядкування моніторів знову ввімкнено, і всі монітори
змінюються, якщо тим часом їх зміст змінився. Ви не повинні змінюватися
це налаштування вручну через проблеми з паралельністю; використовуйте команди замикати та відімкнути
замість цього.

swap_monitors_to_get_tag (ціле число)
Якщо встановлено: якщо ви бажаєте переглянути тег, який уже переглядається на іншому моніторі, то
вміст монітора буде замінено, і ви побачите тег розшуку на сфокусованому моніторі. Якщо
не встановлено, інший монітор фокусується, якщо він показує потрібний тег.

auto_detect_monitors (ціле число)
Якщо встановлено, detect_monitors автоматично виконується щоразу, коли підключається монітор,
відключено або змінено розмір.

tree_style (рядок)
Він містить символи, які використовуються для друку гарного дерева ascii. Він повинен містити в
мінімум 8 символів. наприклад X|:#+*-. виробляє таке дерево, як:

X-.корінь
#-. дитина 0
| #-* дитина 01
| +-* дитина 02
+-. дитина 1
: #-* дитина 10
: +-* дитина 01

Корисні значення для дерево_стиль є: ╾│ ├└╼─┐ або -| |'--. або ╾│ ├╰╼─╮.

wmname (рядок)
Він контролює значення властивості _NET_WM_NAME у кореневому вікні, яке вказує
ім'я запущеного менеджера вікон. Значення цього параметра не оновлюється, якщо
фактична властивість _NET_WM_NAME у кореневому вікні змінюється ззовні. Приклад
Використання:

·cycle_value wmname herbstluftwm LG3D

pseudotile_center_threshold (Int)
Якщо більше 0, він визначає найменшу відстань між центрованою псевдопліткою
вікна та межі рамки або плитки, якій вона призначена. Якщо ця відстань
нижче, ніж pseudotile_center_threshold, він вирівнюється у верхньому лівому куті клієнта
плитка

update_dragged_clients (Int)
Якщо встановлено, вміст вікна клієнта змінюється відразу під час зміни його розміру за допомогою
миша. Якщо не встановлено, розмір вмісту клієнта змінюється після відпускання кнопки миші.

ПРАВИЛА


Правила використовуються для зміни властивостей за замовчуванням для певних клієнтів, коли вони з’являються. Кожен
правило відповідає певній підмножині всіх клієнтів і визначає набір властивостей для
їх (наз НАСЛІДКИs). Правило можна визначити за допомогою цієї команди:

правило [[--]FLAG|[--]LABEL|[--]УМОВА|[--]НАСЛІДКИ ...]

Кожне правило складається зі списку FLAGs, УМОВАs, НАСЛІДКИs і, за бажанням, a LABEL.
(до кожного з них можна за бажанням додати два тире (--), щоб забезпечити більше
Iptables(8)-подібне відчуття).

Кожному правилу можна надати спеціальну мітку, вказавши LABEL майно:

· [--]мітка=VALUE

Якщо вказано кілька міток, буде застосовано останню у списку. Якщо етикетки немає
якщо дано, то правилу буде надано ціле ім’я, яке представляє індекс правила
з останнього некерувати -F команду (яка запускається під час автозапуску за замовчуванням).

Чайові
Мітки правил за замовчуванням мають інкрементальний індекс. Ці мітки за замовчуванням є унікальними, якщо
ви призначаєте іншому правилу користувацьке ціле число LABEL. Можна зафіксувати мітки за замовчуванням
з друкована етикетка прапор

Якщо з’являється новий клієнт, herbstluftwm намагається застосувати кожне правило до цього нового клієнта як
наступне: Якщо кожен УМОВА цього правила збігається з цим клієнтом, потім кожний
НАСЛІДКИ виконується. (Якщо немає умов, то це правило виконується для
кожен клієнт)

Кожен УМОВА складається з власність ім'я, оператор і a значення. Допустимі оператори:

· ~ відповідає, якщо клієнтський власність відповідає регулярному виразу значення.

· = відповідає, якщо клієнтський правильно рядок дорівнює значення.

Дійсний властивості є:

екземпляр
перший запис у WM_CLASS клієнта.

клас
другий запис у WM_CLASS клієнта.

назву
заголовок вікна клієнта.

ПІД
ідентифікатор процесу клієнта (Попередження: pid доступний не для кожного клієнта. Тільки це
збігається, якщо клієнт встановлює _NET_WM_PID на сам pid).

maxage
відповідає, якщо вік правила, виміряний у секундах, не перевищує значення, це
умову можна використовувати лише з оператором =. Якщо maxage вже перевищено (і
ніколи більше не збігається), то це правило видаляється. (За допомогою цього ви можете створювати правила
які живуть лише певний час.)

тип вікна
відповідає властивості _NET_WM_WINDOW_TYPE вікна.

роль вікна
відповідає властивості WM_WINDOW_ROLE вікна, якщо воно встановлено вікном.

Кожен НАСЛІДКИ складається з ІМ'Я=VALUE пара. Дійсний ІМЕНА є:

тег
переміщує клієнта до тегу VALUE.

контролювати
переміщує клієнта до тегу на моніторі VALUE. Якби тег наслідок також був
вказано, а switchtag встановлено для клієнта, потім перемістіть клієнта до цього тега
відобразити цей тег на моніторі VALUE. Якщо вказано тег наслідку, але switchtag
не було, проігноруйте цей наслідок.

фокус
вирішує, чи отримує клієнт фокус введення на його тег. За замовчуванням є від. VALUE
може бути on, від or переключитися.

switchtag
якщо фокус активовано, а клієнт поміщений на тег, що не сфокусований, то вказує switchtag
чи буде відображатися тег клієнта чи ні. Якщо тег відображається на будь-якому моніторі, але
не сфокусований, клієнтський тег переноситься на поточний монітор, якщо
swap_monitors_to_get_tag активовано. VALUE може бути on, від or переключитися.

управляти
вирішує, буде клієнтом керувати чи ні. За замовчуванням є on. VALUE може бути
on, від or переключитися.

індекс
переміщує вікно до вказаного індексу в дереві. VALUE це кадр індекс.

псевдотильний
встановлює псевдостильний стан клієнта. VALUE може бути on, від or переключитися.

ewmhrequests
встановлює, чи буде стан вікна (повноекранний стан і прапорець вимагає уваги)
може бути змінено програмою через сам ewmh. Це не впливає на початкову
повноекранний стан, запитаний вікном. VALUE може бути on, від or переключитися, за замовчуванням
до on.

ewmhnotify
визначає, чи повинен hlwm повідомляти клієнту про зміни EMWH (наразі лише файл
повноекранний стан). Якщо це встановлено, програми не переходять у повноекранний режим
у повноекранному режимі. VALUE може бути on, від or переключитися, за замовчуванням on.

повноекранний
встановлює повноекранний прапор клієнта. VALUE може бути on, від or переключитися.

гачок
видає користувацьке правило гачка VALUE WINID коли це правило запускається новим вікном
з ідентифікатором WINID. Цей наслідок можна використовувати кілька разів, що призведе до а
гачок, який буде випускатися при кожному появі наслідків гаку.

маска клавіш
Встановлює маску ключа для клієнта. Маска ключа — це регулярний вираз, який відповідає
проти представлення рядків (див. list_keybinds). Якщо він відповідає, прив’язка клавіш
активний, коли цей клієнт сфокусований, інакше він вимкнено. Маска клавіатури за замовчуванням
порожній рядок (""), який не вимикає будь-яке прив'язування клавіш.

Поведінку правила можна налаштувати за допомогою спеціального засобу ФЛАГИ:

· ні: заперечує наступне УМОВА.

· !: те саме, що ні.

· один раз: застосувати це правило лише один раз (а потім видалити).

· printlabel: друкує мітку щойно створеного правила на стандартний виведення.

· prepend: додати правило до списку правил замість того, щоб додавати його. Тож його
наслідки можуть бути замінені вже існуючими правилами.

Приклади:

· правило --class=Netscape --tag=6 --focus=вимкнено

Переміщує всі екземпляри Netscape до тегу 6, але не фокусує їх.

· правило не клас~.*[Tt]erm tag=2

Переміщує всіх клієнтів до тегу 2, якщо їх клас не закінчується терміном або терміном.

· клас правила=індекс Thunderbird=/0

Вставте всі екземпляри Thunderbird в дерево, яке не має фокусу, і туди в першому
дитина.

· правило --windowtype=_NET_WM_WINDOW_TYPE_DIALOG --focus=on

Встановлює фокус на нові діалогові вікна, які правильно встановлюють їхній _NET_WM_WINDOW_TYPE.

WINDOW IDS


Деякі команди приймають вікно як посилання, наприклад закрити. Синтаксис такий:

· порожній рядок — або відсутній аргумент — посилається на поточне вікно.

· термінові посилання на якесь термінове вікно.

· 0xHEXID - де HEXID є деяким шістнадцятковим числом — посилається на вікно з
шістнадцятковий ідентифікатор вікна X11 HEXID.

· ВИРІШИЛИ - де ВИРІШИЛИ є деяким десятковим числом — посилається на вікно з десятковим числом
Ідентифікатор вікна X11 ВИРІШИЛИ.

ОБ'ЄКТИ


попередження
Дерево об'єктів ще не стабільне, тобто його інтерфейс може змінюватися до наступної стабільної
звільнення. Тому перевірте цю документацію ще раз після оновлення наступного разу.

Дерево об’єктів – це сукупність об’єктів з атрибутами, подібними до / sys відомо з
Ядро Linux. Багато сутностей (наприклад, теги, монітори, клієнти, ...) мають об'єкти для доступу
безпосередньо їх атрибути. Дерево друкується командою object_tree і виглядає більше
або менше наступним чином:

$ herbstclient дерево_об'єкта
╾─┐
├─┐ теги
│ ├─┐ по імені
│ │ ├─╼ 1
│ │ ...
│ │ └─╼ 9
│ └─╼ фокус
├─┐ клієнти
│ ├─╼ 0x1400022
│ └─╼ фокус
└─┐ монітори
├─╼ по імені
└─╼ фокус

Щоб надрукувати піддерево, починаючи з певного об’єкта, передайте PATH об'єкта до
дерево_об'єкта. Об'єкт PATH це шлях, що використовує роздільник . (крапка), наприклад, tags.by-name:

$ herbstclient object_tree tags.by-name.
╾─┐ tags.by-name.
├─╼ 1
├─╼ 2
...
└─╼ 9

Щоб запитати всі атрибути та дочірні елементи об’єкта, передайте його PATH приписувати:

$ herbstclient теги attr.
2 дітей:
по імені.
фокус.

1 атрибути:
.---- тип
| .-- запис
В.В.
u - кількість = 9

$ herbstclient attr tags.focus.
0 дітей.
6 атрибути:
.---- тип
| .-- запис
В.В.
sw name = "1"
bw floating = false
i - кількість кадрів = 2
i - кількість_клієнтів = 1
i - curframe_windex = 0
i - curframe_wcount = 1

Це вже дає інтуїцію результату: attr спочатку перераховує імена дитини
об'єкти, а потім усі атрибути, кажучи для кожного атрибута:

· її тип

· s для рядка

· i для цілого числа

· b для логічного значення

· u для цілого числа без знаку

· якщо користувач може записати: w якщо так, - ще.

· назва атрибута

· його поточне значення (в лапках лише для рядків)

Щоб отримати значення певного атрибута без лапок, адресуйте атрибут, використовуючи те саме
синтаксис шляхів до об'єктів і передати його в attr або get_attr:

$ herbstclient attr clients.focus.title
herbstluftwm.txt = (~/dev/c/herbstluftwm/doc) - ВІМ
$ herbstclient get_attr clients.focus.title
herbstluftwm.txt = (~/dev/c/herbstluftwm/doc) - ВІМ

Щоб змінити значення атрибута, доступного для запису, передайте нове значення attr або set_attr:

$ herbstclient attr tags.focus.floating
false
$ herbstclient attr tags.focus.floating true
$ herbstclient attr tags.focus.floating
правда
$ herbstclient set_attr tags.focus.floating false
$ herbstclient attr tags.focus.floating
false

Просто подивіться навколо, щоб відчути, що там. Детальний вміст дерева відображається як
наступним чином:

· теги: піддерево для тегів.

┌───────────┬─────────────────┐
│u - підрахувати │ кількість тегів │
└───────────┴─────────────────┘

· індекс: об'єкт тега з індексом індекс.

· за прізвищем

· TAG: об'єкт для кожного тега з ім'ям TAG

┌────────────────────┬─────────────────────────── ────┐
│sw назва │ назва мітки │
├────────────────────┼─────────────────────────── ────┤
│bw плаваючий │, якщо він знаходиться в плаваючому режимі │
├────────────────────┼─────────────────────────── ────┤
│i - індекс │ індекс цього тега │
├────────────────────┼─────────────────────────── ────┤
│i - кількість кадрів │ кількість кадрів │
├────────────────────┼─────────────────────────── ────┤
│i - кількість_клієнтів │ кількість клієнтів за цим тегом │
├────────────────────┼─────────────────────────── ────┤
│i - curframe_windex │ індекс зосередженого клієнта в │
│ │ рамку вибору │
├────────────────────┼─────────────────────────── ────┤
│i - curframe_wcount │ кількість клієнтів у │
│ │ вибраний кадр │
└────────────────────┴─────────────────────────── ────┘

· фокус: об'єкт сфокусованого тега

· клієнти

· WINID: об'єкт для кожного клієнта зі своїм WINID

┌───────────────────────┬──────────────────────── ──────────┐
│s - winid │ його ідентифікатор вікна │
├───────────────────────┼──────────────────────── ──────────┤
│s - заголовок │ заголовок його вікна │
├───────────────────────┼──────────────────────── ──────────┤
│s - тег │ тег, на якому він зараз перебуває │
├───────────────────────┼──────────────────────── ──────────┤
│i - pid │ ідентифікатор процесу (-1, якщо │
│ │ вимкнено) │
├───────────────────────┼──────────────────────── ──────────┤
│s - клас │ клас його (другий запис у │
│ │ WM_CLASS) │
├───────────────────────┼──────────────────────── ──────────┤
│s - екземпляр │ його екземпляр (перший запис │
│ │ в WM_CLASS) │
├───────────────────────┼──────────────────────── ──────────┤
│bw повноекранний режим │ │
├───────────────────────┼──────────────────────── ──────────┤
│ж.п.псевдочерепиця │ │
├───────────────────────┼──────────────────────── ──────────┤
│bw ewmhrequests │ якщо запити ewmh дозволені │
│ │ для цього клієнта │
├───────────────────────┼──────────────────────── ──────────┤
│bw ewmhnotify │ якщо клієнту повідомляють про його │
│ │ стан через ewmh │
├───────────────────────┼──────────────────────── ──────────┤
│bw терміновий │ його невідкладний стан │
├───────────────────────┼──────────────────────── ──────────┤
│bw sizehints_tiling │ якщо sizehints для цього клієнта │
│ │ слід поважати в плитці │
│ │ режим │
├───────────────────────┼──────────────────────── ──────────┤
│bw sizehints_flaoting │ якщо sizehints для цього клієнта │
│ │ слід поважати у плаваючих │
│ │ режим │
└──────────────────────┴───────────────────────── ──────────┘

· фокус: об'єкт зосередженого клієнта, якщо є

· перетягнутий: об'єкт клієнта, який перетягується мишею, якщо є. Див
документація команди mousebind для прикладів.

· монітори

┌───────────┬─────────────────────┐
│u - підрахувати │ кількість моніторів │
└──────────┴─────────────────────┘

· ІНДЕКС: об'єкт для кожного монітора зі своїм ІНДЕКС

· за прізвищем

· ІМ'Я: об'єкт для кожного іменованого монітора

┌─────────────┬─────────────────────────────────┐
│s - назва │ його назва │
├─────────────┼─────────────────────────────────┤
│i - індекс │ його індекс │
├─────────────┼─────────────────────────────────┤
│s - тег │ тег, який зараз переглядається на ньому │
├─────────────┼─────────────────────────────────┤
│b - тег_блокування │ │
└─────────────┴─────────────────────────────────┘

· фокус: об'єкт сфокусованого монітора

· налаштування має атрибут для кожного параметра. Побачити НАЛАШТУВАННЯ для списку.

· тема має атрибути для налаштування декору вікон. тема і багато її дочірніх
об'єкти мають такі атрибути

┌─────────────────────┬────────────────────────── ─────┐
│iw border_width │ ширина основи межі │
├─────────────────────┼────────────────────────── ─────┤
│iw padding_top │ додаткова ширина межі на │
│ │ верх │
├─────────────────────┼────────────────────────── ─────┤
│iw padding_right │ праворуч │
├─────────────────────┼────────────────────────── ─────┤
│iw padding_bottom │ внизу │
├─────────────────────┼────────────────────────── ─────┤
│iw padding_left │ і зліва від межі │
├─────────────────────┼────────────────────────── ─────┤
│колір cw │ основний колір фону │
│ │ кордон │
├─────────────────────┼────────────────────────── ─────┤
│iw внутрішня_ширина │ ширина межі навколо │
│ │ вміст клієнтів │
├─────────────────────┼────────────────────────── ─────┤
│cw inner_color │ його колір │
├─────────────────────┼────────────────────────── ─────┤
│iw зовнішня_ширина │ ширина додаткової межі │
│ │ близько до краю │
├─────────────────────┼────────────────────────── ─────┤
│cw зовнішній_колір │ його колір │
├─────────────────────┼────────────────────────── ─────┤
│cw background_color │ колір за вмістом вікна │
│ │ видно при зміні розміру │
├─────────────────────┼────────────────────────── ─────┤
│sw reset │ Написання цього скидає всі │
│ │ приписує значення за замовчуванням │
└─────────────────────┴─────────────────────────── ─────┘

внутрішній_колір/внутрішня_ширина
╻ зовнішній_колір/зовнішня_ширина
│ ╻
│ │
┌────╴│╶──────────────────┷─────┐ ╮ border_width
│ │ колір │ ┝ +
│ ┌──┷───────────────────────┐ │ ╯ padding_top
│ │=====================....│ │
│ │== вміст вікна ==....│ │
│ │=====================..╾──────── колір фону
│ │............................│ │
│ └─────────────────────────┘ │ ⎱ border_width +
└────────────────────────────────┘ ⎰ padding_bottom

Встановлення атрибута об’єкта теми просто поширює значення до відповідного
атрибут плитки та плаваючого об’єкта.

· tiling налаштовує декорування плиткових клієнтів, задаючи один з його атрибутів
пропагує відповідний атрибут активної, нормальної та невідкладної дитини
об’єкти.

· Active налаштовує оздоблення зосереджених і плиткових клієнтів

· звичайний налаштовує оздоблення не зосереджених і плиткових клієнтів

· терміновий налаштовує оформлення термінових і плиткових клієнтів

· floating поводиться аналогічно черепиці

· мінімальний поводиться аналогічно плитці та налаштовує ці мінімальні прикраси
ініціюється smart_window_surroundings.

· active поширює значення атрибутів до tiling.active і floating.active

· normal поширює значення атрибутів до tiling.normal і floating.normal

· urgent поширює значення атрибутів до tiling.urgent і floating.urgent

АВТО СТАРТ Фото


Немає файлу конфігурації, а є файл автозапуску, який виконується під час запуску. це є
також виконується за командою перезавантажувати. Якщо не зазначено в --авто старт аргумент, автозапуск
файл знаходиться за адресою $XDG_CONFIG_HOME/herbstluftwm/автозапуск або, по крайней
~/.config/herbstluftwm/автозапуск. Зазвичай він складається з кількох herbstclient дзвінки. Якщо
Виконання файлу автозапуску в домі користувача дає збій у глобальному файлі автозапуску (в основному
розміщений у /etc/xdg/herbstluftwm/autostart) виконується як запасний варіант.

Для швидкого встановлення скопіюйте файл автозапуску за замовчуванням ~/.config/herbstluftwm/.

ГУКИ


На особливих подіях herbstluftwm випускає деякі гачки (з параметрами). Ви можете отримати або
чекати їх з herbstclient(1). Крім того, гачки на замовлення можна випускати разом із emit_hook
команда. Сам herbstluftwm випускає такі гачки:

повноекранний режим [увімкнено|вимкнено] WINID СТАН
Повноекранний стан вікна WINID було змінено на [увімкнено|вимкнено].

tag_changed TAG МОНІТОР
Тег TAG був обраний на МОНІТОР.

focus_changed WINID TITLE
Вікно WINID був зосереджений. Його назва вікна TITLE.

window_title_changed WINID TITLE
Назва увагу вікно змінено. Його ідентифікатор вікна WINID і його нова назва
is TITLE.

tag_flags
Прапори (тобто терміновий або заповнений стан) були змінені.

тег_доданий TAG
Тег з іменем TAG був доданий.

tag_removed TAG
Тег імені TAG було видалено.

терміново [увімкнено|вимкнено] WINID
Терміновий стан клієнта з даними WINID було змінено на [увімкнено|вимкнено].

правити ІМ'Я WINID
Вікно з ідентифікатором WINID з'явилося, що викликало правило з наслідком
гачок =ІМ'Я.

Є також інші корисні гачки, які ніколи не випустить сам herbstluftwm, але
які можна випромінювати за допомогою emit_hook команда:

quit_panel
Вказує панелі вийти. Panel.sh за замовчуванням завершує роботу на цьому гачку. Використовується багато скриптів
цей гачок.

перезавантажувати
Каже всім демонам, що автозапуск файл перезавантажується — і каже їм вийти. Це
гачок Повинен видаватися в першому рядку кожного автозапуск файлу.

СТАКУВАННЯ


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

· зосереджений клієнт (якщо raise_on_focus_temporarily увімкнено)

· клієнти в повноекранному режимі

· звичайні клієнти

· рамкові прикраси

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

EWMH


Наскільки це можливо, herbstluftwm намагається відповідати вимогам EWMH. Це включає в себе:

· Надається інформація про імена тегів і списки клієнтів.

· Вікна робочого столу із середовища робочого столу не керуються та залишаються нижче інших
вікна.

· Запити клієнтів, як-от зосередження, обробляються лише за умови налаштування
focus_stealing_prevention вимкнено

НАВКОЛИШНЄ СЕРЕДОВИЩЕ ЗМІННІ


DISPLAY
Визначає DISPLAY використовувати.

Використовуйте herbstluftwm онлайн за допомогою служб onworks.net


Безкоштовні сервери та робочі станції

Завантажте програми для Windows і Linux

Команди Linux

Ad