VIM: Unterschied zwischen den Versionen

Aus informatikvs
Wechseln zu: Navigation, Suche
(Potpourri)
 
(13 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 1: Zeile 1:
== zuletzt ==
+
[[Datei:vimrc.png|thumb|_vimrc]]
{|
+
== Potpourri ==
 +
{| class="wikitable"
 
| :%s/ü/ue/g || "ü" im gesamten Test durch "ue" ersetzen
 
| :%s/ü/ue/g || "ü" im gesamten Test durch "ue" ersetzen
 
|-
 
|-
| zt, zz, zb || aktuelle Zeile an Fenster -Anfang, -Mitte, -Ende
+
| :%s/^/# || Einen Gartenzaun vor jeder Zeile einfügen)
 
|-
 
|-
| shift+j || mit nächster Zeile verbinden
+
| zt, zz, zb || Aktuelle Zeile an Fenster -Anfang, -Mitte, -Ende
 +
|-
 +
| shift+j || Mit nächster Zeile verbinden
 
|-
 
|-
 
| :set [no]number || Zeilennumerierung [aus-]ein-schalten
 
| :set [no]number || Zeilennumerierung [aus-]ein-schalten
 
|-
 
|-
 
|  ggg?G    || rot13 für komplette Datei
 
|  ggg?G    || rot13 für komplette Datei
|}
+
|-
 +
| :vertical diffsplit file.sav || Dateiunterschiede anzeigen
 +
|-
 +
| :(v)split file.sav (:clsoe) || Datei im geteilten Bildschirm anzeigen (schließen)
 +
|-
 +
| xp || Zeichen tauschen
 +
|-
 +
| :sh (Exit) || Sub-Shell starten (verlassen)
 +
|-
 +
| :g/loeschmich/d||"loeschmich" im gesamten Text entfernen
 +
|-
 +
| :sort u|| Text sortieren und Duplikate entfernen
 +
|}
 +
 
 
== Einfügebefehle ==
 
== Einfügebefehle ==
i Insert
+
{| class="wikitable"
I Insert, am Anfang der Zeile
+
| i || Insert
a Anhängen ab Coursorposition (wie i)
+
|-
A Anhängen am Zeilenende
+
| I || Insert, am Anfang der Zeile
J Zeilen verbinden (nächste Zeile anhängen)
+
|-
o neue Zeile und Insert
+
| a || Anhängen ab Coursorposition (wie i)
O neue Zeile über Coursorposition und Insert
+
|-
ESC beendet den EIngabemodus
+
| A || Anhängen am Zeilenende
 +
|-
 +
| J || Zeilen verbinden (nächste Zeile anhängen)
 +
|-
 +
| o || Neue Zeile und Insert
 +
|-
 +
| O || Neue Zeile über Coursorposition und Insert
 +
|-
 +
| ESC || Beendet den EIngabemodus
 +
|}
 
== Löschbefehle ==
 
== Löschbefehle ==
x löscht ein Zeichen auf Coursorposition
+
{| class="wikitable"
r ein Zeichen ersetzten auf Coursorposition
+
|x || Löscht ein Zeichen auf Coursorposition
R beliebig viele Zeichen ersetzen ab Coursorposition
+
|-
cw ersetzt ein Wort
+
|r || Ein Zeichen ersetzten auf Coursorposition
cc ersetzt eine Zeile
+
|-
dw löscht ein Wort
+
|R || Beliebig viele Zeichen ersetzen ab Coursorposition
db löscht ein Wort vor dem Coursor
+
|-
dd löscht eine Zeile
+
|cw || Ersetzt ein Wort
D löscht ab Coursorposition bis zum Zeilenende
+
|-
d0 löscht vom Coursor bis zum Zeilenanfang
+
|cc || Ersetzt eine Zeile
d1 Pfeiltaste runter löscht die aktuelle und die folgende Zeile
+
|-
d3 Pfeiltaste rauf löscht die aktuelle Zeile und die 3 vorigen
+
|dw || Löscht ein Wort
d3w löscht das aktuelle Wort und die nächsten drei
+
|-
d3b löscht das akutelle Wort und die vorigen drei
+
|db || Löscht ein Wort vor dem Coursor
 +
|-
 +
|dd || Löscht eine Zeile
 +
|-
 +
|D || Löscht ab Coursorposition bis zum Zeilenende
 +
|-
 +
|d0 || Löscht vom Coursor bis zum Zeilenanfang
 +
|-
 +
|d1 Pfeiltaste runter|| Löscht die aktuelle und die folgende Zeile
 +
|-
 +
|d3 Pfeiltaste rauf || Löscht die aktuelle Zeile und die 3 vorigen
 +
|-
 +
|d3w || Löscht das aktuelle Wort und die nächsten drei
 +
|-
 +
|d3b || Löscht das akutelle Wort und die vorigen drei
 +
|}
 
== Navigationsbefehle ==
 
== Navigationsbefehle ==
w nächstes Wort
+
{| class="wikitable"
b voriges Wort
+
|w || Nächstes Wort
0 springt zum Zeilenanfang
+
|-
$ springt zum Zeilenende
+
|b || Voriges Wort
5 Pfeiltaste rauf springt 5 Zeilen rauf
+
|-
10G springt in Zeile 10
+
|0 || Springt zum Zeilenanfang
G springt ans Dateiende
+
|-
u undo
+
|$ || Springt zum Zeilenende
STRG + r redo
+
|-
. .. wiederhole den letzten Befehl
+
|5 Pfeiltaste rauf || Springt 5 Zeilen rauf
yy kopiere aktuelle Zeile
+
|-
yw kopiere ein Wort
+
|10G || Springt in Zeile 10
y2 Pfeiltaste runter aktuelle und nächsten 2 Zeilen kopieren
+
|-
y5G kopiere alles ab Zeile 5 bis Dateiende
+
|G || Springt ans Dateiende
p Einfügen des zuvor kopierten Textes
+
|-
P Einfügen des zuvor kopierten Textes oberhalb des Coursors
+
|u || undo
v visual Mode zum kopieren
+
|-
/ Suchen
+
|STRG + r || redo
n nächste Fundstelle
+
|-
N vorige Fundstelle
+
|. || ... wiederhole den letzten Befehl
? rückwärts suchen
+
|-
:nohl highlightning deaktiveren (nach Suche)
+
|yy || Kopiere aktuelle Zeile
>> aktuelle Zeile einrücken
+
|-
<< aktuelle Zeile ausrücken
+
|yw || Kopiere ein Wort
2> Pfeil rauf aktuelle und die zwei vorigen Zeilen einrücken
+
|-
:w Datei speichern
+
|y2 Pfeiltaste runter || Aktuelle und nächsten 2 Zeilen kopieren
:wq Datei speichern und beenden
+
|-
:q beenden (fragt bei Änderungen nach)
+
|y5G || kopiere alles abZeile 5 bis Dateiende
:q! beenden ohne speichern
+
|-
:set .. setzt eine Option
+
|p || Einfügen des zuvor kopierten Textes
:set no .. löscht eine Option
+
|-
 +
|P || Einfügen des zuvor kopierten Textes oberhalb des Coursors
 +
|-
 +
|v || Visual Mode zum kopieren
 +
|-
 +
|/ || Suchen
 +
|-
 +
|n || Nächste Fundstelle
 +
|-
 +
|N || Vorige Fundstelle
 +
|-
 +
|? || Rückwärts suchen
 +
|-
 +
|:nohl || Highlightning deaktiveren (nach Suche)
 +
|-
 +
|>> || Aktuelle Zeile einrücken
 +
|-
 +
|<< || Aktuelle Zeile ausrücken
 +
|-
 +
|2> Pfeil rauf || Aktuelle und die zwei vorigen Zeilen einrücken
 +
|-
 +
|:w || Datei speichern
 +
|-
 +
|:w !sudo tee % || readonly Datei speichern
 +
|-
 +
|:wq || Datei speichern und beenden
 +
|-
 +
|:q || Beenden (fragt bei Änderungen nach)
 +
|-
 +
|:q! || Beenden ohne speichern
 +
|-
 +
|:set .. || Setzt eine Option
 +
|-
 +
|:set no .. || Löscht eine Option
 +
|}
 +
 
 +
== noch mehr ... ==
 +
*[https://vim.rtorr.com/ Vim Cheat Sheet]
 +
*[[RegEx]]

Aktuelle Version vom 28. April 2020, 06:27 Uhr

_vimrc

Potpourri

 :%s/ü/ue/g "ü" im gesamten Test durch "ue" ersetzen
 :%s/^/# Einen Gartenzaun vor jeder Zeile einfügen)
zt, zz, zb Aktuelle Zeile an Fenster -Anfang, -Mitte, -Ende
shift+j Mit nächster Zeile verbinden
 :set [no]number Zeilennumerierung [aus-]ein-schalten
ggg?G rot13 für komplette Datei
 :vertical diffsplit file.sav Dateiunterschiede anzeigen
 :(v)split file.sav (:clsoe) Datei im geteilten Bildschirm anzeigen (schließen)
xp Zeichen tauschen
 :sh (Exit) Sub-Shell starten (verlassen)
 :g/loeschmich/d "loeschmich" im gesamten Text entfernen
 :sort u Text sortieren und Duplikate entfernen

Einfügebefehle

i Insert
I Insert, am Anfang der Zeile
a Anhängen ab Coursorposition (wie i)
A Anhängen am Zeilenende
J Zeilen verbinden (nächste Zeile anhängen)
o Neue Zeile und Insert
O Neue Zeile über Coursorposition und Insert
ESC Beendet den EIngabemodus

Löschbefehle

x Löscht ein Zeichen auf Coursorposition
r Ein Zeichen ersetzten auf Coursorposition
R Beliebig viele Zeichen ersetzen ab Coursorposition
cw Ersetzt ein Wort
cc Ersetzt eine Zeile
dw Löscht ein Wort
db Löscht ein Wort vor dem Coursor
dd Löscht eine Zeile
D Löscht ab Coursorposition bis zum Zeilenende
d0 Löscht vom Coursor bis zum Zeilenanfang
d1 Pfeiltaste runter Löscht die aktuelle und die folgende Zeile
d3 Pfeiltaste rauf Löscht die aktuelle Zeile und die 3 vorigen
d3w Löscht das aktuelle Wort und die nächsten drei
d3b Löscht das akutelle Wort und die vorigen drei

Navigationsbefehle

w Nächstes Wort
b Voriges Wort
0 Springt zum Zeilenanfang
$ Springt zum Zeilenende
5 Pfeiltaste rauf Springt 5 Zeilen rauf
10G Springt in Zeile 10
G Springt ans Dateiende
u undo
STRG + r redo
. ... wiederhole den letzten Befehl
yy Kopiere aktuelle Zeile
yw Kopiere ein Wort
y2 Pfeiltaste runter Aktuelle und nächsten 2 Zeilen kopieren
y5G kopiere alles abZeile 5 bis Dateiende
p Einfügen des zuvor kopierten Textes
P Einfügen des zuvor kopierten Textes oberhalb des Coursors
v Visual Mode zum kopieren
/ Suchen
n Nächste Fundstelle
N Vorige Fundstelle
? Rückwärts suchen
:nohl Highlightning deaktiveren (nach Suche)
>> Aktuelle Zeile einrücken
<< Aktuelle Zeile ausrücken
2> Pfeil rauf Aktuelle und die zwei vorigen Zeilen einrücken
:w Datei speichern
:w !sudo tee % readonly Datei speichern
:wq Datei speichern und beenden
:q Beenden (fragt bei Änderungen nach)
:q! Beenden ohne speichern
:set .. Setzt eine Option
:set no .. Löscht eine Option

noch mehr ...