Auf der Bash-Readline im Emacs-Modus habe ich kürzlich die Transponierungsfunktion entdeckt , die mir die Möglichkeit gibt, einen Tippfehler wie schnell zu beheben
dc dir
zu
cd dir
durch Drücken von CTRL+ Tauf das c
Zeichen.
Gibt es etwas Ähnliches in Vi / Vim, mit dem ich Zeichen und Wörter austauschen kann?
normal-mode
k0pernikus
quelle
quelle
Antworten:
Für Zeichen ist es ziemlich einfach:
xp
den Buchstaben unter dem Cursor mit dem folgenden BuchstabenXp
zu tauschen und den Buchstaben unter dem Cursor mit dem vorherigen Buchstaben zu tauschen.Der
x
Befehl löscht das Zeichen unter dem Cursor und belässt den Cursor auf dem nächsten Zeichen. DerX
Befehl löscht das Zeichen unmittelbar vor dem Cursor und belässt den Cursor auf demselben Zeichen, auf dem er sich befand.p
Setzt (fügt) den zuletzt gelöschten oder zuletzt gezogenen Text direkt nach der aktuellen Cursorposition ein. (P
Setzt es kurz vor die aktuelle Cursorposition,xP
undXP
beide belassen den Text so, wie er vor dem Start war.)Ich bin mir nicht sicher, ob ich Worte austauschen soll. Vielleicht kann jemand anderes darauf antworten. Sie können sich dem
dawwP
nähern (oder es neu zuordnen, um es kürzer zu machen), aber das wird bei mehreren Randfällen brechen, zum Beispiel am Ende einer Linie.quelle
Wortwechselzuordnungen für lateinische Sprachen
Die Wortwechselzuordnungen aus dem Vim-Wiki funktionieren bei Wörtern mit akzentuierten Zeichen nicht ordnungsgemäß .
Diese Zuordnungen sind für die Arbeit mit (europäischen) ISO / IEC_8859-1 Latin-1-Ergänzungszeichen angepasst . Dies erfolgt durch Ersetzen aller Instanzen von
\w
with[0-9A-Za-zÀ-ÖØ-öø-ÿ_\-]
und aller Instanzen von\_W
with\_[^0-9A-Za-zÀ-ÖØ-öø-ÿ_\-]
.Löschen der Suchhervorhebung
Darüber hinaus wird die Hervorhebung der Suche bei Bedarf gelöscht . Dies wird erreicht, indem
:nohlsearch<return>
bei Bedarf am Ende jeder Zuordnung hinzugefügt wird .Hier ist das Endergebnis:
quelle