windows-el
Windows-el er ikke en windowmanager i almindelig forstand, den kan
faktisk kun bruges til at styre emacs-vinduer, men hvem har brug for
andet? At windows-el ikke er en windowmanager betyder også at du kan
bruge den sammen med enhver windowmanager.
Faktisk er windows-el et forholdsvis stærkt værktøj til at styre
sin emacs.
Det er nok mest brugbart i konsollen, men her er et skærmbillede af
X med en .xsession -fil der kun starter en emacs, og hvor
windows-el så er brugt til at lave et ekstra vindue.
Dem der bruger emacs frame-funktionalitet, synes måske
ikke det ser specielt imponerende ud. Men der er fordele. Man kan
skifte mellem vinduerne med C-c vinduesnummer (man kan have 9
vinduer), og hvis man af en eller anden grund ikke har en window
manager (se senere) sørger emacs rent faktisk for at hæve det vindue
der har fokus (det kan dog ikke ses på cursoren).
En anden rar funktion er See you!/Revive!. Ved at
trykke C-x C, får man emacs til at gemme oplysninger om vinduernes
placering og hvilke filer der er åbne i hvert vindue inden emacs
afsluttes. Næste gang man starter emacs op, kan man så vælge
trykke C-c, C-w, C-r R, så henter den de oplysninger og åbne de
forskellige filer i de rigtige vinduer.
At undvære en windowmanager?
Faktisk kan man godt anvende X uden en windowmanager. Det eneste det
egentlig kræver er at man fra sin .xsession starter et
program der kan bruges til at starte andre programmer (så man har en
chance for at få lavet noget). Et terminalemuleringsprogram efter eget
valg (xterm, eterm, gnome-terminal, konsole, ...) er nok det
smarteste, men som man kan se af det foregående afsnit er emacs også
en mulighed.
Jamen, hvordan gør man så?
Fokus følger musen, så sålænge man kan se et vindue har man mulighed
for at bruge det, i det omfang det tillader betjening via tastaturet.
Det er ret klart at det vil være en fordel at vinduer ikke overlapper,
men man kan ikke flytte vinduer eller ændre størrelse på
dem. Løsningen på det er kun at bruge programmer der forstår
-geometry -argumentet (det gør de fleste X-programmer der
er et par år gamle). Syntaksen for -geometry -argumentet
er
breddexhøjde+x+y . Man
kan udelade enten breddexhøjde , eller
+x+y .
Bredde og højde angives i tegn for programmer der tegnbaserede
(f.eks. bruger jeg tit `xterm -geometry 80x40` for at få en xterm med
40 linier) og ellers i pixels. X- og y-koordinater kan både angives
med + eller -. Hvis x-koordinaten er positiv angiver
den hvor mange pixels fra venstre side af skærmen vinduets venstre
kant skal placeres, og hvis den er negativ hvor mange pixels fra
skærmens højre side vinduets højre kant skal placeres. Tilsvarende
for y-koordinater. Man kan altså placere et vindue i nederste højre
hjørne med -geometry -0-0 .
Er det brugbart i praksis?
Kun hvis man ved med sikkerhed at vinduerne til de programmer man
skal bruge kan være på skærmen samtidigt uden at overlappe. Så kan det komme til at se sådan her ud:
Men hvis du en dag skulle komme i en situation, hvor tingene bare
ikke virker, kan det være rart at vide. Hvis du i Gnome/KDE vælger en
fejlsikret session, får du f.eks. en xterm og intet andet. Desuden er
-geometry god at kende, det er bare trist at så mange
nyere programmer ikke forstår det.
|