«

»

Dub 20

i3wm VII. – Úprava dekorácií okien

V dnešnom článku si povieme ako i3wm zbaviť „škaredosti“. Tí, ktorí videli základnú konfiguráciu, tak mi možno dajú za pravdu. Nevravím, že trhá oči, ale môj vkus to nie. 😀 A preto si dnes povieme ako si ho upraviť podľa vkusu našich očí. V prvej časti si povieme niečo o okrajoch, v druhej o ich farbe a v tretej si opíšeme okraje pre jednotlivé plávajúce okná nezávislé na globálnom nastavení.

 

 

Webová stránka vývojára
Dokumentácia
Základná užívateľská príručka
Informácie na ArchWiki
Bližšie informácie o okrajoch okien
Bližšie informácie o farebných schémach

 

Ako obvykle, pomocou nejakého textového editoru si otvoríme základný konfiguračný súbor:

mousepad ~/.config/i3/config

 

Okraje okien:

Ako ste si podľa obsahu odkazu určite všimli, tak parameter for_window má viacero použití. Niektoré sme si už spomenuli v predchádzajúcich článkoch. Je ním napríklad plávajúce okno či veľkosť a pozícia okna na obrazovke. Dnes si povieme ako si pomocou neho prispôsobiť veľkosť a typ okraju okna. Rozoznávame dve možnosti. Prvou je normal, pri ktorom sa sa pracuje iba s hrúbkou samotného okraju, pričom titlebar zostáva stále zachovaný. Druhou možnosťou je pixel, kde je titlebar zakázaný a upravuje sa iba hrúbka okraja. Veľkosť hrúbky okraja sa udáva v pixeloch. Tento parameter sa dá plne nahradiť nasledujúcimi dvoma.

for_window [class=“^.*“] typ veľkosť
for_window [class=“^.*“] border normal 2
for_window [class=“^.*“] border pixel 0

 

Prvé nastavenie ovplyvňuje okná všeobecne a je nadradená nad týmto dvoma úpravami. No ak chceme napríklad špecifikovať dekorácie pre dlaždicované či plávajúce zvlášť, musím použiť parameter new_window a new_float. Upozorňujem, že nastavenie pre new_float ovplyvňuje iba okná, ktorú sú spustené ako plávajúce a nie okná, ktoré boli do plávajúceho módu uvedené dodatočne. Takéto okná sú ovplyvnené s new_window. Pri oboch rozoznávame tri možnosti: normal, pri ktorej je titlebar stále zachovaný a upravuje sa iba hrúbka okraju. Pixel, pri ktorej je titlebar úplne zakázaný a prítomný je iba okraj stanovenej hrúbky. A none, pri ktorej je okraj zakázaný.

new_window kritérium
new_window kritérium veľkosť
new_ float kritérium
new_ float kritérium veľkosť
new_window pixel 0
new_float pixel 0

 

Ak máme záujem, aby sa skryl okraj hrany v prípade, že jeho zobrazenie je nie je potrebné, musíme si nastaviť parameter hide_edge_borders. No ovplyvňuje iba okraje priľahlé ku obrazovke. Rozoznávame päť možností: Prvou a prednastavenou je none, pri ktorej sú zobrazené všetky okraje. Druhou vertical, treťou horizontal, štvrtou both, ktorá je kombináciou predošlých dvoch a poslednou piatou je smart, čiže rozumné nastavenie, ktoré skrýva okraje iba ak je na obrazovke aktívne jedno okno.

hide_edge_borders smart

 

Ak máme povolený titlebar, radi by sme si upravili aj písmo. Nielen štýl, ale i veľkosť. Treba podotknúť, že veľkosť zvoleného písma určuje výšku titlebaru.

font druh_písma
font -misc-fixed-medium-r-normal–13-120-75-75-C-70-iso10646-1
font pango:Source Code Pro 12

 

Zakázanie akýchkoľvek okrajov, vrátane titlebar:

for_window [class=“^.*“] border pixel 0
new_window pixel 0
new_float pixel 0

 

Zakázanie okrajov okien, pričom titlebar je zachovaný:

for_window [class=“^.*“] border normal 0
new_window normal 0
new_float normal 0

 

Vytvorenie okrajov bez titlebar:

for_window [class=“^.*“] border pixel 3
new_window pixel 3
new_float pixel 3

 

Vytvorenie okrajov aj s titlebar:

for_window [class=“^.*“] border normal 3
new_window normal 3
new_float normal 3

 

Príklad výsledného nastavenia:

new_window pixel 0
new_float pixel 0
font pango:Source Code Pro 12

 

 

Farebná schéma:

Ako si prispôsobiť hrúbku okraju sme si povedali. Ešte si musíme predstaviť ako zmeniť predvolenú farebnú schému na našu vlastnú. Stále budeme pracovať so základným konfiguračným súborom. Farba je hexadecimálnej podobe (#rrggbb). Rozoznávame tieto parametre:

client.focused určuje farbu zameraného okna.
client.focused_inactive určuje farbu zameraného okno, no zatiaľ neaktívneho.
client.unfocused určuje farbu nezameraného okna.
client.urgent určuje farbu urgentného okna.
client.placeholder určuje farbu zástupného okna pri zmene layoutov. Farba okraju a indikátora je ignorovaná.
client.background určuje farbu pozadia na vrchu, kde bude ono zobrazené. Toto nastavenie platí iba pre tie okná, ktoré nepokrývajú celý priestor. A má iba jedno nastavenie farby.

Okraj (border) sú dve línie dekorujúce titlebar.
Okraj dieťaťa (child_border) je súvislá línia lemujúca celé okno.
Indikátor (indicator) sa používa na indikáciu miesta, kde bude okno otvorené. Pre horizontálne umiestnené okná je tým indikátorom pravý okraj. Pre vertikálne umiestnené okná spodný okraj. Aplikuje sa to iba na jednotlivé okná v rozdelenom kontajnery, ktoré inak na nerozoznanie od ostatných okien mimo kontajnera.

 

Základný spôsob zápisu:

<colorclass> <okraj> <pozadie> <text> <indikátor> <okraj_dieťaťa>

 

Príklad farebnej schémy:

client.focused               #303d44  #303d44   #eeeeee   #d8d782   #303d44
client.focused_inactive #303d44  #303d44   #eeeeee   #d8d782   #303d44
client.unfocused            #4f6571   #4f6571   #eeeeee   #d8d782   #4f6571
client.urgent                   #d8d782  #d8d782  #eeeeee   #d8d782   #d8d782
client.placeholder           #303d44  #303d44  #eeeeee   #d8d782   #303d44
client.background           #303d44

 

 

Hrúbka okrajov pre jednotlivé plávajúce okná:

V minulom diely sme si povedali ako povoliť automatické plávajúce okná pre jednotlivé programy. Dnes k nim ešte pridáme, podľa svojho uváženia, štýl a hrúbku okrajov.

Tak ako v prechádzajúcich prípadoch, aj tu rozoznávame dve možnosti: normal, pri ktorej je zachovaný titlebar a prispôsobuje sa iba hrúbka okraja. A pixel, pri ktorej je titlebar zakázaný a upravuje sa iba hrúbka okraja. A napokon none, pri ktorom sú okraje zakázané. Pokiaľ nie je stanovená hrúbka v pixeloch, berie sa globálne nastavenie.

for_window (kritérium) (floating enable), border type
for_window (kritérium) (floating enable), border type px

 

Nastavenie môže vyzerať nasledujúco:

for_window [class =“Pale moon“ instance=“Places“] floating enable, border pixel 2

 
Po každej úprave konfigurácie je potrebné i3wm reštartovať pomocou klávesovej skratky:

$mod+Shift+r

O autorovi

lombardo1981

Ja som proste ja. Baba zamilovaná do Archu, kyberpunku, metalu, spevu a Slovenských čuvačov.

Napsat komentář

%d blogerům se to líbí: