Die Vim-Liebhaber-Seite

Gemacht:   Die Okt 21 13:00:00 CEST 1997
Letztes  Update: Die Okt 21 13:30:00 CEST 1997

Der beste vi-Editor aller Zeiten: vim 5.0 !

Wer sich *nicht* mit dem vim auseinandersetzt, sollte ihn auf keinen Fall benutzten, weil er groesser als andere vis ist. Fuer solche Faelles sollte dann elvis 1.0 oder xvi benutzt werden.
Elvis 1.0 ist wohl der kleinste vi-clone, der vorhanden ist. ES gab Zeiten, da habe ich zwischen verschiedenen VI -Editoren hin - und hergewechselt.
Diese Zeiten sind nun bis auf wenige Situationen, wo ich elvis2 benutze (hex-modus, html-modus, man-modus) , nicht mehr vorhanden. vim schlaegt alle anderen Vi-Clones und das mit riesigem Abstand.
Vim hat unheimlich viele Verbesserungen gegenueber dem vi. ( Der Vim ist ein Super-vi, nicht ein normaler Vi-clone!!!! )
Dazu gehoeren unter anderem:
1. multiple undos voreingestellt. Jedes undo loescht eine neue Editierung. Zurueck geht es auch wieder mit Control-R. Jetzt macht suspend erst richtig Spass!
2. riesige Dateien koennen editiert werden!
3. ein Aktions-Recorder, mit dem man Kommandos aufnehmen kann.
4. Perl-Modus einkompilierbar.
5. sehr ausgefeilter highlighting-modus fuer viele Sprachen. Hier laesst sich detailiert einstellen, welche Farben man wo will. Auch das normale Schwarz-Weiss-Verhalten ist problemlos moeglich.
6. auto-Kommandos, d.h Aktionen, die bei bestimmten Dateien beim Lesen oder Schreiben vorher oder nachher ausgefuehrt werden koennen.
z.B: au BufRead *.c,*.h 1;/^{ : Hier wird bei der 1.Funktion (1;/^{) beim Einlesen des Buffers eines C-Files der Cursor gestartet.
z.B.: das automatische dekomprimieren von Dateien und abschliessendes Wiederkomprimieren. und 1000 andere Moeglichkeiten.
: h[elp] au[tocmd] gibt mehr Infos!
7. Vim ergaenzt eigene Kommando-Anfaenge im Ex-modus durch die TAB- Taste.
8. einen grossen Hilfe-Modus. (Alle nicht-vi-Kommandos sind gekennzeichnet.)
9. xwindows-Version (Motif/Athena -Version).
10. 'ga' Befehl zeigt den Ascii-Wert , Hex- und Octal-Wert von dem unter dem Cursor befindlichen Text
11. 'gd' springt an den Anfang von lokal deklarierten
Variablen. (sehr nuetzlich, wenn man nach dem Initialwert und dem Typen sucht. Mit 'control-o' gelangt man wieder zurueck dahin, von wo man gesprungen ist. gD springt an den Anfang von globlal deklarierten Variablen
12. vim hat einen sogenannten Quick-fix mode fuer den Kompilier- Edit-Prozess:
Zitat: "Vim has a special mode to speedup the edit-compile-edit cycle." "The idea is to save the error messages from the compiler in a file and use Vim to jump to the errors one by one. You can then examine each problem and fix it, without having to remember all the error messages." 13. vim hat einen select-modus v. Hiermit kann Text ausgewaehlt werden. Zusaetzlich kann mit a danach wordweise ausgewaehlt werden.
14. in vim koennen ausser dem control und insert-mode auch separat der Doppelpunk-modus (ex-modus) mit Tastatur-Belegungen versehen werden. Ebenso ist auch der visual Modus v belegbar. versehbar.
15. vim hat eine Jump-Liste. Man kann sehen, wo der Cursor gestanden hat mit :ju und mit control-o und control-i kann man dann bequem hin-und herspringen. Ebenso existiert eine :map -Liste und eine Register-Liste.
16. vim erlaubt es, durch [I alle Vorkommen eines Wortes zu zeigen, wenn man auf dem Wort ist, sonst [i fuer das erste Vorkommen. siehe :h [I und andere solche Features. ( alle Vorkommen faengt bei den header-files an!!!!!!!!!! Geht also auch in zum Programm gelinkte Teile.
17. Mit 3 K kann man die unter dem Cursor befindlichen Worte in man 3 nachschlagen. Dazu kann mit `set keywordprg=man' definiert werden,dass man immer dann aufgerufen werden soll.
18. vim5 laesst das Pipen von Text zu. `cat * | vim -' geht.( So eine Funktion hat der vile schon seit 3 Jahren.) Anwendungsmoeglichkeiten: statt less verwendbar, praktisch, weil er viele, viele Features hat, die praktisch sein koennen. Ich verwende vim sogar, um groessere Emails zu lesen, indem ich von elm aus eine Pipe mache.
Allerdings ist der nvi , was das betrifft ed-maessiger: `echo "1,4p" | nvi -e' text klappt hier auch. Finde ich persoenlich nicht wichtig.
Und vim ist noch lange nicht am Ende der Entwicklung. 19. vim erlaubt das Ergaenzen von Worten mittels control-n. vim fuehrt jetzt durch erneutes Druecken von control-n jeweils die naechste Ergaenzung auf.
Mit control-p kann man wieder zurueck zur vorigen Ergaenzung gelangen. Somit werden bequem ausfuehrliche Variablennamen moeglich, was anderen das Lesen von Source-code erheblich erleichtern kann.
Ebenso lassen sich Wortanfaenge als Dateien ergaenzen mittels Control-xf.
20. vim hat eine :ex -history, eine Search-history. Also kann man wunderbar alte Kommandos verbessern.
21. vim kann man entweder als x-windows-gui-version oder als Text-Version normal kompilieren.
22. vim kennt Variablen und kann rechnen.
23. vim kennt einen Sleep-Befehl und pausiert dann x Sek.


Es ist einfach voellig unmoeglich, alle Befehle aufzufuehren. Fazit: vim wird zur kleinen Konkurrenz von Emacs. Wenn man den vim benutzten will, sollte man auf jeden Fall den REFERENCE-guide *lesen*. Sonst lernt man diese tollen Moeglichkeiten niemals kennen.
Allerdings kann der Emacs wohl auf absehbare Zeit immer noch mehr :) (Aber auch oft ueber Klammer-griffe. Da ist der Vim bequemer.)
Vorsicht:
VIM MACHT SUECHTIG!
Wer einmal mit ihm anfaengt, benutzt viele andere VIs -wenn ueberhaupt noch- leicht mit Features, die normale VIs nicht haben und auch sehr wahrscheinlich nicht haben werden.
(der vim Ref-guide fuehrt 317 mal allein "not in Vi" auf) So sollte man, um den Standard-VI kennenzulernen, lieber einen ganz kleinen VI nehmen wie elvis1. Aber der vim ist auch als vim -v aufrufbar und verhaelt sich dann kompatibel oder laesst sich sogar als kompatibler vi kompilieren. Der groesste Charm des Standard -vi ist wahrscheinlich seine Groesse. Die vielen Unannehmlichkeiten, die er aufweist, sind ja vielleicht auch nicht wichtig, aber der vim ist vielfach einfach logischer, viel bequemer und viele wollen normalerweise nichts anderes mehr. Wichtigstes Feature bleibt fuer mich multiple undo, aber auch viele andere Features benutzte ich immerzu. (Natuerlich ist dieser Text mit dem vim geschrieben. )
Copyright © 1997: Wuehlmaus FunProductions