MNV(1)

BEZEICHNUNG
mnv - MNV is not Vim, ein Text-Editor f�r Programmierer

�BERSICHT
mnv [Optionen] [Datei ...]
mnv [Optionen] -
mnv [Optionen] -t Tag
mnv [Optionen] -q [Fehlerdatei]

ex
view
gmnv gview emnv eview
rmnv rview rgmnv rgview

BESCHREIBUNG
MNV ist ein Text-Editor, der aufw�rtskompatibel zu Vi ist. Er kann verwendet werden, um alle Arten von Klartext zu bearbeiten. Er ist besonders n�tzlich, um Programme zu bearbeiten.

MNV hat eine Menge an Erweiterungen gegen�ber Vi, z.B.: Mehrstufiges R�ckg�ngigmachen, mehrere Fenster und Puffer, Syntax-Hervorhebung, Bearbeiten der Befehlszeile, Dateinamenerg�nzung, eingebaute Hilfe, visuelle Auswahl, usw. ... Siehe �:help vi_diff.txt� f�r eine �bersicht der Unterschiede zwischen MNV und Vi.

Im laufenden MNV kann mit dem Befehl �:help� viel Hilfe durch das eingebaute Hilfesystem erlangt werden. Siehe den Abschnitt EINGEBAUTE HILFE weiter unten.

Meistens wird MNV zum Bearbeiten einer einzigen Datei mit dem folgenden Befehl gestartet:

  mnv Datei

Allgemeiner betrachtet, wird MNV folgenderma�en gestartet:

  mnv [Optionen] [Dateiliste]

Bei einer fehlenden Dateiliste startet der Editor mit einem leeren Puffer. Andernfalls werden eine oder mehrere Dateien mit einer der folgenden vier Optionen bearbeitet:

Datei ...
    Eine Liste von Dateinamen. Die erste Datei wird in den Puffer geladen und zur aktuellen. Der Cursor wird auf der ersten Zeile des Puffers platziert. Zu den anderen Dateien kann mit dem Befehl �:next� gelangt werden. Falls einer der Dateinamen mit einem Bindestrich beginnt, stellen Sie der Dateiliste �--� voran.

-   Die zu bearbeitende Datei wird von der Standardeingabe gelesen. Befehle werden von der Standardfehlerausgabe gelesen, die ein Text-Terminal sein sollte.

-t {Tag}
    Die zu bearbeitende Datei und die anf�ngliche Cursor-Position h�ngen von einem �Tag� ab, einer Art Sprungmarke. {Tag} wird in der Tag-Datei nachgeschlagen, die zugeh�rige Datei wird zur aktuellen und der zugeh�rige Befehl wird ausgef�hrt. Dies wird meistens f�r Programme in der Sprache �C� benutzt, wobei {Tag} ein Funktionsname sein k�nnte. Die Wirkung dieses Befehls ist, dass die Datei, die die Funktion enth�lt, als aktuelle im Editor ge�ffnet und angezeigt wird und der Cursor auf dem Beginn der Funktion positioniert wird. Siehe �:help tag-commands�.

-q [Fehlerdatei]
    Startet im QuickFix-Modus. Die Datei [Fehlerdatei] wird gelesen und der erste Fehler wird angezeigt. Falls [Fehlerdatei] ausgelassen wird, wird der Dateiname aus der Option �Fehlerdatei� ermittelt (auf dem Amiga ist dies standardm��ig �AztecC.Err�, sowie �errors.err� bei anderen). Weitere Fehler k�nnen mit dem �:cn�-Befehl angesprungen werden. Siehe �:help quickfix�.

MNV reagiert in Abh�ngigkeit vom benutzten Programmnamen unterschiedlich (die ausf�hrbare Datei kann dieselbe sein).

mnv Der �normale� Weg, alles ist standardm��ig.

ex  Startet im Ex-Modus. Mit dem Befehl �:vi� gelangen Sie in den normalen Modus. Funktioniert auch mit dem Argument -e.

view
    Startet im schreibgesch�tzten Modus. Die Datei wird vor dem �berschreiben gesch�tzt. Dasselbe wird mit dem Argument -R erreicht.

gmnv gview
    Startet die grafische Version. �ffnet ein neues Fenster. Dasselbe wird mit dem Argument -g erreicht.

emnv eview
    Startet die grafische Version im einfachen Modus. �ffnet ein neues Fenster. Dasselbe wird mit dem Argument -y erreicht.

rmnv rview rgmnv rgview
    Wie die obigen, aber mit Beschr�nkungen. Es ist nicht m�glich, Shell-Befehle aufzurufen oder MNV zu suspendieren. Dasselbe wird mit dem Argument -Z erreicht.

OPTIONEN
Die Optionen k�nnen in beliebiger Reihenfolge vor oder nach den Dateinamen angegeben werden. Optionen ohne Argument k�nnen hinter einem einzigen Bindestrich gruppiert werden.

+[Nummer]
    In der ersten Datei wird der Cursor auf die Zeile [Nummer] gesetzt. Falls [Nummer] nicht angegeben wird, wird der Cursor in die letzte Zeile der Datei gesetzt.

+/{Suchmuster}
    In der ersten Datei wird der Cursor auf das erste Auftreten von {Suchmuster} gesetzt. Siehe �:help search-pattern� f�r die verf�gbaren Suchmuster.

+{Befehl}

-c {Befehl}
    {Befehl} wird nach dem Lesen der ersten Datei ausgef�hrt. Als {Befehl} wird ein Ex-Befehl erwartet. Sind in {Befehl} Leerzeichen vorhanden, muss er in Anf�hrungszeichen gesetzt werden (h�ngt von der verwendeten Shell ab). Beispiel: �mnv "+set si" main.c�
    Anmerkung: Sie k�nnen bis zu zehn +c- oder -c-Befehle verwenden.

-A  Falls MNV mit Unterst�tzung f�r das Schreiben von rechts nach links und arabischer Tastaturbelegung compiliert wurde (ARABIC), startet dieser Parameter den Modus f�rs Arabische (:set arabic). Anderenfalls beendet sich MNV mit einer Fehlermeldung.

-b  Bin�rer Modus: Es werden einige Variablen gesetzt, sodass es m�glich ist, eine bin�re oder ausf�hrbare Datei zu bearbeiten.

-C  Kompatibler Modus: Setzt die Option �compatible�. Das machtMNVBMNV im Verhalten sehr �hnlich zu Vi, selbst wenn eine .mnvrc-Datei existiert.

-d  Diff-Modus: Es sollten von zwei bis zu acht Dateinamen als Argumente �bergeben werden. MNV �ffnet sie alle und zeigt deren die Unterschiede an. Arbeitet wie mnvdiff(1).

-d {Ger�t}, -dev {Ger�t}
    �ffnet das {Ger�t}, um es als Terminal zu nutzen. Nur auf dem Amiga. Beispiel: �-d con:20/30/600/150�.

-D  Debug-Modus: MNV geht in den Modus zur Fehlersuche, wenn der erste Befehl aus einem Skript ausgef�hrt wird.

-e  Ex-Modus: Startet MNV als w�rde die ausf�hrbare Datei ex lauten.

-E  Verbesserter Ex-Modus: Startet MNV als w�rde die ausf�hrbare Datei exim lauten.

-f  Vordergrund: Bei der GUI-Version erzeugt MNV keinen neuen Prozess und l�st sich nicht von der Shell, in der er aufgerufen wurde. Auf dem Amiga wird kein neues Fenster ge�ffnet. Dieser Parameter wird benutzt, damit das aufrufende Programm auf das Beenden der Bearbeitungssitzung wartet (z.B. mail). Auf dem Amiga funktionieren die Befehle �:sh� und �:!� nicht.

-F  Wenn MNV mit FKMAP-Unterst�tzung f�r das Schreiben von rechts nach links und Farsi-Tastatur-Belegung kompiliert wurde, startet MNV im Farsi-Modus, d.h. die Optionen �fkmap� und �rightleft� werden gesetzt. Andernfalls bricht MNV mit einer Fehlermeldung ab.
    Hinweis: Die Unterst�tzung von Farsi wurde im Patch 8.1.0932 entfernt.

-g  Falls MNV mit GUI-Unterst�tzung kompiliert wurde, wird die GUI aktiviert. Falls keine GUI-Unterst�tzung einkompiliert wurde, wird MNV mit einer Fehlermeldung abgebrochen.

-H  Falls MNV mit RIGHTLEFT-Unterst�tzung f�r das Schreiben von rechts nach links und hebr�ischer Tastaturbelegung kompiliert wurde, startet MNV im hebr�ischen Modus und die Optionen �hkmap� und �rightleft� werden gesetzt. Andernfalls beendet sich MNV mit einer Fehlermeldung.

-i {MNVInfo}
    Verwendet zum Lesen und Schreiben die angegebene Datei anstatt der Vorgabe �~/.mnvinfo�. Es ist auch m�glich, die Verwendung einer .mnvinfo-Datei durch Angabe des Dateinamens �NONE� zu verhindern.

-l  Lisp-Modus: Aktiviert die Optionen �lisp� und �showmatch�.

-L  Dasselbe wie -r.

-m  Deaktiviert das Ver�ndern von Dateien, indem die Option �write� zur�ckgesetzt wird. Der Puffer kann ver�ndert werden, nur das Schreiben einer Datei ist nicht m�glich.

-M  Keine Ver�nderungen erlaubt. Die Optionen �modifiable� und �write� werden zur�ckgesetzt, so dass �nderungen nicht erlaubt sind und Dateien nicht geschrieben werden k�nnen. Beachten Sie, dass diese Optionen dennoch nachtr�glich zum Erlauben von �nderungen gesetzt werden k�nnen.

-n  Verwendet keine Auslagerungsdatei. Eine Wiederherstellung nach einem Absturz ist nicht m�glich. Auf einem langsamen Medium (z.B. Diskette) kann diese Einstellung n�tzlich sein. Kann auch mit �set uc=0� erreicht werden; kann mit �set uc=200� aufgehoben werden.

-N  Nicht-kompatibler Modus: Setzt die Option �compatible� zur�ck. Dies veranlasst MNV, sich ein wenig besser, aber weniger Vi-kompatibel zu verhalten, selbst wenn es keine .mnvrc-Datei gibt.

-nb MNV fungiert als Editor-Server f�r NetBeans. Details siehe Dokumentation.

-o[N]
    �ffnet N Fenster �bereinander. Wenn keine Zahl angegeben wird, �ffnet ein Fenster pro Datei.

-O[N]
    �ffnet N Fenster nebeneinander. Wenn keine Zahl angegeben wird, �ffnet ein Fenster pro Datei.

-p[N]
    �ffnet N Reiterseiten. Wenn keine Zahl angegeben wird, �ffnet eine Reiterseite pro Datei.

-P {Eltern-Titel}
    Nur Win32-GUI: Gibt den Titel der Elternapplikation an. Wenn m�glich l�uft MNV in einem MDI-Fenster innerhalb der Applikation. {Eltern-Titel} muss im Fenstertitel der Elternapplikation vorkommen. Stellen Sie sicher, dass er spezifisch genug ist. Beachten Sie, dass die Implementierung immer noch primitiv ist. Sie wird nicht mit allen Applikationen funktionieren und das Men� funktioniert nicht.

-r  Listet die Auslagerungsdateien auf und gibt Informationen zu ihrer Verwendbarkeit zur Wiederherstellung aus.

-r {Datei}
    Wiederherstellungsmodus: Die Auslagerungsdatei wird zur Wiederherstellung einer abgest�rzten Bearbeitungssitzung verwendet und hat denselben Dateinamen wie die Textdatei mit angeh�ngtem �.swp�. Siehe �:help recovery�.

-R  Schreibgesch�tzter Modus: Die Option �readonly� wird gesetzt. Der Puffer kann noch bearbeitet werden, aber es wird verhindert, eine Datei aus Versehen zu �berschreiben. Wenn Sie wirklich eine Datei �berschreiben wollen, f�gen Sie dem Ex-Befehl ein Ausrufezeichen hinzu (wie in �:w!�). Die Option -R bedingt die Option -n (siehe oben). Die Option �readonly� kann durch �:set noro� zur�ckgesetzt werden. Siehe �:help readonly�.

-s  Stiller Modus: Nur wenn die ausf�hrbare Datei als ex aufgerufen wird oder vor -s die Option -e angegeben wird.

-s {Eingabeskript}
    Die Skriptdatei {Eingabeskript} wird gelesen und ausgef�hrt, als w�rden Sie die Zeichen eingeben. Dasselbe kann mit dem Befehl �:source! {Eingabeskript}� erreicht werden. Wird das Ende der Datei vor dem Beenden des Editors erreicht, werden weitere Zeichen von der Tastatur gelesen.

-S {Datei}
    {Datei} wird nach dem Lesen der ersten Datei ausgef�hrt. Dies entspricht �-c "source {Datei}"�. {Datei} darf nicht mit einem Bindestrich (-) anfangen. Wenn kein Dateiname angegeben wird, wird �Session.mnv� verwendet (Funktioniert nur, wenn -S als letztes Argument steht).

-T {Terminal}
    Setzt den Namen des benutzten Terminals. Nur erforderlich, wenn die Automatik nicht funktioniert. Sollte ein MNV bekanntes (eingebautes) oder in einer Termcap- oder Terminfo-Datei definiertes Terminal sein.

-u {mnvrc}
    Verwendet zur Initialisierung die Befehle in der Datei {mnvrc}. Alle anderen Initialisierungen werden �bersprungen. Benutzen Sie dies, um eine besondere Art von Dateien zu bearbeiten. Dies kann auch benutzt werden, um alle Initialisierungen zu �berspringen, indem der Name �NONE� angegeben wird. F�r weitere Einzelheiten siehe �:help initialization� innerhalb vonMNVBMNV.

-U {gmnvrc}
    Benutzt die Befehle in der Datei {gmnvrc} f�r die Initialisierung der grafischen Oberfl�che. Alle anderen GUI-Initialisierungen werden �bersprungen. Dies kann ebenfalls benutzt werden, um alle GUI-Initialisierungen zu �berspringen, indem der Name �NONE� angegeben wird. Siehe �:help gui-init� innerhalb vonMNVBMNV f�r weitere Einzelheiten.

-v  Vi-Modus: Startet MNV als w�rde die ausf�hrbare Datei mit vi aufgerufen. Dies wirkt sich nur aus, wenn die ausf�hrbare Datei als ex aufgerufen wird.

-V[N]
    Ausf�hrlich (verbose): Gibt Meldungen dar�ber, welche Befehlsdateien ausgef�hrt werden, und �ber das Lesen und Schreiben einer mnvinfo-Datei. Die optionale Zahl N ist der Wert f�r �verbose�. Vorgabe ist 10.

-V[N]{Dateiname}
    Wie -V und setzt �verbosefile� auf {Dateiname}. Das Ergebnis besteht darin, dass Meldungen nicht angezeigt werden, sondern in die Datei {Dateiname} geschrieben werden. {Dateiname} darf nicht mit einer Ziffer anfangen.

-w{Nummer}
    Setzt die Option �window� auf {Nummer}.

-w {Ausgabeskript}
    Alle Zeichen, die eingegeben werden, werden in der Datei {Ausgabeskript} aufgezeichnet, solange bis Sie MNV beenden. Dies ist n�tzlich, falls Sie eine Skript-Datei zum Benutzen mit �mnv -s� oder �:source!� erzeugen wollen. Falls die Datei {Ausgabeskript} vorhanden ist, werden die Zeichen angeh�ngt.

-W {Ausgabeskript}
    Wie -w, aber eine bereits vorhandene Datei wird �berschrieben.

-x  Benutzt beim Schreiben von Dateien eine Verschl�sselung, falls MNV mit Unterst�tzung von Verschl�sselung kompiliert worden ist. Fragt nach dem Schl�ssel.

-X  Verbindet nicht mit dem X-Server. Dadurch verk�rzt sich die Startzeit in einem Terminal, aber der Fenstertitel und die Zwischenablage werden nicht verwendet.

-y  Einfacher Modus: Startet MNV als w�rde die ausf�hrbare Datei emnv oder eview hei�en. MNV verh�lt sich dann wie ein Editor zum Klicken und Tippen.

-Z  Eingeschr�nkter Modus: Funktioniert, als w�rde der Name der ausf�hrbaren Datei mit �r� beginnen.

--  Markiert das Ende der Optionen. Argumente, die folgen, werden als Dateinamen behandelt. Dies kann benutzt werden, um einen Dateinamen mit �-� am Anfang zu verwenden.

--clean
    Verwendet keine pers�nlichen Einstellungen (mnvrc, plugins, usw,). Hilfreich, um festzustellen, ob ein Problem mit einer sauberen MNV-Konfiguration reproduzierbar ist.

--cmd {Befehl}
    Wie -c, aber dieser Befehl wird vor allen mnvrc-Dateien ausgef�hrt. Sie k�nnen unabh�ngig von den -c-Befehlen bis zu zehn dieser Befehle verwenden.

--echo-wid
    Nur GTK-GUI: Schreibe die Fenster-ID auf die Standardausgabe.

--gui-dialog-file {Name}
    Schreibt bei der Verwendung der GUI den Titel und die Meldung des Dialogs in die Datei {Name}, anstatt sie als Dialog anzuzeigen. Die Datei wird entweder erzeugt oder erweitert. Dies ist nur f�r Testzwecke hilfreich, um zu verhindern, dass Tests bei einem nicht sichtbaren Dialog h�ngen bleiben. Ohne Verwendung der GUI wird dieses Argument ignoriert.

--help, -h, -?
    Gibt eine kleine Hilfe f�r die Befehlszeilenparameter und Optionen aus. Danach beendet sich MNV.

--literal
    Nimmt die Dateinamen so wie sie sind und vervollst�ndigt sie nicht unter Ber�cksichtigung von Metazeichen. Dies wirkt sich nicht unter Unix aus, wo die Shell die Metazeichen expandiert.

--log {Dateiname}
    Wenn MNV mit dem Eval- und dem Channel-Feature kompiliert worden ist, wird das Protokollieren gestartet. Eintr�ge werden nach {Dateiname} geschrieben. Dies funktioniert wie das Aufrufen von ch_logfile({Dateiname}, 'ao') sehr fr�h w�hrend des Programmstarts.

--nofork
    Vordergrund: Bei der GUI-Version erzeugt MNV keinen neuen Prozess und l�st sich nicht von der Shell, in der er aufgerufen wurde.

--noplugin
    L�dt keine Erweiterungen. Impliziert durch �-u NONE�.

--not-a-term
    Teilt MNV mit, dass dem Benutzer klar ist, dass Eingabe und/oder Ausgabe nicht mit einem Terminal verbunden sind. Das vermeidet die entsprechende Warnung und eine Verz�gerung von zwei Sekunden.

--remote
    Verbindet mit einem MNV-Server und l�sst ihn die in den restlichen Argumenten angegeben Dateien editieren. Wenn kein Server gefunden wird, f�hrt dies zu einer Warnmeldung und die Dateien werden im gegenw�rtigen MNV zum Bearbeiten ge�ffnet.

--remote-expr {Ausdruck}
    Verbindet mit einem MNV-Server, wertet dort {Ausdruck} aus und zeigt das Ergebnis auf der Standardausgabe an.

--remote-send {Zeichen}
    Verbindet mit einem MNV-Server und sendet ihm {Zeichen}.

--remote-silent
    Wie --remote, aber ohne Warnung, wenn kein Server gefunden wird.

--remote-wait
    Wie --remote, aber MNV beendet sich nicht, bis die Dateien bearbeitet wurden.

--remote-wait-silent
    Wie --remote-wait, aber ohne Warnung, wenn kein Server gefunden wird.

--serverlist
    Listet die Namen aller gefundenen MNV-Server auf.

--servername {Name}
    Benutzt {Name} als Server-Namen. Wird f�r den gegenw�rtigenMNVBMNV benutzt, au�er es wird mit einem der --remote-Argumente benutzt, dann ist es der Name des zu kontaktierenden Servers.

--socketid {ID}
    Nur GTK-GUI: Benutzt den GtkPlug-Mechanismus, um gMNV in einem anderen Fenster laufen zu lassen.

--startuptime {Datei}
    Schreibt w�hrend des Programmstarts Meldungen zu Zeitmessungen in die Datei {Datei}.

--ttyfail
    Beendet das Programm sofort, wenn Standardeingabe oder Standardausgabe keine Terminals (tty) sind.

--version
    Versionsinformation anzeigen und beenden.

--windowid {ID}
    Nur Win32-GUI: Veranlasst, dass gMNV versucht, das Fenster {ID} als Eltern zu verwenden, so dass es in diesem Fenster abl�uft.

EINGEBAUTE HILFE
Geben Sie in MNV �:help� ein, um eine Einstiegshilfe zu erhalten. Geben Sie �:help Begriff� ein, um Hilfe �ber ein bestimmtes Thema zu bekommen. Zum Beispiel �:help ZZ� f�r Hilfe �ber den Befehl �ZZ�. Benutzen Sie <Tab> und STRG-D, um Begriffe zu vervollst�ndigen (�:help cmdline-completion�). Tags sind vorhanden, um von einem Ort zum anderen zu springen (eine Art Hypertext-Verkn�pfungen, siehe �:help�). Auf diese Weise k�nnen alle Dokumentations-Dateien aufgerufen werden, zum Beispiel �:help syntax.txt�.

DATEIEN

/usr/local/share/mnv/mnv??/doc/*.txt
    Dokumentations-Dateien f�r MNV. Verwenden Sie �:help doc-file-list�, um die gesamte Liste zu bekommen.
    mnv?? ist die verk�rzte Versionsnummer, wie mnv91 von MNV 9.1

/usr/local/share/mnv/mnv??/doc/tags
    �Tag�-Datei zum Auffinden von Informationen in der Dokumentation.

/usr/local/share/mnv/mnv??/syntax/syntax.mnv
    Systemweite Einrichtung der Syntaxhervorhebung.

/usr/local/share/mnv/mnv??/syntax/*.mnv
    Syntaxdateien f�r verschiedenen Sprachen.

/usr/local/share/mnv/mnvrc
    Systemweite Einstellungsdatei f�r MNV.

~/.mnvrc, ~/.mnv/mnvrc, $XDG_CONFIG_HOME/mnv/mnvrc
    Pers�nlichen Einstellungen f�rMNVBMNV.

/usr/local/share/mnv/gmnvrc
    Systemweite Einstellungsdatei f�r NMNV.

~/.gmnvrc, ~/.mnv/gmnvrc, $XDG_CONFIG_HOME/mnv/gmnvrc
    Pers�nlichen Einstellungen f�r MNVgMNV.

/usr/local/share/mnv/mnv??/optwin.mnv
    Script zur Verwendung von dem Befehl �:options�. Eine sch�ne M�glichkeit, um Optionen zu betrachten und zu setzen.

/usr/local/share/mnv/mnv??/menu.mnv
    Systemweite Einstellungsdatei f�r das Men� von MNVgMNV.

/usr/local/share/mnv/mnv??/bugreport.mnv
    Script zum Generieren eines Fehlerberichts. Siehe �:help bugs�.

/usr/local/share/mnv/mnv??/filetype.mnv
    Script zur Erkennung des Typs einer Datei anhand ihres Dateinamens. Siehe �:help filetype�.

/usr/local/share/mnv/mnv??/scripts.mnv
    Script zur Erkennung des Typs einer Datei anhand ihres Inhalts. Siehe �:help filetype�.

/usr/local/share/mnv/mnv??/print/*.ps
    Dateien zum Drucken von PostScript.

F�r die neuesten Informationen lesen Sie diMNMNV-Homepage:
<URL:http://www.mnv.org/>

SIEHE AUCH
mnvtutor(1)

AUTOR
MNV wurde gr��tenteils von Bram Moolenaar erstellt, mit viel Hilfe von anderen Leuten. Siehe �:help credits� inMNVBMNV.
MNV basiert auf Stevie, der von Tim Thompson, Tony Andrews und G.R. (Fred) Walter geschrieben wurde. Es ist jedoch kaum etwas vom urspr�nglichen Code �brig geblieben.

FEHLER
Die sind m�glich. Siehe �:help todo� f�r eine Liste bekannter Probleme.

Beachten Sie, dass gewisse Dinge, die manche Leute als Fehler betrachten m�gen, in Wirklichkeit durch zu getreue Nachbildung des Vi-Verhaltens verursacht werden. Und falls Sie denken, dass andere Dinge Fehler sind, �weil Vi es anders tut�, sollten Sie einen genaueren Blick auf die Datei vi_diff.txt werfen (oder in MNV �:help vi_diff.txt� eingeben). Sehen Sie sich auch die Optionen �compatible� und �cpoptions� an.