Ich verbringe fast den ganzen Tag mit Programmieren in Vim und ich bin mir sicher, dass viele von Ihnen dies auch tun. Welche Funktionen nutzen Sie, um Ihre tägliche Codierung so viel besser zu machen? Eines, das ich benutze, ist gv , mit dem Sie den zuvor ausgewählten Text erneut auswählen können. Es ist großartig für ein erneutes Einrücken!
vim
text-editing
vi
Peter Mortensen
quelle
quelle
gv
. :)Antworten:
:% s / x / y / g
Dieser Befehl ersetzt alle Instanzen von x in der aktuellen Datei durch y . Dies ist im Grunde nur ein Suchen und Ersetzen, aber ich benutze es so oft, seit ich es bei der Arbeit gelernt habe, dass es von unschätzbarem Wert geworden ist.
Auch / Suchzeichenfolge
dann n , um durch alle Instanzen der Suchzeichenfolge in der Datei zu navigieren . Hervorragend geeignet, um manuelle Optimierungen viel einfacher durchzuführen, insbesondere wenn Sie keine Regel auf die gesamte Datei anwenden können.
quelle
%
hier die Ersetzung vorgenommen werden muss -%
bedeutet "die aktuelle Datei". Wenn Sie einige Zeilen optisch hervorheben und eingeben:s
, können Sie nur in dieser Auswahl eine Ersetzung vornehmen.==
macht schöne automatische Einrückung in der aktuellen Zeile.Normalerweise benutze ich jedoch
=
eine Bewegung,=G
um bis zum Ende der Datei=i}
einzurücken oder um innerhalb der aktuellen geschweiften Klammern einzurücken.quelle
vmap <Tab> >gv
undvmap <S-Tab> <gv
zu Ihrem.vimrc
, können Sie einrücken und ausrücken mit Tab und Shift-Tab bzw. UND wird es gleich wieder in visuellen Auswahlmodus gehen , so dass Sie oder unindent weiter einrücken können.=%
zum automatischen Einrücken aller Elemente innerhalb eines Codeblocks.quelle
{
. Wenn Sie sich im Block befinden, können Sie dies tun=i{
, indem Sie "in die geschweiften Klammern einrücken".Verwenden Sie
*
im Befehlsmodus für das Wort unter dem Cursor zu suchen.quelle
Der
:!
Befehl - von unschätzbarem Wert fürls
ing, und der "Sudo Tee" Trick.Ich wurde gebeten, den Abschlag zu erklären. Grundsätzlich können Sie eine Textdatei mit Administratorrechten speichern, auch wenn Sie VIM nicht als root gestartet haben:
quelle
!ls
, die avnew
ausführt,r!ls
in den neuen Puffer ausgibt und ihn horizontal verkleinert. Ich kann nicht die Mühe haben, mir alle Dateien in einem Verzeichnis mit mehr als drei darin zu merken;)Schlagen die. Taste wiederholt den vorherigen Befehl. Schön zum Beispiel zum Bearbeiten von
.ini
, oder so.quelle
Syntax-Farbmarkierung
quelle
Ich verwende gq immer, um Zeilenumbrüche bei E-Mails, Textdateien usw. zu wiederholen. Sehr nützlich, wenn ich auf E-Mails antworte (ich verwende pine) und mehrere vorherige Antworten bearbeite.
quelle
Wo soll ich anfangen ... Hier sind die Dinge, an die ich mich erinnern kann, dass ich sie in den letzten 5 Minuten verwendet habe.
cd
in ein Verzeichnis zu wechseln und dann über meine Shell-Zuordnungen (unten) zu einer Shell-Eingabeaufforderung zu wechseln.ci
für das Leeren von allem, was Sie dazwischen stecken.:!
zum Starten von Standard-Apps.diff
s,stat
s, etc.:abbr
zum wiederholten Tippen von großen Blöcken verschwinden lassen.:Sex
ist immer schön.:set paste!
um zu verhindern, dass ein automatischer Einzug in den Amok läuft.quelle
ZZ speichern und beenden (statt: wq!)
quelle
Ich verwende beim Schreiben oder Überqueren von C / Tcl / Perl-Code häufig die folgenden Befehle:
Code zum Kopieren und Einfügen
CTRL-f
undCTRL-b
für Seitenvorwärts- und Rückwärtsdurchquerung%
für Block-für-Block-Durchquerung^
gehe zum Zeilenanfang$
gehe zum letzten ZeilenendeStarten Sie die Codeauswahl mit dem Befehl
v
(visueller Modus) und einer der oben genannten Tasteny
zum Kopierenp
und Einfügens
ein Zeichen löschen und in den Einfügemodus wechseln, um neuen Text einzugeben.Code Level Traversals (erfordert Codierstil Disziplin)
]]
zum Start der nächsten Funktion[[
zum Start der vorherigen FunktionCTRL-]
um zur Definition einer Variablen / Funktion / eines Makros zu springen, wenn Tags verfügbar sind.Suche
*
=> Suchwort (oder Text ausgewählt Verwendung v) in Vorwärtsrichtung#
=> Suchwort (oder Text v ausgewählt Verwendung) in Rückwärtsrichtungn
=> vorherigen Suchbefehl in Vorwärtsrichtung auszuführenN
=> Befehl vorherige Suche in Rückwärtsrichtung auszuführenAllen obigen Befehlen kann eine Zahl vorangestellt werden, um anzugeben, wie oft sie ausgeführt werden sollen. Die Realisierung der Kraft dieser zusätzlichen Dimension kommt langsam, wie man benutzt vim immer mehr und Herausforderungen, sich zu verbessern.
quelle
Ich gebe nur Text ein. Alles andere ist nur ... Zucker.
quelle
Ich bin ein ehemaliger Benutzer von TextPad und hatte viele der Zugriffstasten dieses Programms auswendig gelernt. Eines der ersten Dinge, die ich in Vim tat, war das Erlernen der Kartenfunktion Konsistenz zu halten (F5 suchen, F8 ersetzen, etc.). Ich habe mein persönliches Farbschema erstellt und viel aus den vimrc-Dateien anderer ausgeliehen. Viva Vim! Beliebig konfigurierbar.
quelle