Unterschied zwischen Voll- und Kurzbefehl


9

Gibt es einen praktischen Unterschied zwischen der Verwendung

:e

und

:edit

Mit Ausnahme der Lesbarkeit, bei der die Verwendung in einem Mapping sinnvoll ist :edit, da es expliziter ist.

Gibt es einen Unterschied zwischen ihnen?

Hinweis: Dies gilt auch für alle anderen Befehle.


2
Ich betrachte die kurzen Befehle als eine Bequemlichkeit der Befehlszeile. Ich verwende immer vollständige Befehlsnamen in Skripten. Es ist frustrierend, wenn die kurzen Befehle in Plugins verwendet werden. Es macht das Durchsuchen / Durchsuchen von Skripten schwieriger als nötig.
Tommy A

2
Wie @TommyA sagt. Betrachten Sie diese Auszüge: setl nobl bt=nofile noswf, setl ma ff=unix noro, setl ro noma nomod. Können Sie schnell sagen, was sie tun? Schauen Sie sich die netrwQuellen an, um mehr Inspiration zu erhalten. :)
Sato Katsura

Antworten:


10

Es gibt keinen tatsächlichen Unterschied, aber in :h usr_20.txtkönnen Sie lesen:

Es wird empfohlen, in Vim-Skripten den vollständigen Befehlsnamen zu schreiben. Dies erleichtert das Zurücklesen, wenn Sie spätere Änderungen vornehmen. Mit Ausnahme einiger häufig verwendeter Befehle wie :w( :write) und :r( :read).

Besonders verwirrend ist :end, was für aushielt :endif, :endwhileoder :endfunction. Verwenden Sie daher immer den vollständigen Namen.

Daher würde ich empfehlen, dem Dokument zu folgen und den langen Namen zu verwenden.

Und noch ein Absatz interessant über die Kurznamen:

Wie kurz kann ein Befehl werden? Es gibt 26 Buchstaben und viele weitere Befehle. :setBeginnt beispielsweise auch mit :s, startet aber :skeinen :set Befehl. Stattdessen :setkann mit abgekürzt werden :se.

Wenn die kürzere Form eines Befehls für zwei Befehle verwendet werden kann, steht sie nur für einen von ihnen. Es gibt keine Logik, hinter der man sie lernen muss. In den Hilfedateien wird das kürzeste funktionierende Formular erwähnt.


2
Berücksichtigen Sie auch :endfun. Wer würde so etwas wollen.
Sato Katsura

1
Das wäre in der Tat schrecklich :-)
statox
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.