Bij tiling windowmanagers gebruik je het toetsenbord voor het openen van applicaties en het navigeren door de geopende windows. Dit gaat razendsnel, het is super efficiënt en voor je het weet ben je een echte keyboard-junkie. Doordat i3 vriendelijk is voor beginners, voel je je hier snel in thuis.

Auteur: Matto Fransen

Laptops zijn erg handig, maar hebben twee minpunten. Namelijk, het kleinere scherm en de muispad. Omdat je een kleiner scherm hebt, wil je zo min mogelijk pixels verliezen aan decoratieve randjes rondom de vensters en aan menubalken vol icoontjes. Langdurig gebruik van een muispad levert gezondheidsklachten, daarom wil je zoveel mogelijk met het toetsenbord bedienen.

Doorgewinterde laptopgebruikers kiezen vaak voor een tiling windowmanager. Een tiling windowmanager benut de beschikbare beeldscherm zo efficiënt mogelijk en haalt het maximum uit elke pixel. Verder zijn tiling windowmanagers keyboard gestuurd.

Razendsnel

Er bestaan heel wat tiling windowmanagers. Sommigen zijn uitsluitend met het keyboard te bedienen, terwijl andere het gebruik van de muis voor enkele functies ondersteunen. De manier waarop je de windowmanager configureert, verschilt nogal. Bij een aantal doe je dat eenvoudig in een tekstbestand. Bij andere werkt het via een script-achtige taal of moet je eerst de configuratie in de broncode wijzigen en daarna de windowmanager opnieuw compileren.

Wat alle tiling windowmanager gemeen hebben, is dat ze lichtgewicht en razendsnel zijn. Door hun toetsenboord-besturing zijn ze in het dagelijks gebruik waanzinnig efficiënt. Elk voordeel heeft zijn nadeel en bij tiling windowmanagers is dat: de leercurve. Een klassieke windowmanager met een startknop waarmee je een menu oproept, is met weinig kennis te bedienen. Bij een tiling windowmanager moet je je eerst in de werking verdiepen. Afhankelijk van de ingewikkeldheid kun je hier vlot mee werken of moet je er wat meer tijd in stoppen.

Tenslotte verschillen de tiling windowmanagers onderling in de mate van compleetheid. Bij een “kale” windowmanager krijg je alleen de mogelijkheid om tussen vensters te wisselen. Bij andere heb je ook een tray of een bar met diverse hulpmiddelen, een menu om applicaties te starten, enz.

i3 Window Manager

Het werken met een tiling windowmanager vraagt wat gewenning, daarom is het beter te beginnen met eentje die gemakkelijk te bedienen is. Ben je gewend aan deze manier van werken, dan kun je later altijd nog de meer bijzondere managers proberen.

Wij bespreken hier het gebruik van de i3 windowmanager. Dit is een gemakkelijk te bedienen tiling windowmanager, compleet met statusbar en menu. De configuratie staat in een plat tekstbestand. De standaard ingestelde configuratie is prima geschikt om gelijk mee aan het werk te gaan. Het biedt een mooie start in de wereld van tiling windowmanagers. Bij i3 kun je de networkmanager applet gebruiken, die je al van Ubuntu of Mint gewend bent. Dit is een groot voordeel. Je hoeft dan niet meteen onder de motorkap met de commandline aan de slag te gaan.

Overigens is i3 niet alleen voor laptop gebruikers interessant. i3 biedt ook fantastische opties om het werken op een vaste PC met meerdere beeldschermen naast elkaar super efficiënt te maken.

Pijnloze kennismaking

Tijdens de installatie van je distributie is al een windowmanager geïnstalleerd, je installeert i3 er gewoon naast. Bij het inloggen kies je welke van de geïnstalleerde windowmanagers je wilt gebruiken. Installeer i3, bijvoorbeeld met sudo apt-get install i3 i3status dmenu en log hierna uit. Zoek nu in je inlogscherm naar een settings-achtig icoontje. Hiermee kun je de windowmanager kiezen die je na het inloggen wilt gaan gebruiken. Kies voor i3 om hiermee kennis te maken. Bij de eerstvolgende inlogsessie kun je altijd terug naar je oorspronkelijke windowmanager.

De bediening van i3 is gebaseerd op het gebruik van een super-toets. Alle commando’s beginnen met het indrukken van deze toets. De eerste keer dat je i3 opstart, kies je tussen de Alt-toets en de Windows-toets. Op vrijwel alle moderne toetsenborden vind je een Windows-toets en sommige Linux-applicaties maken gebruik van de Alt-toets, vandaar dat de meeste i3-gebruikers voor de Windows-toets kiezen. Bij de eerste keer dat je i3 opstart, krijg je na de vraag over de super-toets vervolgens een vraag over de locatie van het configuratiebestand. Met je Enter-toets accepteer je de default instelling.

Wanneer je i3 opstart, zie je een leeg scherm. Je opent een terminal scherm met behulp van de super-toets gevolg door Enter. In de documentatie van i3 wordt dit aangegeven met mod-Enter. Hierbij staat mod voor de super-toets. In het terminalscherm kun je nu commandline opdrachten invoeren.

Druk nog een keer op mod-Enter om een tweede terminalscherm te openen, waarbij de schermen naast elkaar getoond worden, ieder even breed. Druk nog een keer op mod-Enter en je krijgt een derde scherm, enz. Je sluit een scherm met mod-shift-Q (dus Windows-toets, gevolg door hoofdletter-Q). Speel hier even mee en eindig met twee schermen naast elkaar. Druk nu op mod-v (verticale split) en daarna op mod-Enter. Nu wordt het huidige scherm in tweeën gedeeld, met boven het oorspronkelijke scherm en onder een nieuwe terminal, zie screenshot 1. Met mod-h (horizontale split) kies je weer voor het oorspronkelijke gedrag, nieuwe windows worden weer naast elkaar geopend.

Screenshot 1: Drie vensters naast en boven elkaar

Ander window kiezen

Er is steeds één window actief. Je verlegt de focus met behulp van de pijltjestoetsen: mod-links, mod-rechts, mod-omhoog en mod-omlaag. In plaats van de pijltjes kun je ook vier lettertoetsen gebruiken. Omdat de h al vergeven is (horizontale split) gebruik je hiervoor de toetsen j,k,l, en ; (puntkomma).

Probeer ook mod-shift-pijltjestoets, hiermee wissel je de onderlinge positie van de schermen. Om de onderlinge verhouding van de schermen te wijzigen, kies je mod-r. Nu verschijnt links onderin ‘resize’ in rode letters. Met behulp van de pijltjestoetsen of de j,k,l,;-toetsen maak je het actieve scherm groter of kleiner.

Voor vi-gebruikers kan het gebruik van j,k,l,; verwarrend zijn. Desgewenst zet je dit in de configuratie om naar hjkl, met bijvoorbeeld de puntkomma voor horizontale split, etc.

Workspaces

Links in de bar zie je een vierkantje met het cijfer 1, dit is de huidige workspace, workspace “1”. Met mod-2 ga ja naar de tweede workspace, die indien nodig wordt aangemaakt. Open met mod-Enter een terminal. De vorige workspace was verdeeld in drie windows, één staande naast twee kleinere boven elkaar, terwijl je in workspace “2” slechts één terminal scherm hebt, dat de gehele ruimte gebruikt. Met mod-1 en mod-2 kun je tussen deze workspaces schakelen. Met mod-1 t/m mod-9 ga je naar de workspaces “1” t/m “9”. Workspace “10” open je met mod-0.

Ga naar één van de terminalschermen en open hierin een applicatie, bijvoorbeeld “top”. Klik nu op mod-shift-3. Het terminal scherm met top verdwijnt uit de huidige workspace en is verplaatst naar workspace “3”. Controleer dat met mod-3. Op deze manier kun je je workspaces handig indelen, bijvoorbeeld commandline-werk in workspace “1”, webbrowsers in workspace “2”, libreoffice in workspace “3” en irssi en newsboat naast elkaar in workspace “4”. Je kunt nu met je mod-nummer-combinaties razendsnel schakelen tussen de verschillende werkomgevingen.

Natuurlijk wil je ook andere applicaties opstarten. Bij i3 gebruik je hiervoor meestal dmenu. Dmenu is een onderdeel van de toolbox van Suckless.org en is ontwikkeld voor gebruik op de DWM windowmanager uit dezelfde toolbox. In i3 roep je dmenu op met mod-d, oftewel de super-toets gevold door de d-toets. Bovenin verschijnt een nieuwe balk, met in de linkerhoek de cursor. Type nu de eerste letters van de gewenste applicatie, dus als je firefox wilt opstarten, dan begin je met typen van fire. Naast het invoerveld zie je een rij van applicaties, waarvan de naam matcht met de tekst die je getypt hebt. Naarmate je meer letters typt, wordt deze lijst met applicaties kleiner. Meestal heb je al na een paar letters nog maar één applicatie over. Door op ‘Enter’ te drukken, wordt de betreffende applicatie gestart. Het is niet echt nodig door te blijven typen tot er nog maar één applicatie over is. Je kunt met de cursortoetsen pijltje-omhoog en pijltje-omlaag door de lijst heen wandelen, een applicatie kiezen en deze met ‘Enter’ starten. Je kunt op ieder gewenst moment dmenu met de Escape-toets afbreken.

Configuratie

Voor de configuratie van je i3 werkomgeving heb je met twee configbestanden te maken, één voor i3 en één voor i3status. Bij normaal gebruik heb je drie elementen, de i3 window manager, de i3bar en i3status, die elk een eigen rol vervullen. De i3 window manager zorgt voor de plaatsing van de windows op het scherm en de window decoraties, te weten de randjes en de titlebar. De i3bar is een systembar met tray-functionaliteit. Hiermee krijgt de gebruiker informatie te zien en kunnen applets een plek krijgen. Op zichzelf laat de i3bar naast de i3 workspaces niets zien. Het biedt slechts een API waarmee andere applicaties de bar kunnen vullen. Dit is de rol van i3status, deze haalt systeeminformatie op, zoals de datum en tijd, informatie over de netwerkverbinding, of de cpu-temperatuur, batterijtoestand, enz. Verder kunnen ook applets op de bar afgebeeld worden, zoals de bekende networkmanager-applet nm-applet. De gebruikelijke plekken voor de configbestanden zijn $HOME/.config/i3/config en $HOME/.i3status.

Je begrijpt dat het handig is om altijd zo’n beetje dezelfde indeling van je workspaces te hebben, zodat je zonder na te denken snel kunt schakelen. Je kunt natuurlijk iedere keer met mod-shift-nummer de applicatie naar de juiste workspace sturen, maar dit kan simpeler en sneller. In de configuratie van i3 doe je dit met “assign”. Bijvoorbeeld:

assign [class=“^Firefox$”] 2

Zet deze regel in het i3 configuratiebestand en herlaad de configuratie met mod-shift-r. Wanneer je nu via dmenu firefox opent, wordt deze automatisch in workspace “2” gezet. Zo kun je ook libreoffice een eigen workspace geven, enzovoorts.

Zet meteen ook de volgende regel in je configuratiebestand en herlaad daarna weer met

mod-shift-r:

bindsym $mod+m exec firefox

Firefox start je voortaan op met mod-m. Geef op dezelfde manier enkele veel gebruikte applicaties een eigen key en je ervaart de kracht van i3. Uitloggen doe je met mod-shift-e (exit). Voor de zekerheid moet je dit in de bovenin getoonde balk bevestigen.

Screenshot 2: Drie vensters, met Firefox, VLC en Xterm

 

Kalere terminal

Gebruikt je terminal onnodig schermruimte voor een menu of andere grafische elementen? Installeer dan een kalere terminalemulator, zoals XTerm, Urxvt of St. Zoek in de i3 configuratie naar mod+Return en vervang het deel achter “exec” met een verwijzing naar zo’n kale terminalemulator. Het default font voor XTerm en Urxvt neem je, afhankelijk van je distributie, op in je .Xdefaults of .Xresources bestand. Kies je voor Xterm, kijk dan ook naar de menu’s die je met Cltr-linkermuistoets en Ctrl-rechtermuistoets oproept.

Het is handig om de nm-applet in je i3bar op te nemen, zodat je door op het icoontje te klikken de netwerkinstellingen aanpassen. Voeg hiervoor deze regel toe aan de i3-config:

exec –no-startup-id nm-applet –sm-disable

Kijk ook eens in het i3status configuratiebestand.  Dit is niet ingewikkeld en, met eventueel een beetje zoeken op internet, deel je die vlot naar eigen inzicht in. Je hebt al snel de smaak te pakken van i3 en met wat configuratie aanpassingen zet je het helemaal naar je hand. Je werkt meteen een stuk efficiënter en voor je het weet, ben je een keyboard-junkie!

Screenshot 3: Twee vensters boven elkaar