Ich verstehe nicht den Unterschied zwischen let mapleader=","
und let g:mapleader=","
. Ich weiß, dass g:
bedeutet, dass es eine globale Variable ist, aber ich verstehe den Unterschied nicht klar. Welchen sollte ich in meiner .vimrc-Datei verwenden?Vim globale Variablen und Mapleader
11
A
Antwort
11
Wenn sich die oben genannten Anweisungen außerhalb der Funktion befinden, haben sie den gleichen Effekt wie eine globale Variable. Wenn jedoch die erste Anweisung ohne das Präfix g:
in einen Funktionskörper verwendet wird, definiert sie eine Variable lokal für diese Funktion. Siehe :help internal-variables
und insbesondere :helpg In a function:
.
So kann man außerhalb der Funktionen auf die globale Map-Leader-Variable einfach als mapleader
zugreifen.
1
let mapleader=","
wie im Dokument angegeben.
Warum möchten Sie g:mapleader
verwenden? g:
wird meist in Plugins zu let
globalen Variablen verwendet, um Einstellungen zu anderen Plugins verfügbar zu machen oder mit denen Sie in Ihrer .vimrc spielen können.
Man würde 'g: mapaderader' verwenden, um auf die globale Variable map leader in einer Funktion zuzugreifen. Siehe relevante Verweise auf die Vim-Hilfe in meiner Antwort. –
Ja, aber nicht in dem, was ich glaube, ist der Kontext der Frage: Einstellung 'mapleader' zu', '. – romainl
Die Einstellung 'mapleader' konnte in einer Funktion auftreten. Vor allem, wenn man bedenkt, dass der Wert von 'mapleader' für das'' in dem Moment verwendet wird, in dem das Mapping definiert ist. –