vim-Tipps 0

Posted by fwoeck
on Sunday, December 21

Eclipse ist auf Dauer zu träge und Textmate gibt’s nicht für Linux – also: auf zum VIM!

Diese Tipps habe ich gefunden:

Coding

  • CTRL-p aktiviert die Code-Completion

Visual Mode (Markierungen)

  • v Markierung starten
  • SHIFT-v zeilenweise markieren
  • CTRL-v “Visual Block” Modus aktivieren
  • c im aktiven visual Mode: ändert die Markierung
  • x im aktiven visual Mode: löscht die Markierung
  • > im aktiven visual Mode: Einrückung
  • < im aktiven visual Mode: “Ausrückung”
  • /\%V Ersetzen auf den markierten Bereich einschränken, z.B. ersetze Y durch X: :%s/\%VY/X/g

Editing

  • J hängt die nächste Zeile an die aktuelle an
  • qa beginnt die Aufzeichnung eines Macros in den a-Slot, q beendet
  • @a gibt ein aufgezeichnetes Macro in Slot a wieder
  • CTRL-n im Insertmode ergänzt ein Wort mit den nächsten Alternativen (wie Textmate ESC)

Navigation

  • fa springt zum nächsten a in der Zeile
  • Fa springt zum vorherigen a in der Zeile
  • ; wiederholt fa oder Fa
  • ma setzt die Sprungmarke a
  • ‘a springt zur Zeile der Marke a
  • `a springt zur Marke a
  • ’’ oder `` zyklisch zum vorherigen Ort zurückgehen

Buffers

  • :ls zeigt die aktuellen Buffers an
  • :b3 aktiviert Buffer #3
  • CTRL-^ wechselt zyklisch zwischen den letzten beiden aktiven Buffern

Tabs

  • :tabnew öffnet einen neuen Tab
  • :tabnew neuen benannten Tab öffnen
  • gt wechselt zum linken Tab
  • gT wechselt zum rechten Tab

Split-Winows

  • CTRL-w s splittet das Fenster horizontal
  • CTRL-w v splittet das Fenster vertikal
  • CTRL-j springt in unteres Splitfenster (eigenes Mapping)
  • CTRL-k springt in unteres Splitfenster (eigenes Mapping)

FuzzyFinder

  • STRG+j öffnet die aktuell selektierte Datei horizontal in einem neuen Fenster
  • STRG+k öffnet die aktuell selektierte Datei vertikal in einem neuen Fenster
  • STRG+] öffnet die aktuell selektierte Datei in einem neuen Tab
  • :ruby finder.rescan! Filebaum neu einlesen (Mapping auf \-r)
  • \-t fuzzy-Filesuche
  • \-b fuzzy-Buffersuche

vimdiff

vimdiff file1 file2

  • dp – Änderungen des aktuellen Buffers in die andere Datei schreiben
  • do – Änderungen vom anderen Buffer in den aktuellen schreiben
  • ]c – Sprung zur nächsten Differenz
  • [c – Sprung zur vorherigen Differenz

Dateiübergreifende Suche

  • :vimgrep /muster/ **/*.rb sucht mit internem grep in allen rb-Dateien rekursiv nach dem Muster
  • :grep … setzt ein externes grep ab und liefert die Dateiliste zurück. Die erste Fundstelle wird geöffnet

Quickfix-Mode (für :grep)

  • :cl listet die gefundenen grep-Dateien auf
  • :cc17 öffnet die 17. Fundstelle
  • :cp springt zur vorherigen Fundstelle
  • :cn springt zur nächsten Fundstelle

anderer Leute .vims

Speziell für Railsprojekte:

git clone git://github.com/manalang/vim-config.git
Comments

Leave a response

Comment