Warum wird] für die Tag-Navigation verwendet?

7

Einige der Befehle zum Durchsuchen von Programmen mit Tags werden verwendet ].

  • Gibt es dafür eine Mnemonik?
  • Warum wurde es ausgewählt?
Davetapley
quelle
1
Ich weiß, dass es Ihre Frage nicht vollständig beantwortet, aber unter diesem Link: docs.freebsd.org/44doc/usd/12.vi/paper-8.html , wenn sie darüber sprechen ^], sagen sie:Mnemonically, this command is ''go right to'' (7.3).
saginaw
2
@saginaw Diese Version von Eine Einführung in die Anzeigebearbeitung mit vi ist etwas aktualisiert (sie haben einen neuen Abschnitt hinzugefügt, daher sollte 7.3 8.3 sein). In jedem Fall wird der entsprechende Abschnitt ( Weitere Befehle zur Dateibearbeitung ) nicht erwähnt ^], sondern nur :ta. Ich werde dies mit markieren original-vi, Vims früheste Version, die ich finden konnte (1.4), hatte dies 1991, also ist es vermutlich eine viSache.
Muru

Antworten:

3

vifür die Verwendung mit entworfen Glas Terminals , die Protokolle von denen verwenden häufig viele der Steuer- x Befehle nach unten am unteren Ende der ASCII . Andere wurden beim Wechsel von Papierterminals wie Ctrl-L(Formularvorschub) vineu zugewiesen , der von "Formularvorschub" neu interpretiert wird, um stattdessen "Anzeige neu streichen" zu bedeuten, was für einen Texteditor besser geeignet ist.

Befehle wie "Jump to Tag" - Ctrl-]- müssen sowohl im Einfügemodus als auch im Befehlsmodus verwendet werden können, damit keines der druckbaren ASCII-Zeichen verwendet werden kann. ASCII definiert nur 32 nicht druckbare Zeichen. Von denen, die noch übrig waren, Ctrl-]schien es die beste Wahl zu sein.

Diese Standards reichen etwa 15 Jahre zurück, bevor sie vigeschaffen wurden, und vimussten sich daher in die bestehende Landschaft einfügen. Sie können sich vorstellen, dass alle guten genommen wurden, vials die Szene auf den Markt kam.

Warren Young
quelle
1

Ich kann nicht mit der Geschichte des Befehls sprechen, aber ich denke an [und ]wie vorher und als nächstes. Es wird für viele Bewegungen verwendet. Siehe help various-motionseinige Beispiele für Bewegungen in eckigen Klammern.

Daher <C-]>wird "Control-Next".

help CTRL-]beschreibt es als "Zur Definition springen". Wenn ich ein Paar bin, ist das etwas langwierig, daher sage ich stattdessen normalerweise "Drilldown".

ddrscott
quelle
+1, aber ich denke, meine Antwort hat mehr Erklärungskraft. Wenn sie diesen Tastenanschlag nur aus mnemonischen Gründen ausgewählt hätten, wären sie sich sicherlich bewusst gewesen, dass Strg- [dasselbe ist wie Escape, das sie nicht für "Zurückgehen" verwenden konnten, wie es natürlich erscheint. Ich bleibe bei meiner Erklärung: Selbst 1980 hatten sie nicht mehr viel Auswahl für Befehlstasten.
Warren Young