vim
vim ist ein Texteditor. Diese Seiten sind zum Beispiel mit
ihm erstellt worden. Es folgen hier ein paar Tipps zum Umgang mit vim:
Alles in einer Zeile bis STRING löschen:
:%s/^.*\(STRING\)/\1/
Wenn STRING mehrmals pro Zeile vorkommen kann, man aber nur bis zum ersten Auftraten von STRING löschen will:
:%s/^.\{-}\(STRING\)/\1/
Erklärung:
%
: Wie
1,$
, nämlich von der ersten bis zur letzten Zeile (
:help range
),
s
: Suchen/Ersetzen,
^
Zeilenanfang,
.
beliebiges Zeichen
*
beliebig oft und Suchstring
STRING
ersetzen duch alles, was im
Suchstring in dem ersten, mit
\( ... \)
markierten Teil steht
\1
. Im zweiten Befehl kommt im Suchteil nur
folgendes hinzu:
\{-}
, das beteutet: sowenig wie möglich der vorangegangenen Zeichen sollen gefunden werden (
gefunden in
:help pattern
).
Alle spaces vor Zeilenende loeschen:
Hat man durch copy & paste so komische Zeilenenden erhalten wie das folgende (Sichtbarmachen von Sonderzeichen per
:set list
):
irgnedeintest $
Kann folgende kleines Kommando helfen:
:1,$s/[[:space:]]*\ze$//
Dieses Kommando wirkt von der ersten bis zu letzten Zeile (
1,$
), sucht nach allen Whitepacezeichen gefolgt von
einem Zeilenende (
\ze
heist, was folgt, muss im zu suchenden String enthalten sein, wird aber nicht ersetzt)
und ersetzt es durch nichts.
Mehrere Fenster gleichzeitig
Folgendes ist nicht unbedingt für Messies geeignet:
- Horizontal splitten:
:split
- Vertikal splitten:
:vsplit
- Als Tastatur-Kürzel:
-
Strg-W s
: Horizontal splitten
-
Strg-W v
: Vertikal splitten
-
Strg-W w
: zum nächsten Fenster springen
-
Strg-W +
: aktuelles Fenster grösser machen
-
Strg-W -
: aktuelles Fenster kleiner machen
-
Strg-W _
: aktuelles Fenster maximieren
-
Strg-W =
: Fenstergrössen gleichmässig verteilen
-
Strg-W c
: Fenster schliessen
Anmerkung: Grobmotoriker, Bewegungs-Legastheniker oder Hektiker kommen sehr
leicht auf Strg-S
, welches das Steuerzeichen fürs Anhalten der Ausgabe ist
(S=STOP). Weiter gehts mit einem Strg-Q
.
Vim als diff verwenden
-
vim -d linkes_file rechtes_file
Nichdruckbare Zeichen anzeigen
Setzt man die Option
list
, werden auch nichtdruckbare Zeichen angezeigt. Zum Beispiel
^I
für Tabulatoren,
$
für Zeilenenden.
-
:set list
-> Option setzen, nichtdruckbare Zeichen anzeigen
-
:set nolist
-> Option zurücksetzten, normale Ansicht
Nuetzliche Tastenkombinationen
Kommandomodus
-
STRG-A
: Zahl unterm Cursor um eins hochzählen
-
STRG-X
: Zahl unterm Cursor um eins runterzählen
-
~
: Die Tilde ändert die Gross-/Kleinschreibung des Zeichens unter dem Cursor
-
*
: Wort unter dem Cursor suchen
Einfuegemodus
-
STRG-P
: Es wird versucht, das angefangene Wort zu vervollständigen, vim sucht
dabei Rückwärts im Text nach dem nächsten Wort mit dem gleichen Anfang
-
STRG-N
: Vervollständigung des angefangenen Wortes, Suche vorwärts
Completions
-
STRG-X STRG-F
: angefangenes Wort zu Filename ergänzen (:help compl-filename
)
Bei mehreren passenden Dateien weiter STRG-F
drücken, bis man die passende hat.
Vim als Mutteditor
Filetypefile mutt
In der
~/.vim/filetype.vim
folgende Zeilen ergänzen:
if has("autocmd")
autocmd BufRead *tmp/mutt* source ~/.vim/ftplugin/mail.vim
endif
--> jetzt kann man in der Datei
~/.vim/ftplugin/mail.vim
eigene Abkürzungen,
Tastenbelegungen, Settings, ... hinterlegen.
Signatur beim Reply entfernen
In die oben erwähnte Datei
~/.vim/ftplugin/mail.vim
folgenden Eintrag machen:
normal :g/^> -- $/,/^$/-1d^M
Das
^M
per
STRG-V + STRG-M
oder per
STRG-V ENTER
eingeben.
TODO: Dass gibt noch eine Fehlermeldung, wenn die E-Mail keine Signatur enthällt
(oder dies
falsch getrennt ist (Signaturtrenner ist
<minus><minus><space><zeilenende>)).