Vim: Unterschied zwischen den Versionen
K →Vi/Vim |
|||
(83 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt) | |||
Zeile 1: | Zeile 1: | ||
''' | '''vim''' - Editor für die Kommandozeile | ||
= Beschreibung = | == Beschreibung == | ||
Der Editor vi (visual) ist ein bildschirmorientierter Editor | |||
* | * Der Text ist in seiner aktuellen Version auf dem Bildschirm zu sehen | ||
* Kann interaktiv | |||
* | |||
Der Texteditor Vi ist ein mächtiges Werkzeug für das Terminal, der in der Unixwelt lange Zeit der Standard war und auch heute immer noch weitverbreitet ist | |||
* | * Er ist allerdings proprietäre Software, sodass man im Allgemeinen vom Vim - Vi improved redet, wenn man über den Vi spricht | ||
* | * Dies ist ein Open Source-Klon des Vi, der auf jedem Linux-System zu finden ist | ||
* Auch vom Vim existieren eine Reihe Klone, die aber mehr oder weniger den gleichen Ansatz verfolgen | |||
* Mit gVim existiert ebenfalls eine Version mit grafischer (GTK-) Oberfläche | |||
mit [ | === Vi improved (vim) === | ||
Vim funktioniert wie der [[vi]]-Editor im [[Textmodus]] auf jedem [[Terminal (Computer)|Terminal]] | |||
* Die Bedienung erfolgt dann üblicherweise über die [[Tastatur]], eine Maus wird zwar auf vielen Terminals unterstützt, ihre Verwendung ist aber limitiert | |||
* Das ist zum einen historisch bedingt durch die zu Ur-vi-Zeiten Mitte der 1970er Jahre üblichen Bildschirmterminals mit einer langsamen, [[Serielle Datenübertragung|seriellen]] Verbindung zum [[Hostrechner|Hauptrechner]], zum anderen schätzen erfahrene Benutzer die Effizienzvorteile der mächtigen Tastatursteuerung („vi is at your fingertips“) | |||
* Aus der Limitierung damaliger Terminals resultiert sein [[Vim#Modi|modales Konzept]] | |||
* Vim ist nahezu vollständig abwärtskompatibel zu vi, hat jedoch eine Vielzahl an Weiterentwicklungen und eine moderne [[Grafische Benutzeroberfläche|grafische Benutzerschnittstelle]] mit [[Menü (Computer)|Menüs]] (GVim) sowie eine vereinfachte Version für Einsteiger (eVim) | |||
['' | Vim kann auf vielen [[Betriebssystem]]en genutzt werden und ist auf fast jedem GNU/[[Linux]]-Rechner zu finden | ||
* In der Regel wird beim Aufruf ''vi'' unter Linux Vim über eine [[Symbolische Verknüpfung|Verknüpfung]] oder einen [[Alias (Unix)|Alias]] aufgerufen | |||
* Welcher vi-Ableger gestartet wurde, lässt sich im Kommando-Modus über den Befehl '':version'' überprüfen | |||
= | == Modus == | ||
Vim verfügt über verschiedene Arbeitsmodi | |||
{| class="wikitable options" | |||
| Kommandomodus || | |||
{|class="wikitable | |||
| | |||
| | |||
| | |||
* Freies Positionieren innerhalb des Textes | * Freies Positionieren innerhalb des Textes | ||
* Umsetzen von Textblöcken | * Umsetzen von Textblöcken | ||
* Schreiben und Lesen von Dateien | * Schreiben und Lesen von Dateien | ||
* Löschen von Textblöcken und Aufruf von UNIX-Kommandos | * Löschen von Textblöcken und Aufruf von UNIX-Kommandos | ||
|- | |||
* Einfügen von Text | | Eingabemodus || | ||
* Einfügen von Text | |||
* Überschreiben vorhandener Textpassagen | * Überschreiben vorhandener Textpassagen | ||
|- | |- | ||
| Kommandozeilenmodus </br>(ex-Modus) || | |||
* Dateien speichern, öffnen, wechseln | |||
* Suchen und ersetzen | |||
* Konfiguration | |||
|} | |} | ||
Nach dem Aufruf des vi befindet sich der Benutzer im Kommandomodus | |||
== Aufruf == | |||
<syntaxhighlight lang="bash" highlight="1,2" line> | |||
vim [Optionen] [Datei]n | |||
vi [Optionen] [Datei]n | |||
</syntaxhighlight> | |||
Auf vielen Systemen ist die Kurzform ''vi'' ausreichend | |||
=== Optionen === | |||
{| class="wikitable options" | |||
=== | |||
{|class="wikitable | |||
|- | |- | ||
! Option !! Beschreibung | |||
|- | |- | ||
| -r || (recovery) Stellt die letzte Datei nach einem Absturz wieder her | |||
|} | |} | ||
=== Parameter === | |||
=== | === Umgebungsvariablen === | ||
=== Exit-Status === | |||
=== Hilfen === | |||
{|class="wikitable sortable" | {|class="wikitable sortable" | ||
|- | |- | ||
| | | | '''man vi''' | ||
| | | | Manualpage von '''vi''' aufrufen | ||
|- | |- | ||
| | | | ''':h <Stichwort>''' | ||
| | Hilfe aufrufen (mit :q verlassen) | |||
|- | |- | ||
| | | | '''vimtutor''' | ||
| | | | Lernprogramm | ||
|- | |- | ||
|} | |} | ||
=== | == Befehlsmodus == | ||
; Nach dem Aufruf befindet sich Vim im Befehlsmodus | |||
Vergleichbar mit Klicken durch die Menüs eines grafischen Programms | |||
{|class="wikitable | {| class="wikitable options" | ||
! Tastenkürzel !! Aktion | |||
|- | |- | ||
| | | j || Schritt abwärts | ||
| | |- | ||
| k || Schritt aufwärts | |||
|- | |- | ||
| | | h || Schritt nach links | ||
| | |||
|- | |- | ||
| | | l || Schritt nach rechts | ||
| | |||
|- | |- | ||
| | | dd || löscht eine komplette Zeile an der Cursorposition | ||
| | |||
|- | |- | ||
| | | u || macht letzte Änderung rückgängig | ||
| | |||
|- | |- | ||
| | | STRG + R || macht u rückgängig | ||
| | |||
|- | |- | ||
| ZZ || speichert die Datei und beendet Vim | |||
|} | |} | ||
=== Text | == Einfügemodus == | ||
{|class="wikitable | Befindet sich der Vim im Einfügemodus, so kann der Text nach Belieben editiert werden | ||
{| class="wikitable options" | |||
! Tastenkürzel !! Aktion | |||
|- | |- | ||
| | | i || Editiermodus an der Cursorposition starten | ||
| | |||
|- | |- | ||
| | | a || Editiermodus eine Stelle hinter der Cursorposition starten | ||
| | |||
|- | |- | ||
| | | o || Zeile unterhalb der Cursorposition einfügen und Editiermodus starten | ||
| | |||
|- | |- | ||
| ESC || Editiermodus verlassen | |||
|} | |} | ||
== | == Kommandozeilenmodus == | ||
{|class="wikitable | Neben Befehlen, die zum Bewegen durch die Datei oder deren Modifikation dienen, kann man im Kommandozeilenmodus auch Parameter des Programms selber ändern, Dateien laden und/oder (Shell-) Befehle ausführen | ||
* Das Verhalten ist mit einer Mini-Kommandozeile vergleichbar | |||
{| class="wikitable options" | |||
! Tastenkürzel !! Aktion | |||
|- | |- | ||
| | | :w || Datei speichern | ||
| | |||
|- | |- | ||
| | |:w name || Datei unter name speichern | ||
| | |||
|- | |- | ||
| | | :q! || Vim ohne Speichern beenden | ||
| | |||
|- | |- | ||
| | | /ausdruck || Datei nach ''ausdruck'' durchsuchen | ||
| | |||
|- | |- | ||
| | | :e ''dateiname'' || Datei ''dateiname'' öffnen | ||
|- | |- | ||
| :e # || zur zuvor bearbeiteten Datei zurückkehren | |||
|} | |} | ||
== | == Cursorpositionierung == | ||
Normalerweise ist der '''vi''' an die Pfeiltasten der Tastatur richtig angepasst | |||
* | * Daneben gibt es noch folgende Möglichkeiten (Auswahl) | ||
{|class="wikitable sortable" | {|class="wikitable opt2 sortable" | ||
|- | |- | ||
| | | | '''h ''' | ||
| | | | Zeichen links (auch Backspace) | ||
|- | |- | ||
| | | | '''l ''' | ||
| | | | Zeichen rechts (auch blank) | ||
|- | |- | ||
| | | | '''k ''' | ||
| | | | Zeile höher | ||
|- | |- | ||
| | | | '''j ''' | ||
| | | | Zeile tiefer | ||
|- | |- | ||
| | | | '''b ''' | ||
| | | | Wortanfang | ||
|- | |- | ||
| | | | '''e ''' | ||
| | Wortende | |||
|- | |- | ||
| | | | '''w ''' | ||
| | | | Anfang nächstes Wort | ||
|- | |- | ||
| | | | '''H ''' | ||
| | | | Anfang erste Zeile des Bildschirms | ||
|- | |- | ||
| | | | '''L ''' | ||
| | | | Anfang letzten Zeile des Bildschirms | ||
|- | |- | ||
| | | | '''0 (Null) ''' | ||
| | | | Zeilenanfang | ||
|- | |- | ||
| | | | '''$ ''' | ||
| | | | Zeilenende | ||
|- | |- | ||
| | | | '''RETURN ''' | ||
| | | | nächste Zeile | ||
|- | |- | ||
| | | | <u>'''''n''</u>G ''' | ||
| | | | (''Go'') Gehe zu Zeile <u>'''''n'''''</u></tt>. <tt><u>'''''n'''''</u> ist eine Zeilennummer | ||
* Fehlt die Zahl, wird zur letzten Zeile der Datei gesprungen | |||
|- | |- | ||
| | | | '''%''' | ||
| | sucht zur aktuellen Klammer die korrespondierende öffnende oder schließende Klammer | |||
| | |||
| | |||
|- | |- | ||
| | | | '''(''' | ||
| | | | Cursor zum Anfang des Satzes bewegen | ||
|- | |- | ||
| | | | ''')''' | ||
| | | | Cursor zum Anfang des nächsten Satzes bewegen | ||
|- | |- | ||
| | | | '''{''' | ||
| | Cursor zum Anfang des Absatzes bewegen | |||
|- | |- | ||
| | | | '''}''' | ||
| | | | Cursor zum Anfang des nächsten Absatzes bewegen | ||
|- | |- | ||
|} | |} | ||
== | == Installation == | ||
<syntaxhighlight lang="bash" highlight="1" line> | |||
sudo apt install vim | |||
</syntaxhighlight> | |||
=== | == Anhang == | ||
* | === Siehe auch === | ||
* [[gvim]] | |||
---- | |||
{{Special:PrefixIndex/{{BASEPAGENAME}}}} | |||
= | ==== Dokumentation ==== | ||
== | ===== Man-Page ===== | ||
== | ===== Info-Pages ===== | ||
== | ==== Links ==== | ||
== Weblinks == | ===== Projekt ===== | ||
===== Weblinks ===== | |||
# http://vim.wikia.com | # http://vim.wikia.com | ||
# https://vim.fandom.com/wiki/Search_and_replace | # https://vim.fandom.com/wiki/Search_and_replace | ||
Zeile 540: | Zeile 217: | ||
# https://linuxwiki.de/Vim | # https://linuxwiki.de/Vim | ||
{{DEFAULTSORT:vim}} | |||
{{DISPLAYTITLE:vim}} | |||
[[Kategorie:vim]] | |||
[[Kategorie:Linux/Befehl]] | |||
</noinclude> | |||
Aktuelle Version vom 12. November 2024, 20:13 Uhr
vim - Editor für die Kommandozeile
Beschreibung
Der Editor vi (visual) ist ein bildschirmorientierter Editor
- Der Text ist in seiner aktuellen Version auf dem Bildschirm zu sehen
- Kann interaktiv
Der Texteditor Vi ist ein mächtiges Werkzeug für das Terminal, der in der Unixwelt lange Zeit der Standard war und auch heute immer noch weitverbreitet ist
- Er ist allerdings proprietäre Software, sodass man im Allgemeinen vom Vim - Vi improved redet, wenn man über den Vi spricht
- Dies ist ein Open Source-Klon des Vi, der auf jedem Linux-System zu finden ist
- Auch vom Vim existieren eine Reihe Klone, die aber mehr oder weniger den gleichen Ansatz verfolgen
- Mit gVim existiert ebenfalls eine Version mit grafischer (GTK-) Oberfläche
Vi improved (vim)
Vim funktioniert wie der vi-Editor im Textmodus auf jedem Terminal
- Die Bedienung erfolgt dann üblicherweise über die Tastatur, eine Maus wird zwar auf vielen Terminals unterstützt, ihre Verwendung ist aber limitiert
- Das ist zum einen historisch bedingt durch die zu Ur-vi-Zeiten Mitte der 1970er Jahre üblichen Bildschirmterminals mit einer langsamen, seriellen Verbindung zum Hauptrechner, zum anderen schätzen erfahrene Benutzer die Effizienzvorteile der mächtigen Tastatursteuerung („vi is at your fingertips“)
- Aus der Limitierung damaliger Terminals resultiert sein modales Konzept
- Vim ist nahezu vollständig abwärtskompatibel zu vi, hat jedoch eine Vielzahl an Weiterentwicklungen und eine moderne grafische Benutzerschnittstelle mit Menüs (GVim) sowie eine vereinfachte Version für Einsteiger (eVim)
Vim kann auf vielen Betriebssystemen genutzt werden und ist auf fast jedem GNU/Linux-Rechner zu finden
- In der Regel wird beim Aufruf vi unter Linux Vim über eine Verknüpfung oder einen Alias aufgerufen
- Welcher vi-Ableger gestartet wurde, lässt sich im Kommando-Modus über den Befehl :version überprüfen
Modus
Vim verfügt über verschiedene Arbeitsmodi
Kommandomodus |
|
Eingabemodus |
|
Kommandozeilenmodus (ex-Modus) |
|
Nach dem Aufruf des vi befindet sich der Benutzer im Kommandomodus
Aufruf
vim [Optionen] [Datei]n
vi [Optionen] [Datei]n
Auf vielen Systemen ist die Kurzform vi ausreichend
Optionen
Option | Beschreibung |
---|---|
-r | (recovery) Stellt die letzte Datei nach einem Absturz wieder her |
Parameter
Umgebungsvariablen
Exit-Status
Hilfen
man vi | Manualpage von vi aufrufen |
:h <Stichwort> | Hilfe aufrufen (mit :q verlassen) |
vimtutor | Lernprogramm |
Befehlsmodus
- Nach dem Aufruf befindet sich Vim im Befehlsmodus
Vergleichbar mit Klicken durch die Menüs eines grafischen Programms
Tastenkürzel | Aktion |
---|---|
j | Schritt abwärts |
k | Schritt aufwärts |
h | Schritt nach links |
l | Schritt nach rechts |
dd | löscht eine komplette Zeile an der Cursorposition |
u | macht letzte Änderung rückgängig |
STRG + R | macht u rückgängig |
ZZ | speichert die Datei und beendet Vim |
Einfügemodus
Befindet sich der Vim im Einfügemodus, so kann der Text nach Belieben editiert werden
Tastenkürzel | Aktion |
---|---|
i | Editiermodus an der Cursorposition starten |
a | Editiermodus eine Stelle hinter der Cursorposition starten |
o | Zeile unterhalb der Cursorposition einfügen und Editiermodus starten |
ESC | Editiermodus verlassen |
Kommandozeilenmodus
Neben Befehlen, die zum Bewegen durch die Datei oder deren Modifikation dienen, kann man im Kommandozeilenmodus auch Parameter des Programms selber ändern, Dateien laden und/oder (Shell-) Befehle ausführen
- Das Verhalten ist mit einer Mini-Kommandozeile vergleichbar
Tastenkürzel | Aktion |
---|---|
:w | Datei speichern |
:w name | Datei unter name speichern |
:q! | Vim ohne Speichern beenden |
/ausdruck | Datei nach ausdruck durchsuchen |
:e dateiname | Datei dateiname öffnen |
:e # | zur zuvor bearbeiteten Datei zurückkehren |
Cursorpositionierung
Normalerweise ist der vi an die Pfeiltasten der Tastatur richtig angepasst
- Daneben gibt es noch folgende Möglichkeiten (Auswahl)
h | Zeichen links (auch Backspace) |
l | Zeichen rechts (auch blank) |
k | Zeile höher |
j | Zeile tiefer |
b | Wortanfang |
e | Wortende |
w | Anfang nächstes Wort |
H | Anfang erste Zeile des Bildschirms |
L | Anfang letzten Zeile des Bildschirms |
0 (Null) | Zeilenanfang |
$ | Zeilenende |
RETURN | nächste Zeile |
nG | (Go) Gehe zu Zeile n. n ist eine Zeilennummer
|
% | sucht zur aktuellen Klammer die korrespondierende öffnende oder schließende Klammer |
( | Cursor zum Anfang des Satzes bewegen |
) | Cursor zum Anfang des nächsten Satzes bewegen |
{ | Cursor zum Anfang des Absatzes bewegen |
} | Cursor zum Anfang des nächsten Absatzes bewegen |
Installation
sudo apt install vim
Anhang
Siehe auch
Dokumentation
Man-Page
Info-Pages
Links
Projekt
Weblinks
- http://vim.wikia.com
- https://vim.fandom.com/wiki/Search_and_replace
- http://wiki.ubuntu-forum.de/index.php?title=Vim
- https://linuxwiki.de/Vim