
Wenn ich über SSH auf eine bestimmte Maschine zugreife, ändert sich das Verhalten der Rücktaste in Vim. Anstatt Zeichen zu löschen, erhalte ich ein ^?.
Das Problem besteht darin, dass diese Maschine als Gateway fungiert und sich das Problem ausbreitet, wenn ich auf eine Maschine hinter diesem Gateway zugreife (wenn ich per SSH auf eine dieser Maschinen innerhalb der Domäne zugreife – ohne die Domäne zu durchlaufen –, habe ich dieses Problem nicht) …
Das ist keine große Sache, aber wirklich ärgerlich.
Irgendeine Idee ?
Antwort1
Normalerweise liegt eine Nichtübereinstimmung zwischen der Konfiguration in Ihrer Shell und der Konfiguration in Ihrem Terminalemulator vor.
Manche benutzen Backspace (0x08), manche benutzen DEL (0x7f). Wenn Sie innerhalb Ihrer Terminalsitzung
stty -a
Sie sehen eine Zeile wie:
intr = ^C; quit = ^\; erase = ^?; kill = ^U; ...
Dieses Löschen ist das DEL-Zeichen. Sie müssen entweder Ihr SSH so konfigurieren, dass dieses Zeichen übertragen wird, oder Folgendes tun:
stty erase '^H'
um die Schale zu wechseln.
Ich weiß, dass Putty beispielsweise das Zeichen ändern kann, das übertragen wird, wenn Sie die Rücktaste drücken. Ich glaube, es ist irgendwo im Terminalbereich vergraben (zumindest in Version 0.58), aber ich habe kein Windows zur Hand, um es zu überprüfen.
Es ist jedoch nichtWirklichprogrammierungsbezogen, daher werden Sie feststellen, dass dies zu superuser.com verschoben wird.