k47.cz

mastodon twitter RSS
bandcamp explorer
««« »»»

i3 - experiment s dlaždicovými správci oken, který selhal

16. 1. 2021 — k47

Experiment s dlaždicovým správcem oken i3 skončil. Neúspěšně.

Některé věci se mi na i3 docela líbí. Flexibilita, možnost nastavit každé uprdnutí v textových souborech, možnost snadného rozšíření. Na druhou stranu tohle nejsou možnosti, ale nutnosti. Bez drastického zásahu i3 hraničí (aspoň pro mě) s nepoužitelností. Je to čirá ideologie a žádné ohledy na praktické použití pro peony, které nevzrušuje myšlenka, že si musí všechno chybějící sami doprogramovat. Hele, podívejte, můj .vimrc je taky delší než Vojna a Mír, to jo, ale všechna přizpůsobení a změny se tam hromadily strašně dlouho, postupně. Měl jsem čas se aklimatizovat. Místo terapie šokem a lovení v dokumentaci a kódování mi víc voní představa hotového pluginu, který nějací velice sexy lidé připravili a zkompletovali, ideálně tým autorů a přidali ho jako zapnutelnou možnost přímo do balíku s programem. Znovupoužitelnost a tak podobně.

Nakonec mi zlomilo vaz přepínání oken. V civilizovaném světě alt-tab přepne na poslední aktivní okno a teprve pak začne procházet všechny postupně. Jednoduché. Praktické. Všichni jsme si to uložili do svalové paměti. Ve výsledku můžu rychle přepínat nimi dvěma okny tam a zpátky a zároveň se dostat na každé další okno. i3 ve své nekonečné moudrosti tuhle triviální funkcionalitu nenabízí a nikdy nebude. Prý by to zkomplikovalo kód. Super. Jejich píseček musí být puristický, uživatelé můžou/musí trpět.

Autoři se nechali slyšet, že si cení konfigurovatelnosti, přesto nechtějí přidávat maličké funkce, které si uživatel může jednoduše zapnout, však víte, v konfiguraci. Navíc, někdo poslal příslušný patch a není vůbec komplikovaný, mnohem méně než bazmeky, které to mají simulovat. Pro pána krále, tady je to jako u blbejch.

On je rozdíl mezi minimalismem a stupidním minimalismem. Jedno je, když ořežete zbytečnosti a oslavujete jednoduché nitro, princip, jádro věci. Stupidní minimalismus je prázdná místnost, kde máte lžíci a jinak nic. Žádný nábytek, žádné nádobí, žádná koupelna. Nic. Dá se tam žít, to jo, ale když musíte srát z okna, možná by bylo lepší se poohlédnout po něčem méně minimalistickém.

Jejich doporučovaný způsob, jak emulovat trivialitu alt-tabu je použít externí skript a s i3 komunikovat přes IPC via unix socket. Začal jsem se na to dívat, studoval dokumentaci, psal první řádky programu, ale pak mě praštila ta strašlivá realizace, že mám jen jeden život a snažím se vyřešit, jak co nejlépe srát z toho pomyslného okna. (Místo abych strávil padesát osm hodin v kuse stavěním vláčků v simutrans jako normální člověk.)

Někdy si člověk musí říct dost a pozadu vycouvat z místnosti.

Všechno to začalo jako průzkum, jaké terminály v jakém prostředí mají nejmenší odezvu, než se to svezlo k tomuhle neplodnému šílenství.

Ok, tak to změřím a uvidí se.

Vzal jsem foťák, laptop, nasměroval je tak, aby v záběru byla vidět jak klaviatura, tak displej a měřil.

Je pravda, co říkají, xfce4-terminal na xfce má větší odezvu. Znak se na displeji vykreslil se zpožděním 3-4 snímků. Naproti tomu prostý xterm, ať už na i3 nebo xfce má zpoždění jen 2 snímky. V jenom proběhne stisk, další se nic neděje, teprve pak se něco vykreslí, 20 ms prodleva. Není snadné to měřit normální pomalurychlostní kamerou, která snímá jen 50 Hz, do toho když displej se obnovuje pod taktovkou 60 Hz, je tam určitý aliasing. Navíc jak přesně rozpoznat okamžik, kdy došlo ke stisku? Nicméně rozdíl je měřitelný, dokonce velice spolehlivě a co víc: není k němu potřeba minimalistické divno-prostředí, které po svém uživateli požaduje absolutní podřízení jejich zvrácenému fundamentalismu.

Vtip je v tom, že dlaždicový správce oken je v podstatě zbytečný. Dlaždicování se hodí možná v jednom procentu případů, ale jinak moc ne. Na druhou stranu, když čtu o tom, co si uživatelé pochvalují na spartánských počinech ve stylu i3, je to především fakt, že to můžou ovládat rychle a pohodlně pouze z klávesnice a nepotřebují sahat na myš. Idea, že okna jsou dlaždice vedle sebe, infikuje chování programu a 99% interakcí je podřízeno tomu jednu procentu, kdy mám na obrazovce 6 terminálů tvořící hierarchický strom a chci se přepínat nahoru, dolu, doleva a doprava. Dlaždicoví správci oken optimalizují pro vzácný případ. Dávalo by větší smysl, vzít něco jako xfce a vylepšit přívětivost ke klávovatelnosti. Aspoň pro mě.

Takže suma sumárum: dávám tomu tak 15%, že se k i3 někdy v budoucnu vrátím. A když ne, tak si z té etudy odnesu nový pohled na UI a interakci s prostředím. A taky rofi jako lepší náhrada dmenu_run. Tahle věc je tak super, že za to celá ta etuda skoro stála.

píše k47 & hosté, ascii@k47.cz