Klassiker, oder? Vielleicht kann ich dir da etwas Arbeit abnehmen...
Vim ist doch sowas, das man sich nur anlernt, wenn man entweder oft auf fremden Linux Systemen herumlungert oder masochistisch veranlagt ist, oder?
Da ich in letzter Zeit so einiges an Zeit darin verbracht habe, möchte ich dir jetzt die nervigen Teile des Ganzen ersparen, fangen wir an!
Mach es dein Vim
Beginnen wir mal mit den Konfigurationsmöglichkeiten. Jeder Linux Benutzer hat in seinem User-Home (auch ~ genannt) die Möglichkeit ein .vimrc File anzulegen. Gleich wie ein .bashrc fungiert dieses als "Startup" Konfiguration. Alles was wir darin definieren könnten wir auch so nachträglich in Vim selbst anpassen, aber mit der .vimrc wird all das bei jedem Öffnen angewendet.
Ich programmiere mit Vim auch C und habe deshalb unter anderem auch dafür relevante Änderungen dabei, du kannst diejenigen, die du nicht benötigst, aber gerne auch auskommentieren, hier mein heiliger Gral (erstelle nur die Datei, das war's, beim nächsten Vim-Start werden die Änderungen angewandt):
" show row numbers
set number
" Tabspace is 4
set ts=4
set sw=4
" Enable filetype detection
filetype on
" in makefiles, don't expand tabs to spaces, since actual tab characters are
" needed, and have indentation at 8 chars to be sure that all indents are tabs
" (despite the mappings later):
autocmd FileType make set noexpandtab shiftwidth=8
" have <F1> prompt for a help topic, rather than displaying the introduction
" page, and have it do this from any mode:
nnoremap <F1> :help<Space>
vmap <F1> <C-C><F1>
omap <F1> <C-C><F1>
map! <F1> <C-C><F1>
" Syntax highlighting
syntax on
" Auto indentation
set autoindent
" Smart Indendatoin
set smartindent
" Intelligent Comments
set comments=sl:/*,mb:\ *,elx:\ */
Diese Abkürzungen
Vim hat wirklich viele davon, aber ein paar Wichtige solltest du dir definitiv merken. Dir sollte auch bewusst sein, dass Vim zwischen Eingabe Modi und dem "Normal" Modus unterscheidet, mit ESC wechselt man in den Normal Mode, es gibt noch weitere Modi [1] aber die zu kennen ist nicht allzu relevant für den Anfang. Hier also mal meine Go-To's für totale Beginner:
- Aus anderen Modes: ESC drücken
Wechselt in den Normal Mode, im Notfall hilft manchmal auch classic Strg+C wenn ESC nicht hiflt
- Aus dem Normal Mode: i drücken
Wechselt in den Insert Mode, damit kann Input an der aktuellen Stelle eingefügt werden
- Aus dem Normal Mode: a drücken
Wechselt in den Append Mode, damit wird nach dem Cursor Input eingefügt, benötigt man am Ende einer Zeile gerne
- Aus dem Normal Mode: o drücken
Fügt eine leere Zeile unter der aktuellen Cursorzeile ein
- Aus dem Normal Mode: d 2x drücken
Löscht die aktuelle Curserzeile, kann nach dem ersten Mal drücken mit ESC abgebrochen werden
- Aus dem Normal Mode: v drücken
Wechselt in den Visual Mode, dieser dient zum Markieren, jetzt kann mit dem Cursor markiert werden. Beendet man mit nochmal v wird nichts gemacht, beendet man mit y wie yank wird kopiert in die Zwischenablage. Mit d kann man Markiertes löschen.
- Aus dem Normal Mode: p drücken
Paste aus der Zwischenablage, Achtung - ist nicht dieselbe Zwischenablage wie außerhalb von Vim!
- Aus dem Normal Mode: u drücken
Undo Modus. Revidiert die letzte Änderung
- Aus dem Normal Mode: Strg + r drücken
Redo Modus. Revidiert das Revidieren
- Aus dem Normal Mode: $ drücken
Springt mit dem Cursor zum Ende der aktuellen Zeile
- Aus dem Normal Mode: 0 drücken
Springt mit dem Cursor zum Beginn der aktuellen Zeile
- Aus dem Normal Mode: e drücken
Springt mit dem Cursor zum Ende des aktuellen Wortes
- Aus dem Normal Mode: :q eingeben und mit ENTER bestätigen
Schließt Vim. Forcieren bei ungespeicherten Änderungen mit :q!
- Aus dem Normal Mode: :wq eingeben und mit ENTER bestätigen
Speichert das File und schließt Vim. Kann auch separat eingegeben werden mit :w und :q.
- Aus dem Normal Mode: /<suchbegriff> eingeben und mit ENTER bestätigen
Sucht nach der nächsten Stelle an der das Wort auffindbar ist, mit n kann man zur nächsten Stelle springen
Ich hoffe, ich konnte dir damit alle Werkzeuge in die Hand geben, die du brauchst um dich erstmal gut zurechtzufinden. Wenn ich damit C-Programme schreiben kann, wirst du damit doch locker Files modifizieren :)
Kommentare
Kommentar veröffentlichen