Verder Terug Inhoud

3. Dynamische titels

Veel mensen vinden het handig om de titel van een terminal zo in te stellen dat het dynamisch informatie weergeeft, zoals de hostnaam waarop de gebruiker is ingelogd of de huidige werkdirectory, enz.

3.1 xterm escape sequences

Ikoon- en venstertitels van een draaiende xterm kunnen worden gewijzigd door gebruik te maken van XTerm escape sequences. In deze zin zijn de volgende sequences nuttig:

ESC is hier het escape-teken (\033), en BEL is het bell teken (\007).

Het afdrukken van één van deze sequences zorgt dat de titel van het venster of de ikoon wordt gewijzigd.

Opmerking: deze sequences zijn van toepassing op de meeste afgeleiden van xterm, zoals nxterm, color-xterm en rxvt. Andere typen terminals maken vaak gebruik van andere escapes; zie de appendix voor voorbeelden. Zie het bestand ctlseq2.txt, Voor een volledige lijst met xterm escape sequences, welke met de xterm distributie wordt meegeleverd, of xterm.seq, welke wordt meegeleverd met de rxvt distributie.

3.2 Afdrukken van escape sequences

Voor informatie die gedurende de levensduur van deze shell gelijk blijft, zoals de host- en gebruikersnaam, volstaat een echo-commando door eenvoudigweg de escape string in het rc bestand van de shell te plaatsen:

echo -n "\033]0;${USER}@${HOST}\007"
zal een titel produceren zoals username@hostname, in de veronderstelling dat de shellvariabelen $USER en $HOST correct zijn ingesteld. De benodigde opties voor echo kunnen per shell variëren (zie de voorbeelden verderop).

Voor informatie die tijdens de levensduur kan wijzigen, zoals de huidige werkdirectory, moeten deze escapes echt, iedere keer dat de prompt wijzigt, worden aangepast. Zo wordt bij iedere opdracht die je aanroept de string gewijzigd en kan informatie worden bijgehouden zoals de huidige werkdirectory, naam van de gebruikers, hostnaam, enz. Een aantal shells voorziet in speciale functies voor dit doel, een aantal doet dit niet en we moeten de titel sequences direct in de promptstring voegen. Dit wordt in de volgende sectie geïllustreerd.


Verder Terug Inhoud