VI wechseln, um die Rücktaste anstelle von Strg + H für die Rücktaste zu verwenden?

7

Ich bin auf Solaris 10 und standardmäßig viist Solaris 2.5.0 in der Standardversion SVR4.0 installiert.

Das System wurde so eingerichtet, dass, wenn ich es ssh, Control+HBackspace und Backspace ausgegeben werden^?

Ich habe stty erase '^?'in .profileso dass im Terminal die Rücktaste korrekt funktioniert jetzt. Wenn ich jedoch vi benutze, wird das ^?Zeichen immer noch ausgegeben .

Normalerweise würde ich tippen :set nocompatible, um dies zu beheben, aber es gibt mir

compatible: No such option - 'set all' gives all option values

set all gibt mir

noautoindent            nomodelines                     noshowmode
autoprint               nonumber                        noslowopen
noautowrite             nonovice                        tabstop=8
nobeautify              nooptimize                      taglength=0
directory=/var/tmp      paragraphs=IPLPPPQPP LIpplpipnpptags=tags /usr/lib/tags
noedcompatible          prompt                          tagstack
noerrorbells            noreadonly                      term=xterm
noexrc                  redraw                          noterse
flash                   remap                           timeout
hardtabs=8              report=5                        ttytype=xterm
noignorecase            scroll=33                       warn
nolisp                  sections=NHSHH HUuhsh+c         window=66
nolist                  shell=/bin/ksh                  wrapscan
magic                   shiftwidth=8                    wrapmargin=0
mesg                    noshowmatch                     nowriteany

Ich vermute, dass diese Version von vizu alt ist und dass ich entweder eine neuere Version benötige oder vimwenn ich sie verwenden möchte set nocompatible, aber ich frage mich, ob es eine andere Möglichkeit gibt vi, die Rücktaste für das Zurücksetzen zu verwenden, ohne vim laden zu müssen.

cwd
quelle
Überprüfen Sie Ihre Terminaleinstellungen. vi verwendet Ihren TERM-Typ und verwendet die termcap-Datenbank, um die Standardfunktionen Ihres Terminals zu bestimmen. Wenn Sie Putty verwenden, können Sie das SSH-Profil für diesen Server ändern und festlegen, dass Control-? für Rücktaste anstelle von Control-H.
Tim Kennedy
versucht dtterm, xtermc, vt320und alle anderen , die ich finden konnte. terminfohat eine Manpage, aber der Befehl wurde nicht gefunden. Rücktaste funktioniert gut an der Eingabeaufforderung, nur nicht invi
cwd
Versuchen Sie es :map! ^? ^Hin Ihrer EXRC-Datei. Man beachte , dass ^?nicht nur ein ^ (shift + 6) und ein Fragezeichen, es ist Zeichen durch Drücken erzeugt Steuer + v + Steuerung + shift Backspace und ^ H wird durch Drücken erzeugt Steuer + v + h Steuerung .
Tim Kennedy
das hat es geschafft, danke! willst du das unten posten? Übrigens erzeugen die Pfeiltasten leider immer noch ACDB.
CWD
unten gepostet, mit den Einträgen zum Zuordnen der Pfeiltasten als Bonus. :)
Tim Kennedy

Antworten:

6

OK. Also haben wir die Rücktaste gelöst, die nicht funktioniert.

beim Hinzufügen

:map! ^? ^H

in Ihre .exrc-Datei. Um die Pfeiltasten auf ähnliche Weise zuzuordnen, können Sie derselben EXRC-Datei Folgendes hinzufügen.

:map! ^[OA ^[ka
:map! ^[OB ^[ja
:map! ^[OC ^[la
:map! ^[OD ^[ha

Beachten Sie, dass alle diese 'Escape-Codes' nicht durch einfaches Eingeben von shift+ 6für das Zeichen '^' erstellt werden, sondern durch Drücken der folgenden Tasten:

Rücktaste & löschen:

  • ^? = control + v+delete
  • ^ H = control + v+control + h

Aufwärtspfeil:

  • ^ [OA = control + v+up arrow
  • ^ [ka = control + v+ esc+ k+a

Abwärtspfeil:

  • ^ [OB = control + v+down arrow
  • ^ [ja = control + v+ esc+ j+a

rechter Pfeil:

  • ^ [OC = control + v+right arrow
  • ^ [la = control + v+ esc+ l+a

linker Pfeil:

  • ^ [OD = control + v+left arrow
  • ^ [ha = control + v+ esc+ h+a

Irgendwelche Kommentarzeilen in Ihrer .exrc Datei muss markiert werden ", statt #. Und Sie können keine Leerzeilen in Ihrer .exrc-Datei lassen, andernfalls wird in dieser ersten Leerzeile Ihre .exrc-Datei nicht mehr verarbeitet.

Sobald diese vorhanden sind, fühlt sich vi ein bisschen mehr so ​​an, als ob es für den Gebrauch durch Menschen entwickelt wurde. :) :)

Ein Beispiel für die Leistungsfähigkeit der EXRC-Datei finden Sie in diesem EXRC-Beispiel von Dave Capella.

Tim Kennedy
quelle