|
[dvtm] [Höhere Auflösung] [Linux konfigurieren] [Terminal konfigurieren] [UTF-8]
Das WYSE 160 ist ein serielles Terminal, das eine Reihe
verschiedener Text-Terminals sowie einige grafische Terminals
emulieren kann. Es ist recht einfach unter Linux einzurichten. Die
folgende Zeile muss in die /etc/inittab eingefügt
werden:
T1:23:respawn:/sbin/getty -L ttyS1 19200 vt102
Dadurch wird ein getty gestartet, das am zweiten
seriellen Port lauscht. Der Terminaltyp wird auf vt102
gesetzt, die Übertragungsgeschwindigkeit auf 19200 Bit pro
Sekunde.
Damit das Terminal mit Linux, deutschem Tastaturlayout und Umlauten
zurechtkommt, müssen die folgenden Einstellungen im
Setup-Menü des Terminals vorgenommen werden (um das Setup zu
erreichen, ist die Taste Select oder Setup in
der rechten oberen Ecke der Terminaltastatur zu betätigen):
- F2: Genrl
- Personality:
- VT220-7
- Enhance:
- On
- Rcvd CR:
- CR
- Recognize DEL:
- Off
- Monitor:
- Off
- F3: Keybd
- Keycode:
- ASCII
- Return:
- CR
- Keyboard:
- German
- F4: Comm
- Comm Mode:
- Full Duplex
- F5: Ports
- Ser1 Baud Rate:
- 19200
- Ser1 Data/Parity:
- 8/None
- Ser1 Stop Bits:
- 1
- S1 Rcv HSK:
- XON-OFF/XPC
- F7: ANSI1
- National Mode:
- Off
- Cursor Keys:
- Normal
- Keys:
- Typewriter
- F8: ANSI2
- ANSI ID:
- VT102
Das war's schon. Bis auf die Del-Taste (die sich wie
Backspace benimmt) sollte alles funktionieren. Viel
Spaß mit dem Terminal.
Danke an Jan Kandziora für die
Spende des Terminals und die Hilfe beim Einrichten desselben (und
einiger anderer Sachen).
Forgeschrittenes
Jetzt funktioniert das Terminal zwar, aber da geht noch mehr. Zum
Beispiel lässt sich die Auflösung des Terminals erhöhen. Dazu legen
wir eine neue Terminaldefinition vt102-wl (wl für
wide und large) an. (Debian-Nutzer können den folgenden
Absatz überspringen und stattdessen ncurses-term-mitch
aus meinem Repository installieren, da ist die Datei schon fertig
drin.)
Zuerst besorgt man sich mit dem Befehl infocmp vt102 die
aktuellen Terminaldefinitionen. Diese steckt man in eine Datei, dort
editiert man die Einträge cols# und lines# von 80/24
auf 132/43. Außerdem ändert man (damit man nichts kaputt macht) den
Namen der Definition von vt102|dec vt102 um in
vt102-wl. Mit dem Befehl tic datei speichert
man daraufhin die neue Definition im System.
Als nächster Schritt sollte der getty(8)-Aufruf in der
/etc/inittab so geändert werden, dass er nun ebenfalls die
neue Definition vt102-wl benutzt.
Jetzt muss nur noch das Terminal wissen, dass sich die Auflösung
geändert hat. Dies wird am Terminal selbst eingetragen:
- F1: Disp
- Columns:
- 132
- Data lines:
- 43
Fertig! So kann man mit dem Ding richtig gut arbeiten. Wenn
Programme wie elinks(1) nicht die volle Breite ausnutzen,
sollte man sie testweise unter screen(1) starten (screen ist
generell gut).
Ein weiterer Trick, den ich benötige, seit ich auf UTF-8 umgestellt
habe, ist folgender Eintrag ein meiner ~/.bashrc:
if [ "$TERM" = vt102-wl ]; then
export LANG=de_DE
export EDITOR=ee
export VISUAL=ee
fi
Damit stelle ich Texteditoren und Spracheinstellungen auf
Terminal-taugliche Werte ein. In dieser Kombination kann dann auch
screen(1) zeigen, was es alles kann: Wenn ich
z.B. irssi(1) auf meinem Rechner im screen unter UTF-8 starte
und die Session dann später per screen -rd auf das Terminal
verlagere, werden alle Umlaute so weit es geht korrekt konvertiert -
japanische Zeichen kann das Terminal natürlich nicht, aber deutsche
Umlaute sind vollkommen problemlos.
Ein weiteres schönes Stück Software für das serielle Terminal (und
nicht nur da) ist dvtm. Im Grunde
genommen ist das ein Windowmanager im dwm-Stil - aber für die
Konsole. Wie screen(1)'s Split-Modus, nur auf Drogen.
Unbedingt mal ausprobieren! Manche Programme, die direkt auf dem
Terminal Probleme machen (z.B. joe/jmacs, darum setze ich
oben EDITOR=ee), funktionieren unter dvtm vollkommen
problemlos.
Um dvtm automatisch beim Einloggen über eine Konsole zu
starten, habe ich folgende Erkennungsroutine ganz ans Ende (wichtig!)
meiner ~/.bashrc gepackt:
# start dvtm when on terminal
if [ "$TERM" = vt102-wl ]; then
export LANG=de_DE
export EDITOR=jmacs
export VISUAL=jmacs
DVTM=/home/mitch/remote-git/dvtm/dvtm
elif [[ "$(tty)" =~ '^/dev/tty[0-9]' ]] ; then
DVTM=/home/mitch/bin/dvtm-status
fi
[ -x "$DVTM" ] && exec "$DVTM" "screen -d -R -S irssi -t irssi irssi" "$SHELL"
|