--------------------------------------------------------------------------------- VIM - Kurzanleitung von Christoph Maciejewski (c) 1999 --------------------------------------------------------------------------------- Allgemeines ----------- Alle vim-Kommandos (beginnen mit ":") können in die Konfigurationsdatei eingetragen werden. Diese kann heissen: .gvimrc .vimrc oder unter Win32 _vimrc Bearbeituns-Modi ---------------- [ESC]: Kommandomodus [i]: Einfügemodus (an der aktuellen Stelle) [A]: Einfügemodus (am Ende der aktuellen Zeile -> "append") [:]: Execute-modus (Eingabe eines Kommandos), Kommandovervollständigung mit [TAB] Dateiverwaltung: ---------------- [:e Dateiname]: Datei laden [:e Verzeichnis]: Dateimanager (Der Parameter ist ein Verzeichnis) [:w]: Aktuelle Datei speichern [:w Dateiname]: Aktuelle Datei speichern unter einem neuen Namen (Bearbeitet wird weiter das Original) [:sav Dateiname]: Aktuelle Datei speichern unter einem neuen Namen (Neue Datei wird bearbeitet) [:buffer Dateiname]: Zwischen den Buffers (geöffnete Dateien) umschalten [:next]: Zum nächsten Buffer wechseln [:prev]: Zum vorherigen Buffer wechseln [:q]: VIM beenden (nur wenn alle Buffers gespeichert, sonst Meldung) [:q!]: VIM beenden (nicht gespeicherte Buffers gehen verloren) [:wq]: Speichern und Schliessen (Alternativ: [ZZ]) Editor: ------- [u]: Aktion rückgängig machen (undo) [Ctrl+r]: Aktion wiederherstellen (redo) [yy]: Zeile kopieren [dd]: Zeile ausschneiden (löschen) [dw]: Wort ausschneiden (ab der aktuellen Position nach rechts) [db]: Wort ausschneiden (ab der aktuellen Position nach links) [d^]: Bis Zeilenanfang löschen (ab der aktuellen Position) [d$]: Bis Zeilenende löschen (ab der aktuellen Position) [:'a,'bd]: Von Marke "a" bis Marke "b" löschen [p]: Einfügen [v]: Anfang des zu markierenden Bereichs setzen (Mit den Cursortasten Bereich markieren) [y]: Markierten Bereich kopieren ["xy]: Markierten Bereich in das Puffer "x" kopieren (es können bis zu 26 Puffer belegt werden) ["xp]: Text aus dem Puffer "x" einfügen [VG]: Alles markieren (ab der aktuellen Position nach unten [mx]: Marke setzen ("x" ist ein bel. Kleinbuchstabe -> es sind 26 Marken möglich) ['x]: Zur Marke "x" springen [J]: CR/LF am Ende einer Zeile löschen (Zeilen zusammenfügen) [:set list]: Nicht darstellbare Zeichen anzeigen [:set ic]: Gross/Kleinschreibung ignorieren [Ctrl+n]: Wort vervollständigen [:%!xxd]: HEX-Editor-Modus (xxd muss installiert sein) Im Text navigieren: ------------------- [gg]: An die erste Position des Textes springen [GG]: An die letzte Position des Textes springen [m][Cursor]: Um "m" Zeichen/Zeilen springen (mit den Cursortasten -> links, rechts, oben, unten) [w]: Wortweise nach rechts springen (Mit [b] nach links) -> auch hier kann eine Zahl vorangestellt werden Suchen und Ersetzen: -------------------- [/Suchwort]: Nach "Suchwort" suchen ("Suchwort" ist ein reg. Ausdruck). Mit [n] weiter suchen. [/Suchwort/i]: Nach "Suchwort" suchen, Gross/Kleinschreibung ignorieren [:1,$s/Unix/Linux/g]: "Unix" durch "Linux" ersetzen (Bereich: 1,$ -> vom Anfang bis Ende, g: Alle ersetzen) [:1,.s/^/#/g]: Alle Zeilen bis zur aktuellen Cursorposition (.) auskommentieren Sonstiges: ---------- [:split]: Hauptfenster wird horizontal aufgespaltet. Wechseln mit [Ctrl+w+w]. [:r !date]: Ausgabe eines UNIX-Kommandos in den Text einfügen (hier Datum) [:syntax on]: Syntaxeinfärbung einschalten [:set nu!]: Zeilennummern ein-/ausblenden. [:set ai]: Automatisches Einrücken (AutoIdent) [:set cin]: Automatisches Einrücken im Still von C (Einrücken in Funktionsrümpfen) [:set softtabstop=3]: Tabulator entspricht drei Leerzeichen [:set shiftwidth=3]: Autom. Einrücken entspricht drei Leerzeichen [:ab w1 wort]: Autom. Ersetzen von "w1" durch "wort" während der Eingabe ------------------------------------------------------------