Verder Terug Inhoud

5. De Window Manager

5.1 Wat is een Window Manager?

Je kunt de functie van een window manager vergelijken met die van een shell. De shell bepaalt de manier en de commando's hoe er met het systeem gewerkt kan worden. X is een grafisch windowing systeem, dus de shell (de window manager) is ook grafisch. De meeste window managers tekenen een window om de applicatie heen en hebben een mogelijkheid om het window te vergroten, verkleinen, enzovoort. Bijna alle window managers hebben een menu mogelijkheid waardoor je met een muisklik een applicatie op kan starten. De window manager bepaalt dus wat het gezicht is van X. Met linux ben je niet gebonden aan een soort window manager en kun je naar behoefte kiezen uit tal van managers (zie: Welke Window Managers zijn er ?). Nu zal de vraag wel komen "Hoe ziet X er dan uit met een window manager?". Op die vraag is maar een antwoord: Geen idee, het kan van alles zijn bijvoorbeeld van Win95 tot NeXtStEp.

5.2 Heb ik een Window Manager nodig?

Nee, misschien klinkt dit een beetje vreemd na de vorige vraag. Het is niet nodig om een window manager te hebben draaien om met X te kunnen werken. Zoals in hoofdstuk 1 verteld is, is X opgebouwd uit onderdelen. De window-manager is een Xclient maar wel een hele speciale. Als de window manager dus een Xclient is, dan betekent dit dat je elk programma als "window manager" kunt gebruiken. Het is dus mogelijk om bijvoorbeeld "Netscape" meteen te laten opstarten in X: dit kan handig zijn op beurzen en opleidingen (fool en student proof ;-).

Dit kun je als volgt doen in de ``.Xclients'' file in je homedir. Verander de fvwm (of welke WM je gebruikt) nu eens in emacs... start X op et voilá je bent nu gelijk in emacs! Als je emacs afsluit kom je terug op de console of XDM login screen (dan is dus de sessie over).

N.B.: Voor de echte ``emacs religieuze'' is dit natuurlijk de standaard manier om met X te werken :)

Praktisch gezien is een window manager eigenlijk onmisbaar voor het werken met X.

5.3 Welke window managers zijn er?

Een heleboel... iemand heeft informatie verzameld over alle mogelijke window managers voor linux op deze LinuX Window Managers site.

Een kleine greep uit het assortiment:

Welke de mooiste is ?... Bepaal het zelf op DE LinuX collectie van Window Managers

5.4 Hoe verander ik mijn default windowmanager, of startup programma's?

In je home directory staat (bij de meeste distributies) een ``.Xclients'' file. Dit is een shell script waarin de programma's staan welke X moet opstarten.

Voor zowel de methode ``startx'' als ``xdm'' wordt hetzelfde script gerund. Je kunt de andere files (``.xsession'' en ``.xinitrc'') symlinken naar ``.Xclients''.

Wil je voor alle gebruikers dit veranderen, pas dan de files in ``/etc/X11/xinit/'' aan. (met de file ``.Xclients'' kan een gebruiker zelf zijn Xclients kiezen.

Wil je alleen een ander default window manager? Zet dan een andere window manager in deze file. Dus in plaats van "fvwm95" bijvoorbeeld "afterstep".

Let erop dat programma's welke in de .Xclients (of de andere files) gerund worden, of gelijk exitten of opgestart zijn in de background. Enige uitzondering hierop is de Window manager of de applicatie waarin men standaard wil opstarten. Als de laatste client uit de ``.Xclients'' file "klaar is" stopt de Xserver, of dan is de X sessie over.

Voorbeeld van een `` /.Xclients'' file:


#!/bin/bash

# Hiermee start ik XV welke een achtergrondplaatje op het root window
# plaatst.
/usr/bin/X11/xv +root -rmode 0 \
        /home/U/jw-smaal/pics/exlinux2.jpg -quit &

# Eerst test ik of icewem in het pad staat en dan start ik deze op (let op
# zonder &, anders sluit X meteen weer af).
if [ ! -z $(type -path icewm) ]; then
       exec icewm
fi

# last resort
xterm &
exec twm

5.5 Welke window manager is het snelste?

De snelste window manager, dus welke het minst van resources gebruik maakt, is waarschijnlijk fvwm (laatste versie 1.24r) . Inmiddels verouderd (maar nog steeds zeer bruikbaar) en vervangen door fvwm2, fvwm'95, en de NeXtStEp look-alikes.

De oude versie van fvwm (1.24) heeft overigens wel de vervelende eigenschap om niet meer te kunnen switchen tussen windows als de ``NumLock'' toets aan staat.

Meer informatie over X performance in het algemeen kun je vinden in de Getting more performance out of X FAQ.


Verder Terug Inhoud