Hier werden die Unterschiede zwischen zwei Versionen gezeigt.
Beide Seiten, vorherige Überarbeitung Vorherige Überarbeitung Nächste Überarbeitung | Vorherige Überarbeitung | ||
admin_grundlagen:vim [2016/07/12 21:21] 127.0.0.1 Externe Bearbeitung |
admin_grundlagen:vim [2022/09/28 14:25] (aktuell) |
||
---|---|---|---|
Zeile 1: | Zeile 1: | ||
====== vi überleben ====== | ====== vi überleben ====== | ||
- | ^ Befehl ^ Funktion ^ | + | |
+ | Für Debian/Ubuntu empfohlen: Das Paket ''vim'' installieren, welches eine komfortablere Version von ''vi'' enthält. Dann wird u.a. immer angezeigt, wenn sich der Editor im Einfüge-Modus befindet. | ||
+ | |||
+ | ^ Befehl ^ Funktion ^ | ||
| ''i'' | Einfügemodus (**i**nsert) | | | ''i'' | Einfügemodus (**i**nsert) | | ||
| ''<ESC>'' | Befehlsmodus | | | ''<ESC>'' | Befehlsmodus | | ||
Zeile 7: | Zeile 10: | ||
| '':q!'' | beenden ohne speichern | | | '':q!'' | beenden ohne speichern | | ||
| '':wq'' | speichern und beenden | | | '':wq'' | speichern und beenden | | ||
- | | '':x'' |::: | | ||
| ''u'' | Rückgängig (**u**ndo) | | | ''u'' | Rückgängig (**u**ndo) | | ||
Zeile 18: | Zeile 20: | ||
* mit einem Browser-Spiel: http://vim-adventures.com/ | * mit einem Browser-Spiel: http://vim-adventures.com/ | ||
* mit vimtutor: | * mit vimtutor: | ||
+ | |||
vimtutor | vimtutor | ||
Zeile 32: | Zeile 35: | ||
| ''e'' | zum nächsten Wortende (**e**nd)| | | ''e'' | zum nächsten Wortende (**e**nd)| | ||
| ''0'' | zum Zeilenanfang | | | ''0'' | zum Zeilenanfang | | ||
- | | ''$'' | zum Zeileneinde | | + | | ''$'' | zum Zeilenende | |
| ''gg'' | Dateianfang (**g**o) | | | ''gg'' | Dateianfang (**g**o) | | ||
| ''10gg'' | Zeile 10 | | | ''10gg'' | Zeile 10 | | ||
Zeile 55: | Zeile 58: | ||
| ''C'' | bis zum Ende der Zeile ersetzen | | | ''C'' | bis zum Ende der Zeile ersetzen | | ||
- | ^ ^ ^ | + | ^ ^ ^ |
| . | letzten Befehl wiederholen | | | . | letzten Befehl wiederholen | | ||
Zeile 75: | Zeile 78: | ||
| ''yw'' | Wort kopieren | | | ''yw'' | Wort kopieren | | ||
| ''yy'' | Zeile kopieren | | | ''yy'' | Zeile kopieren | | ||
- | | ''Y'' | bis zum Ende der Zeile kopieren | | + | | ''Y'' | Zeile kopieren | |
+ | | ''y$'' | bis zum Ende der Zeile kopieren | | ||
^ ^ einfügen (**p**aste)^ | ^ ^ einfügen (**p**aste)^ | ||
| ''P'' | an aktueller Position einfügen | | | ''P'' | an aktueller Position einfügen | | ||
Zeile 81: | Zeile 85: | ||
===== Visueller Modus ===== | ===== Visueller Modus ===== | ||
- | | ''v'' | Visueller Modus | | + | | ''v'' | markieren (visual) | |
- | | ''V'' | Visueller Modus, zeilenweise | | + | | ''V'' | markieren, zeilenweise | |
- | | ''Strg+v'' | Visueller Modus, blockweise | | + | | ''Strg+v'' | markieren, blockweise | |
==== Anwendungsbeispiel: suchen und ersetzen II ==== | ==== Anwendungsbeispiel: suchen und ersetzen II ==== | ||
| ''/'' | suchen | | | ''/'' | suchen | | ||
|.. Suchwort eingeben .. || | |.. Suchwort eingeben .. || | ||
- | | ''vwc'' | 1 Wort ersetzen | | + | | ''vec'' | 1 Wort ersetzen | |
|.. Ersatzwort eingeben ..|| | |.. Ersatzwort eingeben ..|| | ||
| ''<ESC>'' | Änderung beenden | | | ''<ESC>'' | Änderung beenden | | ||
| ''n'' | zum nächsten Treffer springen | | | ''n'' | zum nächsten Treffer springen | | ||
| ''.'' | Ersetzung wiederholen | | | ''.'' | Ersetzung wiederholen | | ||
+ | |||
+ | ==== Text Markieren ==== | ||
+ | | ''vip'' | aktuellen Absatz markieren | | ||
+ | | ''vit'' | Text innerhalb des aktuellen xml-Tags markieren | | ||
+ | | ''vi('' oder ''vib''| Text innerhalb der (Klammern) markieren | | ||
+ | | ''vi{'' oder ''viB''| Text innerhalb der {Klammern} markieren | | ||
+ | | ''vi['' | Text innerhalb der [Klammern] markieren | | ||
+ | | ''vi%%"%%'' | Text innerhalb der %%"Anführungszeichen"%% markieren | | ||
+ | | ''vi%%'%%'' | Text innerhalb der 'Anführungszeichen' markieren | | ||
+ | | ''vap'' | aktuellen Absatz inklusive Leerzeilen außenrum markieren | | ||
+ | | ''vat'' | Text um das aktuelle xml-Tag markieren | | ||
+ | | ''va('' oder ''vab''| Text inklusive der (Klammern) markieren | | ||
+ | | ''va{'' oder ''vaB''| Text inklusive der {Klammern} markieren | | ||
+ | | ''va['' | Text inklusive der [Klammern] markieren | | ||
+ | | ''va%%"%%'' | Text inklusive der %%"Anführungszeichen"%% markieren | | ||
+ | | ''va%%'%%'' | Text inklusive der 'Anführungszeichen' markieren | | ||
+ | Quelle: http://vimdoc.sourceforge.net/htmldoc/motion.html#object-select | ||
===== weitere Wege in den Einfügemodus ===== | ===== weitere Wege in den Einfügemodus ===== | ||
Zeile 120: | Zeile 141: | ||
====== Einstellungen ====== | ====== Einstellungen ====== | ||
+ | ===== Den vim.tiny smart machen ===== | ||
+ | |||
+ | Folgende Zeilen in der ~/.vimrc sorgen dafür, dass auch im vim.tiny im Insert-Modus die Cursortasten und Backspace vernünftig, auch über die Grenzen des gerade eingefügten Textes hinaus, funktionieren: | ||
+ | set nocompatible | ||
+ | set backspace=2 | ||
+ | |||
===== Groß-/Kleinschreibung beim Suchen ignorieren ===== | ===== Groß-/Kleinschreibung beim Suchen ignorieren ===== | ||
:set ignorecase | :set ignorecase | ||
Zeile 169: | Zeile 196: | ||
====== Alternative Editoren ====== | ====== Alternative Editoren ====== | ||
+ | |||
+ | Eigentlich keine. | ||
+ | |||
| Befehl | SuSE Paket | Debian Paket | CentOS Paket | Beschreibung | | | Befehl | SuSE Paket | Debian Paket | CentOS Paket | Beschreibung | | ||
| mcedit | mc | mc | | Teil vom Midnight Commander | | | mcedit | mc | mc | | Teil vom Midnight Commander | | ||
Zeile 180: | Zeile 210: | ||
* {{:vi-vim-cheat-sheet.gif|http://www.viemu.com/vi-vim-cheat-sheet.gif}} | * {{:vi-vim-cheat-sheet.gif|http://www.viemu.com/vi-vim-cheat-sheet.gif}} | ||
+ | {{ :admin_grundlagen:vim_grafiken.svg |}} |