home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 5 Edit / 05-Edit.zip / medo125g.zip / medo125g / CHANGES.TXT < prev    next >
Text File  |  1999-03-04  |  85KB  |  2,033 lines

  1. ****************************************************************************
  2. *
  3. * MED - Texteditor für Programmierer unter OS/2 und Windows 9x/NT4.0
  4. *
  5. * Copyright (c) 1999 by Matthias Pfersdorff
  6. *
  7. * med@utopia-planitia.de
  8. * www.utopia-planitia.de
  9. *
  10. ****************************************************************************
  11.  
  12.  
  13.  
  14. Liste der Änderungen:
  15.  
  16. ----------------------------------------------------------------------------
  17. VERSION 1.25   4.März 1999
  18. ----------------------------------------------------------------------------
  19.  
  20. NEW: Ein Dokument kann über den Dateiselektor mit Schreibschutz
  21.      geöffnet werden. In diesem Modus kann im Dokument lediglich navigiert
  22.      und selektiert werden. Kommandos, die den Dokumentinhalt verändern, sind
  23.      nicht ausführbar.
  24.      Mit einem Klick auf das "Schreibsymbol" im Statusdisplay
  25.      des Textfensters kann jederzeit zwischen dem Nur-Lesemodus und
  26.      dem normalen Editiermodus umgeschaltet werden. Der Modus ist nur
  27.      für das aktive Dokument gültig.
  28.  
  29. NEW: Wenn ein Dokument auf Dateisystemebene mit einem Schreibschutz
  30.      versehen ist, wird ein entsprechendes Symbol im Statusdisplay
  31.      des Textfensters ausgegeben. Das Dokument kann nicht editiert
  32.      werden.
  33.  
  34. NEW: Über den Kommandozeilenparameter "-r" kann MED in einen globalen
  35.      Nur-Lesemodus versetzt werden, der für alle Dokumente gültig ist und
  36.      nicht abgeschaltet werden kann.
  37.  
  38. NEW: Beim Sichern einer schreibgeschützten Datei wird automatisch die
  39.      Funktion "Sichern als" aufgerufen.
  40.  
  41. FIX: Beim Abwärtsscrollen über den vertikalen Scrollbalken mit fixer
  42.      Cursorposition wurde der Fensterinhalt nach links verschoben.
  43.  
  44. FIX: Problem beim Laden von med.lru, wenn die Umgebungsvariable
  45.      MISTER_ED_PATH nicht gesetzt ist.
  46.  
  47.  
  48. ----------------------------------------------------------------------------
  49. VERSION 1.24   15.Februar 1999
  50. ----------------------------------------------------------------------------
  51.  
  52. NEW: Funktion "Codeblock selektieren" markiert einen Block von einer
  53.      oeffnenden Klammer bis einschliesslich der schliessenden Klammer
  54.      eines Codeblocks. Der Cursor muss dabei auf oder vor der
  55.      oeffnenden Klammer eines Codeblocks stehen. Eine bereits vorhandene
  56.      Blockmarkierung wird erweitert. Klammern in Kommentaren, Zeichenketten
  57.      und Zeichenkonstanten werden ueberlesen.
  58.      (Block / Codeblock selektieren)
  59.  
  60. NEW: ein Dreifachklick mit der linken Maustaste selektiert die aktuelle
  61.      Zeile.
  62.  
  63. NEW: Undo restauriert optional bei Cursorbewegungen nur noch die
  64.      Cursorendpositionen.
  65.      (Optionen / Einstellungen / Editieren / Undo)
  66.  
  67. NEW: Undo restauriert optional Eingaben sequenzweise.
  68.      (Optionen / Einstellungen / Editieren / Undo)
  69.  
  70. NEW: Funktion "Bis Wortanfang löschen" löscht alle Zeichen ab der
  71.      Cursorposition bis zum Anfang eines Wortes.
  72.      (Bearbeiten / Wort / Bis Wortanfang löschen")
  73.  
  74. CHG: Die Zeitstempel-Dateiendung für Backups ist jetzt lesbarer
  75.      und enthält die vollständige Jahresangabe (Jahr 2000!).
  76.  
  77. CHG: die Funktion "Bearbeiten->Wort->Abschneiden" wurde in
  78.      "Bis Wortanfang löschen" umbenannt.
  79.  
  80. CHG: Beim Drucken einer Selektion mit Zeilennummern, werden
  81.      jetzt die tatsaechlichen Zeilennummern ausgegeben.
  82.  
  83. FIX: Laden der Liste der zuletzt geoeffneten Dateien aus dem
  84.      Arbeitsverzeichnis. Das Arbeitsverzeichnis bleibt jetzt
  85.      auch beim Laden einer Datei ueber den Dateiselektor
  86.      unveraendert.
  87.  
  88. FIX: Datei oeffnen ueber Toolausgabefenster.
  89.  
  90.  
  91. ----------------------------------------------------------------------------
  92. VERSION 1.23    1. April 1998
  93. ----------------------------------------------------------------------------
  94.  
  95. NEW: Das Syntax-Highlighting unterstuetzt jetzt zwei Mehrzeilenkommentare
  96.      (z.B. { } und (* *) in PASCAL).
  97.  
  98. CHG: Namensbildung der Backup-Dateien mit Nummerierung fuer das
  99.      FAT-Dateisystem: Die Dateiextension bzw. der Dateinamen werden
  100.      jetzt gegebenenfalls verkuerzt, damit die Backup-Nummer
  101.      angehaengt werden kann.
  102.  
  103.           Beispiele:
  104.           ----------
  105.           test.cpp  -> test.c~1
  106.           12345678  -> 123456~1
  107.  
  108.      Wenn die "Zeitstempelerweiterung" eingestellt ist, wird fuer
  109.      FAT der Modus "Nummerierung" benutzt.
  110.  
  111. FIX: Fehler beim Laden einer Skeleton-Datei, wenn aktueller
  112.      Verzeichnisname einen "." enthaelt.
  113.  
  114. FIX: Neuzeichnen des Fensterinhalts nach dem Anspringen einer
  115.      Sektion ueber das Section-Display.
  116.  
  117. FIX: Probleme beim Kopieren von Einzelzeilen.
  118.  
  119. FIX: Fehler beim Schliessen modifizierter Dateien ueber den Window Monitor.
  120.  
  121.  
  122. ----------------------------------------------------------------------------
  123. VERSION 1.22   5. Januar 1998
  124. ----------------------------------------------------------------------------
  125.  
  126. NEW: Im C++ Section-Browser wird jetzt optional vor dem Namen
  127.      einer Methode der zugehoerige Klassenname angezeigt.
  128.      (s. Option "Klassennamen" im Section-Browser)
  129.  
  130. NEW: die Funktion "Dateien durchsuchen" unterstuetzt jetzt unscharfe Suche,
  131.      bei der eine Mindestaehnlichkeit (in Prozent) zwischen der zu suchenden
  132.      Zeichenkette und den gefundenene Textstellen angegeben werden kann.
  133.      In der Ergebisliste werden die gefundenen Textstellen und deren
  134.      Aehnlichkeit ausgegeben.
  135.      (s. Option "Aehnlichkeit" im Dialog "Suchen->Dateien durchsuchen")
  136.  
  137. NEW: Unterstuetzung des Mac-Zeilenformats
  138.  
  139. NEW: Funktionen zur Konvertierung des Zeilenformats im Menue
  140.      "Bearbeiten->Text->Zeilenformat konvertieren".
  141.      Bisher war eine explizite Konvertierung nur beim Sichern einer Datei
  142.      ueber den Dialog "Sichern als..." moeglich.
  143.  
  144. NEW: In der Statuszeile wird das Zeilenformat (Dos, Unix, Mac) angezeigt.
  145.  
  146. NEW: Makros koennen jetzt auch auf Tasten ohne Modifier-Taste (CTRL, ALT)
  147.      gelegt werden.
  148.  
  149. CHG: Unterstuetzung von Dateien mit inhomogenen Zeilenformat
  150.  
  151. FIX: Beim Sichern mit einem anderen Zeilenformat wird
  152.      das Zeilenformat auch fuer die geladene Datei uebernommen.
  153.  
  154. FIX: die Funktion "Dateien durchsuchen" berechnet jetzt die Zeilennummer auch
  155.      bei inhomogenem Zeilenformat korrekt.
  156.  
  157. FIX: C++ Unterstuetzung des internen Parsers
  158.  
  159. FIX: Das Zeichen '^' ist jetzt auch ueber die Tastenkombination
  160.      [^][SPACE] erreichbar (vorher nur mit [^][^]).
  161.  
  162.  
  163. ----------------------------------------------------------------------------
  164. VERSION 1.21   7.November 1997
  165. ----------------------------------------------------------------------------
  166.  
  167. NEW: Option "Textfensterpositionen restaurieren". Wenn diese Option
  168.      aktiviert ist, werden bei Programmstart die Fensterpositionen der
  169.      zuletzt bearbeiteten Dateien restauriert. Dadurch kann ein eigenes
  170.      Fensterlayout erzeugt werden. Die Textfensterlayout-Optionen
  171.      fuer den Programmstart (ueberlappend, maximiert) werden also durch
  172.      die individuellen Fensterpositionen ersetzt.
  173.      (Notizbuch "Einstellungen->Programmstart")
  174.  
  175. NEW: Option "Neue Tabs in Leerzeichen umwandeln". Wenn diese Option aktviert
  176.      ist, werden beim Erzeugen neuer Tabs anstelle von Hardtabs (ASCII 9)
  177.      die entsprechende Anzahl von Leerzeichen eingefügt.
  178.      (Notizbuch "Einstellungen->Editieren->Tabs").
  179.  
  180. CHG: Option "Selektion beibehalten" wurde aus dem Notizbuch
  181.      "Einstellungen" in das "Block"-Menue verschoben.
  182.  
  183. FIX: interner C++ Parser.
  184.  
  185.  
  186. ----------------------------------------------------------------------------
  187. VERSION 1.20   16.September 1997
  188. ----------------------------------------------------------------------------
  189.  
  190. NEW: Der interne C/C++ Parser wurde vollkommen runderneuert. Dadurch koennen
  191.      jetzt im Section-Browser neben Funktionen optional auch Klassen,
  192.      Typ-Definitionen und Defines angezeigt werden (analog zu "ctags").
  193.      Der Section-Browser verwendet zur Ausgabe die in "med.syn" fuer die
  194.      entsprechenden Keywords definierten Farben.
  195.  
  196.      Der C/C++ Parser erkennt jetzt auch das Ende einer Sektion. Dadurch
  197.      wird ermoeglicht, dass im Section-Display der Name der aktuellen Sektion
  198.      (Typ, Klasse, Funktion) nur dann ausgegeben wird, wenn sich der Cursor
  199.      innerhalb des Sektions-Bereichs befindet.
  200.  
  201.      Ebenso wurde das direkte Anspringen von Sektionen fuer Klassen,
  202.      Typ-Definitionen und Defines erweitert.
  203.  
  204.      Beispiel:
  205.      ---------
  206.  
  207.      Vereinbarung einer symbolischen Konstante und eines Typs in der Datei
  208.      "example.h":
  209.  
  210.            #define MAXLEN   100
  211.  
  212.            typedef struct
  213.            {
  214.             char *line;
  215.             short len;
  216.            }line_t;
  217.  
  218.  
  219.      Verwendung der symbolischen Konstante und des Typs in der Datei
  220.      "example.c":
  221.  
  222.            line_t line;
  223.            ...
  224.            if(line.len < MAXLEN)
  225.            ....
  226.  
  227.      Wenn der Cursor in der Datei "example.c" auf den Typ-Identifier
  228.      "line_t" oder die symbolische Konstante "MAXLEN" gesetzt und dann
  229.      [CTRL-Return] gedrueckt wird, wird die entsprechende Vereinbarung
  230.      zuerst in allen Textpuffern gesucht. Falls MED nicht fuendig wird,
  231.      werden im Verzeichnis der Datei "example.c" alle zur gleichen
  232.      Syntax-Familie gehoerenden Dateien durchsucht (die Syntaxfamilie
  233.      wird in "med.syn" durch die Direktive "files:" bestimmt).
  234.  
  235.      Analog zu Funktionen koennen Praeprozessor-Makros und C++ Klassen
  236.      angesprungen werden.
  237.  
  238.      Hinweis:
  239.      --------
  240.      Fuer C/C++ Dateien koennen nicht mehr reguelaere Ausdruecke zum
  241.      Auffinden von Sektionen definiert werden (Direktiven "sectionRegexp"
  242.      und "sectionBrowserRegexp" in "med.syn")
  243.      Im Section-Browser werden nicht mehr der Funktionstyp und die
  244.      Funktionsparameterliste angezeigt.
  245.  
  246. NEW: Unterstuetzung von Hardtabs (ASCII 9). Wer keine Hardtabs mag,
  247.      kann diese (wie in den frueheren Programmversionen) beim Laden auto-
  248.      matisch in Leerzeichen umwandeln lassen
  249.      (Notizbuch "Einstellungen->Laden->Tabs in Leerzeichen umwandeln").
  250.      Die Option "Beim Sichern->Leerzeichen in Tabs umwandeln" ist jetzt
  251.      obsolet.
  252.  
  253.      Die Tab-Taste fuegt jetzt nicht mehr eine entsprechende Anzahl von
  254.      Leerzeichen, sondern ein Hardtab ein.
  255.  
  256.      Mit der Option "Sichtbare Tabs" im Menue "Optionen" koennen Hardtabs
  257.      sichtbar gemacht werden. Ist die Option aktiviert, werden Hardtabs als
  258.      kleiner vertikaler Strich gefolgt von vertikalen Strichen angezeigt.
  259.      Ansonsten werden Hardtabs als Leerzeichen ausgegeben.
  260.  
  261. NEW: Ein im Dateipfad vorkommender Slash (Unix) wird automatisch in einen
  262.      Backslash umgewandelt.
  263.  
  264. NEW: In das Tool-Ausgabefenster kann jetzt gleichzeitig stdout und stderr
  265.      umgeleitet werden.
  266.  
  267. NEW: Funktion "Neu laden" im Menue "Datei": nach einer Sicherheitsabfrage
  268.      werden alle Aenderungen am aktiven Text verworfen und der Text
  269.      im Originalzustand neu geladen.
  270.  
  271. NEW: Der Dateiselektor unterscheidet jetzt zwischen zwei unabhaengigen
  272.      Pfaden: Dem Pfad unter dem Dateien geladen werden ("Oeffnen"), und
  273.      dem Pfad, unter dem Dateien gesichert werden ("Sichern als").
  274.      Beide Pfade werden in der Konfiguartion gesichert und koennen
  275.      nur innerhalb des Dateiselektors beim Aufruf der entsprechenden
  276.      Funktion geaendert werden.
  277.  
  278. CHG: bei Programmstart wird die Eingabe ueber stdin (Pipe-Operator)
  279.      jetzt als Textzeilen interpretiert. Die Interpretation als
  280.      Dateinamen kann durch die Kommandozeilenoption "-l" erzwungen
  281.      werden.
  282.  
  283. CHG: Die automatische Cursor-Positionierung (z.B. beim Markieren
  284.      eines Wortes) zentriert den Fensterinhalt nur noch dann, wenn
  285.      der Cursor ausserhalb des sichtbaren Bereichs geraten wuerde.
  286.  
  287. CHG: Die Funktionen "Wort loeschen/ab Position loeschen" loeschen
  288.      jetzt auch Gruppen von Wortbegrenzern.
  289.  
  290. CHG: Die Funktion "Dateien duchsuchen" kann jetzt auch nach Dateien
  291.      suchen. Dazu muss das Eingabefeld "Suchen nach" leer bleiben.
  292.      Im Startverzeichnis (optional rekursiv) werden dann alle Dateien
  293.      gesucht, deren Namen zu dem Namensmuster im Eingabefeld "In Dateien"
  294.      passen.
  295.  
  296. CHG: Im Dialog "Drucken formatiert/unformatiert" wird die Option
  297.      "Blockbereich" automatisch aktiviert, falls im aktiven Textpuffer
  298.      ein Block markiert ist.
  299.  
  300. CHG: Der Maximalwert fuer die Option "Ignoriere Tastatureingaben aelter als"
  301.      betraegt jetzt 2000ms.
  302.  
  303. CHG: die Taste [POS1] setzt den Cursor bei einmaligem Druecken auf das erste
  304.      Zeichen der aktuellen Zeile. Nochmaliges Druecken setzt den Cursor in
  305.      die erste Spalte der aktuellen Zeile.
  306.  
  307. FIX: Backup-Funktion brachte eine Fehlermeldung, wenn als
  308.      Backup-Verzeichnis "." und als Anzahl der Backups "1"
  309.      eingestellt wurde.
  310.  
  311. FIX: Undo der Funktion "Zeichen loeschen" im Overwrite-Modus
  312.  
  313. FIX: Text neu formatieren
  314.  
  315. FIX: Tool-Arbeitsverzeichnis
  316.  
  317. FIX: Fehler bei Undo von "Block mit Zeichen fuellen", wenn der Blockstart
  318.      hinter das letzte Zeichen einer Zeile gesetzt wird.
  319.  
  320.  
  321. ----------------------------------------------------------------------------
  322. VERSION 1.19    21. Mai 1997
  323. VERSION 1.18    17. Mai 1997
  324. ----------------------------------------------------------------------------
  325.  
  326. 1.19 FIX: Fehler bei Verwendung von Codepage 437
  327. 1.19 FIX: Zu lange Filter in Dateiselektorpfaden konnten
  328.           den Backup-Pfad ueberschreiben
  329.  
  330.  
  331. Zuerst eine Anmerkungen bezueglich der Windows-Version von MED:
  332.  
  333. Viele OS/2-User haben mir ihre Befuerchtungen mitgeteilt, dass
  334. ich nach Herausgabe der Windows-Version die Weiterentwicklung
  335. unter OS/2 eventuell einstellen koennte. Das Gegenteil ist der
  336. Fall: Durch die Windows-Version wird MED eine noch breitere
  337. Akzeptanz finden und damit meine Motivation zur Weiterentwicklung
  338. foerdern. Wichtiger ist aber ein rein technisches Argument: Beide
  339. Versionen bestehen zu etwa 60% aus dem gleichen Source-Code,
  340. d.h. in vielen Faellen werden Weiterentwicklungen  parallel
  341. verlaufen.
  342. BTW, die Windows-Version ist leider noch nicht fertiggestellt,
  343. ich schaetze den Termin fuer die Herausgabe auf Juli 1997.
  344.  
  345. Doch nun zu etwas voellig anderem...
  346.  
  347.  
  348. NEW: Die Funktion "Dateien durchsuchen" dient primaer zum Suchen einer
  349.      Zeichenkette in Dateien, die *nicht* in den Editor geladen sind.
  350.      Das Suchergebnis wird in einer Liste uebersichtlich farbcodiert
  351.      ausgegeben. Auf diese Weise ist es z.B. moeglich, sich schnell
  352.      einen Ueberblick darueber zu verschaffen, wie oft und wo eine
  353.      C-Funktion innerhalb aller zu einem Projekt gehoerenden Quelldateien
  354.      aufgerufen wird. Die Funktion "Dateien durchsuchen" kann damit als
  355.      Ersatz für den etwas umständlichen "grep"-Kommandozeilenaufruf
  356.      benutzt werden.
  357.  
  358.      Eine Option erlaubt aber auch, die Textpuffer anstatt externer
  359.      Dateien zu durchsuchen. Im Unterschied zur Standard-Suchfunktion
  360.      werden immer alle Textpuffer durchsucht und es wird die oben erwähnte
  361.      Liste mit dem Suchergebnis generiert.
  362.  
  363.      Weitere Optionen/Features:
  364.      --------------------------
  365.  
  366.      - reg. Ausdruecke, Wortsuche, Gross-/Kleinschreibung nicht beachten
  367.  
  368.      - im Suchergebnis nur die Namen der Dateien ausgeben, in denen
  369.        der Suchbegriff gefunden wurde
  370.  
  371.      - Dateien, in denen der Suchbegriff gefunden wurde, automatisch
  372.        laden. Auf Wunsch wird vor dem Laden der Dateien noch einmal
  373.        nachgefragt. Dies ist sinnvoll, weil ein Suchbegriff unter
  374.        Umstaenden in einer grossen Anzahl von Dateien vorkommen kann.
  375.  
  376.      - Unterverzeichnisse in die Suche einbeziehen. Eine Beschraenkung
  377.        auf zu einem Projekt gehoerende Verzeichnisse ist in
  378.        Vorbereitung (Projektverwaltung).
  379.  
  380.      - Liste mit dem Suchergebnis vor einer neuen Suche automatisch
  381.        loeschen bzw. erweitern.
  382.  
  383.      - Suchergebnis sichern
  384.  
  385.      - Bereitstellung von benutzerdefinierten Dateifiltern und
  386.        Pfaden (wie beim Dateiselektor).
  387.  
  388.      - Suchpfad automatische/manuell auf das Verzeichnis setzen,
  389.        von dem aus MED gestartet wurde (nur sinnvoll, wenn MED
  390.        von der Kommandozeile gestartet wird).
  391.  
  392.      - Anzeige der Anzahl der gefundenen Textstellen/Zeilen/Dateien
  393.  
  394.      - Kopieren der aktiven Zeile des Suchergebisses in das
  395.        System-Clipboard ([CTRL+Einf])
  396.  
  397.      - ein Doppelklick auf eine Zeile des Suchergebnisses schaltet
  398.        auf den jeweiligen Textpuffer um und positioniert den
  399.        Cursor an die gefundene Textstelle. Wenn sich die Datei nicht
  400.        im Editor befindet, wird sie automatisch geladen.
  401.  
  402.      - der Font der Ergebnisliste kann mit Drag'n'Drop konfiguriert
  403.        werden.
  404.  
  405.  
  406.      Wichtiger Hinweis:
  407.      ------------------
  408.      Der Dialog "Dateien durchsuchen" kann waehrend einer Editorsitzung
  409.      staendig geoeffnet bleiben und erhaelt einen Eintrag in der
  410.      OS/2 Fensterliste. Ausserdem kann der Dialog in seiner Position und
  411.      *Groesse* veraendert werden, um eine Anpassung des Ausgabebereichs
  412.      fuer das Suchergebnis zu ermoeglichen.
  413.  
  414.      (s. Menue "Suchen->Dateien durchsuchen")
  415.  
  416. NEW: Die aktuelle Sektion wird jetzt in einer Combobox in der
  417.      Symbolleiste angezeigt. Die Dropdown-Liste bietet die
  418.      Sektionsnamen des aktiven Textpuffers zur Auswahl an und
  419.      kann den Aufruf des Section Browsers in vielen Faellen
  420.      ersetzen: Waehlen Sie eine Sektion mit Doppelklick oder [RETURN]
  421.      aus, springt der Cursor zur betreffenden Sektion. Das Eingabefeld
  422.      der Combobox ermoeglicht die inkrementelle Suche nach einem
  423.      Sektionsnamen.
  424.      Die Dropdown-Liste kann nicht nur mit der Maus, sondern auch
  425.      ueber die Tastatur mit [F12] aktiviert werden. Das Tastaturkuerzel
  426.      kann in med.kbd fuer den Funktionsnamen "sectionCombo" geaendert
  427.      werden.
  428.      Die Dropdown-Liste kann ohne Auswahl einer Sektion mit [ESC] oder
  429.      [F12] geschlossen werden.
  430.  
  431.      Die Combobox wird, sofern aktiviert, automatisch in der
  432.      untersten Zeile der Symbolleiste, rechts neben dem letzten
  433.      Button angezeigt. Es werden automatisch soviele Buttons versteckt,
  434.      bis die Combobox eine Mindestbreite erreicht hat. Wenn das
  435.      Hauptfenster verbreitert wird, werden die versteckten
  436.      Buttons wieder sichtbar. Wer sehr viele Buttons in der
  437.      Symbolleiste benoetigt, kann einfach die Hoehe der Symbolleiste
  438.      vergroessern (Notizbuch "Einstellungen->Symbolleiste").
  439.  
  440.      Wenn die Symbolleiste am rechten/linken Rand angezeigt werden
  441.      soll, ist der Einsatz der Combobox natuerlich nicht moeglich.
  442.      In diesem Fall wird die aktuelle Sektion wie fueher in der
  443.      Status-Zeile angezeigt.
  444.  
  445.      Die Combobox kann ueber das Kontextmenu der Symbolleiste, das sich
  446.      ueber einen Klick mit der rechten Maustaste auf eine freie
  447.      Stelle in der Symbolleiste oeffnen laesst, ein-/ausgeschaltet werden
  448.      (Menueeintrag "Section Display").
  449.  
  450.      Der Combobox-Font kann mit Drag&Drop auf eine freie Stelle
  451.      der *Symbolleiste* konfiguriert werden.
  452.  
  453.  
  454. NEW: Dateiname aus Textpuffer uebernehmen und Datei oeffnen: Setzen
  455.      Sie den Cursor in einem Textpuffer auf einen Dateinamen (Position
  456.      innerhalb des Dateinamens spielt keine Rolle) und waehlen Sie den
  457.      Menüeintrag "Datei->Öffnen->Dateiname aus Textpuffer übernehmen".
  458.      Die Datei wird dann automatisch in einen neuen Textpuffer geladen.
  459.      Falls der Dateiname keine bzw. eine relative Pfadangabe enthaelt,
  460.      wird die Datei relativ zum Pfad der aktuellen Datei geladen.
  461.  
  462.      Diese Funktion ist nuetzlich, um schnell z.B. eine Include-Datei
  463.      eines C-Quelltextes zu laden (Systemincludes koennen erst nach
  464.      Implementation der MED-Projektverwaltung geladen werden).
  465.  
  466.      Hinweis:
  467.      --------
  468.      Die Funktion laesst sich auch ueber einen Doppelklick mit der
  469.      linken Maustaste bei gleichzeitig gedrueckten [CTRL+ALT]-Tasten
  470.      erreichen.
  471.      Das Default-Tastaturkuerzel ist [CTRL+KO].
  472.      (s. Menue "Datei->Oeffnen")
  473.  
  474. NEW: Unterstuetzung von Skeleton-Dateien, die beim Oeffnen einer
  475.      noch nicht existierenden oder leeren Datei geladen werden.
  476.      Dadurch kann z.B. auf einfache Weise eine neue Datei mit
  477.      einem Standard-Header versehen werden.
  478.      Die Skeleton-Dateien muessen sich im MED-Konfigurationsverzeichnis
  479.      (Verzeichnis in dem auch med.cfg gespeichert wird) befinden und
  480.      folgender Namenskonvention genuegen:
  481.  
  482.      skeleton.X
  483.  
  484.      wobei X fuer eine beliebige Dateiextension steht. Die Datei-
  485.      extension dient zur Auswahl der Skeleton-Datei.
  486.  
  487.      Beispiele:
  488.      ----------
  489.      skeleton.c     wird beim Oeffnen einer neuen C-Datei geladen
  490.      skeleton.pas   wird beim Oeffnen einer neuen Pascal-Datei geladen
  491.  
  492. NEW: Unterstuetzung der Microsoft Windows kompatiblen Codepage:
  493.  
  494.      - ein Text kann von der OS/2 Default Codepage (gesetzt in
  495.        CONFIG.SYS) in die Windows Codepage umgewandelt
  496.        werden (und umgekehrt).
  497.        (s. Menue "Bearbeiten->Text->Codepage konvertieren")
  498.  
  499.      - es kann die Windows Codepage zur Textausgabe/Editieren
  500.        aktiviert werden.
  501.        (s. Menue "Fenster->Codepage")
  502.  
  503.      Wenn ein unter Windows erstellter Text mit MED editiert werden
  504.      soll, kann entweder der Text in die OS/2 Codepage umgewandelt
  505.      werden, oder es kann die Windows Codepage zur Textausgabe
  506.      aktiviert werden. Die erste Moeglichkeit ist dann sinnvoll,
  507.      wenn der Text nur noch unter OS/2 weiterverwendet wird. Die
  508.      zweite Moeglichkeit ist anzuwenden, wenn der Text weiterhin
  509.      unter Windows verwendet wird.
  510.  
  511.      Welche Codepage aktiv ist, wird in der Statuszeile angezeigt.
  512.  
  513.  
  514. NEW: Option fuer Window-Monitor:
  515.      "Neues Textfenster nach Dateinamen einsortieren"
  516.  
  517.      Ein neues Textfenster kann damit jetzt auf drei verschiedene
  518.      Arten in den Window-Monitor eingetragen werden:
  519.  
  520.      - am Listenende
  521.      - sortiert nach Dateinamen
  522.      - hinter aktivem Textfenstern einsortiert
  523.  
  524.      (s. Notizbuch "Einstellungen->Window-Monitor")
  525.  
  526. NEW: Funktion "Block Kapitalisieren" wandelt die Anfangszeichen
  527.      aller Wort innerhalb eines Blocks in Großschreibung, den Rest
  528.      der Worte in Kleinschreibung um.
  529.      (s. Menue "Block->Konvertieren->Kapitalisieren")
  530.  
  531. NEW: Funktion "Block mit Zeichen fuellen" ueberschreibt einen Block
  532.      mit einem vorher abgefragten Zeichen. Wenn kein Zeichen
  533.      angegeben wird, wird der Block mit Leerzeichen gefuellt.
  534.      (s. Menue "Block->Konvertieren->Mit Zeichen fuellen")
  535.  
  536. NEW: Neue Kommandozeilen-Option: "-m Makroname1[;Makroname2;...]"
  537.      zum automatischen Starten von Makros nach Programmstart.
  538.  
  539.      Beispiel:
  540.      ---------
  541.  
  542.      test.c -m macro1
  543.  
  544.      startet nach dem Laden der Datei "test.c" das Makro mit
  545.      dem Namen "macro1". Es koennen beliebig viele Makronamen getrennt
  546.      durch ein Semikolon angegeben werden. Alle Makros werden unabhaengig
  547.      von der Position des "-m" Schalters in der Befehlszeile immer
  548.      nach dem Laden aller Dateien ausgefuehrt.
  549.  
  550.      Hinweis:
  551.      --------
  552.      Der Name eines Makros kann beim Starten des Makrorecorders oder
  553.      jederzeit im Makro-Manager (Button "Aendern...") festgelegt werden.
  554.  
  555. NEW: Wenn die Bildschirmaufloesung geaendert wurde, werden beim naechsten
  556.      Programmstart automatisch sinnvolle Werte fuer die
  557.      Groesse/Position/Font des Hauptfensters und der veraenderbaren Dialoge
  558.      eingestellt.
  559.  
  560.      Hinweis:
  561.      ========
  562.      Diese Default-Einstellungen lassen sich jederzeit erzwingen, indem
  563.      bei Programmstart [SHIFT+CTRL] gedrueckt wird.
  564.  
  565. NEW: Pfadangaben (benutzerdefinierte Pfade im Dateiselektor,
  566.      Backup-Pfade, Tool-Pfad, Tool-Arbeitsverzeichnis) koennen jetzt
  567.      Environment-Variablen enthalten. Eine Environment-Variable
  568.      wird dabei von %-Zeichen eingeschlossen.
  569.  
  570.      Beispiel:
  571.  
  572.      %TMP%\backups
  573.  
  574. NEW: Im Dateiselektor kann im Dateinameneingabefeld ein Dateifilter
  575.      eingegeben werden, der anschliessend durch Druecken von
  576.      [CTRL + Return] uebernommen wird. Der Filter wird aber *nicht*
  577.      in die Filterliste eingetragen. Dadurch kann die Filterliste
  578.      von nur selten benutzten Filtern frei gehalten werden.
  579.  
  580.      Nach einer Operation, die einen speziellen Filter vorgibt (z.B.
  581.      "Makros laden"), wird der zuletzt benutzte Filter wieder
  582.      restauriert.
  583.  
  584. NEW: Ein Spaltenblock kann jetzt mit den Tasten [SHIFT+ALT+PgUp]
  585.      bzw. [SHIFT+ALT+PgDown] seitenweise markiert werden.
  586.  
  587. NEW: Optional kann der Window Monitor in die OS/2 Taskliste eingetragen
  588.      werden. Ein Fehler, der dazu fuehrte, dass der Window Monitor unter
  589.      Umstaenden erst nach der Aktivierung mit der Maus Tastatureingaben
  590.      entgegennahm, ist beseitigt.
  591.      (s. Notizbuch "Einstellungen", Seite "Window Monitor")
  592.  
  593. NEW: Optional kann das Tool-Ausgabefenster in die OS/2 Taskliste
  594.      eingetragen werden. Diese Option kann fuer jedes Tool getrennt
  595.      eingestellt werden.
  596.      (s. Notizbuch "Toolkonfiguration", Seite "Optionen")
  597.  
  598. NEW: Das Textfenster-Kontextmenue kann jetzt ueber [SHIFT+F10]
  599.      aufgerufen werden.
  600.  
  601. NEW: Option "Cursor Rechts am Zeilenende geht zur naechsten Zeile".
  602.      Diese Option hat Auswirkungen auf das Verhalten des Cursors,
  603.      wenn die Cursor-Taste [Pfeil rechts] gedrueckt wird.
  604.      Wenn diese Option aktiviert ist, springt der Cursor beim Erreichen
  605.      des Zeilenendes an den Anfang der naechsten Zeile. Ansonsten
  606.      kann der Cursor ueber das Zeilenende hinweg weiter bewegt werden.
  607.      (s. Notizbuch "Einstellungen", Seite "Editieren")
  608.  
  609. NEW: Funktion "indent" (Default-Taste [ALT+I]) rueckt einen
  610.      Zeilenabschnitt so ein, dass der Cursor unter dem naechsten
  611.      Nicht-Leerzeichen der darueberliegenden Zeile steht. Falls
  612.      die Laenge der darueberliegende Zeile kleiner als die
  613.      aktuelle Cursor-Position ist, werden die vorhergehenden Zeilen
  614.      zur Bestimmung der Position des ersten Nicht-Leerzeichens
  615.      benutzt, bis die erste sichtbare Zeile im Textfenster erreicht
  616.      ist.
  617.  
  618.      Eine Zeile/Block wird an der aktuellen Cursor-Position
  619.      ein- bzw. ausgerückt.
  620.  
  621.      Beispiel:
  622.      ---------
  623.  
  624.      printf("hello\n");               //   Hello
  625.      for(;;)
  626.        printf("world!\n");// World
  627.                           ^
  628.                           |
  629.                           Cursor-Position vor Indent
  630.  
  631.        .
  632.        .
  633.        printf("world!\n");            // World
  634.                                       ^
  635.                                       |
  636.                                       Cursor-Position nach erstem Indent
  637.  
  638.        .
  639.        .
  640.        printf("world!\n");                 // World
  641.                                            ^
  642.                                            |
  643.                                            Cursor-Position nach zweitem Indent
  644.  
  645.  
  646.      Funktion "unIndent" (Default-Taste [ALT+U]) ist die Umkehrfunktion
  647.      zu "indent".
  648.  
  649.      Funktionen "indentBlk" (Default-Taste [SHIFT+ALT+I]) und
  650.      "unIndentBlk" (Default-Taste [SHIFT+ALT+U]) funktionieren analog
  651.      auf einen Blockbereich.
  652.  
  653.      (s. Menue "Bearbeiten->Zeile->Indent/Unindent" und
  654.       Menue "Block->Indent/Unindent")
  655.  
  656.  
  657. NEW: Fuer den automatischen Zeilenumbruch koennen jetzt eigene
  658.      Wortbegrenzer definiert werden, an denen eine Zeile umgebrochen
  659.      werden darf. In der Defaulteinstellung ist nur das Leerzeichen als
  660.      Wortbegrenzer eingetragen.
  661.      (s. Notizbuch "Einstellungen", Seite "Editieren/Zeilenumbruch")
  662.  
  663. CHG: Die Funktionen "Cursorposition sichern" und "Cursorposition
  664.      restaurieren" wirken jetzt *global* auf alle Textpuffer (vorher
  665.      nur lokal auf einen Textpuffer), d.h. beim Restaurieren der
  666.      Cursorposition wird auf den entsprechenden Textpuffer umgeschaltet.
  667.  
  668. CHG: Bei mehrstufigen Tastaturkommandos (z.B. [CTRL + KB]) wird die
  669.      zweite Taste jetzt auch ohne Modifier-Taste erkannt.
  670.  
  671. CHG: Die Tastenkombinationen [SHIFT+CTRL+Umlaut] und [SHIFT+ALT+Umlaut]
  672.      koennen jetzt mit Funktionen/Makros belegt werden.
  673.  
  674. CHG: Laufwerk-Labels fuer Netz-Laufwerke werden im Dateiselektor
  675.      nicht mehr angezeigt.
  676.  
  677. CHG: MED merkt sich jetzt die zuletzt fuer ein Makro benutzte
  678.      Tastenkombination.
  679.  
  680. CHG: Bessere Fehlermeldungen bei Dateioperationen.
  681.  
  682. CHG: Hoehere Performance bei Blockoperationen (macht sich erst
  683.      bei sehr vielen Zeilen bemerkbar).
  684.  
  685. CHG: "Gehe zu Sektion" sucht jetzt zuerst im aktiven Textpuffer.
  686.  
  687. FIX: "noname"-Dateiname werden jetzt unter keinen Umstaenden mehr
  688.      in das Datei-Menue eingetragen.
  689.  
  690. FIX: Beim Anordnen der Textfenster/Views (Ueberlappend, Nebeneinander, ..)
  691.      wird ein eventuell eingestellter Maximized-Status der Fenster
  692.      aufgehoben.
  693.  
  694. FIX: Der Modified-Status wird jetzt nach dem Sichern einer Datei
  695.      und anschliessendem Undo gegebenenfalls auf "veraendert"
  696.      gesetzt (der Speichervorgang wird nicht rueckgaengig gemacht).
  697.  
  698. FIX: Syntax-Typ Umschaltung
  699.  
  700. FIX: Der Zeilenabstand beim formatierten Drucken wird jetzt korrekt
  701.      berechnet (war vorher zu klein).
  702.  
  703. FIX: Blockmarkierung mit der Maus, wenn Zeilennummerierung eingeschaltet
  704.      ist.
  705.  
  706. FIX: Makro mit Blockmarkierung im Modus "Automatisch Blockmarkierung
  707.      aufheben"
  708.  
  709. FIX: EOL-Kommentare (Syntax-Highlighting) funktionieren nun wieder,
  710.      auch wenn comCol > 0 gesetzt wird. Das Anfangssymbol des
  711.      EOL-Kommentares werden jetzt in der richtigen Farbe dargestellt,
  712.      wenn es in einem normalen Token vorkommt.
  713.  
  714. FIX: Die Hochkommata (`∩) sind jetzt auch ueber die Tastenkombinationen
  715.      [Hochkomma][Leertaste] erreichbar
  716.      (bisher nur ueber [Hochkomma][Hochkomma])
  717.  
  718. FIX: Fehler im Notizbuch "Einstellungen", der beim sequentiellem
  719.      Rueckwaertsblaettern dazu fuehrte, dass nicht immer
  720.      auf die vorhergehende Notizbuchseite gewechselt wurde.
  721.  
  722. FIX: Fehler im Syntax-Highlighting, der unter Umstaenden nach der
  723.      Funktion "Zeile vertauschen" auftreten konnnte.
  724.  
  725. ----------------------------------------------------------------------------
  726. VERSION 1.17   12.Februar 1997
  727. ----------------------------------------------------------------------------
  728.  
  729. NEW: das Syntax Highlighting unterstuetzt jetzt auch die Farbcodierung
  730.      von Integer-Zahlen. Zur Konfiguration sind die unten beschriebenen
  731.      _optionalen_  Direktiven in "med.syn" moeglich. Ohne Konfiguration
  732.      werden nur Dezimalzahlen erkannt und in einer Defaultfarbe
  733.      ausgegeben.
  734.  
  735.      Direktiven:
  736.      ===========
  737.  
  738.      numPostfix: [string]
  739.  
  740.                  Diese Direktive legt ein optionales Postfix fest,
  741.                  das hinter einer Integer-Zahl auftreten kann
  742.                  (aber nicht muss).
  743.                  Die Gross-/Kleinschreibung des Parameters "[string]"
  744.                  wird nicht beachtet.
  745.  
  746.                  Beispiel fuer C/C++:
  747.                  --------------------
  748.  
  749.                  numPostfix: L
  750.  
  751.  
  752.      color: ....
  753.      decPrefix:  [string]
  754.  
  755.      color: ....
  756.      hexPrefix:  [string]
  757.  
  758.      color: ....
  759.      octPrefix:  [string]
  760.  
  761.      color: ....
  762.      binPrefix:  [string]
  763.  
  764.                  Diese Direktiven legen optionale Prefixe und die
  765.                  Farbcodierung fuer Dezimal-/Hexadezimal-/Oktal-
  766.                  und Binaer-Zahlen fest.
  767.                  Wenn keine Prefixe festgelegt werden, koennen nur
  768.                  Dezimalzahlen erkannt werden.
  769.  
  770.                  Ueblicherweise muss fuer Dezimalzahlen kein Prefix
  771.                  angegeben werden. Zur Festlegung der Farbe, die
  772.                  zur Ausgabe von Dezimalzahlen verwendet werden soll,
  773.                  kann die Direktive "decPrefix:" ohne Parameter
  774.                  mit einer vorangestellten "color:"-Direktive
  775.                  verwendet werden.
  776.  
  777.                  Beispiel:
  778.                  ---------
  779.  
  780.                  color:  myDarkYellow, normal, myDarkYellow, normal
  781.                  decPrefix:
  782.  
  783.                  HINWEIS:
  784.                  --------
  785.                  Das erste Zeichen eines Prefix darf nicht in der
  786.                  Symbolliste enthalten sein!
  787.  
  788.  
  789. NEW: das Syntax Highlighting unterstuetzt jetzt zwei "end-of-line"
  790.      Kommentare, wobei jedem Kommentar eine eigene Startspalte
  791.      zugeordnet werden kann.
  792.  
  793.      Beispieleintrage in "med.syn" fuer FORTRAN:
  794.      -------------------------------------------
  795.  
  796.      eolCom: !
  797.      comCol: 0
  798.  
  799.      eolCom: C
  800.      comCol: 1
  801.  
  802.  
  803.      Diese Anweisungen definieren "!" und "C" als EOL-Kommentarzeichen,
  804.      wobei das "!" an einer beliebigen Spalte stehen darf. Das "C" wird
  805.      nur dann als Kommentarzeichen erkannt, wenn es in der ersten Spalte
  806.      steht.
  807.  
  808. NEW: Syntax-Highlighing fuer FORTRAN. Verbesserte Java-Unterstuetzung
  809.      (Section Browser/Display).
  810.  
  811. NEW: Das Submenue "Syntax Typ" im Dateimenue erlaubt das temporaere
  812.      Umdefinieren des Dateityps fuer das Syntax-Highlighting im
  813.      aktiven Textfenster.
  814.  
  815. NEW: Funktion "splitLine" fuegt einen Zeilenumbruch ein, laesst aber im
  816.      Gegensatz zur [Return]-Taste die Cursorposition unveraendert. Die
  817.      Default-Tastenkombination ist [SHIFT+Return].
  818.  
  819. NEW: Funktion "Alle schliessen" zum Schliessen aller geoeffneten
  820.      Dateien ohne MED zu verlassen.
  821.      (s. Menue "Datei")
  822.  
  823. NEW: Option "Beim horizontalen Scrollen Cursor zentrieren".
  824.      Wenn diese Option *nicht* aktiviert ist, wird der Fensterinhalt
  825.      horizontal zeichenweise gescrollt, wenn der Cursor den rechten
  826.      oder linken Fensterrand erreicht hat. Ist die Option aktiviert,
  827.      wird der Fensterinhalt um die Haelfte der Fensterbreite nach
  828.      links bzw. rechts versetzt, und damit der Cursor horizontal
  829.      zentriert.
  830.      (s. Notizbuch "Einstellungen", Seite "Editieren")
  831.  
  832. NEW: Button "Alle ersetzen" im "Ersetzen->Nachfrage"-Dialog. Wenn
  833.      dieser Button angeklickt wird, werden ab der aktuellen
  834.      Cursorposition alle passenden Textstellen ersetzt.
  835.  
  836. NEW: ein Doppelklick mit der linken Maustaste in den freien Bereich
  837.      eines Textfensters loescht eine Blockmarkierung.
  838.  
  839. CHG: Vor dem Sichern der Konfiguration von Hand ("Sofort sichern..."
  840.      im Notizbuch "Einstellungen") erscheint jetzt eine Sicherheits-
  841.      abfrage.
  842.  
  843. CHG: Die Tastenkombination [ALT+F4] beendet MED. [CTRL+F4] schliesst
  844.      das aktive Textfenster.
  845.  
  846. CHG: schnellerer Bildaufbau, wenn nur ein Teil eines Textfensters neu
  847.      gezeichnet werden muss.
  848.  
  849. CHG: Verbesserung der Performance beim formatierten Drucken.
  850.  
  851. FIX: Das Anspringen einer Sektion funktioniert jetzt wieder, auch wenn
  852.      sich die gesuchte Sektion in einem Textpuffer befindet, das betreffende
  853.      Textfenster aber noch nicht aktiviert worden ist (Fehler ist nur
  854.      bei "nicht C/C++" Dateien aufgetreten).
  855.  
  856. FIX: Fehler beim Oeffnen einer von einer anderen Anwendung gesperrten
  857.      Datei behoben.
  858.  
  859. FIX: die Zeilennummerierung funktioniert jetzt auch beim Scrollen ueber
  860.      die Pfeilbuttons des vertikalen Scrollbalkens korrekt (Fehler trat
  861.      nur auf, wenn die Option "Scrollbalken veraendert Cursorposition"
  862.      nicht aktiviert war).
  863.  
  864. FIX: Dateiselektor Laufwerkauswahl
  865.  
  866. FIX: Marken werden jetzt beim Splitten einer Zeile nicht mehr in die
  867.      neue Zeile uebernommen.
  868.  
  869. FIX: ein relativer Pfad ist als Tool-Arbeitsverzeichnis jetzt moeglich.
  870.  
  871.      Wenn ein Tool in seiner Ausgabe einen Dateinamen ohne Pfad bzw.
  872.      mit relativen Pfad angibt, vergleicht MED zuerst die Dateinamen
  873.      (ohne Pfad) der Textpuffer mit dem vom Tool gelieferten Dateinamen.
  874.      Falls eine Uebereinstimmung der Dateinamen gefunden wird, wird der
  875.      betreffende Textpuffer aktiviert. Wenn keine Uebereinstimmung
  876.      gefunden werden kann, wird der vom Tool gelieferte Dateinamen bzw.
  877.      relative Pfad mit dem Tool-Arbeitsverzeichnis kombiniert und die
  878.      Datei geladen (falls vorhanden). Wenn kein Tool-Arbeitsverzeichnis
  879.      definiert ist, wird stattdessen der Pfad verwendet, von dem aus
  880.      MED gestartet wurde.
  881.  
  882.  
  883. ----------------------------------------------------------------------------
  884. VERSION 1.16     23.Dezember 1996
  885. ----------------------------------------------------------------------------
  886.  
  887. NEW: DDE (Dynamic Data Exchange). Es werden folgende "EPM-kompatible"
  888.      Kommandos unterstuetzt:
  889.  
  890.      Kommando |  Parameter
  891.      ---------+----------------------------------------
  892.      EDIT     |  dateiname1 [dateiname2]...[dateinameN]
  893.      GOTO     |  zeile [spalte]
  894.      SAYERROR |  fehlermeldung
  895.  
  896.      MED kann als DDE-Server unter dem Default-Namen "MRED"
  897.      unter dem DDE-Topic "EDIT" von einem Client (z.B. Workframe)
  898.      angesprochen werden.
  899.  
  900.      Falls sich ein Client bezueglich des anzusprechenden
  901.      DDE-Servernames nicht konfigurieren laesst, kann der Servername
  902.      in MED angepasst werden. Zur vollstaendigen DDE-Kompatiblitaet
  903.      zu EPM, sollte der Servername "EPM" eingestellt werden.
  904.      (s. Notizbuch "Einstellungen", Seite "DDE")
  905.  
  906. NEW: Option fuer den Window-Monitor
  907.      "Neues Fenster hinter aktivem Fenster einsortieren".
  908.      Wenn diese Option aktiviert ist, wird der Name eines neuen
  909.      Textfensters *nicht* am Ende der Liste, sondern hinter dem Namen
  910.      des gerade aktiven Textfensters einsortiert.
  911.      (s. Notizbuch "Einstellungen", Seite "Window Monitor")
  912.  
  913. NEW: Syntax Highlighting fuer 80x86 Assembler und Clipper
  914.      (s. Syntax-Konfigurationsdatei "med.syn")
  915.  
  916. NEW: der automatische Zeilenumbruch kann optional in der Syntax-
  917.      Konfigurationsdatei "med.syn" getrennt fuer jeden Dateityp
  918.      angepasst werden.
  919.  
  920.      Dazu dienen Eintraege mit folgendem Syntax:
  921.  
  922.      wordWrap: current [col] | on [col] | off | disabled
  923.  
  924.      "current [col]" uebernimmt den aktuellen Arbeitsstatus der
  925.      Zeilenumbruchsfunktion und setzt optional die Umbruchspalte auf
  926.      die Spalte [col].
  927.  
  928.      "on [col]" schaltet den Zeilenumbruch ein und setzt optional die
  929.      Umbruchspalte auf die Spalte [col].
  930.  
  931.      "off" schaltet den Zeilenumruch aus.
  932.  
  933.      "disabled" deaktiviert den Zeilenumbruch vollstaendig, so dass ein
  934.      versehentliches Einschalten nicht moeglich ist.
  935.  
  936.      (s. Syntax-Konfigurationsdatei "med.syn")
  937.  
  938.  
  939. NEW: ein Mausklick auf das Anzeigefeld fuer den aktuellen ASCII
  940.      Code schaltet zwischen Dezimal-/Hexadezimalmodus um.
  941.  
  942.      Ein Mausklick auf das Anzeigefeld fuer die aktuelle Cursosposition
  943.      ruft den Dialog "Gehe zu Zeile" auf.
  944.  
  945. NEW: neben den Lesenzeichen koennen fuenf globale Marken gesetzt
  946.      werden. Die Default-Tastaturkuerzel sind [ALT+1] ... [ALT+5]
  947.      zum Setzen einer Marke und [CNTRL+1] ... [CNTRL+5] fuer das
  948.      Anspringen einer Marke.
  949.      (s. Menue "Suchen->Marke")
  950.  
  951. CHG: schnellerer Fensteraufbau bei Programmstart, wenn mehrere Dateien
  952.      geladen werden (dazu muss die Option "Textfenster maximieren" im
  953.      Notizbuch "Einstellungen->Programmstart" aktiviert werden).
  954.  
  955. CHG: waehrend das Hauptfenster mit einem Mausklick auf die Statuszeile
  956.      aktiviert wird, sind die Statusfelder insensitiv, d.h. es kann
  957.      nicht mehr z.B. der Schreibmodus unbeabsichtigt umgeschaltet
  958.      werden.
  959.  
  960. FIX: das Festlegen der Zeilen-/Spaltenposition ueber die Kommandozeile
  961.      funktioniert jetzt, auch wenn die Datei schon geladen ist.
  962.  
  963. FIX: Clipboard-Zeilen, die nur ein Linefeed als Zeilenendekennung haben,
  964.      werden jetzt wieder korrekt behandelt.
  965.  
  966. FIX: unter besonderen Umstaenden auftretendes fehlerhaftes Verhalten des
  967.      Syntax-Highlighting bei unausgeglichener Anzahl von
  968.      oeffnenden/schliessenden Kommentar-Token.
  969.  
  970. FIX: Popup-Menue fuer Online-Hilfe
  971.  
  972. FIX: Im Dateiselektor werden die Laufwerke jetzt korrekt angezeigt, auch
  973.      wenn es "Loecher" in den Laufwerksbuchstaben gibt.
  974.  
  975. FIX: wenn die Option "Window Monitor->Geöffnet halten" nicht aktiviert ist,
  976.      wird der Window Monitor beim Auswaehlen eines Eintrags nun wieder
  977.      automatisch geschlossen.
  978.  
  979. FIX: nach "Syntaxkonfiguration neu laden" werden Aenderungen an den
  980.      regulaeren Ausdruecken zum Auffinden von Sektionen sofort sichtbar.
  981.  
  982. FIX: F1 ruft die Online-Hilfe jetzt auch wieder in Dialogen auf.
  983.  
  984.  
  985. ----------------------------------------------------------------------------
  986. VERSION 1.15    11.November 1996
  987. ----------------------------------------------------------------------------
  988.  
  989. NEW: optional kann eine Zeilennummerierung mit konfigurierbarer Breite
  990.      eingeschaltet werden.
  991.      Font und Farben der Zeilennummerierung koennen via Drag&Drop
  992.      eingestellt werden.
  993.      (s. Menue "Optionen", "Zeilennummerierung" und
  994.       Notizbuch "Einstellungen", Seite "Fenster - Kontrollelemente")
  995.  
  996. NEW: konfigurierbare Autosave-Funktion (ereignis- und/oder zeitgesteuert)
  997.      (s. Notizbuch "Einstellungen", Seite "Autosave")
  998.  
  999. NEW: "Zurück zur aufrufenden Sektion" ([ALT+Return]) als inverse
  1000.      Funktion zu "Gehe zu Sektion". Die Aufrufhierarchie darf beliebig
  1001.      tief werden. Das Textfenster wird automatisch geschlossen, wenn
  1002.      selbiges zuvor von "Gehe zu Sektion"  geoeffnet wurde.
  1003.      (s. Submenue "Sektion..." im Menue "Suchen")
  1004.  
  1005. NEW: tastaturgesteuertes/automatisches Erzeugen von ASCII-Graphiken bzw.
  1006.      Umrandungen. Es stehen zehn verschiedene Linientypen zur Verfuegung.
  1007.      Die Default-Tastaturbelegung ist
  1008.      [Ctrl+Alt+CurLeft|CurRight|CurDown|CurUp].
  1009.  
  1010.      Ein markierter Spaltenblock kann mit dem ausgewaehlten Linientyp
  1011.      umrandet werden.
  1012.      ╔════════════════════════════════════════════════════════════════╗
  1013.      ║ Falls diese Zeilen nicht von einer Doppellinie umrandet sein   ║
  1014.      ║ sollten, ueberprufen Sie bitte, ob in der CONFIG.SYS der Befehl║
  1015.      ║ "CODEPAGE=437,850" enthalten ist.                              ║
  1016.      ╚════════════════════════════════════════════════════════════════╝
  1017.  
  1018.      (s. Untermenue "Zeichnen" im Menue "Bearbeiten").
  1019.  
  1020. NEW: der Dateiselektor merkt sich die letzten zwanzig Pfade, unter
  1021.      denen eine Datei geladen/gesichert wurde (Pfad-History).
  1022.  
  1023.      Das "Laufwerke"-Menue wurde durch eine Dropdown-Liste ersetzt.
  1024.      Neben den Laufwerksbuchstaben werden die Volume-Labels anzeigt.
  1025.  
  1026. NEW: optional wird in der Fenstertitelzeile neben der Zeilen-/Spaltenposition
  1027.      der ASCII Code des Zeichen ausgegeben, auf dem der Cursor gerade steht.
  1028.      Der Code kann dezimal oder hexadezimal angezeigt werden.
  1029.  
  1030. NEW: der horizontale/vertikale Scrollbalken der Textfenster kann
  1031.      entfernt werden.
  1032.      (s. Notizbuch "Einstellungen", Seite "Fenster")
  1033.  
  1034. NEW: besser erkennbare Kennzeichnung modifizierter Dateien durch eine
  1035.      rote "LED" im Window-Monitor und in der Fenstertitelzeile.
  1036.      Im Window-Monitor werden die Namen von Ansichten eingerückt in blauer
  1037.      Farbe dargestellt.
  1038.  
  1039. NEW: optional kann jedes Tool ueber einen Eintrag im "Tools"-Menue
  1040.      gestartet werden. Als Eintragstext wird der Tool-Titel verwendet.
  1041.      (s. Notizbuch "Toolkonfiguration", Seite "Tastaturkürzel/Symbol")
  1042.  
  1043. NEW: wenn eine Datei mit Backup-Extension (Zeitstempel, Nummerierung)
  1044.      gesichert wird, wird automatisch der Dialog "Sichern als..."
  1045.      aufgerufen.
  1046.  
  1047. NEW: im "Datei"-Menue wird ein Submenue ("Mehr...") angelegt, wenn die
  1048.      File-History mehr als 10 Dateien enthaelt.
  1049.      Die File-History kann jetzt max. 40 Eintraege enthalten.
  1050.      (s. Notizbuch "Einstellungen", Seite "Allgemein")
  1051.  
  1052. NEW: der Tool-Manager kann nun mit den fehlerhaften Pfadausgaben des
  1053.      GNU C++ Compilers (doppelte Backslashes) umgehen.
  1054.  
  1055. NEW: im Dialog "Drucken (formatiert)" wird der aktuell eingestellte
  1056.      Fontname angezeigt.
  1057.  
  1058. NEW: beim formatierten Drucken wird die Nummer der gerade in Druck
  1059.      befindlichen (bzw. an den Spooler geschickten) Seite in der
  1060.      Titelzeile des betreffenden Textfensters angezeigt.
  1061.  
  1062. NEW: das formatierte Drucken kann mit der [ESC] Taste abgebrochen werden.
  1063.  
  1064. NEW: die Anordnung der Textfenster beim Programmstart kann eingestellt
  1065.      werden (ueberlappend, maximiert).
  1066.      (s. Notizbuch "Einstellungen", Seite "Programmstart")
  1067.  
  1068. CHG: die Speicherverwaltung erzeugt jetzt weniger Overhead, was sich
  1069.      in einem erheblich geringeren Speicherbedarf beim gleichzeitigen
  1070.      Bearbeiten vieler Dateien bemerkbar macht.
  1071.  
  1072. CHG: bessere Performance der Block/Clipboard/Zeilenumbruch Funktionen,
  1073.      die jetzt keine externen Auslagerungsdateien mehr benutzen.
  1074.  
  1075. CHG: die maximale Zeilenlaenge wurde von 1000 auf 4094 Zeichen erhoeht.
  1076.  
  1077. CHG: Tastaturkürzel können jetzt die Modifier-Tasten [SHIFT], [CNTRL] und
  1078.      [ALT] in Kombinationen enthalten (ausgenommen [SHIFT+CTRL+ALT]).
  1079.  
  1080. CHG: relative Pfadanteile werden beim Laden einer Datei aufgeloest.
  1081.  
  1082. CHG: Pfade, die zu lang zur Darstellung im "Datei"-Menue sind, werden
  1083.      jetzt so abgekuerzt, dass das Laufwerk und moeglichst viele
  1084.      Pfadanteile ausgegeben werden koennen.
  1085.  
  1086. CHG: die Eingabe des Dialogs "Zusaetzliche Tool Parameter" wird in
  1087.      der MED-Konfiguration gesichert. Wenn der Dialog mit "Abbruch"
  1088.      verlassen wird, wird das Tool nicht mehr gestartet.
  1089.  
  1090. CHG: wenn das Hauptfenster iconisiert wird, wird das Tool-Ausgabefenster
  1091.      versteckt.
  1092.  
  1093. CHG: der Window-Monitor laeuft nicht mehr in einem separaten Thread
  1094.      (mit eigener PM-Message Queue), was bei Benutzung von NPSWPS
  1095.      zu Problemen fuehren konnte.
  1096.  
  1097. FIX: die in einer Dateiliste uebergebenen Dateien (Kommandozeilenparameter
  1098.      "-f") werden jetzt wieder in der korrekten Reihenfolge geladen.
  1099.  
  1100. FIX: Absturz bei *sehr* langen C-Funktionsnamen im Section
  1101.      Display/Browser
  1102.  
  1103. FIX: das Hauptfenster bleibt jetzt maximiert, wenn ueber den Window-
  1104.      Monitor auf ein anderes Textfenster umgeschaltet wird.
  1105.  
  1106. FIX: bei Benutzung des vertikalen Scrollbalken wird jetzt auch im Modus
  1107.      "Scrollbalken verändert Cursorposition" das Textende erreicht.
  1108.  
  1109. FIX: die von OS/2 bereitgestellte Funktion zum Maximieren eines
  1110.      Textfensters (Doppelklick auf die Titelzeile) wurde
  1111.      korrigiert, so dass das Textfenster den Arbeitsbereich des
  1112.      Hauptfensters ganz ausfuellt.
  1113.  
  1114. FIX: wenn ein Tool in einer Fehlermeldung einen relativen Pfad
  1115.      zur beanstandeten Datei enthaelt, wird zunaechst versucht die Datei
  1116.      relativ zum Arbeitsverzeichnis des Tools zu laden. Wenn das
  1117.      Arbeitsverzeichis selbst einen relativen Pfad enthaelt oder nicht
  1118.      definiert ist, wird versucht die Datei relativ zum MED
  1119.      Startverzeichnis zu laden.
  1120.  
  1121. FIX: wenn ein belegtes Tastaturkuerzel von einem Makro ueberschrieben
  1122.      wird, wird beim Beenden von MED nicht mehr nachgefragt, ob die
  1123.      Tastaturbelegung gesichert werden soll.
  1124.  
  1125. FIX: das Dateinameneingabefeld des Dateiselektors akzeptiert jetzt
  1126.      absolute Pfade inklusive Dateinamen, auch wenn die Datei im
  1127.      Wurzelverzeichnis steht (z.B. "d:\config.sys", "\config.sys").
  1128.  
  1129.  
  1130.  
  1131. ----------------------------------------------------------------------------
  1132. VERSION 1.14     1.Oktober 1996
  1133. ----------------------------------------------------------------------------
  1134.  
  1135.  
  1136. NEW: automatisches Suchen einer Sektion. Dazu wird der Cursor auf
  1137.      eine Referenz der Sektion (z.B. Aufruf einer C-Funktion) gesetzt
  1138.      und dann "Gehe zu Sektion" aufgerufen (default Tastaturkürzel
  1139.      [CNTRL-Return]). Die Sektion wird zunächst in den Textpuffern
  1140.      und dann in den Dateien des Verzeichnisses, in dem die aktuelle
  1141.      Datei enthalten ist, gesucht. Rekursion in darunterliegende
  1142.      Verzeichnisse oder die Auswahl des zu durchsuchenden Verzeichnisses
  1143.      ist nicht möglich, was für die meisten Anwendungen auch nicht
  1144.      notwendig ist (in der nächsten Version von MED wird es die
  1145.      Möglichkeit geben, zu einem Projekt gehörenden Verzeichnisse/Dateien
  1146.      zu definieren). Eine "ctags-kompatible" Verzeichnisdatei ist
  1147.      geplant.
  1148.  
  1149.  
  1150. NEW: automatisches Laden der zuletzt editierten Dateien. Die Dateinamen
  1151.      werden beim Beenden von MED in die Datei "med.lru" gestellt.
  1152.      Diese Datei kann lokal im aktuellen Verzeichnis oder global
  1153.      bei den anderen Konfigurationsdateien gehalten werden. Beim
  1154.      naechsten Programmstart werden die in "med.lru" referenzierten
  1155.      Dateien automatisch geladen.
  1156.  
  1157.      Das automatische Laden kann durch Drücken der [CNRTL]-Taste während
  1158.      des Startvorgangs unterbunden werden.
  1159.  
  1160.      (s. Notizbuch "Einstellungen", Seite "Programmstart")
  1161.  
  1162. NEW: Der Window-Monitor kann optional an das Hauptfenster "angeheftet"
  1163.      werden (links, rechts, oben, unten). Hoehe/Breite und
  1164.      Position des Window-Monitors werden dann beim Aendern der
  1165.      Groesse bzw. Verschieben des Hauptfensters automatisch
  1166.      angepasst.
  1167.      (s. Notizbuch "Einstellungen", Seite "Window Monitor")
  1168.  
  1169.      Ueber die rechte Maustaste ist im Window-Monitor ein
  1170.      Kontextmenue aufrufbar.
  1171.  
  1172. NEW: die Dateinamen von Backups koennen nun optional auch mit einer
  1173.      Nummerierung versehen werden (bisher nur Zeit/Datum). Dadurch werden
  1174.      mehrere Backups auch auf FAT-Partitionen moeglich. Die juengste
  1175.      Version erhaelt die Erweiterung "0", die zweitjuengste "1" usw.
  1176.      (s. Notizbuch "Einstellungen", Seite "Laden/Sichern")
  1177.  
  1178. NEW: in der Kommandozeile und im Dateiselektor werden in Dateinamen
  1179.      enthaltene Wildcards ("*", "?", "[]") expandiert.
  1180.  
  1181. NEW: der Status des Flags "Sichern" im Dialog  "Lesezeichen setzen"
  1182.      wird in der Konfiguration gespeichert. Um bei permanent aktivierter
  1183.      "Sichern"-Option die Lesezeichenliste nicht ins Unendliche
  1184.      wachsen zu lassen, kann die maximale Anzahl festgelegt werden.
  1185.      Die aeltesten ueberzaehligen Lesezeichen werden automatisch
  1186.      entfernt.
  1187.  
  1188. NEW: Funktionen zum schnellen Setzen/Anspringen eines "Ping-Pong"
  1189.      Lesezeichens ohne Aufruf der Lesezeichen-Dialoge.
  1190.      "Cursorposition sichern" speichert die aktuelle Cursorposition.
  1191.      "Cursorposition restaurieren" setzt den Cursor an die gespeicherte
  1192.      Cursorposition zurück. Dabei wird automatisch die gerade aktuelle
  1193.      Position als Rücksprungmarke gespeichert.
  1194.  
  1195.      Beispiel:
  1196.      ---------
  1197.      Der Cursor befindet sich in Zeile 20. Sie rufen "Cursorposition
  1198.      sichern" auf. Jetzt scrollen Sie in Zeile 100. Durch Aufruf von
  1199.      "Cursorposition restaurieren" springt der Cursor in Zeile 20. Bei
  1200.      erneutem Aufruf von "Cursorposition restaurieren" springt der Cursor
  1201.      wieder in Zeile 100 usw...
  1202.  
  1203.      (s. Menue "Bearbeiten", "Cursorposition sichern/restaurieren")
  1204.  
  1205. NEW: Ersetzen eines markierten Blockbereichs durch eine
  1206.      Zeicheneingabe oder Einfügen des Clipboards. Dazu muss der
  1207.      CUA-Blockmarkierungsmodus ("Automatisch Blockmarkierung aufheben")
  1208.      aktiviert sein.
  1209.  
  1210. NEW: mit der Option "Scrollbalken verändert Cursorposition" lässt sich
  1211.      einstellen, ob die Cursorposition beim Scrollen mit den Scrollbalken
  1212.      versetzt oder unverändert bleiben soll. Wenn die Cursorposition
  1213.      unverändert bleibt, wird der Cursor unsichtbar, sobald die aktuelle
  1214.      Zeile den sichtbaren Fensterbereich verlässt.
  1215.      Bei der Eingabe eines Zeichens oder beim Bewegen des
  1216.      Cursors mit den Cursortasten, wird der Textabschnit, in dem sich
  1217.      der Cursor befindet, automatisch sichtbar gemacht.
  1218.      (s. Notizbuch "Einstellungen", Seite "Cursor")
  1219.  
  1220. NEW: "Suchen..." unterstreicht gefundene Textstellen grün.
  1221.  
  1222. NEW: Automatisches Sichern einer Syntaxdefinitionsdatei und nachfolgendem
  1223.      Neuladen der Syntaxkonfiguration.
  1224.      ("Optionen->Syntaxkonfiguration neu laden")
  1225.  
  1226. NEW: für die Form des Mauszeigers in den Textfenstern kann zwischen
  1227.      "Pfeil" und "I-Beam" gewählt werden
  1228.      (s. Notizbuch "Einstellungen", Seite "Maus->Mausform")
  1229.  
  1230. NEW: Funktionen "Bearbeiten->Zeile->Leerzeichen links löschen" und
  1231.      "Bearbeiten->Zeile->Leerzeichen rechts löschen" zum entfernen der
  1232.      Leerzeichen von der Cursorposition bis zum naechsten normalen
  1233.      Zeichen. Die "Bearbeiten->Wort->Löschen" hat die gleiche
  1234.      Funktionalität wie "Bearbeiten->Zeile->Leerzeichen rechts löschen",
  1235.      wenn der Cursor auf einem Leerzeichen steht.
  1236.  
  1237. NEW: Syntax Highlighting fuer HTML und Modula-2.
  1238.  
  1239. NEW: Undo löscht das "Geändert"-Flag eines Textpuffers sobald alle
  1240.      Änderung rückgängig gemacht worden sind. Bitte beachten Sie,
  1241.      dass der Undo-Puffer eine bestimmte Gröesse hat, so dass
  1242.      nicht immer der Urzustand einer Datei erreicht werden kann.
  1243.  
  1244. NEW: bei gedrückter [SHIFT]-Taste kann mit einem Klick der linken
  1245.      Maustaste das Blockende neu gesetzt werden. Ist kein Block
  1246.      markiert, wird die aktuelle Cursorposition als Blockstart
  1247.      benutzt.
  1248.  
  1249. NEW: Funktion "Alles markieren" im Menue "Block".
  1250.  
  1251. NEW: es kann eine Liste von Zeichen definiert werden, bei deren Auftreten
  1252.      in der ersten Spalte der Zeilenumbruch einen neuen Absatz beginnt
  1253.      (s. Notizbuch "Einstellungen",
  1254.       Seite "Editieren->Zeilenumbruch->Absatzbegrenzer")
  1255.  
  1256. NEW: die akustischen Warnhinweise lassen sich abschalten
  1257.      (s. Notizbuch "Einstellungen", Seite "Allgemein")
  1258.  
  1259. NEW: Im Dateiselektor können die Fonts für die Menüleiste,
  1260.      die Datei-/Verzeichnisliste und das Dateinameneingabefeld
  1261.      per Drag'n'Drop konfiguriert werden.
  1262.  
  1263.      Im Section-Browser kann der Font für die Sektionsliste
  1264.      per Drag'n'Drop konfiguriert werden.
  1265.  
  1266.      Im Dialog "MED verlassen" kann der Font für die Dateiliste
  1267.      per Drag'n'Drop konfiguriert werden.
  1268.  
  1269. NEW: Merlin-Anpassung: die Notizbücher erscheinen unter Merlin
  1270.      im neuen Karteikarten-Look.
  1271.  
  1272. CHG: Compiler-Fehlermeldungen werden nicht mehr in der Statuszeile, sondern
  1273.      in einem Info-Fenster direkt unter der betroffenen Zeile angezeigt.
  1274.      Das Info-Fenster wird bei einer Cursorbewegung automatisch entfernt.
  1275.  
  1276. CHG: weitere Verbesserung des Syntax Highlighting: reservierte
  1277.      Worte dürfen jetzt ein Symbol am Anfang und Ende enthalten.
  1278.  
  1279. CHG: wenn ein Textfenster durch einen Mausklick in den Textbereich
  1280.      aktiviert wird, bleibt die Cursorposition erhalten.
  1281.  
  1282. CHG: Laden einer bereits geoeffneten Datei: wenn kein neuer Puffer
  1283.      angelegt werden soll, wird auf den bereits bestehenden Puffer
  1284.      umgeschaltet.
  1285.  
  1286. CHG: Die Tasten F1 und F10 koennen jetzt auch mit einem Makro
  1287.      belegt werden.
  1288.  
  1289. CHG: beim Markieren eines Wortes wird der Cursor auf den Wortanfang
  1290.      gesetzt.
  1291.  
  1292. CHG: im Dateiselektor kann mit [SHIFT+TAB] zum vorhergehenden passenden
  1293.      Dateinamen gesprungen werden.
  1294.  
  1295. FIX: die Erkennung, ob eine Instanz von MED bereits läuft, funktioniert
  1296.      jetzt auch dann zuverlässig, wenn mehrere Dateien auf das MED-Icon
  1297.      geschoben werden.
  1298.  
  1299. FIX: NDX Unterstützung
  1300.  
  1301. FIX: Meldung "Makro wird aufgezeichnet" wird jetzt nicht mehr
  1302.      vorzeitig gelöscht.
  1303.  
  1304. FIX: Blockmarkierung mit der Maus bleibt jetzt nicht mehr hängen, wenn
  1305.      der Mausknopf ueber einem Fensterrahmen losgelassen wird.
  1306.  
  1307. ----------------------------------------------------------------------------
  1308. VERSION 1.12    8.Juli 1996
  1309. ----------------------------------------------------------------------------
  1310.  
  1311. NEW: neues Prgramm-Icon in den Größen 32x32 und 40x40.
  1312.  
  1313. NEW: in der Datei "epm.kbd" wird jetzt eine EPM-Tastaturanpassung
  1314.      mitgeliefert. Wenn diese Tastatur als Default benutzt werden
  1315.      soll, muß die Datei zu "med.kbd" umbenannt werden.
  1316.  
  1317. NEW: pro Datei können jetzt maximal 99 Backups angelegt werden.
  1318.      Überzählige Backups werden gelöscht. Wenn mehr als 1 Backup angelegt
  1319.      werden soll, wird an den Dateinamen jeweils das aktuelle Datum und die
  1320.      Uhrzeit angehängt. Dadurch ist der Einsatz auf die Dateisysteme
  1321.      HPFS und EXT2FS beschränkt, da FAT bekanntlich keine langen Dateinamen
  1322.      unterstützt. Auf FAT Laufwerken wird automatisch nur ein Backup mit
  1323.      dem original Dateinamen angelegt.
  1324.      (s. Notizbuch "Einstellungen", Seite "Laden/Sichern")
  1325.  
  1326. NEW: Suchen und Ersetzen mit regulären Ausdrücken
  1327.  
  1328.      Beispiel:
  1329.      ---------
  1330.      Suchstring:    oldfoo\(([^ ,]*), ([^\)]*)\)
  1331.      Ersatzstring:  newfoo(\2, \1, FALSE)
  1332.  
  1333.      In diesem Beispiel werden alle Aufrufe der Funktion "oldfoo" durch
  1334.      "newfoo" ersetzt, der erste mit dem zweiten Parameter vertauscht und
  1335.      ein neuer dritter Parameter "FALSE" eingefügt.
  1336.  
  1337.  
  1338. NEW: Section-Browser und Section-Display:
  1339.  
  1340.      Der Section-Browser
  1341.      ===================
  1342.      ist eine Dialogbox, in der alle in einer
  1343.      Datei vorkommenden Sektionen aufgelistet werden. Eine Sektion
  1344.      kann z.B. eine C-Funktion sein. Der Section-Browser ist über
  1345.      einen regulären Ausdruck zum Auffinden der Sektionen an jeden
  1346.      beliebigen Dateityp anpassbar. Für C/C++ Dateien wird dieser
  1347.      reguläre Ausdruck nicht benötigt, weil der in MED integrierte
  1348.      C/C++ Parser diese Aufgabe schneller und präziser erledigt.
  1349.  
  1350.      Der reguläre Ausdruck kann für jeden Dateityp getrennt in med.syn
  1351.      definiert werden (wenn er für C/C++ Dateien definiert wird,
  1352.      wird der interne C/C++ Parser abgeschaltet).
  1353.  
  1354.      Beispiel:
  1355.      ---------
  1356.  
  1357.      sectionRegexp:         :[Hh][0-9]
  1358.  
  1359.          Dieser Eintrag dient zur Lokalisierung der Abschnitte eines
  1360.          IPF/IPP-Dokuments.
  1361.  
  1362.  
  1363.      Der Section-Browser kann mit folgenden Einträgen in der
  1364.      med.syn weiter konfiguriert werden:
  1365.  
  1366.      sectionDisplayRegexp:  (:[Hh][0-9][ ]*)(res=[0-9]*\.)[ ]*(.*)
  1367.  
  1368.          Dieser Eintrag wird zum Aufsplitten eines Sektionskopfes in
  1369.          Datenfelder benutzt. Datenfelder werden in runde Klammern
  1370.          eingeschlossen. Dieser reguläre Ausdruck wird vom Section-Browser
  1371.          und vom Section-Display (s.u.) benutzt.
  1372.  
  1373.      sectionBrowserOrder: 1, 2
  1374.  
  1375.         Dieser Eintrag gibt an, welche Datenfelder in welcher Reihenfolge im
  1376.         Section-Browser angezeigt werden.
  1377.  
  1378.  
  1379.      sectionBrowserMainKey: 2
  1380.  
  1381.         Dieser Eintrag legt fest, nach welchem Datenfeld die Sektionen
  1382.         im Section-Browser sortiert werden.
  1383.  
  1384.  
  1385.  
  1386.      Section-Display
  1387.      ===============
  1388.  
  1389.      In der Statuszeile kann optional der Name der Sektion (z.B. C-Funktion),
  1390.      in der sich der Cursor gerade befindet, angezeigt werden.
  1391.  
  1392.      Zur Konfiguration des Section-Displays sind folgende Einträge in
  1393.      med.syn zuständig:
  1394.  
  1395.      sectionDisplayRegexp:  (:[Hh][0-9][ ]*)(res=[0-9]*\.)[ ]*(.*)
  1396.  
  1397.          s.o.
  1398.  
  1399.      sectionDisplayOrder: 2
  1400.  
  1401.          Dieser Eintrag gibt an, welche Datenfelder in welcher Reihenfolge
  1402.          im Sektionen-Display angezeigt werden.
  1403.  
  1404.  
  1405.      sectionDisplay: 5000, 1000
  1406.  
  1407.          Der erste Parameter dieses Eintrags gibt an, wieviele Zeilen
  1408.          eine Datei maximal enthalten darf, bevor das Section-Display
  1409.          aus Performance-Gründen abgeschaltet wird (hier 5000). Der
  1410.          Wert 0 schaltet das Section-Display vollständig aus.
  1411.  
  1412.          Der zweite Parameter gibt die maximale Anzahl von Zeilen an,
  1413.          die ab der aktuellen Cursorposition nach einem Sektionsanfang
  1414.          durchsucht werden dürfen (hier 1000).
  1415.          Für schnelle Maschinen können beide Werte größer angesetzt
  1416.          werden.
  1417.  
  1418.  
  1419. NEW: Mit den Tasten [ALT + PageUp] und [ALT+ PageDown] kann innerhalb
  1420.      eines Textes zur vorhergehenden bzw. nächsten Sektion gesprungen werden
  1421.      (das Section-Display muß dabei eingeschaltet sein).
  1422.  
  1423. NEW: die Geschwindigkeit des internen Parsers für C-Quelltexte wurde
  1424.      stark verbessert.
  1425.  
  1426. NEW: Syntaxhighlighting für LaTEX.
  1427.  
  1428. NEW: Neben Farben sind jetzt auch die Fontattribute "bold", "underline"
  1429.      und "boldUnderline" beim Syntaxhighlighting auf den Bildschirm möglich
  1430.      (s.u.).
  1431.  
  1432. NEW: Drucken mit Syntax Highlighting. Es kann zwischen Farbdarstellung
  1433.      oder monochromer Darstellung gewählt werden.
  1434.      Zur monochromen Darstellung werden nur Fontattribute (normal, bold,
  1435.      italic, outline, underline) verwendet.
  1436.      In der Syntax-Konfigurationsdatei med.syn wurde die "color"
  1437.      Direktive erweitert:
  1438.  
  1439.      color:  dispColor, dispFontAttribute, printColor, printFontAttribute
  1440.  
  1441.      Die beiden ersten Parameter sind für die Bildschirmdarstellung,
  1442.      die folgenden für die Druckerdarstellung zuständig.
  1443.  
  1444.      Beispiel:
  1445.      ---------
  1446.  
  1447.      color:  blue, boldUnderline, darkblue, bold
  1448.  
  1449.  
  1450.      Wenn zur Bildschirmdarstellung auch Fontattribute benutzt werden sollen,
  1451.      ist darauf zu achten, daß nur die Attribute "bold" und
  1452.      "underline" nebst deren Kombination erlaubt sind.
  1453.      Bei der Druckerdarstellung können alle Fontattribute beliebig kombiniert
  1454.      werden. Reihenfolge und Groß-/Kleinschreibung spielen keine Rolle, es
  1455.      darf also z.B. "boldItalic" oder "italicBold" oder auch "italicbold"
  1456.      für die gleiche Attributkombination geschrieben werden.
  1457.  
  1458.  
  1459. NEW: Die Kopfzeile für das Drucken kann jetzt konfiguriert werden.
  1460.      Neben den Platzhaltern für Dateinamen (%F, %f), Seitennummer (%P),
  1461.      Zeit (%T) und Datum (%D) können beliebige Zeichenketten
  1462.      links, zentriert oder rechts in der Kopfzeile ausgedruckt
  1463.      werden (s. "Datei->Drucken->formatiert").
  1464.  
  1465. NEW: Unformatiertes Drucken direkt über einen Druckerport
  1466.      (s. "Datei->Drucken->unformatiert")
  1467.  
  1468. NEW: direkte Unterstützung der EPM Index-Dateien (*.NDX) ohne weiteren
  1469.      Konfigurationsaufwand.
  1470.  
  1471. NEW: Bubble-Help für Symbolleiste. Die Verzögerungszeit und die maximale
  1472.      Anzeigezeit sind konfigurierbar
  1473.      (s. Notizbuch "Einstellungen",
  1474.       Seite "Symbolleiste->Größe/Position/Hilfe")
  1475.  
  1476. NEW: die Funktionen Laden und Speichern von Dateien wurde in
  1477.      Threads ausgelagert. Die Ladegeschwindigkeit wurde
  1478.      erhoeht (macht sich erst bei großen Dateien
  1479.      bemerkbar).
  1480.  
  1481. NEW: Vor dem Sichern einer Datei kann im Dateiselektor das Zeilenformat
  1482.      (OS/2 oder Unix) geändert werden. Die Einstellung hat nur
  1483.      Gültigkeit für den jeweiligen Speichervorgang.
  1484.  
  1485. NEW: Der zuletzt im Dateiselektor zum Laden einer Datei benutzte Pfad
  1486.      wird in der Konfiguration gespeichert.
  1487.  
  1488. NEW: "Home"-Button im Dateiselektor wechselt in das Default-
  1489.      Arbeitsverzeichnis.
  1490.  
  1491. NEW: anstelle des MED Dateiselektors kann nun auch der
  1492.      System-Dateiselektor benutzt werden.
  1493.      (s. Notizbuch "Einstellungen", Seite "Dateiselektor")
  1494.  
  1495. NEW: Optional wird die aktuelle Cursorposition auch beim Schließen
  1496.      einer Datei in den erweiterten Attributen gesichert.
  1497.      (s. Notizbuch "Einstellungen", Seite "Cursor")
  1498.  
  1499. NEW: voreingestellte Pfade und Filter des MED Dateiselektors können
  1500.      automatisch oder manuell sortiert werden.
  1501.  
  1502. NEW: bei gedrückten [CNTRL + ALT] Tasten kann ueber die numerische
  1503.      Tastatur der dezimale Wert eines beliebigen ASCII-Zeichens eingegeben
  1504.      werden, das in den Text eingefuegt werden soll.
  1505.  
  1506. CHG: Die Überwachung des Datei-Zeitstempels kann jetzt abgeschaltet
  1507.      werden (s. Notizbuch "Einstellungen", Seite "Allgemein").
  1508.  
  1509. CHG: verbesserte Anpassung von Text-/Applikationfenstergröße.
  1510.  
  1511. CHG: den defaultmäßig vom System belegten Tasten (F1, F10, Alt+Fx) können
  1512.      nun Editorfunktionen zugewiesen werden. Das etwas nervende Aktivieren
  1513.      des System-Menüs über [ALT] bzw. [ALTGR] ist abgeschaltet.
  1514.  
  1515. CHG: der Text-/Block Zeilenumbruch wurde überarbeitet.
  1516.  
  1517. CHG: vor dem Sichern einer unmodifizierten Datei erscheint jetzt ein
  1518.      Nachfragedialog.
  1519.  
  1520. FIX: kein WPS-Lockup mehr bei der Anwendung einer Layoutpalette.
  1521.  
  1522. FIX: Default-Codepage wird jetzt korrekt gesetzt.
  1523.  
  1524. FIX: Scrollproblem im Zusammenhang mit NWPS behoben.
  1525.  
  1526. FIX: wenn ein Block unter dem Namen einer bereits existierenden Datei
  1527.      gesichert werden soll, erscheint vorher eine Sicherheitsabfrage.
  1528.  
  1529. FIX: ein "Maximized"-Status des Applikationsfenster wird beim nächsten
  1530.      Programmstart korrekt restauriert.
  1531.  
  1532. FIX: Speicherverlust im Dateiselektor behoben.
  1533.  
  1534.  
  1535. ----------------------------------------------------------------------------
  1536. VERSION 1.11    12.Mai 1996
  1537. ----------------------------------------------------------------------------
  1538.  
  1539. NEW: Option "Ausgabefenster verstecken" ermöglicht das Starten eines
  1540.      Tools ohne die Anzeige des Ausgabefensters.
  1541.      Die Option "Ausgabefenster schließen" ermöglicht
  1542.      das automatische Schließen des Ausgabefensters, falls keine Fehler-
  1543.      meldung oder Warnung aufgetreten ist.
  1544.      (s. Notizbuch "Toolkonfiguration", Seite "Aktionen", Seite "Optionen")
  1545.  
  1546. NEW: Mechanismus um das "Nachlaufen" der Tastatureingabe beim Scrollen,
  1547.      Blockmarkieren etc. zu verhindern. Das Alter, ab dem eine Tastatureingabe
  1548.      nicht mehr beachtet werden soll, kann im Bereich von 50 bis 500
  1549.      Millisekunden eingestellt werden. Ein zu kleiner Wert führt auch auf
  1550.      einer schnellen Maschine zu "ruckelndem" Scrollen. Ein zu großer Wert
  1551.      führt bei langsamen Maschinen zum "Nachlaufen".
  1552.      (s. Notizbuch "Einstellungen", Seite "Allgemein")
  1553.  
  1554. NEW: die Druckerkonfiguration wird separat für jeden Drucker gespeichert
  1555.      (max. 20 Drucker).
  1556.  
  1557.      Beim Neustart wird der zuletzt aktive Drucker wieder zum Default-Drucker.
  1558.  
  1559.      In der Titelzeile des "Drucken"-Dialogs wird ein Namenkürzel des
  1560.      aktiven Druckers ausgegeben.
  1561.  
  1562. NEW: [SHIFT + PageUp] und [SHIFT + PageDown] markieren einen Standardzeilen-
  1563.      block seitenweise.
  1564.  
  1565. NEW: in Dialog "Tastaturkürzel/Menüeintrag konfigurieren" wird der
  1566.      in "med.kbd" benutzte Funktionsname angezeigt.
  1567.  
  1568. NEW: Die Funktion "Suchen..." kann nun Leerzeilen finden, wenn das
  1569.      Eingabefeld für die zu suchende Zeichenkette leer gelassen wird.
  1570.  
  1571. NEW: Option "Markiertes Wort in Suchdialog übernehmen"
  1572.      (s. Notizbuch "Einstellungen", Seite "Editieren").
  1573.  
  1574. NEW: In die Online-Doku wurde ein Konterfei des Autors integriert, das
  1575.      im Bedarfsfall zum Stressabbau benutzt werden kann.
  1576.  
  1577. CHG: Wenn ein Toolsymbol bei gedrückter [CNTRL]-Taste mit der linken Maus-
  1578.      taste angeklickt wird, erscheint nun das Notizbuch
  1579.      "Tool-Einstellungen ändern".
  1580.  
  1581. CHG: Die Tastaturabfrage wurde überarbeitet.
  1582.  
  1583. CHG: Die Funktionen "Blockstart/ende markieren" sind jetzt auch wieder
  1584.      im Modus "Automatisch Blockmarkierung aufheben" verfügbar.
  1585.  
  1586. CHG: Die in med.exe eingebaute Default-Tastaturbelegung wird nur noch dann
  1587.      vorinstalliert, wenn "med.kbd" nicht vorhanden ist.
  1588.  
  1589. CHG: die Compiler-Symbole wurden aus der Default-Symbolleiste entfernt,
  1590.      weil die Zuordnung der Symbole zu Toolkonfigurationen von alten MED
  1591.      Versionen nicht funktionieren kann. Sie müssen die Compiler-Symbole
  1592.      "von Hand" einrichten.
  1593.  
  1594. FIX: beim Verschieben eines Blocks in einen anderen Textpuffer wird das
  1595.      Fenster des Quellpuffers jetzt korrekt neu gezeichnet.
  1596.  
  1597. FIX: Absturz beim Versuch eine Tastenkombination einem Tool zuzuordnen,
  1598.      das in einer alten MED Version angelegt wurde.
  1599.  
  1600. FIX: Toolstart über Symbolleiste/Tastatur
  1601.  
  1602. FIX: Tool-Arbeitsverzeichnis
  1603.  
  1604. FIX: Dateien der Länge 0 werden nicht mehr zurückgewiesen.
  1605.  
  1606. FIX: im Verzeichnisfenster des Dateiselektors wird jetzt auch in leeren
  1607.      Verzeichnissen ".."  angezeigt.
  1608.  
  1609. FIX: Größe/Position des Applikationsfensters wird jetzt nicht mehr gesichert,
  1610.      falls MED im iconisierten Zustand beendet wird. Falls eine noch
  1611.      ungesicherte Datei vorhanden ist, wird das Applikationsfenster
  1612.      geöffnet.
  1613.  
  1614. FIX: Dialogboxen werden jetzt in jedem Fall vollständig sichtbar
  1615.      dargestellt.
  1616.  
  1617.  
  1618. ----------------------------------------------------------------------------
  1619. VERSION 1.10    1.Mai 1996
  1620. ----------------------------------------------------------------------------
  1621.  
  1622. NEW: jeder registrierte Benutzer erhält eine Id, die zur Personalisierung
  1623.      von MED benutzt werden kann
  1624.      (s. Menü "Hilfe", "Produktinformation")
  1625.  
  1626. NEW: die Block-Markierungsfunktionen wurden neu implementiert. Es stehen jetzt
  1627.      der Standardzeilenblock (Streamblock) und der Spaltenblock zur Verfügung.
  1628.  
  1629.      Ein Standardzeilenblock kann mit den CUA-Tastenkombinationen
  1630.      [SHIFT + Cursortaste] bzw. [SHIFT + CNTRL + Cursortaste]
  1631.      markiert werden.
  1632.  
  1633.      WICHTIG:
  1634.      **********************************************************************
  1635.      * Ein Spaltenblock wird mit [SHIFT + ALT + Cursortaste] markiert.    *
  1636.      * Es wird automatisch zwischen Standardzeilen-/Spaltenblock-Modus    *
  1637.      * umgeschaltet.                                                      *
  1638.      **********************************************************************
  1639.  
  1640.      Beide Blockarten könne weiterhin mit den Blockstart/-ende
  1641.      Funktionen markiert werden. In diesem Fall muß der gewünschte
  1642.      Blockmodus (Standardzeilen-/Spaltenblock) ausgewählt werden.
  1643.  
  1644.  
  1645. NEW: die Tastaturkonfiguration wurde aus der binären Konfigurationsdatei
  1646.      (med.cfg) in eine ASCII-Datei (med.kbd) ausgelagert. Das hat den Vorteil,
  1647.      daß die Tastaturkonfiguration schneller als bisher angepasst werden kann
  1648.      (die "on the fly" Konfiguration der Tastatur zur Laufzeit ist natürlich
  1649.      weiterhin möglich).
  1650.      Außerdem darf jetzt eine Funktion auf mehrere Tastenkombinationen
  1651.      gleichzeitig gelegt werden.
  1652.  
  1653.      Die Shortcuts der Menütitel ("Datei", "Bearbeiten", usw.) können geändert
  1654.      werden. Es können beliebige Tastaturkombinationen benutzt werden (also
  1655.      nicht nur [ALT]-Tastenkombinationen). Für die Anpassung der Menütitel-
  1656.      Shortcuts sind folgende Einträge in "med.kbd" zuständig:
  1657.  
  1658.      key:    Alt+D      menuFile
  1659.      key:    Alt+E      menuEdit
  1660.      key:    Alt+B      menuBlock
  1661.      key:    Alt+S      menuSearch
  1662.      key:    Alt+M      menuMacro
  1663.      key:    Alt+T      menuTools
  1664.      key:    Alt+F      menuWindow
  1665.      key:    Alt+O      menuOptions
  1666.      key:    Alt+H      menuHelp
  1667.  
  1668.      Bei [ALt]-Tastenkombination wird der entsprechende Buchstabe im Menütitel
  1669.      unterstrichen dargestellt (sofern dieser im Menütitel vorkommt).
  1670.  
  1671. NEW: Kommandozeilen-Option "-k" zum Laden einer alternativen Tastaturbelegung
  1672.      (default: med.kbd).
  1673.  
  1674.  
  1675. NEW: Textfenster können "vervielfältigt" werden, d.h. es können für jeden
  1676.      Textpuffer beliebig viele Ansichten geöffnet werden. Damit können
  1677.      gleichzeitig mehrere Ausschnitte eines Textes sichtbar gemacht
  1678.      werden. Die Ansichten sind völlig gleichberechtigt mit dem
  1679.      Originalfenster. Änderungen am Text werden (sofern möglich)
  1680.      in allen Ansichten nach einer einstellbaren Zeitspanne sichtbar.
  1681.  
  1682.      Das Sub-Menü "Ansicht" im Pulldown-Menü "Fenster" ermöglicht das
  1683.      Öffnen/Schließen von Ansichten und das Anordnen aller Ansichten
  1684.      des aktiven Textpuffers.
  1685.      Im Gegensatz dazu wirken die Funktionen, die direkt unter dem
  1686.      Pulldown-Menü "Fenster" stehen, auf die jeweils *ersten* Ansichten
  1687.      aller Textpuffer.
  1688.  
  1689.  
  1690. NEW: neues Design der Symbolleiste.
  1691.  
  1692.      Die Symbole können mit der rechten Maustaste verschoben werden.
  1693.  
  1694.      Neben den vordefinierten Symbolen können auch externe Symbole mit
  1695.      beliebigen Editor-Funktionen verknüpft werden. Drücken Sie [CTRL]
  1696.      und halten Sie die Taste gedrückt während Sie die Funktion in der
  1697.      Menüleiste anklicken, die in die Symbolleiste aufgenommen werden soll.
  1698.  
  1699.      Externe Symbole müssen als Bitmapdatei im OS/2 Format 2.0 in der Größe
  1700.      24x24 in das Verzeichnis "med-bmp" gestellt werden. Dieses Verzeichnis
  1701.      muß sich im gleichen Verzeichis wie die MED Konfigurationsdateien
  1702.      befinden.
  1703.  
  1704.      Die Größe der Symbolleisten-Knöpfe (Einheit: Pixel) und die Höhe der
  1705.      Symbolleiste (Einheit: Symbole) können konfiguriert werden.
  1706.      (s. Notizbuch "Einstellungen", Seite "Symbolleiste").
  1707.  
  1708. NEW: für jedes Tool kann ein Tastaturkürzel und ein Symbol zum Direktaufruf
  1709.      definiert werden, d.h. der Tool-Manager muß nicht unbedingt geöffnet
  1710.      werden.
  1711.      (s. Notizbuch "Tool-Konfiguration", Seite "Tastaturkürzel").
  1712.  
  1713. NEW: die Symbolleisten-Konfiguration wird in der ASCII-Datei "med.tlb"
  1714.      gesichert.
  1715.  
  1716. NEW: Kommandozeilen-Option "-t" zum Laden einer alternativen Symbolleiste
  1717.      (default: med.tlb).
  1718.  
  1719. NEW: neues Design der Statuszeile. Der Statuszeilen-Font kann via
  1720.      Drag'n'Drop geändert werden.
  1721.  
  1722. NEW: die Maustasten können konfiguriert werden (nur Blockmarkierungsfunktionen)
  1723.      (s. Notizbuch "Einstellungen", Seite "Maus")
  1724.  
  1725. NEW: Funktionen "Gehe zu Blockstart/ende" und "Block in Groß-/Kleinbuchstaben
  1726.      konvertieren"
  1727.  
  1728. NEW: die Tab-Weite ist in der Syntax-Definitionsdatei (med.syn) einstellbar.
  1729.  
  1730.      Beispiel:
  1731.      ---------
  1732.  
  1733.      files: *.c;*.h
  1734.      tabWidth: 4
  1735.  
  1736. NEW: der Dateityp, der optional beim Sichern einer Datei in die erweiterten
  1737.      Attribute geschrieben wird, ist in der Syntax-Definitionsdatei (med.syn)
  1738.      definierbar.
  1739.  
  1740.      Beispiel:
  1741.      ---------
  1742.  
  1743.      files: *.c;*.h
  1744.      eaFileType: "C Code"
  1745.  
  1746. NEW: Java-Unterstützung (Compiler als vordefiniertes Tool, Java Sektion in med.syn)
  1747.  
  1748. NEW: Maus-Cursor wird bei Zeicheneingabe automatisch versteckt. Wenn die
  1749.      Maus bewegt wird, wird der Cursor wieder sichtbar.
  1750.  
  1751. NEW: Dateiselektor:
  1752.  
  1753.      Die Einstellungen "Benutzer-Pfade/Filter" und "Aktionen beim Laden/Sichern"
  1754.      sind vom Dateiselektor aus änderbar.
  1755.      (Dateiselektor-Menüleiste: "Optionen"->"Filter/Pfade editieren"
  1756.       bzw. "Optionen"->"Beim Laden/Sichern")
  1757.  
  1758.      Autom. Vervollständigung von Datei-/Verzeichnisnamen in beliebigen
  1759.      Verzeichnissen (bisher nur im aktuellen Verzeichnis).
  1760.      Die [Tab]-Taste kann optional zur Datei-/Verzeichnisnamen verwendet werden.
  1761.  
  1762.      Es sind nun auch mehrere Dateimasken gleichzeitig zugelassen,
  1763.      z.B. "*.c;*.h;*.rc" oder "*.txt;*.doc"
  1764.  
  1765. NEW: Option beim Sichern "Ctrl-Z an Dateiende anhängen"
  1766.      (Notizbuch "Einstellungen", Seite "Laden/Sichern" oder
  1767.       Dateiselektor-Menüleiste: "Optionen"->"Beim Laden/Sichern")
  1768.  
  1769. NEW: [CTRL + TAB] schaltet auf nächsten Textpuffer um.
  1770.  
  1771. CHG: beim Versuch eine bereits geöffnete Datei mit der Funktion "Datei
  1772.      öffnen" nochmal zu laden, erscheint ein Nachfrage-Dialog.
  1773.      Wenn einer laufenden MED-Programminstanz der Dateiname einer bereits
  1774.      geöffneten Datei übergeben wird, wird die Datei nicht nochmal geladen,
  1775.      sondern der entsprechende Textpuffer aktiviert.
  1776.  
  1777. CHG: nicht mehr nur vor dem Sichern einer Datei wird überprüft, ob selbige
  1778.      zwischenzeitlich von einem anderen Programm modifiziert wurde, sondern
  1779.      bei jedem Aktivieren (Umschalten) eines Textfensters.
  1780.  
  1781. CHG: falls MED iconisiert ist, kann durch Anwahl eines Textes im
  1782.      Window-Monitor das Hauptfenster wieder sichtbar gemacht werden.
  1783.  
  1784. CHG: beim Setzen eines Lesezeichens werden die ersten 40 Zeichen der
  1785.      aktuellen Zeile als Default-Lesezeichennamen verwendet.
  1786.  
  1787. FIX: Arbeitsverzeichnis eines Tools wird jetzt auch dann richtig gesetzt,
  1788.      wenn dieses auf einem anderen Laufwerk liegt.
  1789.  
  1790. FIX: in der C-Funktionsliste werden C++ Destruktoren korrekt angezeigt
  1791.  
  1792. FIX: die horizontalen Scrollbalken der C-Funktionsliste und des Tool-
  1793.      Ausgabefensters sind jetzt funktionsfähig.
  1794.  
  1795. FIX: ein paar kleine Unstimmigkeiten im Syntax-Highlighting bezüglich der
  1796.      Darstellung von Kommentaren wurden behoben
  1797.  
  1798. FIX: Blockmarkierung mit der Maus funktioniert nun korrekt auch wenn die
  1799.      Option "Automatisch Blockmarkierung aufheben" aktiviert ist.
  1800.  
  1801. FIX: [CNTRL + ENDE] setzt Cursor hinter das letzte Zeichen der letzten Zeile
  1802.  
  1803. FIX: beim Laden einer Datei wird der Pfad auf Gültigkeit untersucht.
  1804.  
  1805. ----------------------------------------------------------------------------
  1806. VERSION 1.04  2.Januar 1996
  1807. ----------------------------------------------------------------------------
  1808.  
  1809. NEW: konfigurierbarer Compiler-Support
  1810.  
  1811. NEW: Datei importieren via Drag & Drop bei gedrückter [CNTRL]-Taste
  1812.  
  1813. NEW: im Dateiselektor kann der Zugriffspfad manuell eingegeben werden
  1814.  
  1815. NEW: Funktion "Alle sichern" im Menü Datei
  1816.  
  1817. NEW: verbesserter C-Funktionen Dialog (inkrementelles Suchen, Farben)
  1818.  
  1819. NEW: optionale "include" Direktive in der Syntax-Highlighting Konfigurationsdatei
  1820.      reduziert den Zeitaufwand beim Einlesen der Konfigurations-Daten (med.syn
  1821.      dient nur noch als Verzeichnis der unterstützten Dateitypen). Die
  1822.      Konfigurations-Daten werden fuer jeden Dateityp in eine eigene Datei
  1823.      (Name ist frei wählbar) ausgelagert und mit "include" hinter der "file"
  1824.      Direktive eingefügt.
  1825.  
  1826.      Beispiel:
  1827.      ---------
  1828.  
  1829.      files:  *.c *.c.* *.h *.cpp
  1830.      include: med_c.syn
  1831.  
  1832.      files:  config.sys
  1833.      include: med_sys.syn
  1834.  
  1835.      usw.
  1836.  
  1837. NEW: die Weite, um die ein Text mit den Tasten [Page Up] bzw. [Page down]
  1838.      gescrollt wird, kann eingestellt werden (Notizbuch "Einstellungen",
  1839.      Seite "Editieren", Eingabefeld "Scrollfaktor").
  1840.  
  1841. NEW: vor dem Sichern einer Datei wird überprüft, ob selbige zwischenzeitlich
  1842.      von einem anderen Programm modifiziert wurde. Falls ja, kann zwischen den
  1843.      Aktionen "Trotzdem sichern", "Neu laden" und "Sichern abbrechen" gewählt
  1844.      werden.
  1845.  
  1846. NEW: beim Sichern kann das Zeilenende-Format kovertiert werden (UNIX <-> OS/2).
  1847.      Notizbuch "Einstellungen", Seite "Öffnen/Sichern".
  1848.  
  1849. CHG: neues Format der Konfigurationsdatei "med.cfg" erlaubt die Übernahme der
  1850.      Einstellungen in zukünftigen Programmversionen.
  1851.  
  1852. CHG: Einstellungen der Such-/Ersetzfunktion werden in der Konfiguration gesichert
  1853.  
  1854. CHG: beim Öffnen einer Datei wird das Hauptfenster automatisch wiederhergestellt,
  1855.      falls es auf Symbolgröße verkleinert wurde
  1856.  
  1857. CHG: beim Schließen des letzten Textfensters wird MED *nicht* mehr beendet
  1858.  
  1859. CHG: die Option "[Del] löscht Block" ist ersetzt durch die Option
  1860.      "Automatisch Blockmarkierung aufheben". Ist diese aktiviert, wird bei einer
  1861.      Cursor-Bewegung oder Zeicheneingabe automatisch eine Blockmarkierung
  1862.      aufgehoben. Das Löschen eines Blocks mit [Del] ist in diesem Modus möglich.
  1863.      Diese Option ist nur als ein kleiner Zwischenschritt zur vollständigen
  1864.      CUA-Kompatibilität zu verstehen, die in Version 1.05 erreicht werden soll.
  1865.  
  1866. CHG: Funktion "Gehe zu Klammer" scrollt nicht mehr den Fensterinhalt, falls die
  1867.      angesprungene Klammer sichtbar ist.
  1868.  
  1869. CHG: geschwindigkeits-optimierte Blockmarkierung
  1870.  
  1871. CHG: effektivere interne Speicherverwaltung
  1872.  
  1873. FIX: MED funktioniert nun auch unter OS/2 2.x
  1874.  
  1875. FIX: Scrolling funktioniert nun korrekt in teilweise unsichtbaren Textfenster
  1876.  
  1877. FIX: Dateiselektor sortiert Dateinamen (nur bei nicht-HPFS/CDFS-Laufwerken notwendig)
  1878.  
  1879. FIX: Dateiselektor emuliert ".." Verzeichnis (notwendig für Netware)
  1880.  
  1881. FIX: Undo/Redo für "Datei importieren"
  1882.  
  1883. FIX: Dateinamen mit Leerzeichen werden jetzt richtig behandelt
  1884.  
  1885. ----------------------------------------------------------------------------
  1886. VERSION 1.03  28.Oktober 1995
  1887. ----------------------------------------------------------------------------
  1888. NEW: konfigurierbares Syntax-Highlightning (die RGB-Werte der Farben können
  1889.      selbst definiert werden)
  1890.  
  1891. NEW: autom. Dateinamen-Vervollständigung im Dateiselektor mit den
  1892.      Cursor-Tasten (Pfeil-unten = nächster passender Dateinamen,
  1893.      Pfeil-oben = vorhergehender passender Dateinamen)
  1894.  
  1895. NEW: konfigurierbare Unterstützung von externen Online-Hilfen (z.B.
  1896.      "rexx.inf" für REXX-Dateien, "cmdref.inf" für config.sys oder
  1897.      die Doku zu den PM-APIs ihres C/C++ Compilers). Die Konfiguration
  1898.      wird in der Datei "med.syn" getrennt nach Dateitypen vorgenommen.
  1899.      Es wird der Name des Online-Doku-Betrachtungsprogramms (i.a. view.exe),
  1900.      der Name der Online-Doku und eine Liste von Filtern angegeben.
  1901.      Die Filter haben die Aufgabe, für ein Schlüsselwort die entsprechende
  1902.      Online-Doku auszusuchen.
  1903.  
  1904.      Beispiele:
  1905.  
  1906.      für REXX-Dateien:
  1907.      -----------------
  1908.      inf:  view.exe   rexx.inf        *
  1909.  
  1910.      für CONFIG.SYS:
  1911.      ---------------
  1912.      inf:  view.exe   cmdref.inf      *
  1913.  
  1914.      für C/C++ Dateien (Watcom C/C++):
  1915.      ---------------------------------
  1916.      inf:  view.exe   progref20.inf   Dos*
  1917.      inf:  view.exe   pmref.inf       [A-Z]*
  1918.      inf:  view.exe   clib.inf
  1919.  
  1920.      Für jeden Dateityp sind mehrere Online-Hilfe Einträge zulässig. Wenn
  1921.      ein Schlüsselwort zu keinem der angegebenen Filter passt, erscheint ein
  1922.      Popup-Menü, in dem man von Hand die zu benutzende Online-Hilfe aussuchen
  1923.      kann.
  1924.  
  1925. NEW: erweiterte Symbolleisten-Konfiguration
  1926.  
  1927. NEW: Cursor-Form ist konfigurierbar
  1928.  
  1929. NEW: Undo/Redo beim Ersetzen von Zeichenketten möglich
  1930.  
  1931. NEW: Undo/Redo beim Einfügen des Clipboards möglich
  1932.  
  1933. NEW: es kann nun eingestellt werden, mit welcher Maustaste ein Zeilen/Spalten-
  1934.      Block markiert wird.
  1935.  
  1936. CHG: Block kann jetzt auch von rechts nach links aufgespannt werden
  1937.  
  1938. CHG: Menü-Tastaturkürzel können jetzt gelöscht werden
  1939.  
  1940. CHG: Cursor zum nächsten/vorherigen Wort setzen
  1941.  
  1942. CHG: die Environment-Variable MISTER_ED_PATH nicht mehr erforderlich.
  1943.      Konfig-Dateien werden im Ordner ".\med" relativ zum Startverzeichnis
  1944.      von "med.exe" gesucht.
  1945.      Falls der Ordner nicht vorhanden ist, werden die Konfig-Dateien
  1946.      im Startverzeichnis gesucht.
  1947.  
  1948. FIX: Symbolleisten-Konfiguration
  1949.  
  1950. FIX: Font-Konfiguration
  1951.  
  1952. FIX: kleinerer default Font bei Bildschirmauflösung 640x480
  1953.  
  1954. FIX: Zifferneingabe mit numerischem Tastaturblock
  1955.  
  1956. ----------------------------------------------------------------------------
  1957. VERSION 1.02     14.September 1995
  1958. ----------------------------------------------------------------------------
  1959. NEW: nicht modaler "Window Monitor" Dialog ermöglicht es den Überblick
  1960.      über die geöffneten Textfenster zu behalten.
  1961.      Konfigurationsoptionen: Größe, Position, Font, Dateinamen mit/ohne
  1962.      Pfad anzeigen, Dialog geöffnet halten/automatisch schließen
  1963.  
  1964. NEW: ein Dialog wird angezeigt, wenn MED verlassen wird,
  1965.      aber noch Dateien mit nicht gesicherten Änderungen vorhanden sind. Der
  1966.      Dialog erlaubt es die Dateien auszuwählen, die gesichert werden
  1967.      sollen, bevor der Editor verlassen wird.
  1968.  
  1969. NEW: Druckfunktion.
  1970.      Konfigurationsoptionen: Kopfzeile (Dateiname, Datum, Seitennumern),
  1971.      Ränder, Font, Zeilennummern
  1972.  
  1973. NEW: automatischer Zeilenumbruch
  1974.  
  1975. NEW: Zeile zentrieren
  1976.  
  1977. NEW: Backtab (SHIFT+Tab)
  1978.  
  1979. NEW: Popup Menu mit rechter Maustaste für Blockfunktionen
  1980.  
  1981. NEW: Konfigurationsoption "Nur eine Programminstanz benutzen":
  1982.      diese Option läßt sich am besten mit einem Beispiel erklären:
  1983.      Sie haben MED in der Klickstartleiste installiert. Nun werfen
  1984.      Sie mehrere Texte auf das Klickstart-Icon von MED. Was
  1985.      passiert? Für jede Datei wird eine Version von MED gestartet.
  1986.      Das verbaut den Desktop und kostet eine Menge Speicherplatz,
  1987.      weil der Programmcode unnötigerweise mehrmals in den
  1988.      Hauptspicher geladen wird. Das ist ein Mangel der
  1989.      Klickstartleiste! Deshalb bietet MED diese Option. Ist sie
  1990.      aktiviert, prüft MED bei jedem Start, ob sich ein älterer
  1991.      Zwillingsbruder eventuell schon im Speicher befindet. Falls dem
  1992.      so ist, reicht er die ihm übergebenen Parameter (d.h. die
  1993.      Dateinamen oder die Dateinamenliste) an seinen älteren Bruder
  1994.      weiter und beendet sich sofort wieder. Der ältere Bruder
  1995.      übernimmt die Parameter und öffnet die gewünschten Dateien.
  1996.      Dieser Mechanismus funktioniert natürlich auch wenn MED von
  1997.      verschiedenen Stellen über die Kommandozeile mehrmals
  1998.      aufgerufen wird.
  1999.  
  2000. NEW: Konfigurationsoption "Im aktiven Textfenster öffnen":
  2001.      wenn diese Option aktiviert ist, wird beim Öffnen einer Datei
  2002.      das aktive Textfenster benutzt. Ist die Option inaktiv, wird vor
  2003.      dem Öffnen einer Datei automatisch ein neues Textfenster
  2004.      erstellt.
  2005.  
  2006. NEW: eine Blockmarkierung wird automatisch gelöscht bevor ein neuer
  2007.      Block markiert wird
  2008.  
  2009. NEW: Import Funktion fügt eine Textdatei an der aktuellen Cursorposition ein
  2010.  
  2011. NEW: der Fileselektor erlaubt das Hinzufügen des aktuellen Pfads zu der
  2012.      Pfadliste
  2013.  
  2014. NEW: Smarticons "Undo" and "Redo" in der Symbolleiste
  2015.  
  2016. NEW: die Hintergrundfarbe des Hauptfensters ist defaultmäßig nun
  2017.      ein dezenteres Grau. Via Drag & Drop kann die Farbe eingestellt werden.
  2018.  
  2019. FIX: auch die Tastaturkürzel von deaktivierten Menüeinträgen lassen sich
  2020.      ändern. Dazu muß vor dem Herunterklappen des entsprechenden Menü
  2021.      die CNTRL-Taste gedrückt werden.
  2022.  
  2023. FIX: der horizontale Scrollbalken funktioniert nun auch in Dateien mit
  2024.      mehr als 32765 Zeilen
  2025.  
  2026. ----------------------------------------------------------------------------
  2027. VERSION 1.01     31.August 1995
  2028. ----------------------------------------------------------------------------
  2029. ----------------------------------------------------------------------------
  2030. VERSION 1.0      02.August 1995
  2031. ----------------------------------------------------------------------------
  2032.  
  2033.