25 травня 2011 р.

WMFS - загальні налаштування + панель

Попередні дописи про WMFS:
WMFS - легкий старт
WMFS - редагуємо меню

Коротко про: загальні налаштування WM, налаштування панелі, поведінки конкретних програм, налаштування клієнтів(вікон). Здається все...

Налаштування загальної поведінки WM описано, в ~/.config/wmfs/wmfsrc, в секції [misc]
[misc]
        # Шрифт
        font               = "Droid Sans-10"
        # Нєпанятна
        raisefocus         = false
        # Перефокусуватися при переміщенні мишки
        focus_follow_mouse = true
        # Встановити фокус, кліком мишки, на виділенного клієнта(вікно)
        focus_pointer_click = true
        # Час через який потрібно перечитати файл status.sh
        status_timing      = 1     #seconds
[/misc]
Налаштування панелі, секція [bar]
[bar]
        bg     = "#2e3436" # Фон
        fg     = "#babdb6" # Шрифт
        border = false # Наявність границі панелі
        # selbar = false   #not worked now, see section [selbar]

        [systray]
                # Системний трей ввімкнути/вимкнути
                active = true

                # Екран на якому буде відображатися системний трей
                screen = 0

                # Інтервал між значками в системному лотку
                spacing = 1
        [/systray]

        # Інформаційний рядок на панелі який показує заголовок активного вікна.
        [selbar]
                bg = "#2e3436" # Фон
                fg = "#FFFFFF" # Шрифт

                # Довжина заголовку в знаках (решта обрізається)
                max_length = 35

                # Дії кнопок мишки коли курсор наведений на інф.рядок
                [mouse] button = "3" func = "clientlist"  [/mouse]
                [mouse] button = "4" func = "client_next" [/mouse] 
                [mouse] button = "5" func = "client_prev" [/mouse] 
        [/selbar]
[/bar]
Налаштування стільниці, секція [root]
[root]
        # Команда що встановлює фон стільниці, можна поміняти на свою.
        background_command = "xsetroot -solid black"

        # Поведінка кнопок миші, коли курсор на стільниці
        [mouse] button = "4" func = "tag_next"              [/mouse]
        [mouse] button = "5" func = "tag_prev"              [/mouse]
        [mouse] button = "3" func = "menu" cmd = "rootmenu" [/mouse]
[/root]
Налаштування клієнтів(вікон), секція [client]
[client]
        client_round         = true       # Нєпанятна
        border_height        = 1          # Товщина обрамлення вікна
        border_shadow        = false      # Наявність тіні
        border_normal        = "#babdb6"  # Обрамлення вікна
        border_focus         = "#729fcf"  # Обрамлення вікна з фокусом
        resize_corner_normal = "#babdb6"  # Обрамлення вікна при зміні розмірів
        resize_corner_focus  = "#729fcf"  # Те ж саме тільки вікно з фокусом

        # Відстань між клієнтами
        padding = 0

        # Модифікатор для дій миші, при роботі з вікнами
        modifier = "Alt"
        
        [mouse] button = "1" func = "client_raise" [/mouse] # Пересунути на інше місце в мозаїці
        [mouse] button = "1" func = "mouse_move"   [/mouse] # Перемістити
        [mouse] button = "3" func = "client_raise" [/mouse] # Пересунути на інше місце в мозаїці
        [mouse] button = "3" func = "mouse_resize" [/mouse] # Масштабувати

        # Заголовок вікна, видалити якщо не потрібно.
        [titlebar]
                stipple   = false      # Пунктир ???
                height    = 6          # Висота заголовку
                fg_normal = "#babdb6"  # Шрифт 
                fg_focus  = "#729fcf"  # Шрифт (вікно в фокусі)
                # Налаштування дій миші аналогічне як і в налаштуванні самого вікна
                [mouse] button = "1" func = "client_raise" [/mouse]
                [mouse] button = "1" func = "mouse_move"   [/mouse]
                [mouse] button = "3" func = "client_raise" [/mouse]
                [mouse] button = "3" func = "mouse_resize" [/mouse]

                # Кнопка 
                [button]
                        # При яких відмітках(flags) вікна має відображатися кнопка.
                        flags = "free,max,tile"
                        # Ну і знову поведінка миші
                        [mouse] button = "1" func = "client_kill"             [/mouse]
                        [mouse] button = "3" func = "menu" cmd = "clientmenu" [/mouse]
                        # Позиціонування і налаштування вигляду кнопки.
                        [line] coord = {1, 1, 4, 1} [/line]
                        [line] coord = {1, 1, 1, 4} [/line]
                        [line] coord = {1, 4, 4, 4} [/line]
                [/button]
        [/titlebar]
[/client]
Керування поведінкою певних програм, (куди, як і при яких умовах вони мають бути розміщені при запуску), секція [rules]. Налаштування конкретної програми - підсекція [rule]. Для того щоб правильно позиціонувалися вкіна потрібно для них визначити WM_CLASS, це робиться наступним чином:
xprop | grep WM_CLASS
і клікаємо "гризуном" по потрібному нам вікні, в свою чергу xprop поверне нам, щось на зразок:
WM_CLASS(STRING) = "xv", "MPlayer"
от цими даними і треба в подальшому оперувати.
[rules]
       # Зразок налаштування дії для Mplayer
       [rule]
               instance = "xv"       # Перше значення WM_CLASS
               class    = "MPlayer"  # Друге значення WM_CLASS, непотрібно, якщо є перше значення
               # role = ""           # WM_WINDOW_ROLE
               screen   = 0          # Екран 
               tag      = 5          # На якому тезі запустити Mplayer
               free     = false      # Зробити вікно вільним(flag = free)
               max      = true       # Максимізувати при запуску(flag = max)
       [/rule]
[/rules]
Налаштування командної строки [launcher]. З'являється на місці інформаційної строки на панелі, в мене запускається "гарячими" клавішами (Alt + p). Про налаштування клавіш буде в одному з наступних дописів.
[launcher]
        [set_launcher]
                name = "launcher_exec" # Ідентифікатор "ланчера"
                prompt = "Bash: >"     # Відображення на панелі
                command = "exec"       # Тут не потрібно нічого чіпати
        [/set_launcher]
[/launcher]

Додаткова інформація:

Нумерація клавіш миші у всіх секціях [mouse] конфігураційного файлу:

1 коментар:

  1. о, це цікаво… щоправда, не так багато місця на дисплеї 11-дюймового ноута, щоби там тайлити, але спробувати таки захтілося після трьох публікацій =)

    ВідповістиВидалити