Linuxhotel Wiki

Wie ging das nochmal?

Benutzer-Werkzeuge

Webseiten-Werkzeuge


admin_grundlagen:vim

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen gezeigt.

Link zu der Vergleichsansicht

Beide Seiten, vorherige Überarbeitung Vorherige Überarbeitung
Nächste Überarbeitung
Vorherige Überarbeitung
admin_grundlagen:vim [2016/01/18 11:49]
ingo_wichmann
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 17: 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 31: 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 53: Zeile 57:
 | ''​cc'' ​   | Zeile ersetzen ​                         | | ''​cc'' ​   | Zeile ersetzen ​                         |
 | ''​C'' ​    | bis zum Ende der Zeile ersetzen ​        | | ''​C'' ​    | bis zum Ende der Zeile ersetzen ​        |
-^       ​^ ​                                        ​^+ 
 +^       ​^ ​                           ^
 | .     | letzten Befehl wiederholen | | .     | letzten Befehl wiederholen |
  
Zeile 69: Zeile 74:
 | ''​dw'' ​   | Wort ausschneiden (delete word)         | | ''​dw'' ​   | Wort ausschneiden (delete word)         |
 | ''​dd'' ​   | Zeile ausschneiden ​                     | | ''​dd'' ​   | Zeile ausschneiden ​                     |
-| ''​dj'' ​   | Zeile und nächste Zeile ausschneiden ​   | 
-| ''​dk'' ​   | Zeile und vorherige Zeile ausschneiden ​ | 
 | ''​D'' ​    | bis zum Ende der Zeile ausschneiden ​    | | ''​D'' ​    | bis zum Ende der Zeile ausschneiden ​    |
 ^ y…    ^ kopieren (**y**ank) ^ ^ y…    ^ kopieren (**y**ank) ^
 | ''​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 103: Zeile 124:
  
 ====== Beispiel Texte ====== ====== Beispiel Texte ======
-[[vim beispiel texte]] zum Üben+[[admin_grundlagen:​vim beispiel texte]] zum Üben
  
 ====== Suchen und Ersetzen III ====== ====== Suchen und Ersetzen III ======
Zeile 119: Zeile 140:
 |''​vi -p file1 file2'' ​ |Tab-Modus\\ (Dateitabs wechseln mit ''​g''​ ''​t''​ (__g__o__t__o) - ''​T''​ für rückwärts ​ | |''​vi -p file1 file2'' ​ |Tab-Modus\\ (Dateitabs wechseln mit ''​g''​ ''​t''​ (__g__o__t__o) - ''​T''​ für rückwärts ​ |
  
-====== Konfigurationsdateien ohne Kommentare anzeigen ​======+====== 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 ===== 
 +  :set ignorecase 
 + 
 +===== Konfigurationsdateien ohne Kommentare anzeigen =====
   :set fdm=expr   :set fdm=expr
   :set fde=getline(v:​lnum)=~'​^\\s*#'?​1:​getline(prevnonblank(v:​lnum))=~'​^\\s*#'?​1:​getline(nextnonblank(v:​lnum))=~'​^\\s*#'?​1:​0   :set fde=getline(v:​lnum)=~'​^\\s*#'?​1:​getline(prevnonblank(v:​lnum))=~'​^\\s*#'?​1:​getline(nextnonblank(v:​lnum))=~'​^\\s*#'?​1:​0
 +
 +=====  Syntax-Highlighting einschalten =====
 +  :syntax on
 +
 +===== Zeilennummern ein-/​ausschalten =====
 +  :set number
 +  :set nonumber
 +
 +===== Steuerzeichen anzeigen =====
 +  :set list
  
 ====== Navigationsbefehle II ====== ====== Navigationsbefehle II ======
Zeile 152: Zeile 193:
 || ||
 | :help <​Befehl>​| | :help <​Befehl>​|
-| :syntax on | Syntax highlighting| 
-| :set number| 
-| :set nonumber| 
-| :set list | Steuerzeichen anzeigen| 
 | :set all | Zeigt alle Befehle an in Kombination mit set| | :set all | Zeigt alle Befehle an in Kombination mit set|
  
 ====== 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 170: 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 |}}
admin_grundlagen/vim.1453117781.txt.gz · Zuletzt geändert: 2016/01/18 11:49 von ingo_wichmann