Heim  >  Artikel  >  Betrieb und Instandhaltung  >  Sorgen Sie dafür, dass Vim besser funktioniert – VIM-Mapping

Sorgen Sie dafür, dass Vim besser funktioniert – VIM-Mapping

齐天大圣
齐天大圣Original
2020-06-12 10:38:352257Durchsuche

Mapping ist meine Lieblingsfunktion von vim. Dadurch kann ich meine eigenen Tastenkombinationen frei festlegen, was meine Schreibeffizienz erheblich verbessern kann. Unter Zuordnung versteht man das Festlegen von Tastenkombinationen, mit denen Sie kompliziertere Tasten durch eine kleine Anzahl leicht zu drückender Tasten ersetzen können.

Wann sollte Mapping verwendet werden?

Wenn Sie eines oder mehrere der folgenden Probleme haben, können Sie Mapping verwenden

  • Nicht zufrieden mit den aktuellen Tasten

  • Möchten Sie einige Tastenkombinationen festlegen, um die Bearbeitungsgeschwindigkeit zu verbessern

  • Möchten Sie einige kombinieren Schlüssel Vervollständigen Sie neue Anforderungen

Zugeordnete Klassifizierung

Wir wissen, dass vim mehrere Modi hat, die ihnen entsprechen, auch Mapping umfasst nmap (normale Zuordnung), imap (Einfügungszuordnung) und vmap (Blockauswahlzuordnung).

Lassen Sie uns einige Fälle auswählen, um über diese drei Zuordnungen zu sprechen.

Normale Zuordnung

" 使用F1切换显示行号
nmap <F1> :set nu! nu?<cr>

CR bedeutet hier die Eingabetaste.

Mapping einfügen

" 使用jj来代替esc键,完成从插入模式退回到普通模式
imap jj <esc>`^

Im Allgemeinen verwenden wir jj anstelle der Esc-Taste, um schnell vom Einfügemodus in den normalen Modus zu wechseln.

" 在插入模式下向前向后删除字符
imap <C-b> <Backspace>
imap <C-d> <Esc>lxi

Hier steht c für die Strg-Taste. Verwenden Sie im Einfügemodus Strg+B, um ein Zeichen rückwärts zu löschen, und Strg+D, um ein Zeichen vorwärts zu löschen.

Blockmoduszuordnung

Im Allgemeinen vergrößern oder verkleinern wir häufig den Einzug von mehrzeiligem Text. Wie in einem früheren Artikel erwähnt, kann diese Anforderung durch Blockauswahl in Kombination mit der Befehlszeile oder durch Makros erreicht werden. Heute können Sie nach dem Erlernen der Zuordnung eine einfachere Methode verwenden, um Ihre Anforderungen zu erfüllen.

vmap < <gv 
vmap > >gv

Wenn wir nun mehrere Zeilen einrücken möchten, müssen wir nur die Zeilen auswählen und > drücken.

Rekursive Zuordnung

Was passiert, wenn Sie die nächste Zuordnung durchführen?

nmap dd O<esc>jddk

Was passiert, wenn Sie dd später ausführen? es werden ernsthafte Probleme auftreten. Da es auf beiden Seiten der Zuordnung dd gibt, kommt es zu einer Endlosschleife. Diese Endlosschleife wird durch Rekursion verursacht und wird daher als rekursive Zuordnung bezeichnet.

Wie Sie sehen, ist die rekursive Zuordnung schädlich. Daher darf in der Arbeit niemals eine rekursive Zuordnung verwendet werden, es muss jedoch eine nicht rekursive Zuordnung verwendet werden. Was wäre also, wenn wir eine nicht rekursive Zuordnung durchführen würden? Es ist auch sehr einfach, fügen Sie einfach 4 Buchstaben hinzu 🎜 >

    vmap rekursiv vnoremap nicht rekursiv

Das obige ist der detaillierte Inhalt vonSorgen Sie dafür, dass Vim besser funktioniert – VIM-Mapping. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn