**************************************************************************** * * MED - Texteditor fr Programmierer unter OS/2 und Windows 9x/NT4.0 * * Copyright (c) 1999 by Matthias Pfersdorff * * med@utopia-planitia.de * www.utopia-planitia.de * **************************************************************************** Liste der Žnderungen: ---------------------------------------------------------------------------- VERSION 1.25 4.M„rz 1999 ---------------------------------------------------------------------------- NEW: Ein Dokument kann ber den Dateiselektor mit Schreibschutz ge”ffnet werden. In diesem Modus kann im Dokument lediglich navigiert und selektiert werden. Kommandos, die den Dokumentinhalt ver„ndern, sind nicht ausfhrbar. Mit einem Klick auf das "Schreibsymbol" im Statusdisplay des Textfensters kann jederzeit zwischen dem Nur-Lesemodus und dem normalen Editiermodus umgeschaltet werden. Der Modus ist nur fr das aktive Dokument gltig. NEW: Wenn ein Dokument auf Dateisystemebene mit einem Schreibschutz versehen ist, wird ein entsprechendes Symbol im Statusdisplay des Textfensters ausgegeben. Das Dokument kann nicht editiert werden. NEW: šber den Kommandozeilenparameter "-r" kann MED in einen globalen Nur-Lesemodus versetzt werden, der fr alle Dokumente gltig ist und nicht abgeschaltet werden kann. NEW: Beim Sichern einer schreibgeschtzten Datei wird automatisch die Funktion "Sichern als" aufgerufen. FIX: Beim Abw„rtsscrollen ber den vertikalen Scrollbalken mit fixer Cursorposition wurde der Fensterinhalt nach links verschoben. FIX: Problem beim Laden von med.lru, wenn die Umgebungsvariable MISTER_ED_PATH nicht gesetzt ist. ---------------------------------------------------------------------------- VERSION 1.24 15.Februar 1999 ---------------------------------------------------------------------------- NEW: Funktion "Codeblock selektieren" markiert einen Block von einer oeffnenden Klammer bis einschliesslich der schliessenden Klammer eines Codeblocks. Der Cursor muss dabei auf oder vor der oeffnenden Klammer eines Codeblocks stehen. Eine bereits vorhandene Blockmarkierung wird erweitert. Klammern in Kommentaren, Zeichenketten und Zeichenkonstanten werden ueberlesen. (Block / Codeblock selektieren) NEW: ein Dreifachklick mit der linken Maustaste selektiert die aktuelle Zeile. NEW: Undo restauriert optional bei Cursorbewegungen nur noch die Cursorendpositionen. (Optionen / Einstellungen / Editieren / Undo) NEW: Undo restauriert optional Eingaben sequenzweise. (Optionen / Einstellungen / Editieren / Undo) NEW: Funktion "Bis Wortanfang l”schen" l”scht alle Zeichen ab der Cursorposition bis zum Anfang eines Wortes. (Bearbeiten / Wort / Bis Wortanfang l”schen") CHG: Die Zeitstempel-Dateiendung fr Backups ist jetzt lesbarer und enth„lt die vollst„ndige Jahresangabe (Jahr 2000!). CHG: die Funktion "Bearbeiten->Wort->Abschneiden" wurde in "Bis Wortanfang l”schen" umbenannt. CHG: Beim Drucken einer Selektion mit Zeilennummern, werden jetzt die tatsaechlichen Zeilennummern ausgegeben. FIX: Laden der Liste der zuletzt geoeffneten Dateien aus dem Arbeitsverzeichnis. Das Arbeitsverzeichnis bleibt jetzt auch beim Laden einer Datei ueber den Dateiselektor unveraendert. FIX: Datei oeffnen ueber Toolausgabefenster. ---------------------------------------------------------------------------- VERSION 1.23 1. April 1998 ---------------------------------------------------------------------------- NEW: Das Syntax-Highlighting unterstuetzt jetzt zwei Mehrzeilenkommentare (z.B. { } und (* *) in PASCAL). CHG: Namensbildung der Backup-Dateien mit Nummerierung fuer das FAT-Dateisystem: Die Dateiextension bzw. der Dateinamen werden jetzt gegebenenfalls verkuerzt, damit die Backup-Nummer angehaengt werden kann. Beispiele: ---------- test.cpp -> test.c~1 12345678 -> 123456~1 Wenn die "Zeitstempelerweiterung" eingestellt ist, wird fuer FAT der Modus "Nummerierung" benutzt. FIX: Fehler beim Laden einer Skeleton-Datei, wenn aktueller Verzeichnisname einen "." enthaelt. FIX: Neuzeichnen des Fensterinhalts nach dem Anspringen einer Sektion ueber das Section-Display. FIX: Probleme beim Kopieren von Einzelzeilen. FIX: Fehler beim Schliessen modifizierter Dateien ueber den Window Monitor. ---------------------------------------------------------------------------- VERSION 1.22 5. Januar 1998 ---------------------------------------------------------------------------- NEW: Im C++ Section-Browser wird jetzt optional vor dem Namen einer Methode der zugehoerige Klassenname angezeigt. (s. Option "Klassennamen" im Section-Browser) NEW: die Funktion "Dateien durchsuchen" unterstuetzt jetzt unscharfe Suche, bei der eine Mindestaehnlichkeit (in Prozent) zwischen der zu suchenden Zeichenkette und den gefundenene Textstellen angegeben werden kann. In der Ergebisliste werden die gefundenen Textstellen und deren Aehnlichkeit ausgegeben. (s. Option "Aehnlichkeit" im Dialog "Suchen->Dateien durchsuchen") NEW: Unterstuetzung des Mac-Zeilenformats NEW: Funktionen zur Konvertierung des Zeilenformats im Menue "Bearbeiten->Text->Zeilenformat konvertieren". Bisher war eine explizite Konvertierung nur beim Sichern einer Datei ueber den Dialog "Sichern als..." moeglich. NEW: In der Statuszeile wird das Zeilenformat (Dos, Unix, Mac) angezeigt. NEW: Makros koennen jetzt auch auf Tasten ohne Modifier-Taste (CTRL, ALT) gelegt werden. CHG: Unterstuetzung von Dateien mit inhomogenen Zeilenformat FIX: Beim Sichern mit einem anderen Zeilenformat wird das Zeilenformat auch fuer die geladene Datei uebernommen. FIX: die Funktion "Dateien durchsuchen" berechnet jetzt die Zeilennummer auch bei inhomogenem Zeilenformat korrekt. FIX: C++ Unterstuetzung des internen Parsers FIX: Das Zeichen '^' ist jetzt auch ueber die Tastenkombination [^][SPACE] erreichbar (vorher nur mit [^][^]). ---------------------------------------------------------------------------- VERSION 1.21 7.November 1997 ---------------------------------------------------------------------------- NEW: Option "Textfensterpositionen restaurieren". Wenn diese Option aktiviert ist, werden bei Programmstart die Fensterpositionen der zuletzt bearbeiteten Dateien restauriert. Dadurch kann ein eigenes Fensterlayout erzeugt werden. Die Textfensterlayout-Optionen fuer den Programmstart (ueberlappend, maximiert) werden also durch die individuellen Fensterpositionen ersetzt. (Notizbuch "Einstellungen->Programmstart") NEW: Option "Neue Tabs in Leerzeichen umwandeln". Wenn diese Option aktviert ist, werden beim Erzeugen neuer Tabs anstelle von Hardtabs (ASCII 9) die entsprechende Anzahl von Leerzeichen eingefgt. (Notizbuch "Einstellungen->Editieren->Tabs"). CHG: Option "Selektion beibehalten" wurde aus dem Notizbuch "Einstellungen" in das "Block"-Menue verschoben. FIX: interner C++ Parser. ---------------------------------------------------------------------------- VERSION 1.20 16.September 1997 ---------------------------------------------------------------------------- NEW: Der interne C/C++ Parser wurde vollkommen runderneuert. Dadurch koennen jetzt im Section-Browser neben Funktionen optional auch Klassen, Typ-Definitionen und Defines angezeigt werden (analog zu "ctags"). Der Section-Browser verwendet zur Ausgabe die in "med.syn" fuer die entsprechenden Keywords definierten Farben. Der C/C++ Parser erkennt jetzt auch das Ende einer Sektion. Dadurch wird ermoeglicht, dass im Section-Display der Name der aktuellen Sektion (Typ, Klasse, Funktion) nur dann ausgegeben wird, wenn sich der Cursor innerhalb des Sektions-Bereichs befindet. Ebenso wurde das direkte Anspringen von Sektionen fuer Klassen, Typ-Definitionen und Defines erweitert. Beispiel: --------- Vereinbarung einer symbolischen Konstante und eines Typs in der Datei "example.h": #define MAXLEN 100 typedef struct { char *line; short len; }line_t; Verwendung der symbolischen Konstante und des Typs in der Datei "example.c": line_t line; ... if(line.len < MAXLEN) .... Wenn der Cursor in der Datei "example.c" auf den Typ-Identifier "line_t" oder die symbolische Konstante "MAXLEN" gesetzt und dann [CTRL-Return] gedrueckt wird, wird die entsprechende Vereinbarung zuerst in allen Textpuffern gesucht. Falls MED nicht fuendig wird, werden im Verzeichnis der Datei "example.c" alle zur gleichen Syntax-Familie gehoerenden Dateien durchsucht (die Syntaxfamilie wird in "med.syn" durch die Direktive "files:" bestimmt). Analog zu Funktionen koennen Praeprozessor-Makros und C++ Klassen angesprungen werden. Hinweis: -------- Fuer C/C++ Dateien koennen nicht mehr reguelaere Ausdruecke zum Auffinden von Sektionen definiert werden (Direktiven "sectionRegexp" und "sectionBrowserRegexp" in "med.syn") Im Section-Browser werden nicht mehr der Funktionstyp und die Funktionsparameterliste angezeigt. NEW: Unterstuetzung von Hardtabs (ASCII 9). Wer keine Hardtabs mag, kann diese (wie in den frueheren Programmversionen) beim Laden auto- matisch in Leerzeichen umwandeln lassen (Notizbuch "Einstellungen->Laden->Tabs in Leerzeichen umwandeln"). Die Option "Beim Sichern->Leerzeichen in Tabs umwandeln" ist jetzt obsolet. Die Tab-Taste fuegt jetzt nicht mehr eine entsprechende Anzahl von Leerzeichen, sondern ein Hardtab ein. Mit der Option "Sichtbare Tabs" im Menue "Optionen" koennen Hardtabs sichtbar gemacht werden. Ist die Option aktiviert, werden Hardtabs als kleiner vertikaler Strich gefolgt von vertikalen Strichen angezeigt. Ansonsten werden Hardtabs als Leerzeichen ausgegeben. NEW: Ein im Dateipfad vorkommender Slash (Unix) wird automatisch in einen Backslash umgewandelt. NEW: In das Tool-Ausgabefenster kann jetzt gleichzeitig stdout und stderr umgeleitet werden. NEW: Funktion "Neu laden" im Menue "Datei": nach einer Sicherheitsabfrage werden alle Aenderungen am aktiven Text verworfen und der Text im Originalzustand neu geladen. NEW: Der Dateiselektor unterscheidet jetzt zwischen zwei unabhaengigen Pfaden: Dem Pfad unter dem Dateien geladen werden ("Oeffnen"), und dem Pfad, unter dem Dateien gesichert werden ("Sichern als"). Beide Pfade werden in der Konfiguartion gesichert und koennen nur innerhalb des Dateiselektors beim Aufruf der entsprechenden Funktion geaendert werden. CHG: bei Programmstart wird die Eingabe ueber stdin (Pipe-Operator) jetzt als Textzeilen interpretiert. Die Interpretation als Dateinamen kann durch die Kommandozeilenoption "-l" erzwungen werden. CHG: Die automatische Cursor-Positionierung (z.B. beim Markieren eines Wortes) zentriert den Fensterinhalt nur noch dann, wenn der Cursor ausserhalb des sichtbaren Bereichs geraten wuerde. CHG: Die Funktionen "Wort loeschen/ab Position loeschen" loeschen jetzt auch Gruppen von Wortbegrenzern. CHG: Die Funktion "Dateien duchsuchen" kann jetzt auch nach Dateien suchen. Dazu muss das Eingabefeld "Suchen nach" leer bleiben. Im Startverzeichnis (optional rekursiv) werden dann alle Dateien gesucht, deren Namen zu dem Namensmuster im Eingabefeld "In Dateien" passen. CHG: Im Dialog "Drucken formatiert/unformatiert" wird die Option "Blockbereich" automatisch aktiviert, falls im aktiven Textpuffer ein Block markiert ist. CHG: Der Maximalwert fuer die Option "Ignoriere Tastatureingaben aelter als" betraegt jetzt 2000ms. CHG: die Taste [POS1] setzt den Cursor bei einmaligem Druecken auf das erste Zeichen der aktuellen Zeile. Nochmaliges Druecken setzt den Cursor in die erste Spalte der aktuellen Zeile. FIX: Backup-Funktion brachte eine Fehlermeldung, wenn als Backup-Verzeichnis "." und als Anzahl der Backups "1" eingestellt wurde. FIX: Undo der Funktion "Zeichen loeschen" im Overwrite-Modus FIX: Text neu formatieren FIX: Tool-Arbeitsverzeichnis FIX: Fehler bei Undo von "Block mit Zeichen fuellen", wenn der Blockstart hinter das letzte Zeichen einer Zeile gesetzt wird. ---------------------------------------------------------------------------- VERSION 1.19 21. Mai 1997 VERSION 1.18 17. Mai 1997 ---------------------------------------------------------------------------- 1.19 FIX: Fehler bei Verwendung von Codepage 437 1.19 FIX: Zu lange Filter in Dateiselektorpfaden konnten den Backup-Pfad ueberschreiben Zuerst eine Anmerkungen bezueglich der Windows-Version von MED: Viele OS/2-User haben mir ihre Befuerchtungen mitgeteilt, dass ich nach Herausgabe der Windows-Version die Weiterentwicklung unter OS/2 eventuell einstellen koennte. Das Gegenteil ist der Fall: Durch die Windows-Version wird MED eine noch breitere Akzeptanz finden und damit meine Motivation zur Weiterentwicklung foerdern. Wichtiger ist aber ein rein technisches Argument: Beide Versionen bestehen zu etwa 60% aus dem gleichen Source-Code, d.h. in vielen Faellen werden Weiterentwicklungen parallel verlaufen. BTW, die Windows-Version ist leider noch nicht fertiggestellt, ich schaetze den Termin fuer die Herausgabe auf Juli 1997. Doch nun zu etwas voellig anderem... NEW: Die Funktion "Dateien durchsuchen" dient primaer zum Suchen einer Zeichenkette in Dateien, die *nicht* in den Editor geladen sind. Das Suchergebnis wird in einer Liste uebersichtlich farbcodiert ausgegeben. Auf diese Weise ist es z.B. moeglich, sich schnell einen Ueberblick darueber zu verschaffen, wie oft und wo eine C-Funktion innerhalb aller zu einem Projekt gehoerenden Quelldateien aufgerufen wird. Die Funktion "Dateien durchsuchen" kann damit als Ersatz fr den etwas umst„ndlichen "grep"-Kommandozeilenaufruf benutzt werden. Eine Option erlaubt aber auch, die Textpuffer anstatt externer Dateien zu durchsuchen. Im Unterschied zur Standard-Suchfunktion werden immer alle Textpuffer durchsucht und es wird die oben erw„hnte Liste mit dem Suchergebnis generiert. Weitere Optionen/Features: -------------------------- - reg. Ausdruecke, Wortsuche, Gross-/Kleinschreibung nicht beachten - im Suchergebnis nur die Namen der Dateien ausgeben, in denen der Suchbegriff gefunden wurde - Dateien, in denen der Suchbegriff gefunden wurde, automatisch laden. Auf Wunsch wird vor dem Laden der Dateien noch einmal nachgefragt. Dies ist sinnvoll, weil ein Suchbegriff unter Umstaenden in einer grossen Anzahl von Dateien vorkommen kann. - Unterverzeichnisse in die Suche einbeziehen. Eine Beschraenkung auf zu einem Projekt gehoerende Verzeichnisse ist in Vorbereitung (Projektverwaltung). - Liste mit dem Suchergebnis vor einer neuen Suche automatisch loeschen bzw. erweitern. - Suchergebnis sichern - Bereitstellung von benutzerdefinierten Dateifiltern und Pfaden (wie beim Dateiselektor). - Suchpfad automatische/manuell auf das Verzeichnis setzen, von dem aus MED gestartet wurde (nur sinnvoll, wenn MED von der Kommandozeile gestartet wird). - Anzeige der Anzahl der gefundenen Textstellen/Zeilen/Dateien - Kopieren der aktiven Zeile des Suchergebisses in das System-Clipboard ([CTRL+Einf]) - ein Doppelklick auf eine Zeile des Suchergebnisses schaltet auf den jeweiligen Textpuffer um und positioniert den Cursor an die gefundene Textstelle. Wenn sich die Datei nicht im Editor befindet, wird sie automatisch geladen. - der Font der Ergebnisliste kann mit Drag'n'Drop konfiguriert werden. Wichtiger Hinweis: ------------------ Der Dialog "Dateien durchsuchen" kann waehrend einer Editorsitzung staendig geoeffnet bleiben und erhaelt einen Eintrag in der OS/2 Fensterliste. Ausserdem kann der Dialog in seiner Position und *Groesse* veraendert werden, um eine Anpassung des Ausgabebereichs fuer das Suchergebnis zu ermoeglichen. (s. Menue "Suchen->Dateien durchsuchen") NEW: Die aktuelle Sektion wird jetzt in einer Combobox in der Symbolleiste angezeigt. Die Dropdown-Liste bietet die Sektionsnamen des aktiven Textpuffers zur Auswahl an und kann den Aufruf des Section Browsers in vielen Faellen ersetzen: Waehlen Sie eine Sektion mit Doppelklick oder [RETURN] aus, springt der Cursor zur betreffenden Sektion. Das Eingabefeld der Combobox ermoeglicht die inkrementelle Suche nach einem Sektionsnamen. Die Dropdown-Liste kann nicht nur mit der Maus, sondern auch ueber die Tastatur mit [F12] aktiviert werden. Das Tastaturkuerzel kann in med.kbd fuer den Funktionsnamen "sectionCombo" geaendert werden. Die Dropdown-Liste kann ohne Auswahl einer Sektion mit [ESC] oder [F12] geschlossen werden. Die Combobox wird, sofern aktiviert, automatisch in der untersten Zeile der Symbolleiste, rechts neben dem letzten Button angezeigt. Es werden automatisch soviele Buttons versteckt, bis die Combobox eine Mindestbreite erreicht hat. Wenn das Hauptfenster verbreitert wird, werden die versteckten Buttons wieder sichtbar. Wer sehr viele Buttons in der Symbolleiste benoetigt, kann einfach die Hoehe der Symbolleiste vergroessern (Notizbuch "Einstellungen->Symbolleiste"). Wenn die Symbolleiste am rechten/linken Rand angezeigt werden soll, ist der Einsatz der Combobox natuerlich nicht moeglich. In diesem Fall wird die aktuelle Sektion wie fueher in der Status-Zeile angezeigt. Die Combobox kann ueber das Kontextmenu der Symbolleiste, das sich ueber einen Klick mit der rechten Maustaste auf eine freie Stelle in der Symbolleiste oeffnen laesst, ein-/ausgeschaltet werden (Menueeintrag "Section Display"). Der Combobox-Font kann mit Drag&Drop auf eine freie Stelle der *Symbolleiste* konfiguriert werden. NEW: Dateiname aus Textpuffer uebernehmen und Datei oeffnen: Setzen Sie den Cursor in einem Textpuffer auf einen Dateinamen (Position innerhalb des Dateinamens spielt keine Rolle) und waehlen Sie den Meneintrag "Datei->™ffnen->Dateiname aus Textpuffer bernehmen". Die Datei wird dann automatisch in einen neuen Textpuffer geladen. Falls der Dateiname keine bzw. eine relative Pfadangabe enthaelt, wird die Datei relativ zum Pfad der aktuellen Datei geladen. Diese Funktion ist nuetzlich, um schnell z.B. eine Include-Datei eines C-Quelltextes zu laden (Systemincludes koennen erst nach Implementation der MED-Projektverwaltung geladen werden). Hinweis: -------- Die Funktion laesst sich auch ueber einen Doppelklick mit der linken Maustaste bei gleichzeitig gedrueckten [CTRL+ALT]-Tasten erreichen. Das Default-Tastaturkuerzel ist [CTRL+KO]. (s. Menue "Datei->Oeffnen") NEW: Unterstuetzung von Skeleton-Dateien, die beim Oeffnen einer noch nicht existierenden oder leeren Datei geladen werden. Dadurch kann z.B. auf einfache Weise eine neue Datei mit einem Standard-Header versehen werden. Die Skeleton-Dateien muessen sich im MED-Konfigurationsverzeichnis (Verzeichnis in dem auch med.cfg gespeichert wird) befinden und folgender Namenskonvention genuegen: skeleton.X wobei X fuer eine beliebige Dateiextension steht. Die Datei- extension dient zur Auswahl der Skeleton-Datei. Beispiele: ---------- skeleton.c wird beim Oeffnen einer neuen C-Datei geladen skeleton.pas wird beim Oeffnen einer neuen Pascal-Datei geladen NEW: Unterstuetzung der Microsoft Windows kompatiblen Codepage: - ein Text kann von der OS/2 Default Codepage (gesetzt in CONFIG.SYS) in die Windows Codepage umgewandelt werden (und umgekehrt). (s. Menue "Bearbeiten->Text->Codepage konvertieren") - es kann die Windows Codepage zur Textausgabe/Editieren aktiviert werden. (s. Menue "Fenster->Codepage") Wenn ein unter Windows erstellter Text mit MED editiert werden soll, kann entweder der Text in die OS/2 Codepage umgewandelt werden, oder es kann die Windows Codepage zur Textausgabe aktiviert werden. Die erste Moeglichkeit ist dann sinnvoll, wenn der Text nur noch unter OS/2 weiterverwendet wird. Die zweite Moeglichkeit ist anzuwenden, wenn der Text weiterhin unter Windows verwendet wird. Welche Codepage aktiv ist, wird in der Statuszeile angezeigt. NEW: Option fuer Window-Monitor: "Neues Textfenster nach Dateinamen einsortieren" Ein neues Textfenster kann damit jetzt auf drei verschiedene Arten in den Window-Monitor eingetragen werden: - am Listenende - sortiert nach Dateinamen - hinter aktivem Textfenstern einsortiert (s. Notizbuch "Einstellungen->Window-Monitor") NEW: Funktion "Block Kapitalisieren" wandelt die Anfangszeichen aller Wort innerhalb eines Blocks in Groáschreibung, den Rest der Worte in Kleinschreibung um. (s. Menue "Block->Konvertieren->Kapitalisieren") NEW: Funktion "Block mit Zeichen fuellen" ueberschreibt einen Block mit einem vorher abgefragten Zeichen. Wenn kein Zeichen angegeben wird, wird der Block mit Leerzeichen gefuellt. (s. Menue "Block->Konvertieren->Mit Zeichen fuellen") NEW: Neue Kommandozeilen-Option: "-m Makroname1[;Makroname2;...]" zum automatischen Starten von Makros nach Programmstart. Beispiel: --------- test.c -m macro1 startet nach dem Laden der Datei "test.c" das Makro mit dem Namen "macro1". Es koennen beliebig viele Makronamen getrennt durch ein Semikolon angegeben werden. Alle Makros werden unabhaengig von der Position des "-m" Schalters in der Befehlszeile immer nach dem Laden aller Dateien ausgefuehrt. Hinweis: -------- Der Name eines Makros kann beim Starten des Makrorecorders oder jederzeit im Makro-Manager (Button "Aendern...") festgelegt werden. NEW: Wenn die Bildschirmaufloesung geaendert wurde, werden beim naechsten Programmstart automatisch sinnvolle Werte fuer die Groesse/Position/Font des Hauptfensters und der veraenderbaren Dialoge eingestellt. Hinweis: ======== Diese Default-Einstellungen lassen sich jederzeit erzwingen, indem bei Programmstart [SHIFT+CTRL] gedrueckt wird. NEW: Pfadangaben (benutzerdefinierte Pfade im Dateiselektor, Backup-Pfade, Tool-Pfad, Tool-Arbeitsverzeichnis) koennen jetzt Environment-Variablen enthalten. Eine Environment-Variable wird dabei von %-Zeichen eingeschlossen. Beispiel: %TMP%\backups NEW: Im Dateiselektor kann im Dateinameneingabefeld ein Dateifilter eingegeben werden, der anschliessend durch Druecken von [CTRL + Return] uebernommen wird. Der Filter wird aber *nicht* in die Filterliste eingetragen. Dadurch kann die Filterliste von nur selten benutzten Filtern frei gehalten werden. Nach einer Operation, die einen speziellen Filter vorgibt (z.B. "Makros laden"), wird der zuletzt benutzte Filter wieder restauriert. NEW: Ein Spaltenblock kann jetzt mit den Tasten [SHIFT+ALT+PgUp] bzw. [SHIFT+ALT+PgDown] seitenweise markiert werden. NEW: Optional kann der Window Monitor in die OS/2 Taskliste eingetragen werden. Ein Fehler, der dazu fuehrte, dass der Window Monitor unter Umstaenden erst nach der Aktivierung mit der Maus Tastatureingaben entgegennahm, ist beseitigt. (s. Notizbuch "Einstellungen", Seite "Window Monitor") NEW: Optional kann das Tool-Ausgabefenster in die OS/2 Taskliste eingetragen werden. Diese Option kann fuer jedes Tool getrennt eingestellt werden. (s. Notizbuch "Toolkonfiguration", Seite "Optionen") NEW: Das Textfenster-Kontextmenue kann jetzt ueber [SHIFT+F10] aufgerufen werden. NEW: Option "Cursor Rechts am Zeilenende geht zur naechsten Zeile". Diese Option hat Auswirkungen auf das Verhalten des Cursors, wenn die Cursor-Taste [Pfeil rechts] gedrueckt wird. Wenn diese Option aktiviert ist, springt der Cursor beim Erreichen des Zeilenendes an den Anfang der naechsten Zeile. Ansonsten kann der Cursor ueber das Zeilenende hinweg weiter bewegt werden. (s. Notizbuch "Einstellungen", Seite "Editieren") NEW: Funktion "indent" (Default-Taste [ALT+I]) rueckt einen Zeilenabschnitt so ein, dass der Cursor unter dem naechsten Nicht-Leerzeichen der darueberliegenden Zeile steht. Falls die Laenge der darueberliegende Zeile kleiner als die aktuelle Cursor-Position ist, werden die vorhergehenden Zeilen zur Bestimmung der Position des ersten Nicht-Leerzeichens benutzt, bis die erste sichtbare Zeile im Textfenster erreicht ist. Eine Zeile/Block wird an der aktuellen Cursor-Position ein- bzw. ausgerckt. Beispiel: --------- printf("hello\n"); // Hello for(;;) printf("world!\n");// World ^ | Cursor-Position vor Indent . . printf("world!\n"); // World ^ | Cursor-Position nach erstem Indent . . printf("world!\n"); // World ^ | Cursor-Position nach zweitem Indent Funktion "unIndent" (Default-Taste [ALT+U]) ist die Umkehrfunktion zu "indent". Funktionen "indentBlk" (Default-Taste [SHIFT+ALT+I]) und "unIndentBlk" (Default-Taste [SHIFT+ALT+U]) funktionieren analog auf einen Blockbereich. (s. Menue "Bearbeiten->Zeile->Indent/Unindent" und Menue "Block->Indent/Unindent") NEW: Fuer den automatischen Zeilenumbruch koennen jetzt eigene Wortbegrenzer definiert werden, an denen eine Zeile umgebrochen werden darf. In der Defaulteinstellung ist nur das Leerzeichen als Wortbegrenzer eingetragen. (s. Notizbuch "Einstellungen", Seite "Editieren/Zeilenumbruch") CHG: Die Funktionen "Cursorposition sichern" und "Cursorposition restaurieren" wirken jetzt *global* auf alle Textpuffer (vorher nur lokal auf einen Textpuffer), d.h. beim Restaurieren der Cursorposition wird auf den entsprechenden Textpuffer umgeschaltet. CHG: Bei mehrstufigen Tastaturkommandos (z.B. [CTRL + KB]) wird die zweite Taste jetzt auch ohne Modifier-Taste erkannt. CHG: Die Tastenkombinationen [SHIFT+CTRL+Umlaut] und [SHIFT+ALT+Umlaut] koennen jetzt mit Funktionen/Makros belegt werden. CHG: Laufwerk-Labels fuer Netz-Laufwerke werden im Dateiselektor nicht mehr angezeigt. CHG: MED merkt sich jetzt die zuletzt fuer ein Makro benutzte Tastenkombination. CHG: Bessere Fehlermeldungen bei Dateioperationen. CHG: Hoehere Performance bei Blockoperationen (macht sich erst bei sehr vielen Zeilen bemerkbar). CHG: "Gehe zu Sektion" sucht jetzt zuerst im aktiven Textpuffer. FIX: "noname"-Dateiname werden jetzt unter keinen Umstaenden mehr in das Datei-Menue eingetragen. FIX: Beim Anordnen der Textfenster/Views (Ueberlappend, Nebeneinander, ..) wird ein eventuell eingestellter Maximized-Status der Fenster aufgehoben. FIX: Der Modified-Status wird jetzt nach dem Sichern einer Datei und anschliessendem Undo gegebenenfalls auf "veraendert" gesetzt (der Speichervorgang wird nicht rueckgaengig gemacht). FIX: Syntax-Typ Umschaltung FIX: Der Zeilenabstand beim formatierten Drucken wird jetzt korrekt berechnet (war vorher zu klein). FIX: Blockmarkierung mit der Maus, wenn Zeilennummerierung eingeschaltet ist. FIX: Makro mit Blockmarkierung im Modus "Automatisch Blockmarkierung aufheben" FIX: EOL-Kommentare (Syntax-Highlighting) funktionieren nun wieder, auch wenn comCol > 0 gesetzt wird. Das Anfangssymbol des EOL-Kommentares werden jetzt in der richtigen Farbe dargestellt, wenn es in einem normalen Token vorkommt. FIX: Die Hochkommata (`ï) sind jetzt auch ueber die Tastenkombinationen [Hochkomma][Leertaste] erreichbar (bisher nur ueber [Hochkomma][Hochkomma]) FIX: Fehler im Notizbuch "Einstellungen", der beim sequentiellem Rueckwaertsblaettern dazu fuehrte, dass nicht immer auf die vorhergehende Notizbuchseite gewechselt wurde. FIX: Fehler im Syntax-Highlighting, der unter Umstaenden nach der Funktion "Zeile vertauschen" auftreten konnnte. ---------------------------------------------------------------------------- VERSION 1.17 12.Februar 1997 ---------------------------------------------------------------------------- NEW: das Syntax Highlighting unterstuetzt jetzt auch die Farbcodierung von Integer-Zahlen. Zur Konfiguration sind die unten beschriebenen _optionalen_ Direktiven in "med.syn" moeglich. Ohne Konfiguration werden nur Dezimalzahlen erkannt und in einer Defaultfarbe ausgegeben. Direktiven: =========== numPostfix: [string] Diese Direktive legt ein optionales Postfix fest, das hinter einer Integer-Zahl auftreten kann (aber nicht muss). Die Gross-/Kleinschreibung des Parameters "[string]" wird nicht beachtet. Beispiel fuer C/C++: -------------------- numPostfix: L color: .... decPrefix: [string] color: .... hexPrefix: [string] color: .... octPrefix: [string] color: .... binPrefix: [string] Diese Direktiven legen optionale Prefixe und die Farbcodierung fuer Dezimal-/Hexadezimal-/Oktal- und Binaer-Zahlen fest. Wenn keine Prefixe festgelegt werden, koennen nur Dezimalzahlen erkannt werden. Ueblicherweise muss fuer Dezimalzahlen kein Prefix angegeben werden. Zur Festlegung der Farbe, die zur Ausgabe von Dezimalzahlen verwendet werden soll, kann die Direktive "decPrefix:" ohne Parameter mit einer vorangestellten "color:"-Direktive verwendet werden. Beispiel: --------- color: myDarkYellow, normal, myDarkYellow, normal decPrefix: HINWEIS: -------- Das erste Zeichen eines Prefix darf nicht in der Symbolliste enthalten sein! NEW: das Syntax Highlighting unterstuetzt jetzt zwei "end-of-line" Kommentare, wobei jedem Kommentar eine eigene Startspalte zugeordnet werden kann. Beispieleintrage in "med.syn" fuer FORTRAN: ------------------------------------------- eolCom: ! comCol: 0 eolCom: C comCol: 1 Diese Anweisungen definieren "!" und "C" als EOL-Kommentarzeichen, wobei das "!" an einer beliebigen Spalte stehen darf. Das "C" wird nur dann als Kommentarzeichen erkannt, wenn es in der ersten Spalte steht. NEW: Syntax-Highlighing fuer FORTRAN. Verbesserte Java-Unterstuetzung (Section Browser/Display). NEW: Das Submenue "Syntax Typ" im Dateimenue erlaubt das temporaere Umdefinieren des Dateityps fuer das Syntax-Highlighting im aktiven Textfenster. NEW: Funktion "splitLine" fuegt einen Zeilenumbruch ein, laesst aber im Gegensatz zur [Return]-Taste die Cursorposition unveraendert. Die Default-Tastenkombination ist [SHIFT+Return]. NEW: Funktion "Alle schliessen" zum Schliessen aller geoeffneten Dateien ohne MED zu verlassen. (s. Menue "Datei") NEW: Option "Beim horizontalen Scrollen Cursor zentrieren". Wenn diese Option *nicht* aktiviert ist, wird der Fensterinhalt horizontal zeichenweise gescrollt, wenn der Cursor den rechten oder linken Fensterrand erreicht hat. Ist die Option aktiviert, wird der Fensterinhalt um die Haelfte der Fensterbreite nach links bzw. rechts versetzt, und damit der Cursor horizontal zentriert. (s. Notizbuch "Einstellungen", Seite "Editieren") NEW: Button "Alle ersetzen" im "Ersetzen->Nachfrage"-Dialog. Wenn dieser Button angeklickt wird, werden ab der aktuellen Cursorposition alle passenden Textstellen ersetzt. NEW: ein Doppelklick mit der linken Maustaste in den freien Bereich eines Textfensters loescht eine Blockmarkierung. CHG: Vor dem Sichern der Konfiguration von Hand ("Sofort sichern..." im Notizbuch "Einstellungen") erscheint jetzt eine Sicherheits- abfrage. CHG: Die Tastenkombination [ALT+F4] beendet MED. [CTRL+F4] schliesst das aktive Textfenster. CHG: schnellerer Bildaufbau, wenn nur ein Teil eines Textfensters neu gezeichnet werden muss. CHG: Verbesserung der Performance beim formatierten Drucken. FIX: Das Anspringen einer Sektion funktioniert jetzt wieder, auch wenn sich die gesuchte Sektion in einem Textpuffer befindet, das betreffende Textfenster aber noch nicht aktiviert worden ist (Fehler ist nur bei "nicht C/C++" Dateien aufgetreten). FIX: Fehler beim Oeffnen einer von einer anderen Anwendung gesperrten Datei behoben. FIX: die Zeilennummerierung funktioniert jetzt auch beim Scrollen ueber die Pfeilbuttons des vertikalen Scrollbalkens korrekt (Fehler trat nur auf, wenn die Option "Scrollbalken veraendert Cursorposition" nicht aktiviert war). FIX: Dateiselektor Laufwerkauswahl FIX: Marken werden jetzt beim Splitten einer Zeile nicht mehr in die neue Zeile uebernommen. FIX: ein relativer Pfad ist als Tool-Arbeitsverzeichnis jetzt moeglich. Wenn ein Tool in seiner Ausgabe einen Dateinamen ohne Pfad bzw. mit relativen Pfad angibt, vergleicht MED zuerst die Dateinamen (ohne Pfad) der Textpuffer mit dem vom Tool gelieferten Dateinamen. Falls eine Uebereinstimmung der Dateinamen gefunden wird, wird der betreffende Textpuffer aktiviert. Wenn keine Uebereinstimmung gefunden werden kann, wird der vom Tool gelieferte Dateinamen bzw. relative Pfad mit dem Tool-Arbeitsverzeichnis kombiniert und die Datei geladen (falls vorhanden). Wenn kein Tool-Arbeitsverzeichnis definiert ist, wird stattdessen der Pfad verwendet, von dem aus MED gestartet wurde. ---------------------------------------------------------------------------- VERSION 1.16 23.Dezember 1996 ---------------------------------------------------------------------------- NEW: DDE (Dynamic Data Exchange). Es werden folgende "EPM-kompatible" Kommandos unterstuetzt: Kommando | Parameter ---------+---------------------------------------- EDIT | dateiname1 [dateiname2]...[dateinameN] GOTO | zeile [spalte] SAYERROR | fehlermeldung MED kann als DDE-Server unter dem Default-Namen "MRED" unter dem DDE-Topic "EDIT" von einem Client (z.B. Workframe) angesprochen werden. Falls sich ein Client bezueglich des anzusprechenden DDE-Servernames nicht konfigurieren laesst, kann der Servername in MED angepasst werden. Zur vollstaendigen DDE-Kompatiblitaet zu EPM, sollte der Servername "EPM" eingestellt werden. (s. Notizbuch "Einstellungen", Seite "DDE") NEW: Option fuer den Window-Monitor "Neues Fenster hinter aktivem Fenster einsortieren". Wenn diese Option aktiviert ist, wird der Name eines neuen Textfensters *nicht* am Ende der Liste, sondern hinter dem Namen des gerade aktiven Textfensters einsortiert. (s. Notizbuch "Einstellungen", Seite "Window Monitor") NEW: Syntax Highlighting fuer 80x86 Assembler und Clipper (s. Syntax-Konfigurationsdatei "med.syn") NEW: der automatische Zeilenumbruch kann optional in der Syntax- Konfigurationsdatei "med.syn" getrennt fuer jeden Dateityp angepasst werden. Dazu dienen Eintraege mit folgendem Syntax: wordWrap: current [col] | on [col] | off | disabled "current [col]" uebernimmt den aktuellen Arbeitsstatus der Zeilenumbruchsfunktion und setzt optional die Umbruchspalte auf die Spalte [col]. "on [col]" schaltet den Zeilenumbruch ein und setzt optional die Umbruchspalte auf die Spalte [col]. "off" schaltet den Zeilenumruch aus. "disabled" deaktiviert den Zeilenumbruch vollstaendig, so dass ein versehentliches Einschalten nicht moeglich ist. (s. Syntax-Konfigurationsdatei "med.syn") NEW: ein Mausklick auf das Anzeigefeld fuer den aktuellen ASCII Code schaltet zwischen Dezimal-/Hexadezimalmodus um. Ein Mausklick auf das Anzeigefeld fuer die aktuelle Cursosposition ruft den Dialog "Gehe zu Zeile" auf. NEW: neben den Lesenzeichen koennen fuenf globale Marken gesetzt werden. Die Default-Tastaturkuerzel sind [ALT+1] ... [ALT+5] zum Setzen einer Marke und [CNTRL+1] ... [CNTRL+5] fuer das Anspringen einer Marke. (s. Menue "Suchen->Marke") CHG: schnellerer Fensteraufbau bei Programmstart, wenn mehrere Dateien geladen werden (dazu muss die Option "Textfenster maximieren" im Notizbuch "Einstellungen->Programmstart" aktiviert werden). CHG: waehrend das Hauptfenster mit einem Mausklick auf die Statuszeile aktiviert wird, sind die Statusfelder insensitiv, d.h. es kann nicht mehr z.B. der Schreibmodus unbeabsichtigt umgeschaltet werden. FIX: das Festlegen der Zeilen-/Spaltenposition ueber die Kommandozeile funktioniert jetzt, auch wenn die Datei schon geladen ist. FIX: Clipboard-Zeilen, die nur ein Linefeed als Zeilenendekennung haben, werden jetzt wieder korrekt behandelt. FIX: unter besonderen Umstaenden auftretendes fehlerhaftes Verhalten des Syntax-Highlighting bei unausgeglichener Anzahl von oeffnenden/schliessenden Kommentar-Token. FIX: Popup-Menue fuer Online-Hilfe FIX: Im Dateiselektor werden die Laufwerke jetzt korrekt angezeigt, auch wenn es "Loecher" in den Laufwerksbuchstaben gibt. FIX: wenn die Option "Window Monitor->Ge”ffnet halten" nicht aktiviert ist, wird der Window Monitor beim Auswaehlen eines Eintrags nun wieder automatisch geschlossen. FIX: nach "Syntaxkonfiguration neu laden" werden Aenderungen an den regulaeren Ausdruecken zum Auffinden von Sektionen sofort sichtbar. FIX: F1 ruft die Online-Hilfe jetzt auch wieder in Dialogen auf. ---------------------------------------------------------------------------- VERSION 1.15 11.November 1996 ---------------------------------------------------------------------------- NEW: optional kann eine Zeilennummerierung mit konfigurierbarer Breite eingeschaltet werden. Font und Farben der Zeilennummerierung koennen via Drag&Drop eingestellt werden. (s. Menue "Optionen", "Zeilennummerierung" und Notizbuch "Einstellungen", Seite "Fenster - Kontrollelemente") NEW: konfigurierbare Autosave-Funktion (ereignis- und/oder zeitgesteuert) (s. Notizbuch "Einstellungen", Seite "Autosave") NEW: "Zurck zur aufrufenden Sektion" ([ALT+Return]) als inverse Funktion zu "Gehe zu Sektion". Die Aufrufhierarchie darf beliebig tief werden. Das Textfenster wird automatisch geschlossen, wenn selbiges zuvor von "Gehe zu Sektion" geoeffnet wurde. (s. Submenue "Sektion..." im Menue "Suchen") NEW: tastaturgesteuertes/automatisches Erzeugen von ASCII-Graphiken bzw. Umrandungen. Es stehen zehn verschiedene Linientypen zur Verfuegung. Die Default-Tastaturbelegung ist [Ctrl+Alt+CurLeft|CurRight|CurDown|CurUp]. Ein markierter Spaltenblock kann mit dem ausgewaehlten Linientyp umrandet werden. ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ» º Falls diese Zeilen nicht von einer Doppellinie umrandet sein º º sollten, ueberprufen Sie bitte, ob in der CONFIG.SYS der Befehlº º "CODEPAGE=437,850" enthalten ist. º ÈÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ (s. Untermenue "Zeichnen" im Menue "Bearbeiten"). NEW: der Dateiselektor merkt sich die letzten zwanzig Pfade, unter denen eine Datei geladen/gesichert wurde (Pfad-History). Das "Laufwerke"-Menue wurde durch eine Dropdown-Liste ersetzt. Neben den Laufwerksbuchstaben werden die Volume-Labels anzeigt. NEW: optional wird in der Fenstertitelzeile neben der Zeilen-/Spaltenposition der ASCII Code des Zeichen ausgegeben, auf dem der Cursor gerade steht. Der Code kann dezimal oder hexadezimal angezeigt werden. NEW: der horizontale/vertikale Scrollbalken der Textfenster kann entfernt werden. (s. Notizbuch "Einstellungen", Seite "Fenster") NEW: besser erkennbare Kennzeichnung modifizierter Dateien durch eine rote "LED" im Window-Monitor und in der Fenstertitelzeile. Im Window-Monitor werden die Namen von Ansichten eingerckt in blauer Farbe dargestellt. NEW: optional kann jedes Tool ueber einen Eintrag im "Tools"-Menue gestartet werden. Als Eintragstext wird der Tool-Titel verwendet. (s. Notizbuch "Toolkonfiguration", Seite "Tastaturkrzel/Symbol") NEW: wenn eine Datei mit Backup-Extension (Zeitstempel, Nummerierung) gesichert wird, wird automatisch der Dialog "Sichern als..." aufgerufen. NEW: im "Datei"-Menue wird ein Submenue ("Mehr...") angelegt, wenn die File-History mehr als 10 Dateien enthaelt. Die File-History kann jetzt max. 40 Eintraege enthalten. (s. Notizbuch "Einstellungen", Seite "Allgemein") NEW: der Tool-Manager kann nun mit den fehlerhaften Pfadausgaben des GNU C++ Compilers (doppelte Backslashes) umgehen. NEW: im Dialog "Drucken (formatiert)" wird der aktuell eingestellte Fontname angezeigt. NEW: beim formatierten Drucken wird die Nummer der gerade in Druck befindlichen (bzw. an den Spooler geschickten) Seite in der Titelzeile des betreffenden Textfensters angezeigt. NEW: das formatierte Drucken kann mit der [ESC] Taste abgebrochen werden. NEW: die Anordnung der Textfenster beim Programmstart kann eingestellt werden (ueberlappend, maximiert). (s. Notizbuch "Einstellungen", Seite "Programmstart") CHG: die Speicherverwaltung erzeugt jetzt weniger Overhead, was sich in einem erheblich geringeren Speicherbedarf beim gleichzeitigen Bearbeiten vieler Dateien bemerkbar macht. CHG: bessere Performance der Block/Clipboard/Zeilenumbruch Funktionen, die jetzt keine externen Auslagerungsdateien mehr benutzen. CHG: die maximale Zeilenlaenge wurde von 1000 auf 4094 Zeichen erhoeht. CHG: Tastaturkrzel k”nnen jetzt die Modifier-Tasten [SHIFT], [CNTRL] und [ALT] in Kombinationen enthalten (ausgenommen [SHIFT+CTRL+ALT]). CHG: relative Pfadanteile werden beim Laden einer Datei aufgeloest. CHG: Pfade, die zu lang zur Darstellung im "Datei"-Menue sind, werden jetzt so abgekuerzt, dass das Laufwerk und moeglichst viele Pfadanteile ausgegeben werden koennen. CHG: die Eingabe des Dialogs "Zusaetzliche Tool Parameter" wird in der MED-Konfiguration gesichert. Wenn der Dialog mit "Abbruch" verlassen wird, wird das Tool nicht mehr gestartet. CHG: wenn das Hauptfenster iconisiert wird, wird das Tool-Ausgabefenster versteckt. CHG: der Window-Monitor laeuft nicht mehr in einem separaten Thread (mit eigener PM-Message Queue), was bei Benutzung von NPSWPS zu Problemen fuehren konnte. FIX: die in einer Dateiliste uebergebenen Dateien (Kommandozeilenparameter "-f") werden jetzt wieder in der korrekten Reihenfolge geladen. FIX: Absturz bei *sehr* langen C-Funktionsnamen im Section Display/Browser FIX: das Hauptfenster bleibt jetzt maximiert, wenn ueber den Window- Monitor auf ein anderes Textfenster umgeschaltet wird. FIX: bei Benutzung des vertikalen Scrollbalken wird jetzt auch im Modus "Scrollbalken ver„ndert Cursorposition" das Textende erreicht. FIX: die von OS/2 bereitgestellte Funktion zum Maximieren eines Textfensters (Doppelklick auf die Titelzeile) wurde korrigiert, so dass das Textfenster den Arbeitsbereich des Hauptfensters ganz ausfuellt. FIX: wenn ein Tool in einer Fehlermeldung einen relativen Pfad zur beanstandeten Datei enthaelt, wird zunaechst versucht die Datei relativ zum Arbeitsverzeichnis des Tools zu laden. Wenn das Arbeitsverzeichis selbst einen relativen Pfad enthaelt oder nicht definiert ist, wird versucht die Datei relativ zum MED Startverzeichnis zu laden. FIX: wenn ein belegtes Tastaturkuerzel von einem Makro ueberschrieben wird, wird beim Beenden von MED nicht mehr nachgefragt, ob die Tastaturbelegung gesichert werden soll. FIX: das Dateinameneingabefeld des Dateiselektors akzeptiert jetzt absolute Pfade inklusive Dateinamen, auch wenn die Datei im Wurzelverzeichnis steht (z.B. "d:\config.sys", "\config.sys"). ---------------------------------------------------------------------------- VERSION 1.14 1.Oktober 1996 ---------------------------------------------------------------------------- NEW: automatisches Suchen einer Sektion. Dazu wird der Cursor auf eine Referenz der Sektion (z.B. Aufruf einer C-Funktion) gesetzt und dann "Gehe zu Sektion" aufgerufen (default Tastaturkrzel [CNTRL-Return]). Die Sektion wird zun„chst in den Textpuffern und dann in den Dateien des Verzeichnisses, in dem die aktuelle Datei enthalten ist, gesucht. Rekursion in darunterliegende Verzeichnisse oder die Auswahl des zu durchsuchenden Verzeichnisses ist nicht m”glich, was fr die meisten Anwendungen auch nicht notwendig ist (in der n„chsten Version von MED wird es die M”glichkeit geben, zu einem Projekt geh”renden Verzeichnisse/Dateien zu definieren). Eine "ctags-kompatible" Verzeichnisdatei ist geplant. NEW: automatisches Laden der zuletzt editierten Dateien. Die Dateinamen werden beim Beenden von MED in die Datei "med.lru" gestellt. Diese Datei kann lokal im aktuellen Verzeichnis oder global bei den anderen Konfigurationsdateien gehalten werden. Beim naechsten Programmstart werden die in "med.lru" referenzierten Dateien automatisch geladen. Das automatische Laden kann durch Drcken der [CNRTL]-Taste w„hrend des Startvorgangs unterbunden werden. (s. Notizbuch "Einstellungen", Seite "Programmstart") NEW: Der Window-Monitor kann optional an das Hauptfenster "angeheftet" werden (links, rechts, oben, unten). Hoehe/Breite und Position des Window-Monitors werden dann beim Aendern der Groesse bzw. Verschieben des Hauptfensters automatisch angepasst. (s. Notizbuch "Einstellungen", Seite "Window Monitor") Ueber die rechte Maustaste ist im Window-Monitor ein Kontextmenue aufrufbar. NEW: die Dateinamen von Backups koennen nun optional auch mit einer Nummerierung versehen werden (bisher nur Zeit/Datum). Dadurch werden mehrere Backups auch auf FAT-Partitionen moeglich. Die juengste Version erhaelt die Erweiterung "0", die zweitjuengste "1" usw. (s. Notizbuch "Einstellungen", Seite "Laden/Sichern") NEW: in der Kommandozeile und im Dateiselektor werden in Dateinamen enthaltene Wildcards ("*", "?", "[]") expandiert. NEW: der Status des Flags "Sichern" im Dialog "Lesezeichen setzen" wird in der Konfiguration gespeichert. Um bei permanent aktivierter "Sichern"-Option die Lesezeichenliste nicht ins Unendliche wachsen zu lassen, kann die maximale Anzahl festgelegt werden. Die aeltesten ueberzaehligen Lesezeichen werden automatisch entfernt. NEW: Funktionen zum schnellen Setzen/Anspringen eines "Ping-Pong" Lesezeichens ohne Aufruf der Lesezeichen-Dialoge. "Cursorposition sichern" speichert die aktuelle Cursorposition. "Cursorposition restaurieren" setzt den Cursor an die gespeicherte Cursorposition zurck. Dabei wird automatisch die gerade aktuelle Position als Rcksprungmarke gespeichert. Beispiel: --------- Der Cursor befindet sich in Zeile 20. Sie rufen "Cursorposition sichern" auf. Jetzt scrollen Sie in Zeile 100. Durch Aufruf von "Cursorposition restaurieren" springt der Cursor in Zeile 20. Bei erneutem Aufruf von "Cursorposition restaurieren" springt der Cursor wieder in Zeile 100 usw... (s. Menue "Bearbeiten", "Cursorposition sichern/restaurieren") NEW: Ersetzen eines markierten Blockbereichs durch eine Zeicheneingabe oder Einfgen des Clipboards. Dazu muss der CUA-Blockmarkierungsmodus ("Automatisch Blockmarkierung aufheben") aktiviert sein. NEW: mit der Option "Scrollbalken ver„ndert Cursorposition" l„sst sich einstellen, ob die Cursorposition beim Scrollen mit den Scrollbalken versetzt oder unver„ndert bleiben soll. Wenn die Cursorposition unver„ndert bleibt, wird der Cursor unsichtbar, sobald die aktuelle Zeile den sichtbaren Fensterbereich verl„sst. Bei der Eingabe eines Zeichens oder beim Bewegen des Cursors mit den Cursortasten, wird der Textabschnit, in dem sich der Cursor befindet, automatisch sichtbar gemacht. (s. Notizbuch "Einstellungen", Seite "Cursor") NEW: "Suchen..." unterstreicht gefundene Textstellen grn. NEW: Automatisches Sichern einer Syntaxdefinitionsdatei und nachfolgendem Neuladen der Syntaxkonfiguration. ("Optionen->Syntaxkonfiguration neu laden") NEW: fr die Form des Mauszeigers in den Textfenstern kann zwischen "Pfeil" und "I-Beam" gew„hlt werden (s. Notizbuch "Einstellungen", Seite "Maus->Mausform") NEW: Funktionen "Bearbeiten->Zeile->Leerzeichen links l”schen" und "Bearbeiten->Zeile->Leerzeichen rechts l”schen" zum entfernen der Leerzeichen von der Cursorposition bis zum naechsten normalen Zeichen. Die "Bearbeiten->Wort->L”schen" hat die gleiche Funktionalit„t wie "Bearbeiten->Zeile->Leerzeichen rechts l”schen", wenn der Cursor auf einem Leerzeichen steht. NEW: Syntax Highlighting fuer HTML und Modula-2. NEW: Undo l”scht das "Ge„ndert"-Flag eines Textpuffers sobald alle Žnderung rckg„ngig gemacht worden sind. Bitte beachten Sie, dass der Undo-Puffer eine bestimmte Gr”esse hat, so dass nicht immer der Urzustand einer Datei erreicht werden kann. NEW: bei gedrckter [SHIFT]-Taste kann mit einem Klick der linken Maustaste das Blockende neu gesetzt werden. Ist kein Block markiert, wird die aktuelle Cursorposition als Blockstart benutzt. NEW: Funktion "Alles markieren" im Menue "Block". NEW: es kann eine Liste von Zeichen definiert werden, bei deren Auftreten in der ersten Spalte der Zeilenumbruch einen neuen Absatz beginnt (s. Notizbuch "Einstellungen", Seite "Editieren->Zeilenumbruch->Absatzbegrenzer") NEW: die akustischen Warnhinweise lassen sich abschalten (s. Notizbuch "Einstellungen", Seite "Allgemein") NEW: Im Dateiselektor k”nnen die Fonts fr die Menleiste, die Datei-/Verzeichnisliste und das Dateinameneingabefeld per Drag'n'Drop konfiguriert werden. Im Section-Browser kann der Font fr die Sektionsliste per Drag'n'Drop konfiguriert werden. Im Dialog "MED verlassen" kann der Font fr die Dateiliste per Drag'n'Drop konfiguriert werden. NEW: Merlin-Anpassung: die Notizbcher erscheinen unter Merlin im neuen Karteikarten-Look. CHG: Compiler-Fehlermeldungen werden nicht mehr in der Statuszeile, sondern in einem Info-Fenster direkt unter der betroffenen Zeile angezeigt. Das Info-Fenster wird bei einer Cursorbewegung automatisch entfernt. CHG: weitere Verbesserung des Syntax Highlighting: reservierte Worte drfen jetzt ein Symbol am Anfang und Ende enthalten. CHG: wenn ein Textfenster durch einen Mausklick in den Textbereich aktiviert wird, bleibt die Cursorposition erhalten. CHG: Laden einer bereits geoeffneten Datei: wenn kein neuer Puffer angelegt werden soll, wird auf den bereits bestehenden Puffer umgeschaltet. CHG: Die Tasten F1 und F10 koennen jetzt auch mit einem Makro belegt werden. CHG: beim Markieren eines Wortes wird der Cursor auf den Wortanfang gesetzt. CHG: im Dateiselektor kann mit [SHIFT+TAB] zum vorhergehenden passenden Dateinamen gesprungen werden. FIX: die Erkennung, ob eine Instanz von MED bereits l„uft, funktioniert jetzt auch dann zuverl„ssig, wenn mehrere Dateien auf das MED-Icon geschoben werden. FIX: NDX Untersttzung FIX: Meldung "Makro wird aufgezeichnet" wird jetzt nicht mehr vorzeitig gel”scht. FIX: Blockmarkierung mit der Maus bleibt jetzt nicht mehr h„ngen, wenn der Mausknopf ueber einem Fensterrahmen losgelassen wird. ---------------------------------------------------------------------------- VERSION 1.12 8.Juli 1996 ---------------------------------------------------------------------------- NEW: neues Prgramm-Icon in den Gr”áen 32x32 und 40x40. NEW: in der Datei "epm.kbd" wird jetzt eine EPM-Tastaturanpassung mitgeliefert. Wenn diese Tastatur als Default benutzt werden soll, muá die Datei zu "med.kbd" umbenannt werden. NEW: pro Datei k”nnen jetzt maximal 99 Backups angelegt werden. šberz„hlige Backups werden gel”scht. Wenn mehr als 1 Backup angelegt werden soll, wird an den Dateinamen jeweils das aktuelle Datum und die Uhrzeit angeh„ngt. Dadurch ist der Einsatz auf die Dateisysteme HPFS und EXT2FS beschr„nkt, da FAT bekanntlich keine langen Dateinamen untersttzt. Auf FAT Laufwerken wird automatisch nur ein Backup mit dem original Dateinamen angelegt. (s. Notizbuch "Einstellungen", Seite "Laden/Sichern") NEW: Suchen und Ersetzen mit regul„ren Ausdrcken Beispiel: --------- Suchstring: oldfoo\(([^ ,]*), ([^\)]*)\) Ersatzstring: newfoo(\2, \1, FALSE) In diesem Beispiel werden alle Aufrufe der Funktion "oldfoo" durch "newfoo" ersetzt, der erste mit dem zweiten Parameter vertauscht und ein neuer dritter Parameter "FALSE" eingefgt. NEW: Section-Browser und Section-Display: Der Section-Browser =================== ist eine Dialogbox, in der alle in einer Datei vorkommenden Sektionen aufgelistet werden. Eine Sektion kann z.B. eine C-Funktion sein. Der Section-Browser ist ber einen regul„ren Ausdruck zum Auffinden der Sektionen an jeden beliebigen Dateityp anpassbar. Fr C/C++ Dateien wird dieser regul„re Ausdruck nicht ben”tigt, weil der in MED integrierte C/C++ Parser diese Aufgabe schneller und pr„ziser erledigt. Der regul„re Ausdruck kann fr jeden Dateityp getrennt in med.syn definiert werden (wenn er fr C/C++ Dateien definiert wird, wird der interne C/C++ Parser abgeschaltet). Beispiel: --------- sectionRegexp: :[Hh][0-9] Dieser Eintrag dient zur Lokalisierung der Abschnitte eines IPF/IPP-Dokuments. Der Section-Browser kann mit folgenden Eintr„gen in der med.syn weiter konfiguriert werden: sectionDisplayRegexp: (:[Hh][0-9][ ]*)(res=[0-9]*\.)[ ]*(.*) Dieser Eintrag wird zum Aufsplitten eines Sektionskopfes in Datenfelder benutzt. Datenfelder werden in runde Klammern eingeschlossen. Dieser regul„re Ausdruck wird vom Section-Browser und vom Section-Display (s.u.) benutzt. sectionBrowserOrder: 1, 2 Dieser Eintrag gibt an, welche Datenfelder in welcher Reihenfolge im Section-Browser angezeigt werden. sectionBrowserMainKey: 2 Dieser Eintrag legt fest, nach welchem Datenfeld die Sektionen im Section-Browser sortiert werden. Section-Display =============== In der Statuszeile kann optional der Name der Sektion (z.B. C-Funktion), in der sich der Cursor gerade befindet, angezeigt werden. Zur Konfiguration des Section-Displays sind folgende Eintr„ge in med.syn zust„ndig: sectionDisplayRegexp: (:[Hh][0-9][ ]*)(res=[0-9]*\.)[ ]*(.*) s.o. sectionDisplayOrder: 2 Dieser Eintrag gibt an, welche Datenfelder in welcher Reihenfolge im Sektionen-Display angezeigt werden. sectionDisplay: 5000, 1000 Der erste Parameter dieses Eintrags gibt an, wieviele Zeilen eine Datei maximal enthalten darf, bevor das Section-Display aus Performance-Grnden abgeschaltet wird (hier 5000). Der Wert 0 schaltet das Section-Display vollst„ndig aus. Der zweite Parameter gibt die maximale Anzahl von Zeilen an, die ab der aktuellen Cursorposition nach einem Sektionsanfang durchsucht werden drfen (hier 1000). Fr schnelle Maschinen k”nnen beide Werte gr”áer angesetzt werden. NEW: Mit den Tasten [ALT + PageUp] und [ALT+ PageDown] kann innerhalb eines Textes zur vorhergehenden bzw. n„chsten Sektion gesprungen werden (das Section-Display muá dabei eingeschaltet sein). NEW: die Geschwindigkeit des internen Parsers fr C-Quelltexte wurde stark verbessert. NEW: Syntaxhighlighting fr LaTEX. NEW: Neben Farben sind jetzt auch die Fontattribute "bold", "underline" und "boldUnderline" beim Syntaxhighlighting auf den Bildschirm m”glich (s.u.). NEW: Drucken mit Syntax Highlighting. Es kann zwischen Farbdarstellung oder monochromer Darstellung gew„hlt werden. Zur monochromen Darstellung werden nur Fontattribute (normal, bold, italic, outline, underline) verwendet. In der Syntax-Konfigurationsdatei med.syn wurde die "color" Direktive erweitert: color: dispColor, dispFontAttribute, printColor, printFontAttribute Die beiden ersten Parameter sind fr die Bildschirmdarstellung, die folgenden fr die Druckerdarstellung zust„ndig. Beispiel: --------- color: blue, boldUnderline, darkblue, bold Wenn zur Bildschirmdarstellung auch Fontattribute benutzt werden sollen, ist darauf zu achten, daá nur die Attribute "bold" und "underline" nebst deren Kombination erlaubt sind. Bei der Druckerdarstellung k”nnen alle Fontattribute beliebig kombiniert werden. Reihenfolge und Groá-/Kleinschreibung spielen keine Rolle, es darf also z.B. "boldItalic" oder "italicBold" oder auch "italicbold" fr die gleiche Attributkombination geschrieben werden. NEW: Die Kopfzeile fr das Drucken kann jetzt konfiguriert werden. Neben den Platzhaltern fr Dateinamen (%F, %f), Seitennummer (%P), Zeit (%T) und Datum (%D) k”nnen beliebige Zeichenketten links, zentriert oder rechts in der Kopfzeile ausgedruckt werden (s. "Datei->Drucken->formatiert"). NEW: Unformatiertes Drucken direkt ber einen Druckerport (s. "Datei->Drucken->unformatiert") NEW: direkte Untersttzung der EPM Index-Dateien (*.NDX) ohne weiteren Konfigurationsaufwand. NEW: Bubble-Help fr Symbolleiste. Die Verz”gerungszeit und die maximale Anzeigezeit sind konfigurierbar (s. Notizbuch "Einstellungen", Seite "Symbolleiste->Gr”áe/Position/Hilfe") NEW: die Funktionen Laden und Speichern von Dateien wurde in Threads ausgelagert. Die Ladegeschwindigkeit wurde erhoeht (macht sich erst bei groáen Dateien bemerkbar). NEW: Vor dem Sichern einer Datei kann im Dateiselektor das Zeilenformat (OS/2 oder Unix) ge„ndert werden. Die Einstellung hat nur Gltigkeit fr den jeweiligen Speichervorgang. NEW: Der zuletzt im Dateiselektor zum Laden einer Datei benutzte Pfad wird in der Konfiguration gespeichert. NEW: "Home"-Button im Dateiselektor wechselt in das Default- Arbeitsverzeichnis. NEW: anstelle des MED Dateiselektors kann nun auch der System-Dateiselektor benutzt werden. (s. Notizbuch "Einstellungen", Seite "Dateiselektor") NEW: Optional wird die aktuelle Cursorposition auch beim Schlieáen einer Datei in den erweiterten Attributen gesichert. (s. Notizbuch "Einstellungen", Seite "Cursor") NEW: voreingestellte Pfade und Filter des MED Dateiselektors k”nnen automatisch oder manuell sortiert werden. NEW: bei gedrckten [CNTRL + ALT] Tasten kann ueber die numerische Tastatur der dezimale Wert eines beliebigen ASCII-Zeichens eingegeben werden, das in den Text eingefuegt werden soll. CHG: Die šberwachung des Datei-Zeitstempels kann jetzt abgeschaltet werden (s. Notizbuch "Einstellungen", Seite "Allgemein"). CHG: verbesserte Anpassung von Text-/Applikationfenstergr”áe. CHG: den defaultm„áig vom System belegten Tasten (F1, F10, Alt+Fx) k”nnen nun Editorfunktionen zugewiesen werden. Das etwas nervende Aktivieren des System-Mens ber [ALT] bzw. [ALTGR] ist abgeschaltet. CHG: der Text-/Block Zeilenumbruch wurde berarbeitet. CHG: vor dem Sichern einer unmodifizierten Datei erscheint jetzt ein Nachfragedialog. FIX: kein WPS-Lockup mehr bei der Anwendung einer Layoutpalette. FIX: Default-Codepage wird jetzt korrekt gesetzt. FIX: Scrollproblem im Zusammenhang mit NWPS behoben. FIX: wenn ein Block unter dem Namen einer bereits existierenden Datei gesichert werden soll, erscheint vorher eine Sicherheitsabfrage. FIX: ein "Maximized"-Status des Applikationsfenster wird beim n„chsten Programmstart korrekt restauriert. FIX: Speicherverlust im Dateiselektor behoben. ---------------------------------------------------------------------------- VERSION 1.11 12.Mai 1996 ---------------------------------------------------------------------------- NEW: Option "Ausgabefenster verstecken" erm”glicht das Starten eines Tools ohne die Anzeige des Ausgabefensters. Die Option "Ausgabefenster schlieáen" erm”glicht das automatische Schlieáen des Ausgabefensters, falls keine Fehler- meldung oder Warnung aufgetreten ist. (s. Notizbuch "Toolkonfiguration", Seite "Aktionen", Seite "Optionen") NEW: Mechanismus um das "Nachlaufen" der Tastatureingabe beim Scrollen, Blockmarkieren etc. zu verhindern. Das Alter, ab dem eine Tastatureingabe nicht mehr beachtet werden soll, kann im Bereich von 50 bis 500 Millisekunden eingestellt werden. Ein zu kleiner Wert fhrt auch auf einer schnellen Maschine zu "ruckelndem" Scrollen. Ein zu groáer Wert fhrt bei langsamen Maschinen zum "Nachlaufen". (s. Notizbuch "Einstellungen", Seite "Allgemein") NEW: die Druckerkonfiguration wird separat fr jeden Drucker gespeichert (max. 20 Drucker). Beim Neustart wird der zuletzt aktive Drucker wieder zum Default-Drucker. In der Titelzeile des "Drucken"-Dialogs wird ein Namenkrzel des aktiven Druckers ausgegeben. NEW: [SHIFT + PageUp] und [SHIFT + PageDown] markieren einen Standardzeilen- block seitenweise. NEW: in Dialog "Tastaturkrzel/Meneintrag konfigurieren" wird der in "med.kbd" benutzte Funktionsname angezeigt. NEW: Die Funktion "Suchen..." kann nun Leerzeilen finden, wenn das Eingabefeld fr die zu suchende Zeichenkette leer gelassen wird. NEW: Option "Markiertes Wort in Suchdialog bernehmen" (s. Notizbuch "Einstellungen", Seite "Editieren"). NEW: In die Online-Doku wurde ein Konterfei des Autors integriert, das im Bedarfsfall zum Stressabbau benutzt werden kann. CHG: Wenn ein Toolsymbol bei gedrckter [CNTRL]-Taste mit der linken Maus- taste angeklickt wird, erscheint nun das Notizbuch "Tool-Einstellungen „ndern". CHG: Die Tastaturabfrage wurde berarbeitet. CHG: Die Funktionen "Blockstart/ende markieren" sind jetzt auch wieder im Modus "Automatisch Blockmarkierung aufheben" verfgbar. CHG: Die in med.exe eingebaute Default-Tastaturbelegung wird nur noch dann vorinstalliert, wenn "med.kbd" nicht vorhanden ist. CHG: die Compiler-Symbole wurden aus der Default-Symbolleiste entfernt, weil die Zuordnung der Symbole zu Toolkonfigurationen von alten MED Versionen nicht funktionieren kann. Sie mssen die Compiler-Symbole "von Hand" einrichten. FIX: beim Verschieben eines Blocks in einen anderen Textpuffer wird das Fenster des Quellpuffers jetzt korrekt neu gezeichnet. FIX: Absturz beim Versuch eine Tastenkombination einem Tool zuzuordnen, das in einer alten MED Version angelegt wurde. FIX: Toolstart ber Symbolleiste/Tastatur FIX: Tool-Arbeitsverzeichnis FIX: Dateien der L„nge 0 werden nicht mehr zurckgewiesen. FIX: im Verzeichnisfenster des Dateiselektors wird jetzt auch in leeren Verzeichnissen ".." angezeigt. FIX: Gr”áe/Position des Applikationsfensters wird jetzt nicht mehr gesichert, falls MED im iconisierten Zustand beendet wird. Falls eine noch ungesicherte Datei vorhanden ist, wird das Applikationsfenster ge”ffnet. FIX: Dialogboxen werden jetzt in jedem Fall vollst„ndig sichtbar dargestellt. ---------------------------------------------------------------------------- VERSION 1.10 1.Mai 1996 ---------------------------------------------------------------------------- NEW: jeder registrierte Benutzer erh„lt eine Id, die zur Personalisierung von MED benutzt werden kann (s. Men "Hilfe", "Produktinformation") NEW: die Block-Markierungsfunktionen wurden neu implementiert. Es stehen jetzt der Standardzeilenblock (Streamblock) und der Spaltenblock zur Verfgung. Ein Standardzeilenblock kann mit den CUA-Tastenkombinationen [SHIFT + Cursortaste] bzw. [SHIFT + CNTRL + Cursortaste] markiert werden. WICHTIG: ********************************************************************** * Ein Spaltenblock wird mit [SHIFT + ALT + Cursortaste] markiert. * * Es wird automatisch zwischen Standardzeilen-/Spaltenblock-Modus * * umgeschaltet. * ********************************************************************** Beide Blockarten k”nne weiterhin mit den Blockstart/-ende Funktionen markiert werden. In diesem Fall muá der gewnschte Blockmodus (Standardzeilen-/Spaltenblock) ausgew„hlt werden. NEW: die Tastaturkonfiguration wurde aus der bin„ren Konfigurationsdatei (med.cfg) in eine ASCII-Datei (med.kbd) ausgelagert. Das hat den Vorteil, daá die Tastaturkonfiguration schneller als bisher angepasst werden kann (die "on the fly" Konfiguration der Tastatur zur Laufzeit ist natrlich weiterhin m”glich). Auáerdem darf jetzt eine Funktion auf mehrere Tastenkombinationen gleichzeitig gelegt werden. Die Shortcuts der Mentitel ("Datei", "Bearbeiten", usw.) k”nnen ge„ndert werden. Es k”nnen beliebige Tastaturkombinationen benutzt werden (also nicht nur [ALT]-Tastenkombinationen). Fr die Anpassung der Mentitel- Shortcuts sind folgende Eintr„ge in "med.kbd" zust„ndig: key: Alt+D menuFile key: Alt+E menuEdit key: Alt+B menuBlock key: Alt+S menuSearch key: Alt+M menuMacro key: Alt+T menuTools key: Alt+F menuWindow key: Alt+O menuOptions key: Alt+H menuHelp Bei [ALt]-Tastenkombination wird der entsprechende Buchstabe im Mentitel unterstrichen dargestellt (sofern dieser im Mentitel vorkommt). NEW: Kommandozeilen-Option "-k" zum Laden einer alternativen Tastaturbelegung (default: med.kbd). NEW: Textfenster k”nnen "vervielf„ltigt" werden, d.h. es k”nnen fr jeden Textpuffer beliebig viele Ansichten ge”ffnet werden. Damit k”nnen gleichzeitig mehrere Ausschnitte eines Textes sichtbar gemacht werden. Die Ansichten sind v”llig gleichberechtigt mit dem Originalfenster. Žnderungen am Text werden (sofern m”glich) in allen Ansichten nach einer einstellbaren Zeitspanne sichtbar. Das Sub-Men "Ansicht" im Pulldown-Men "Fenster" erm”glicht das ™ffnen/Schlieáen von Ansichten und das Anordnen aller Ansichten des aktiven Textpuffers. Im Gegensatz dazu wirken die Funktionen, die direkt unter dem Pulldown-Men "Fenster" stehen, auf die jeweils *ersten* Ansichten aller Textpuffer. NEW: neues Design der Symbolleiste. Die Symbole k”nnen mit der rechten Maustaste verschoben werden. Neben den vordefinierten Symbolen k”nnen auch externe Symbole mit beliebigen Editor-Funktionen verknpft werden. Drcken Sie [CTRL] und halten Sie die Taste gedrckt w„hrend Sie die Funktion in der Menleiste anklicken, die in die Symbolleiste aufgenommen werden soll. Externe Symbole mssen als Bitmapdatei im OS/2 Format 2.0 in der Gr”áe 24x24 in das Verzeichnis "med-bmp" gestellt werden. Dieses Verzeichnis muá sich im gleichen Verzeichis wie die MED Konfigurationsdateien befinden. Die Gr”áe der Symbolleisten-Kn”pfe (Einheit: Pixel) und die H”he der Symbolleiste (Einheit: Symbole) k”nnen konfiguriert werden. (s. Notizbuch "Einstellungen", Seite "Symbolleiste"). NEW: fr jedes Tool kann ein Tastaturkrzel und ein Symbol zum Direktaufruf definiert werden, d.h. der Tool-Manager muá nicht unbedingt ge”ffnet werden. (s. Notizbuch "Tool-Konfiguration", Seite "Tastaturkrzel"). NEW: die Symbolleisten-Konfiguration wird in der ASCII-Datei "med.tlb" gesichert. NEW: Kommandozeilen-Option "-t" zum Laden einer alternativen Symbolleiste (default: med.tlb). NEW: neues Design der Statuszeile. Der Statuszeilen-Font kann via Drag'n'Drop ge„ndert werden. NEW: die Maustasten k”nnen konfiguriert werden (nur Blockmarkierungsfunktionen) (s. Notizbuch "Einstellungen", Seite "Maus") NEW: Funktionen "Gehe zu Blockstart/ende" und "Block in Groá-/Kleinbuchstaben konvertieren" NEW: die Tab-Weite ist in der Syntax-Definitionsdatei (med.syn) einstellbar. Beispiel: --------- files: *.c;*.h tabWidth: 4 NEW: der Dateityp, der optional beim Sichern einer Datei in die erweiterten Attribute geschrieben wird, ist in der Syntax-Definitionsdatei (med.syn) definierbar. Beispiel: --------- files: *.c;*.h eaFileType: "C Code" NEW: Java-Untersttzung (Compiler als vordefiniertes Tool, Java Sektion in med.syn) NEW: Maus-Cursor wird bei Zeicheneingabe automatisch versteckt. Wenn die Maus bewegt wird, wird der Cursor wieder sichtbar. NEW: Dateiselektor: Die Einstellungen "Benutzer-Pfade/Filter" und "Aktionen beim Laden/Sichern" sind vom Dateiselektor aus „nderbar. (Dateiselektor-Menleiste: "Optionen"->"Filter/Pfade editieren" bzw. "Optionen"->"Beim Laden/Sichern") Autom. Vervollst„ndigung von Datei-/Verzeichnisnamen in beliebigen Verzeichnissen (bisher nur im aktuellen Verzeichnis). Die [Tab]-Taste kann optional zur Datei-/Verzeichnisnamen verwendet werden. Es sind nun auch mehrere Dateimasken gleichzeitig zugelassen, z.B. "*.c;*.h;*.rc" oder "*.txt;*.doc" NEW: Option beim Sichern "Ctrl-Z an Dateiende anh„ngen" (Notizbuch "Einstellungen", Seite "Laden/Sichern" oder Dateiselektor-Menleiste: "Optionen"->"Beim Laden/Sichern") NEW: [CTRL + TAB] schaltet auf n„chsten Textpuffer um. CHG: beim Versuch eine bereits ge”ffnete Datei mit der Funktion "Datei ”ffnen" nochmal zu laden, erscheint ein Nachfrage-Dialog. Wenn einer laufenden MED-Programminstanz der Dateiname einer bereits ge”ffneten Datei bergeben wird, wird die Datei nicht nochmal geladen, sondern der entsprechende Textpuffer aktiviert. CHG: nicht mehr nur vor dem Sichern einer Datei wird berprft, ob selbige zwischenzeitlich von einem anderen Programm modifiziert wurde, sondern bei jedem Aktivieren (Umschalten) eines Textfensters. CHG: falls MED iconisiert ist, kann durch Anwahl eines Textes im Window-Monitor das Hauptfenster wieder sichtbar gemacht werden. CHG: beim Setzen eines Lesezeichens werden die ersten 40 Zeichen der aktuellen Zeile als Default-Lesezeichennamen verwendet. FIX: Arbeitsverzeichnis eines Tools wird jetzt auch dann richtig gesetzt, wenn dieses auf einem anderen Laufwerk liegt. FIX: in der C-Funktionsliste werden C++ Destruktoren korrekt angezeigt FIX: die horizontalen Scrollbalken der C-Funktionsliste und des Tool- Ausgabefensters sind jetzt funktionsf„hig. FIX: ein paar kleine Unstimmigkeiten im Syntax-Highlighting bezglich der Darstellung von Kommentaren wurden behoben FIX: Blockmarkierung mit der Maus funktioniert nun korrekt auch wenn die Option "Automatisch Blockmarkierung aufheben" aktiviert ist. FIX: [CNTRL + ENDE] setzt Cursor hinter das letzte Zeichen der letzten Zeile FIX: beim Laden einer Datei wird der Pfad auf Gltigkeit untersucht. ---------------------------------------------------------------------------- VERSION 1.04 2.Januar 1996 ---------------------------------------------------------------------------- NEW: konfigurierbarer Compiler-Support NEW: Datei importieren via Drag & Drop bei gedrckter [CNTRL]-Taste NEW: im Dateiselektor kann der Zugriffspfad manuell eingegeben werden NEW: Funktion "Alle sichern" im Men Datei NEW: verbesserter C-Funktionen Dialog (inkrementelles Suchen, Farben) NEW: optionale "include" Direktive in der Syntax-Highlighting Konfigurationsdatei reduziert den Zeitaufwand beim Einlesen der Konfigurations-Daten (med.syn dient nur noch als Verzeichnis der untersttzten Dateitypen). Die Konfigurations-Daten werden fuer jeden Dateityp in eine eigene Datei (Name ist frei w„hlbar) ausgelagert und mit "include" hinter der "file" Direktive eingefgt. Beispiel: --------- files: *.c *.c.* *.h *.cpp include: med_c.syn files: config.sys include: med_sys.syn usw. NEW: die Weite, um die ein Text mit den Tasten [Page Up] bzw. [Page down] gescrollt wird, kann eingestellt werden (Notizbuch "Einstellungen", Seite "Editieren", Eingabefeld "Scrollfaktor"). NEW: vor dem Sichern einer Datei wird berprft, ob selbige zwischenzeitlich von einem anderen Programm modifiziert wurde. Falls ja, kann zwischen den Aktionen "Trotzdem sichern", "Neu laden" und "Sichern abbrechen" gew„hlt werden. NEW: beim Sichern kann das Zeilenende-Format kovertiert werden (UNIX <-> OS/2). Notizbuch "Einstellungen", Seite "™ffnen/Sichern". CHG: neues Format der Konfigurationsdatei "med.cfg" erlaubt die šbernahme der Einstellungen in zuknftigen Programmversionen. CHG: Einstellungen der Such-/Ersetzfunktion werden in der Konfiguration gesichert CHG: beim ™ffnen einer Datei wird das Hauptfenster automatisch wiederhergestellt, falls es auf Symbolgr”áe verkleinert wurde CHG: beim Schlieáen des letzten Textfensters wird MED *nicht* mehr beendet CHG: die Option "[Del] l”scht Block" ist ersetzt durch die Option "Automatisch Blockmarkierung aufheben". Ist diese aktiviert, wird bei einer Cursor-Bewegung oder Zeicheneingabe automatisch eine Blockmarkierung aufgehoben. Das L”schen eines Blocks mit [Del] ist in diesem Modus m”glich. Diese Option ist nur als ein kleiner Zwischenschritt zur vollst„ndigen CUA-Kompatibilit„t zu verstehen, die in Version 1.05 erreicht werden soll. CHG: Funktion "Gehe zu Klammer" scrollt nicht mehr den Fensterinhalt, falls die angesprungene Klammer sichtbar ist. CHG: geschwindigkeits-optimierte Blockmarkierung CHG: effektivere interne Speicherverwaltung FIX: MED funktioniert nun auch unter OS/2 2.x FIX: Scrolling funktioniert nun korrekt in teilweise unsichtbaren Textfenster FIX: Dateiselektor sortiert Dateinamen (nur bei nicht-HPFS/CDFS-Laufwerken notwendig) FIX: Dateiselektor emuliert ".." Verzeichnis (notwendig fr Netware) FIX: Undo/Redo fr "Datei importieren" FIX: Dateinamen mit Leerzeichen werden jetzt richtig behandelt ---------------------------------------------------------------------------- VERSION 1.03 28.Oktober 1995 ---------------------------------------------------------------------------- NEW: konfigurierbares Syntax-Highlightning (die RGB-Werte der Farben k”nnen selbst definiert werden) NEW: autom. Dateinamen-Vervollst„ndigung im Dateiselektor mit den Cursor-Tasten (Pfeil-unten = n„chster passender Dateinamen, Pfeil-oben = vorhergehender passender Dateinamen) NEW: konfigurierbare Untersttzung von externen Online-Hilfen (z.B. "rexx.inf" fr REXX-Dateien, "cmdref.inf" fr config.sys oder die Doku zu den PM-APIs ihres C/C++ Compilers). Die Konfiguration wird in der Datei "med.syn" getrennt nach Dateitypen vorgenommen. Es wird der Name des Online-Doku-Betrachtungsprogramms (i.a. view.exe), der Name der Online-Doku und eine Liste von Filtern angegeben. Die Filter haben die Aufgabe, fr ein Schlsselwort die entsprechende Online-Doku auszusuchen. Beispiele: fr REXX-Dateien: ----------------- inf: view.exe rexx.inf * fr CONFIG.SYS: --------------- inf: view.exe cmdref.inf * fr C/C++ Dateien (Watcom C/C++): --------------------------------- inf: view.exe progref20.inf Dos* inf: view.exe pmref.inf [A-Z]* inf: view.exe clib.inf Fr jeden Dateityp sind mehrere Online-Hilfe Eintr„ge zul„ssig. Wenn ein Schlsselwort zu keinem der angegebenen Filter passt, erscheint ein Popup-Men, in dem man von Hand die zu benutzende Online-Hilfe aussuchen kann. NEW: erweiterte Symbolleisten-Konfiguration NEW: Cursor-Form ist konfigurierbar NEW: Undo/Redo beim Ersetzen von Zeichenketten m”glich NEW: Undo/Redo beim Einfgen des Clipboards m”glich NEW: es kann nun eingestellt werden, mit welcher Maustaste ein Zeilen/Spalten- Block markiert wird. CHG: Block kann jetzt auch von rechts nach links aufgespannt werden CHG: Men-Tastaturkrzel k”nnen jetzt gel”scht werden CHG: Cursor zum n„chsten/vorherigen Wort setzen CHG: die Environment-Variable MISTER_ED_PATH nicht mehr erforderlich. Konfig-Dateien werden im Ordner ".\med" relativ zum Startverzeichnis von "med.exe" gesucht. Falls der Ordner nicht vorhanden ist, werden die Konfig-Dateien im Startverzeichnis gesucht. FIX: Symbolleisten-Konfiguration FIX: Font-Konfiguration FIX: kleinerer default Font bei Bildschirmaufl”sung 640x480 FIX: Zifferneingabe mit numerischem Tastaturblock ---------------------------------------------------------------------------- VERSION 1.02 14.September 1995 ---------------------------------------------------------------------------- NEW: nicht modaler "Window Monitor" Dialog erm”glicht es den šberblick ber die ge”ffneten Textfenster zu behalten. Konfigurationsoptionen: Gr”áe, Position, Font, Dateinamen mit/ohne Pfad anzeigen, Dialog ge”ffnet halten/automatisch schlieáen NEW: ein Dialog wird angezeigt, wenn MED verlassen wird, aber noch Dateien mit nicht gesicherten Žnderungen vorhanden sind. Der Dialog erlaubt es die Dateien auszuw„hlen, die gesichert werden sollen, bevor der Editor verlassen wird. NEW: Druckfunktion. Konfigurationsoptionen: Kopfzeile (Dateiname, Datum, Seitennumern), R„nder, Font, Zeilennummern NEW: automatischer Zeilenumbruch NEW: Zeile zentrieren NEW: Backtab (SHIFT+Tab) NEW: Popup Menu mit rechter Maustaste fr Blockfunktionen NEW: Konfigurationsoption "Nur eine Programminstanz benutzen": diese Option l„át sich am besten mit einem Beispiel erkl„ren: Sie haben MED in der Klickstartleiste installiert. Nun werfen Sie mehrere Texte auf das Klickstart-Icon von MED. Was passiert? Fr jede Datei wird eine Version von MED gestartet. Das verbaut den Desktop und kostet eine Menge Speicherplatz, weil der Programmcode unn”tigerweise mehrmals in den Hauptspicher geladen wird. Das ist ein Mangel der Klickstartleiste! Deshalb bietet MED diese Option. Ist sie aktiviert, prft MED bei jedem Start, ob sich ein „lterer Zwillingsbruder eventuell schon im Speicher befindet. Falls dem so ist, reicht er die ihm bergebenen Parameter (d.h. die Dateinamen oder die Dateinamenliste) an seinen „lteren Bruder weiter und beendet sich sofort wieder. Der „ltere Bruder bernimmt die Parameter und ”ffnet die gewnschten Dateien. Dieser Mechanismus funktioniert natrlich auch wenn MED von verschiedenen Stellen ber die Kommandozeile mehrmals aufgerufen wird. NEW: Konfigurationsoption "Im aktiven Textfenster ”ffnen": wenn diese Option aktiviert ist, wird beim ™ffnen einer Datei das aktive Textfenster benutzt. Ist die Option inaktiv, wird vor dem ™ffnen einer Datei automatisch ein neues Textfenster erstellt. NEW: eine Blockmarkierung wird automatisch gel”scht bevor ein neuer Block markiert wird NEW: Import Funktion fgt eine Textdatei an der aktuellen Cursorposition ein NEW: der Fileselektor erlaubt das Hinzufgen des aktuellen Pfads zu der Pfadliste NEW: Smarticons "Undo" and "Redo" in der Symbolleiste NEW: die Hintergrundfarbe des Hauptfensters ist defaultm„áig nun ein dezenteres Grau. Via Drag & Drop kann die Farbe eingestellt werden. FIX: auch die Tastaturkrzel von deaktivierten Meneintr„gen lassen sich „ndern. Dazu muá vor dem Herunterklappen des entsprechenden Men die CNTRL-Taste gedrckt werden. FIX: der horizontale Scrollbalken funktioniert nun auch in Dateien mit mehr als 32765 Zeilen ---------------------------------------------------------------------------- VERSION 1.01 31.August 1995 ---------------------------------------------------------------------------- ---------------------------------------------------------------------------- VERSION 1.0 02.August 1995 ----------------------------------------------------------------------------