Grundlegende Vim-Konfiguration

Nach dem Studium Vim für Anfänger, Sie haben gesehen, dass die relative Zeilennummerierung Ihrer Dateien ein Neuladen nicht übersteht. Dieses Verhalten kann jedoch in der Vim-Konfigurationsdatei definiert werden.

Die .vimrc-Datei

Alle Vim Konfigurationsinformationen finden Sie im .vimrc Datei im Basisverzeichnis gefunden. Sie können es mit dem Befehl "Datei bearbeiten" von innen öffnen Vim:

: e ~ / .vimrc 

Diese Datei ist leer, da sie nicht verwendet wurde. Dieses Tutorial zeigt Ihnen, wie Sie es verwenden.

Code kommentieren

Bevor Sie einen Code einfügen, sollten Sie dokumentieren, was getan wird. Sie wissen vielleicht, was Sie gerade tun, aber ein Monat ab jetzt ist eine andere Sache. Kommentieren Sie den Code immer so, dass Sie daran erinnert werden, warum Sie etwas codiert haben.

Für die .vimrc Datei, alles nach einem doppelten Anführungszeichen am Zeilenende wird nicht verwendet. Daher können Sie alles dort ablegen, um sich daran zu erinnern, was Sie getan haben.

Nummer setzen "Dies aktiviert die Zeilennummerierung 

Jetzt wissen Sie immer, dass die Nummer setzen Befehl aktiviert die Zeilennummerierung. 

Optionen und Variablen

Um die Zeilennummern und die relative Nummerierung zu aktivieren, müssen Sie dies in das Feld eingeben .vimrc Datei:

set number "Dies schaltet die Zeilennummerierung ein. setzt die relative Nummer." Dies aktiviert die relative Nummerierung 

Speichern Sie das und Sie müssen nicht mehr darüber nachdenken. Jedes Mal Vim Öffnet eine Datei und zeigt nun relative Zeilennummern an. Das einstellen Befehl setzt jede Option, die in ist Vim. Eine Option wird deaktiviert, indem Sie die gegenüberliegende Option einstellen. Die gegenüberliegenden Optionen entsprechen denen der Option mit Nein vor.

Deaktivieren Sie die Zeilennummerierung und die relative Nummerierung folgendermaßen:

set number "Dies schaltet die Zeilennummerierung aus. Set noelativ number" Dies deaktiviert die relative Nummerierung 

Setzen Sie nicht beide Sets in die .vimrc Datei. Das wird es ein- und wieder ausschalten. In einem kleinen Schritt zeige ich Ihnen, wie Sie dies programmgesteuert machen.

Wenn Sie den Status einer Option bereits kennen, können Sie die Option auch umschalten, indem Sie die Option umschalten. Optionen werden durch das Setzen von a umgeschaltet ! nach dem Optionsnamen. Hiermit können Sie die Optionen ein- und ausschalten:

Nummer setzen! "Dies schaltet den Wert der Zahlenmenge relativierter Zahlen um!" Dies ändert die relativen Zeilennummern 

Wenn der aktuelle Status einer Option benötigt wird, verwenden Sie a ? nach dem Optionsnamen. Im Vim, Art:

Nummer setzen? 

Es wird wiederkommen Nummer. Dadurch können Sie den Status der Option kennen.

Wenn Sie die Anzahl der Spalten ändern möchten, die der Zeilennummernbereich anzeigt, können Sie das festlegen Anzahl Breite auf einen Wert. Im Folgenden wird die Spaltenbreite auf 4 festgelegt:

set numberwidth = 4 "Setzt die Zeilennummern auf 4 Leerzeichen 

Probieren Sie es aus und sehen Sie, wie viele Leerzeichen Sie mögen .vimrc Datei.

Benötigen Sie eine Variable, werden Variablen mit dem erstellt Lassen Aussage. Zum Beispiel:

let name = "Richard Guay" "Setzen Sie meinen Namen in die Namensvariable 

Wenn Sie das im speichern .vimrc Datei (aber verwenden Sie Ihren eigenen Namen), kann sie im Befehlsmodus mit angezeigt werden : Echo-Name.

Den Variablennamen sehen

Optionen werden als Variable behandelt, indem der Option ein vorangestelltes Zeichen vorangestellt wird &. Optionen können gedruckt werden durch:

: Echo & Zahlenbreite 

Das Echo Der Befehl ist nur für Variablen, aber das Präfix einer Option mit einem & erzählt Vim um die Option als Variable zu behandeln. Auf diese Weise können Sie den Wert der Option in math verwenden. Das Erhöhen der Zeilennummernbreite um eins erfolgt daher mit

: let & numberwidth = & numberwidth + 1 

Ein Echo & Zahlweite sollte jetzt zeigen 5.

Alle Variablen haben ebenfalls ihren Gültigkeitsbereich. Der Umfang wird durch einen Buchstaben definiert, :, und der Variablenname. Nicht definierter Bereich wird als globaler Bereich behandelt. Die verschiedenen Bereiche sind:

b: Pufferumfang-Nur innerhalb des aktuellen Puffers verwendbar
w: Fensterbereich-Nur verfügbar im aktuellen Fenster
t: Registerseitenbereich-Nur auf der Registerseite verfügbar
G: Weltweit überall verfügbar
l: Lokaler Gültigkeitsbereich ist lokal für die definierte Funktion verfügbar
s: Quellbereich nur in der Quelldatei verfügbar
ein: Nur Argumentumfang nur innerhalb der Funktion verfügbar
v: Globaler Gültigkeitsbereich, der verwendet wird, um auf eine Variable zu verweisen, die von definiert und verwendet wird Vim

Die richtige Definition für die Namensvariable unter Verwendung des globalen Bereichs lautet:

let g: name = "Richard Guay" "Setzen Sie meinen Namen in die Namensvariable 

Informationen erhalten

Da Sie nun wissen, wie Sie Optionen und Variablen einstellen, fragen Sie sich vielleicht, wie Sie die verschiedenen Optionen herausfinden. Das Durchsuchen des Internets ist eine Option, aber die Informationen sind in Vim. Art:

:setzen Sie alle 

Und Vim zeigt jede Option im Programm. Das tippen :Lassen und eine Eingabe zeigt alle Variablen.

Das :Hilfe Der Befehl dient zum Nachschlagen der umfassenden Dokumentation Vim. Aus etwas herauskommen :Hilfe, benutzen : q. Im Hilfe Im Modus wird das Programm nicht beendet, der Editor wird jedoch in den Normalmodus versetzt.

Funktionen

Funktionen sind sehr nützlich im .vimrc Datei. Seit der Vim's Konfigurationsdateien verwenden eine vollständige Programmiersprache, ich werde von hier aus auf ihren wahren Namen verweisen: VimScript.

Im VimScript, Definiere eine Funktion mit:

Funktion ()  endfunc 

Ich liebe die Zeilennummerierung und die relative Nummerierung, aber manchmal möchten Sie keine relative Nummerierung. Die vollständige Zeichenfolge eingeben : norelative number setzen oder auch : Relative Nummer setzen! ist viel tippen. Eine Funktion zum Ein- und Ausschalten wäre gut.

Funktion TRelative () setze relative Zahl! endfunc 

Eine Funktion wird mit ausgeführt :Anruf Befehl.

: TRelative aufrufen () 

Das Funktion Mit dem Befehl können Sie eine bereits definierte Funktion nicht überschreiben. Wenn diese Funktion bereits an anderer Stelle definiert wurde oder Sie versucht haben, die Datei erneut zu laden, Vim wird an dieser Stelle einen Fehler ausführen und die Verarbeitung der Datei beenden. Wenn Sie die Funktion! Befehl, wird die Funktion ohne Fehler überschrieben. Es ist eine gute Programmierpraxis in VimScript meist verwenden Funktion!.

Um alle Nummerierungen auszuschalten, kann eine Funktion erstellt werden, die das tut, und es ist das Gegenteil. Fügen Sie dies dem hinzu .vimrc:

Funktion! NoNumber () set nonumber set norelumber number endfunc function! Anzahl () Anzahl der gesetzten Anzahl relativer number endfunc 

Um Parameter an eine Funktion zu übergeben, platzieren Sie einen Variablennamen in der Klammer. Zum Beispiel:

Funktion! Hallo (name) echo "Hallo" a: name endfunc 

Wie Sie sehen, müssen Sie Variablen definieren, die Argumente einer Funktion sind. Wenn Sie die Funktion jetzt mit einem Namen aufrufen, erhalten Sie

: Hallo anrufen ("Richard") Hallo Richard 

Grundlegende Schlüsselzuordnung

Eine der wichtigsten Anwendungen der Konfigurationsdatei ist das Einrichten von Tastenzuordnungen. Zum Beispiel können Sie relative Zahlen für eine ganze Menge ein- und ausschalten. Anstatt zu tippen : TRelative aufrufen Ein Hotkey ist immer schneller. Um das zu tun, die Karte Befehl wird helfen.

Karte  : TRelative aufrufen () 

Mit dieser Zeile in der .vimrc Datei können Sie jetzt eingeben Control-T und die relative Nummerierung wird ein- und ausgeschaltet. Probieren Sie es aus, indem Sie eine Zuordnung für das Umschalten aller Zeilennummern erstellen.

Keymaps sind nicht nur für den normalen Modus, sondern für jeden Modus. Wenn Sie dem Befehl den ersten Buchstaben eines Modus voranstellen, wird der Schlüssel für diesen Modus zugeordnet. nmap auch Karten für normaler Modus. vmap Karten für visueller Modus. Imap Karten für Einfügemodus.

Nun, da Sie diese Befehle kennen, vergessen Sie sie. Diese Befehle können gefährlich sein. Wenn Sie einen Schlüssel erneut zuordnen, verwendet er die neue Zuordnung und kann eine Endlosschleife in den Zuordnungen erstellen.

Um dies zu verhindern, müssen Sie hinzufügen nore nach dem Modus und vor der Karte. Deshalb, nmap ist keineNordkarte, vmap ist vnoremap, und Imap ist inoremap. Diese verwenden die Standardzuordnung für alle Tastenbefehle, auf die Sie im Makro verweisen. Diese sind in der Konfigurationsdatei viel sicherer zu verwenden.

Fazit

In diesem Tutorial habe ich Ihnen die Grundlagen der Erstellung eines Vim Konfigurationsdatei. Ich habe Ihnen gezeigt, wie Sie die Konfigurationsdatei kommentieren, Optionen und Variablen setzen / deaktivieren, grundlegende Funktionen erstellen und Tastenkombinationen zuordnen. Der beste Weg, sich zu erinnern, ist das Üben.