urxvt
Urxvt, selbst ein Klon von rxvt, ist ein Terminal-Emulator für X und soll ein speicher-schonender Ersatz für xterm sein. Es ist auch möglich urxvt im Daemon-Modus zu starten, was wieder die Geschwindigkeit erhöht. Seine Vorzüge sind:
- Pseudotransparenz
- Unicode-Support (auch UTF-8)
- Echte Transparenz (mit Compositing: z.B. xcompmgr, compiz, kwin, ...)
- Gute Konfigurierbarkeit
Installation
Die Installation ist wie immer recht einfach
pacman -S rxvt-unicode
Konfiguration
Urxvt lässt sich komplett über ~/.Xdefaults konfigurieren und auf diese Weise sehr gut an die eigenen Bedürfnisse anpassen.
Eine sehr gute Konfiguration findet man hier:
URxvt.saveLines: 1000 URxvt.scrollBar: false URxvt.foreground: white URxvt.background: black URxvt.secondaryScroll: true URxvt.font: xft:Bitstream Vera Sans Mono:pixelsize=12 URxvt.perl-ext-common: default,matcher URxvt.urlLauncher: firefox URxvt.matcher.button: 1 URxvt.tabbed.saveLines: 1000 URxvt.tabbed.scrollBar: false URxvt.tabbed.tabbar-fg: 3 URxvt.tabbed.tabbar-bg: 0 URxvt.tabbed.tab-fg: 0 URxvt.tabbed.tab-bg: 1 URxvt.tabbed.secondaryScroll: true URxvt.tabbed.font: xft:Bitstream Vera Sans Mono:pixelsize=12 URxvt*inheritPixmap: true URxvt*shading: 70
Tipps und Tricks
Echte Transparenz
Für echte Transparenz wird ein Compositing Manager benötigt:
pacman -S xcompmgr
Wenn dieser gestartet ist, ist echte Transparenz möglich. Alternativ eignen sich auch Compiz-fusion oder kwin (der Fenstermanager von KDE) mit aktivierten Desktopeffekten. Danach kann man Urxvt mit folgendem Befehl starten und man erhält einen transparenten Hintergrund:
urxvt -name Terminal -fn "xft:Monospace:pixelsize=11" -fade 20 +sb -depth 32 -fg white -bg rgba:2000/2000/2000/dddd
Kopieren
Da im urxvt-Fenster kein Rechtsklick erlaubt ist, kann man Texte nur per mittlerer Maustaste kopieren.
Daemon Modus
Urxvt kann mit dem Start der Desktopumgebung als Daemon gestartet werden, was das Terminal ungemein beschleunigt. Man muss nur folgendes in den Autostart hinzufügen:
urxvtd -f
Die einzelnen Terminals werden nun mit dem Befehl
urxvtc
gestartet.
Urxvt mit 256 Farben und SSH auf andere Systeme
Beim Zugriff auf andere System per SSH kann es zu Problemen kommen, wenn diese das Terminal nicht kennen (z.B. Debian). Es können beispielsweise nicht alle Farben dargestellt werden oder Tasten werden falsch interpretiert. Eine Lösung ist die Aktualisierung der Terminfo-Datenbank. Dazu folgenden Befehl auf der lokalen System ausführen, um die nötigen Informationen über das Terminal auszulesen:
infocmp -L rxvt-unicode-256color > ~/rxvt-unicode-256color.terminfo
Die entstandene Datei per scp auf das System hochladen:
scp ~/rxvt-unicode-256color.terminfo serverip:/home/user/
Auf dem System per SSH einloggen und den Pfad ~/.terminfo erstellen und die Datei zur Terminfo-Datenbank hinzufügen:
install -d ~/.terminfo tic -o .terminfo/ ~/rxvt-unicode-256color.terminfo
Danach kann die Datei wieder gelöscht werden:
rm rxvt-unicode-256color.terminfo
Um Schreibarbeit mehreren Systemen zu sparen, habe ich folgende Skripte geschrieben.
#!/bin/bash # exportURXVT.sh mkdir /tmp/urxvt infocmp -L rxvt-unicode-256color > /tmp/urxvt/rxvt-unicode-256color.terminfo cp /tmp/urxvt/rxvt-u{nicode,}-256color.terminfo sed -i 's/rxvt-unicode-256color/rxvt-u-256color/g' /tmp/urxvt/rxvt-u-256color.terminfo chmod a+r /tmp/urxvt/rxvt-u{nicode,}-256color.terminfo cp importURXVT.sh /tmp/urxvt/ tar -czf urxvt.tgz /tmp/urxvt/* scp urxvt.tgz $1:/tmp/
#!/bin/bash # importURXVT.sh install -d ~/.terminfo tic -o ~/.terminfo/ rxvt-unicode-256color.terminfo tic -o ~/.terminfo/ rxvt-u-256color.terminfo /bin/rm -i rxvt-u{nicode,}-256color.terminfo echo "# Alias to shorten TERM as workaround for bug in screen" >> ~/.bashrc echo "alias sterm='export TERM=rxvt-u-256color'" >> ~/.bashrc echo "# Alias to restore TERM" >> ~/.bashrc echo "alias lterm='export TERM=rxvt-unicode-256color'" >> ~/.bashrc alias sterm='export TERM=rxvt-u-256color' alias lterm='export TERM=rxvt-unicode-256color' echo "Bitte .bashrc sourcen oder ein/auslogen um die Aliase verwenden zu können"
Einfach auf dem Hostsystem als exportURXVT.sh respektive importURXVT.sh speichern und dann 'exportURXVT.sh ZIELSERVER' aufrufen. Auf dem Server dann den Tarball /tmp/urxvt.tgz entpacken und 'importURXVT.sh' aufrufen.
Des Weiteren ist ein Workaround enthalten um screen trotz der beschränkten Länge des TERM-Names verwenden zu können(Dieses Problem ist bei Arch bereits gepatched, bei Debian und Suse anscheinend noch nicht). Mit dem Alias 'sterm' wird TERM auf rxvt-u-256color gesetzt und ist damit unter dem 20 Zeichen Limit von screen. 'lterm' setzt TERM wieder zurück auf das offizielle rxvt-unicode-256color. Funktional sind beide Versionen identisch.