SuSE Support-Datenbank

Titel: BackSpace und Delete

---

Übersicht ---- Stichwortsuche ---- History ---- Versionen ---- Kategorien ---- Alle Artikel
English
---

BackSpace und Delete

Bezieht sich auf

SuSE Linux: Alle Versionen

Symptom:

Bei einer Telnet-Verbindung in einem xterm funktioniert die Taste BackSpace und/oder die Funktionstasten nicht wie gewohnt.

Ursache:

Die S.u.S.E Linux verwendet als BackSpace das Zeichen \177 (oktal 177) und nicht \010 (Strg-H bzw. Ctrl-H), das hat zwei einfache Gründe:

Auf der Linux Konsole ist \177 ebenfalls BackSpace und Delete ist \033[3~
Viele Programme verwenden Ctrl-H als Hilfe-Aufruf.

Hintergrund

Das BackSpace/Delete-Problem geht auf die Zeit der Fernschreiber und der ersten UNIX/DOS-Maschinen zurück. Eigentlich bedeutet laut ASCII-Tabelle \010: bewege Anschlag um ein Zeichen zurück (also kein Löschen, sondern Überschreiben) und \177 ignoriere Zeichen unter dem Anschlag (gleich Löschen).

Im Laufe der Zeit hat sich die Bedeutungen der Zeichen auf diversen Terminals und Terminalemulatoren etwas gewandelt. So verwendet das Standard-vt100 meist \010 als BackSpace und ein Standard-vt220 meist \177 als BackSpace. Da unter Linux Software gibt, die auf verschiedensten Plattformen entwickelt wurden, führt das zu entsprechenden Problemen mit der Belegung von BackSpace und Delete. Das sollte durch die passenden Beschreibungen in den /usr/lib/terminfo/*/-Dateien bzw. /etc/termcap-Einträge gesteuert werden.

Jetzt zum eigentlichen Problem: leider sind die Einträge für Terminal gleichen Namens auf den diversen UNICES verschieden.

Daher ist es ratsam, die terminfo-Dateien so zu belassen, wie sie unter der S.u.S.E.-Linux verwendet werden. Eine terminfo-Datei beschreibt das Verhalten des Terminals bzw. Terminalemulators, zum Beispiel das xterm, und das verhält sich genau so, wie in der terminfo-Datei /usr/lib/terminfo/x/xterm und in den c-Sourcen beschrieben. Die Tastaturbelegung im xterm auf unserer Distribution in /usr/X11R6/lib/X11/app-defaults/XTerm genau festgelegt und genügt der Standarddefinition vom Release X11R6.1/6.3. Die BackSpace-Taste liefert \177, die Delete-Taste gibt \033[3~ zurück. Damit gibt es auch keinerlei Probleme mit Motif-Programmen, da die XKeymap unverändert bleibt.

Wenn Sie telnet auf ein anderes System machen, so sollten Sie beachten, dass das lokale xterm mit seiner lokalen terminfo-Datei /usr/lib/terminfo/x/xterm nicht identisch mit dem remoten xterm mit seiner termcap/terminfo-Datei sein muss. Selbst ohne die gemachten Änderungen ist das xterm aus XFree86[tm]-3.2 (Farbfähigkeit) völlig verschieden zu den auf anderen Workstations gebräuchlichen xterms (X11R5 oder X11R6). Oft werden selbst für Funktionstasten völlig andere Escape-Sequenzen verwendet, als das originale xterm üblicherweise verwendet.

Lösung:

Dabei ist der zweite Punkt bei guter Netzverbindung der bequemste. Dazu dient unter der S.u.S.E.-Linux ein kleines Skript xlogin aus dem Paket xlogin, welche per rsh erst den Xauthority-Schlüssel übergibt, um dann ein remotes xterm auf dem lokalen Bildschirm zu öffnen. Aufruf ist einfach:

     xlogin hostname

Hier nochmals das Skript xlogin für S.u.S.E.-Linux-Versionen vor 4.4.1 :
----------------------------------------------------------------------------
#!/bin/bash
#
rechner=$*
   term="/usr/bin/X11/xterm -ls"
  xauth="/usr/bin/X11/xauth"
   redi="< /dev/null > /dev/null"
#
if [ -z "${DISPLAY}" ]; then
  echo "No DISPLAY variable" 2>1&
  exit 2
else
  DISPLAY=`echo ${DISPLAY%%unix}`
fi
#
#
if [ -z "${HOSTNAME}" ]; then
  HOSTNAME=`hostname -f`
fi
#
#
case ${DISPLAY} in
:*)
  DISPLAY=${HOSTNAME}${DISPLAY}
esac
#
#
if [ -z "${XAUTHORITY}" ]; then
  XAUTHORITY="${HOME}/.Xauthority"
fi
#
# Programs
#
remote_xauth="${xauth} -i merge -"
 local_xauth="${xauth} -f ${XAUTHORITY} extract - ${DISPLAY}"
       xterm="${term} -display ${DISPLAY}"
#
#
for host in $rechner; do
  title="-T ${host} -n ${host}"
  ${local_xauth} | rsh ${host} "${remote_xauth}"
  rsh -n ${host} "exec ${xterm} ${title} ${redi}" &
done

exit 0
----------------------------------------------------------------------

---

Siehe auch:

---

Stichwörter: BACKSPACE, DELETE, LÖSCHEN, TELNET, XTERM

---

Kategorien: X-Applikationen

---

Feedback willkommen: Send Mail to werner@suse.de (Geben Sie bitte folgendes Stichwort an: SDB-backspace_delete)

---

Übersicht ---- Stichwortsuche ---- History ---- Versionen ---- Kategorien ---- Alle Artikel
English
---

SDB-backspace_delete, Copyright SuSE GmbH, Nuremberg, Germany - Version: 10. Mar 1997
Impressum - Zuletzt generiert: 24. Feb 1999 10:30:58 by maddin with sdb_gen 1.00.0