## Magit
1. Öffne: <Leader> + m
2. Springe zu Hunk: Strg + N
3. Stagen: S
4. Commit-Message: CC
5. schreiben und speichern: i und :w/CC

## Buffer in Splits/Tabs öffnen
* funktioniert mit Buffergator(Leader b) und ctrlp(Strg + F)
`<ENTER>` öffne im aktueller Ansicht
`<C-V>` öffne als vertikalen split
`<C-T>` öffne als neuen tab
`<C-X>` öffne als horizontalen Split(nur ctrlp)

## Übersicht Buffer
`<Leader> b`

## Buffer auswählen
`<C-t>` neuer Buffer
`<C-l>` nächster Buffer
`<C-h>` letzter Buffer

## git interactives Staging
`:G stage -p` (`alias stagep`)

## git Befehle
`:G <befehl>`

## git als shell verlassen
`gq`

## alles schließen (und speichern)
`:qa(w)`

## Buffer "maximieren"
`:on`

# Navigation
`Strg + hjkl/Pfeiltasten`
`Strg + W r`            swap bottom/top if split horizontally/Rotates the windows from right to left
`Strg + w HJKL`         Move current window to X and  use the full height of the screen
`Strg + W Strg + W`     Wechselt zum nächsten Buffer

## Buffer tauschen
`Strg + W x`

## neuen leeren Split öffnen
`Strg + W n`

## neuen Buffer öffnen
`:e <name>`

## NERDtree rekursives expandieren von Ordner
`<O>`

## alle Zeilen ab Cursor löschen
`d Shift+G`

## Paste/No Paste
`aktiveren: set paste`
`deaktivieren: set nopaste`

## Insert
`A`		   hängt Text am Ende der Zeile an
`a`		   setzt den Cursor an das Ende des Wortes
`i`		   fügt vor dem Cursor ein
`o/O`		 o=Zeile unterhalb einfügen, O Zeile oberhalb einfügen
`R`		   ersetzt für jedes getippte Zeichen an vorhandenes
`r`      ersetzt das Zeichen unter dem Cursor
`s`      löscht Zeichen unter Cursor, geht in Insert-Mode
`A`		   hängt Text am Ende der Zeile an
`a`		   setzt den Cursor an das Ende des Wortes
`i`		   fügt vor dem Cursor ein
`o/O`		 "Buchstabe", o=Zeile unterhalb einfügen, O Zeile oberhalb einfügen
`R`		   ersetzt für jedes getippte Zeichen an vorhandenes
`r`      ersetzt das Zeichen unter dem Cursor

## Zeilen löschen/sortieren
1. `v`		gehe in Visual Mode
2. markiere Text
3. `:sort` (Sortiert)
oder
3. `:sort u` (Sortiert und löscht doppelte)

## Löschen
`rw/d3w`		entfernt das Wort vom Cursor an
`d$`		    entfernt Text bis Ende der Zeile
`de`		    löscht Text bis Ende des Wortes
`dd/2dd`		löscht die ganze Zeile/2 ganze Zeilen
`cc`        löscht die ganze Zeile, geht in Insert-Mode
`D`         lösche bis zum Ende der Zeile

## Cursor bewegen
`3w`		  bewegt den Cursor 3 Wörter vorwärts
`%`		    Wenn Cursor auf Klammer wird zu der zweiten "Hälfte" gesprungen
`3e`		  bewegt den Cursor zum Ende des dritten Wortes
`G`       zur letzten Zeile
`gg`      zum Anfang der Datei
`w`       Wort vorwärts
`b`       Wort rückwärts
`$`       Ende der Zeile
`^`       Anfang der Zeile
`fc `     Bewege Cursor zum nächsten Auftreten von c, innerhalb der Zeile
Strg + d/u      schneller zwischen Zeilen springen
H/M/L       High/Middle/Low in einer Datei
Ctrl+W +/-: increase/decrease height (ex. 20<C-w>+)
Ctrl+W >/<: increase/decrease width (ex. 30<C-w><)
Ctrl+W =: equalize width and height of all windows

## Sonstiges
`:help <option>`	Gibt die Hilfe aus
`!<befehl>`	      führt ein externes Kommando aus
`u`	              undo/Zurück
`Strg +R`         Redo
`g~ `             Groß zu klein und umgekehrt und Cursor
`g~$`             wie g~ für ganze Zeile

## Ersetzen
`s/search/replace/g`	       Suchen und ersetzen; wirkt nur in der Zeile in der sich der Cursor befindet
`%s/search/replace/g(c)`     Suchen und ersetzen; wirkt in der ganzen Datei, das c zeigt für jede Ersetzung einen Auswahldialog an
`/suchbegriff`	             Suche(von Vorne) mit ? statt / von hinten
    `Strg +O`	               Springt zur Stelle vor der Suche zurück
    `n`		                   sucht nochmal nach dem Begriff
`r<n>`		                   Tauscht das Zeichen unter dem Cursor gegen das eingegebene aus
`ce <n>/c <zahl>`	           Tauscht die Buchstaben bis zum Ende des Wortes gegen die Eingabe aus

## Kopieren und Einfügen
1. `v`		gehe in Visual Mode
2. markiere Text
3. `y`		kopieren
4. gehe an Ziel
5. `p`		einfügen

## ausschneiden und Einfügen
2. `d` für den Bereich der ausgeschnitten werden soll
4. gehe an Ziel
5. `p`		einfügen