Created
May 19, 2016 05:58
-
-
Save haslinger/cffa0dc8304827f40e65d4c86fb95cd2 to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
surround.vim | |
= 20160519 = | |
:global /{pattern}/ [cmd] führt ex-Kommando cmd für alle Zeilen, die pattern erfüllen, aus | |
:vglobal ... die pattern nicht erfüllen ... | |
qaq löscht Register a | |
:g/pattern/yank A in Register a anhängen | |
"ap inhalt Register a einfügen | |
:g/pattern/[range] sort sortiert Bereich range | |
= 20160518 = | |
<CTRL-r>" unbenanntes Register einfügen | |
<CTRL-r>0 yank-Register einfügen | |
<CTRL-SHIFT-v> Zwischenablage einfügen | |
q{register} Makro Aufnahme start und stop | |
:reg{register} Register anzeigen | |
@{register} Register ausführen | |
@@ letztes Register wiederholen | |
:normal @a Register für alle Zeilen in Selektion ausführen | |
q{Register} an Register anhängen (Grossbuchstabe) | |
@argdo normal @a run Register for all files in argument list | |
:wall Speichere alle Buffer | |
:wnext Speichere und wechsle zu nächestem Buffer | |
:let i=0 Variable zuweisen | |
:echo i Variable ausgeben | |
:let i += 1 Variable inkrementieren | |
:put a Makro einfügen | |
\c Muster case insensitive | |
\C Muster case sensitive | |
\M magische Muster | |
\v sehr magische Muster | |
\V buchstäbliche Suche (very nomagic) | |
\1 \2 Submatch | |
\0 gesamter Match | |
\w Zeichen in Wort | |
\W kein Wort-Zeichen | |
( | ) oder | |
< > Wortbegrenzer | |
\zs \ze Matchbeginn und Matchende | |
escape({string},{chars}) Zeichen escapen | |
:wrapscan Suche wird am Bufferbeginn fortgesetzt | |
? Rückwärtssuche | |
:set hlseach Suchergebnisse hervorheben | |
:noh Hervorhebung temporär deaktivieren | |
:%s///gn Suchergebnisse zählen | |
ea End append (am Ende des Wortes anhängen) | |
angehängtes e am Ende des Matches positionieren | |
q/ Kommandozeilenfenster | |
:substitute Ersetzen | |
g in der ganzen Zeile | |
c manuelle Bestätigung | |
\v= Vimscript ausführen | |
% im ganzen Buffer | |
g& letzte Suche global wiederholen | |
:'<,'>&& letzte Suche mit visueller Selektion wiederholen | |
= 20160516 = | |
:v visueller Modus | |
dann: | |
a oder i äußere oder innere Selektion | |
)]}>'"`t einschließendes Zeichen, t für tag | |
Auswahlen sind als Motions für c, d, y verwendbar | |
m{a-zA-Z} set mark | |
'{mark} move to line of mark | |
`{mark} move to position of mark | |
automatische Marken: | |
`` Position vor letztem Sprung im aktuellen File | |
`. Ort der letzten Änderung | |
`^ Ort der letzten Einfügung | |
`[ Start des letzten Yank oder Change | |
`] Ende des letzten Yank oder Change | |
`< Start der letzten visuellen Selektion | |
`> Ende der letzten visuellen Selektion | |
:% passende Klammer | |
CTRL-o nächster Eintrag in Jump Liste | |
CTRL-i voriger Eintrag in Jump Liste | |
{count}G Sprung zur Zeilennummer | |
//pattern<CR>/?pattern<CR>/n/N Sprung zum nächsten/letzten Vorkommen von pattern | |
( / ) nächste / letzte Klammer | |
{ / } nächster / letzter Absatz | |
H / M / L Seitenanfang, -mitte, -ende | |
gf Filename unter Cursor | |
CRTL-] Definition | |
g; letzte Modifikation | |
g, nächste Modifikation | |
:set path? Pfad inspizieren | |
:vimgrep /pattern/ ** Suche im Projekt | |
xp Zeichen transponieren | |
ddp Zeilen transponieren | |
"{register} Register spezifizieren und überschreiben | |
"{Register} in Register appenden | |
"_ Schwarzes Loch Register | |
"+ Zwischenablage | |
"* Selektion | |
"= Ausdrucksregister | |
"% aktuelles File | |
"# anderes File | |
". letzter eingefügter Text | |
": letzter Ex Befehl | |
"/ letztes Suchmuster | |
= 20160504 = | |
:!ruby % aktuelle Datei mit ruby Parser ausführen | |
:shell startet Shell | |
CTRL-z suspended Vim | |
:read !{command} liest Ausgabe von command in den aktuellen Buffer | |
:write ! führt Buffer zeilenweise in Shell aus | |
:{range}!{filter} filtert die Zeilen in range durch das externe Programm filter | |
:ls Buffer list | |
:bnext nächsten Buffer | |
:bprev vorhergegangenen Buffer | |
:blast letzten Buffer | |
:bfirst ersten Buffer | |
:buffer N Buffer Nummer N | |
:buffer {bufnam} Buffer Name bufnam | |
:bufdo ex Kommando in allen Buffern ausführen | |
:bdelete N1 N2 Buffer N1 und N2 löschen | |
:N,M bdelete Buffer N bis M löschen | |
:args Argumentliste | |
:args {arglist} Füllt Argumentliste mit arglist | |
:args `command` Führt command in der Shell aus und befüllt Argumentliste mit Ausgabe | |
:next nächste Datei aus Argumentliste | |
:prev letzten Buffer aus Argumentliste | |
:bnext nächsten Buffer (auch bei Änderungen), aktueller wird hidden (falls Änderungen) | |
:edit! Datei neu einlesen | |
:qa[ll] alle Dateien schließen | |
:qa[ll]! alle Dateien schließen, auch geänderte | |
:wa[ll]! alle Dateien schreiben | |
:argdo {command} Kommando command für alle Buffer in der Argumentliste durchführen | |
CTRL-w s Fenster horizontal teilen | |
CTRL-w v Fenster vertikal teilen | |
sp[lit] {file} Fenster horizontal teilen und file laden | |
vsp[lit] {file} Fenster vertikal teilen und file laden | |
CTRL-w w Fenster cyclen (auch CTRL-w CTRL-w) | |
CTRL-w h Focus nach links | |
CTRL-w j Focus nach unten | |
CTRL-w k Focus nach oben | |
CTRL-w l Focus nach rechts | |
:cl[ose] Fenster schließen | |
:on[ly] alle anderen Fenster schließen | |
CTRL-w = Fenster gleich groß machen | |
CTRL-w _ Fensterhöhe maximieren | |
CTRL-w | Fensterbreite maximieren | |
[N]CTRL-w _ aktuelles Fenster N Zeilen hoch machen | |
[N]CTRL-w | aktuelles Fenster N Spalten breit machen | |
:lcd {path] setzt path als aktuelles Arbeitsverzeichnis für das aktive Fenster | |
:tabedit {file} öffnet file in neuem Reiter | |
:tabedit öffnet neuen Reiter | |
CTRL-w T schiebt aktuelles Fenster in neuen Reiter | |
:close schließt Fenster und Reiter | |
:tabclose schließt Reiter | |
:tabonly schließt alle anderen Reiter | |
{N}gt gehe zu Reiter N | |
gt gehe zu nächstem Reiter | |
gT gehe zu letztem Reiter | |
:tabmove [N] Reiter zu Position N verschieben | |
:pwd Arbeitsverzeichnis | |
:edit %:h %... Verzeichnis des aktuellen Puffers, :h entfernt Dateiname | |
:find Datei im path suchen | |
:Explore öffnet Netrw | |
:e . öffnet Nerdtree | |
:Sexplore öffnet Netrw horizontal gesplittet | |
:Vexplore öffnet Netrw vertikal gesplittet | |
netrw-% Datei erstellen | |
netrw-d Verzeichnis erstellen | |
netrw-rename umbennenen | |
:!mkdir -p %:h fehlender Verzeichnisse für aktuellen Buffer erstellen | |
:w !sudo tee % > /dev/null als Superuser speichern | |
g{move} Display-Zeilen Navigation | |
^ erstes Zeichen | |
$ letztes Zeichen | |
w nächstes Wort | |
b letztes Wort | |
e Ende des Wortes | |
ge Ende des letzten Wortes | |
W nächstes WORT | |
B letztes WORT | |
E Ende des WORTES | |
gE Ende des letzten WORTES | |
f{char} Suche Zeichen char | |
F{char] Suche Zeichen char rückwärts | |
t{char} Zeichen vor nächstem char | |
T{char] Zeichen nach letztem char | |
; nächstes Suchergebnis für f | |
, Suchergebnis rückwärts | |
dt{char} Bis vor nächstes char löschen | |
/{text} search for text | |
s nächstes Suchergebnis für / | |
Globs: | |
* Wildcard | |
** Wildcard, rekursiv in die Filestruktur hinunter | |
= 20160503 = | |
v visuellen Modus aktivieren | |
V zeilenweisen visuellen Modus aktivieren | |
CTRL-v blockweisen visuellen Modus aktivieren | |
gv letzten visuellen Modus aktivieren | |
o Ende im visual Mode switchen | |
vit Tag Inhalt in visual Mode selektieren | |
: Kommandozeilenmodus aktivieren | |
ex Kommandos: | |
yank Einfügen | |
delete Löschen | |
put Register einfügen | |
copy Kopieren | |
move Verschieben | |
join Zeilen zusammenführen | |
normal Normal Modus Kommando ausführen | |
substitute Ersetzen | |
global global Ersetzen | |
read Datei lesen | |
write Datei schreiben | |
tabnew Tabulator erzeugen | |
split Fenster teilen | |
prev letztes Argument | |
next nächstes Argument | |
bprev letzter Buffer | |
bnext nächster Buffer | |
{line} Zeile line adressieren | |
{start, end} Zeilen start bis end adressieren | |
{.} aktuelle Zeile | |
{$} letzte Zeile = Dateiende | |
{g} Dateianfang | |
{%} alle Zeilen | |
{/pattern/+offset1,/pattern2/-offset2} Zeilen von pattern plus offset1 bis pattern1 minus offset2 | |
CTRL-rCTRL-w aktuelles Wort einfügen | |
* aktuelles Wort global suchen | |
%s//CTRL-rCTRL-w/g alle Suchergebnisse der letzen Suche durch aktuelles Wort ersetzen | |
q: Command line buffer | |
q/ Search buffer | |
= 20160502 = | |
. letzte Änderung wiederholen | |
s Zeichen löschen und Einfügemodus aktivieren | |
f{char} nächste Instanz von char suchen | |
; letzte Suche wiederholen | |
@: ex-Kommando wiederholen | |
A zum Zeilenende und Einfügemodus aktivieren | |
a Einfügemodus hinter aktuellem Zeichen aktivieren | |
, letzte Suche rückwärts wiederholen | |
& letzte Ersetzung wiederholen | |
F{char] letzte Instanz von char suchen | |
n Mustersuche wiederholen | |
N Mustersuche rückwärts wiederholen | |
qx{change}q eine Folge von Änderungen durchführen | |
@x eine Folge von Änderungen wiederholen | |
* nächste Instanz von Wort unter Cursor suchen | |
o Einfügemodus in der nächsten Zeile öffnen | |
CTRL-a Addieren | |
CTRL-x Subtrahieren | |
zz aktuelle Zeile in die Mitte scrollen | |
K Suche in man page | |
J Zeilen zusammenführen | |
ga Zeichencode für Zeichen unter Cursor ausgeben | |
R Ersetzungsmodus aktivieren | |
gR virtuellen Ersetzungsmodus aktivieren | |
Operatoren: | |
c Ändern | |
d Löschen | |
y Kopieren (yank) | |
g- Großschreibung ändern | |
gu klein Schreiben | |
gU groß Schreiben | |
> Einrücken | |
< Ausrücken | |
= automatisch Einrücken | |
! Filter durch externes Programm | |
Einfügemodus Befehle: | |
CTRL-h Backspace | |
CTRL-w Wort löschen | |
CTRL-u Zeile löschen | |
CTRL-[ ESC | |
CTRL-O Insert normal mode | |
CTRL-r{register} Zwischenablage register einfügen | |
CTRL-rCTRL-p{register} Zwischenablage register ohne Einrückung einfügen | |
CTRL-r= Ausdrucksregister | |
CTRL-v{code} Sonderzeichen code einfügen | |
CTRL-k{digraph} fügt digraph ein | |
= 20160501 = | |
k hoch | |
j runter | |
h links | |
l rechts | |
:w Speichern | |
:q! Verlassen ohne Speichern | |
x Zeichen löschen | |
i Springen zum Einfügemodus | |
ESC Springen zum Kommandomodus | |
A Text am Ende der Zeile einfügen | |
:wq Speichern und Verlassen | |
:dw Wort löschen | |
d$ bis zum Zeilenende löschen | |
dw Wort und Leerzeichen löschen | |
de Wort läschen | |
2w zwei Wörter vorwärts | |
3e Cursor auf Ende des dritten Wortes | |
d2w zwei Wörter löschen | |
dd Zeile löschen | |
2dd zwei Zeilen löschen | |
0 zum Zeilenanfang gehen | |
u undo letztes Kommando | |
U Zeile wiederherstellen | |
CTRL-R Redo | |
p Unterhalb einfügen (put) | |
rx Ersetzen durch x | |
ce Änderung bis zum Wortende (change) | |
c$ Änderung bis zum Zeilenende | |
CTRL-G Dateiposition und Status | |
G zum Dateiende | |
gg zum Dateianfang | |
7G zur Zeile 7 gehen | |
/text Suche nach text | |
n Weitersuchen | |
?text rückwärts Suche nach text | |
CTRL-o zurück gehen | |
CTRL-i vorwärts gehen | |
% passende Klammer suchen | |
:s/alt/neu/g ersetzt alt durch neu | |
:3,7s/alt/neu/g ersetzt alt durch neu von Zeile 3 bis Zeile 7 | |
:%s/alt/neu/g ersetzt alt durch neu in der gesamten Datei | |
:%s/alt/neu/gc ersetzt nach Rückfrage alt durch neu in der gesamten Datei | |
:!command führt command als externes Kommando aus | |
:w dateiname speichert unter dateiname | |
v Bewegung :w dateiname speichert ausgewählten Text unter dateiname | |
:r dateiname Datei einlesen | |
:r !command Ausgabe von command Einlesen | |
o Zeile unterhalb öffnen | |
O Zeile oberhalb öffnen | |
a Text nach dem Cursor einfügen | |
R Ersetzungsmodus | |
v Bewegung y Bewegung p Text verschieben | |
yw Wort kopieren | |
:set option Option setzen | |
Option ic / noic ignore case | |
Option hls highlight search | |
Option is Teilübereinstimmungen anzeigen | |
:nohlsearch Hervorhebung deaktivieren | |
no vor Option Option negieren | |
:help Hilfe aufrufen | |
:help command command in der Hilfe suchen | |
CTRL-w CTRL-w zwischen Fenstern springen | |
:r $VIMRUNTIME/vimrc_example.vim .vibrc Beispiel einlesen | |
CTRL-d Vervollständigungen anzeigen | |
TAB Vervollständigung anwenden | |
:set nocp vi Kompatibilitätsmodus deaktivieren |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment