EVEREST
========================================================================== E V E R E S T - der einfach(e/geniale) GEM Texteditor. fr alle 68er Ataris (alle Grafikkarten) Alle Angaben ohne Gew„hr ========================================================================== 1. Einleitung 1.1 Der Start von EVEREST.PRG 2. Die Menpunkte 2.1 Datei 2.2 Block 2.3 Suchen 2.4 Fenster 2.5 Einstellungen 2.6 Infos 3. Tastaturbelegung 4. Dialoge 5. AV_Protokoll 6. Versionen 7. Das unvermeidliche Kapitel ************************************************************************** 1. E I N L E I T U N G ************************************************************************** Everest ist ein Texteditor, der dazu dienen soll, unformatierten, sogenannten ASCII-Text einfach zu erfassen und zu ver„ndern. Dieses wird zum Beispiel ben”tigt - zum Programmieren, - zum Schreiben von Texten zur weiteren Formatierung durch andere Programmme ( TeX oder Calamus), - zum Schreiben von Texten fr die DFš, - zum Žndern von Programm-Konfigurationsdateien, die im Textformat vorliegen, - zum Schreiben von Batch-Dateien. EVEREST.PRG hat folgende Leistungsmerkmale: - l„uft auf allen Atari-Computern mit allen Grafikkarten (aužer ST-Niedrige Aufl”sung (320*200)) - ist fr GEM-Verh„ltnisse schnell (vor allem mit Blitter) - KEIN Nachlaufen des Cursors oder „hnliches - normale Standard-GEM-Oberfl„che, daher keine Umgew”hnung - Tastaturkommandos kompatibel zum TurboC-Editor - freie Cursorpositionierung. - fast vollst„ndig ber die Tastatur bedienbar (inklusive Dialoge) (Hervorzuheben ist die Online-Blockmarkierung ber Tastatur) - Erlaubt die Benutzung von nicht proportionalen GDOS-Zeichens„tzen, sofern dieses installiert sind. (Empfehlenswert sind die GEMIMI Zeichens„tze) - gr”sstenteils dynamische Speicherverwaltung: l„sst anderen Programmen m”glichst viel freien Speicher brig - Ntzlich fr Accessories und Multitasking. Wird ein Fenster geschlossen, so wird der von diesem belegte Speicherbereich freigegeben. - Hard - Tabulatoren - Clipboard-Untersttzung - untersttzt das Turbo-C Helpaccessory (auch 1STGUIDE). - bearbeitet bis zu 10 Texte, falls soviele Fenster zu Verfgung stehen. Normale TOS Versionen k”nnen jeoch nur 7 Fenster verwalten. Falls jemand TOS 1.04 hat, und 10 Texte gleichzeitig bearbeiten will, kann ich ihm das Programm WINX von ST-454 nur empfehlen, das bis zu 120 Fenster zur Verfgung stellt. Mit WINX2 ist sogar die Bedienung von Fenstern im Hintergrund m”glich. - Wildcards beim Suchen und beim Ersetzen. 1.1 Der Start von EVEREST.PRG ============================= Everest wertet die Kommandozeile aus. Daher ist es m”glich, Everest aus einer Shell heraus aufzurufen. Ausserdem ist es m”glich, unter Gemini veschiedene Dateien auf das Everest-Icon zu ziehen, die dann automatisch von Everest geladen werden. Hinter einem Dateinamen k”nnen optional Zeile oder [Zeile und Spalte] stehen, in die der Cursor nach dem Laden springen soll. (Die erste Zeile/Spalte hat die Nummer 1. 0 wird als 1 interpretiert.) Beim Suchen der Datei benutzt Everest die GEM-Funktion SHEL_FIND, ausserdem wird aber auch der AKTUELLE "PATH"-Eintrag im Environment bercksichtigt. Falls "EVEREST" im Environment definiert ist, sucht Everest unter diesem Pfad seine Konfigurationsdatei EVEREST.INF. Das Belegen der Environmentvariablen macht man am besten in einer Batchdatei einer Kommandoshell, dieses l„sst sich sehr gut mit MUPFEL als Bestandteil von GEMINI verwirklichen. Falls "EVEREST" nicht im Environment definiert ist, sucht Everest seine Info-Datei unter dem "PATH"-Eintrag und mit SHEL_FIND. Also ist es nicht notwendig, dass Everest im aktuellen Verzeichnis gestartet wird. Falls durch die Kommandozeile keine Datei geladen werden konnte, wird die Standard Text-Liste EVEREST.LIS an den gleichen Orten wie EVEREST.INF gesucht, und gegebenenfalls ausgefhrt. Mehr dazu unter "Einstellung/Text-Listen". Probleme: Žltere TOS-Versionen haben den Fehler, daž SHEL_FIND immer auf Laufwerk A sucht, auch wenn das Bootlaufwerk gar nicht A ist. Das l„žt sich umgehen, wenn man durch ein Programm im Auto-Ordner das Environment, daž vor dem Start von AES aktiv ist, richtig ab„ndert. Einfacher ist es, wenn man EVEREST.INF und EVEREST.LIS (notfalls mit Dateil„nge 0) auf jeden Fall abspeichert, da sie dann beim Start gefunden werden, und so langes Suchen entf„llt. ************************************************************************** 2. D I E M E N š P U N K T E ************************************************************************** Zu vielen Tastaturkommandos sind Merkhilfen angegeben, die vielen Leuten vielleicht albern erscheinen, so k”nnen sie um so besser helfen. Manche Kommandos sind desshalb schwer zu merken, da sie eine Abkrzung des englischen Kommandos sind. Fr diese F„lle wird kein deutsches benutzt, da sich fr eben diese F„lle wie zB "Laden einer Datei" das Kommando Control-O als Standard etabliert hat, und wer will schon fr jedes Programm neue Tastaturkrzel lernen ? Falls man sich nicht an das Krzel einnert, kann man jederzeit im Programm in der Menzeile nachsehen. 2.1 DATEI ========= -Neu..........................(Control N - Merke "Neu") Ein neuer Text wird im Speicher angelegt und mit "ohne Namen" betitelt. Erst beim Schliessen wird nach einem Dateinamen gefragt, unter dem der Text abgespeichert werden soll. -™ffnen.......................(Control O - Merke "Open") Fragt ber die Dateiauswahlbox des Betriebssystems nach einem Dateinamen - diese Datei wird dann als Text in den Speicher geladen. Falls diese Datei nicht im ASCII-Format ist, wird eventuell Mll angezeigt. Nach dem Laden wird der Text initialisiert, dies kann eventuell etwas dauern. -Hinzuladen...................(Control H) An der Cursorposition wird eine Datei eingefgt. Ist ein Block markiert, so wird dieser erst gel”scht, d.h. die Datei wird anstelle des Blockes eingefgt. -Schliessen..............(Control U - Tja, vielleicht "unopen" ?) Falls der Text ver„ndert wurde, aber noch nicht abgespeichert, wird nachgefragt, ob dieses nachgeholt werden soll. -Speichern....................(Control S) Der Text wird unter seinem Dateinamen abgespeichert, das Fenster bleibt aber offen, so dass der Text anschliessend weiter bearbeitet werden kann. -Speichern als................(Control M - Schlecht zu merken) Es wird nach einem Dateinamen gefragt, unter dem der Text gespeichert werden soll, anschliessend kann dieser Dateiname auch als aktueller Textname verwendet werden. -Fenster wechseln.............(Control W - Merke "Wechseln") Ein anderes Fenster wird zum obersten und aktuellen Fenster. -Drucken......................(Control P - Merke "Print") falls ein Block markiert ist, wird nachgefragt, ob nur dieser Block, oder der gesamte Text gedruckt werden soll. Siehe auch unter EINSTELLUNG/AUSGABEFORMAT. Ist der Drucker pl”tzlich nicht mehr bereit, erscheint eine Warnbox, es wird aber weiterhin auf die Bereitschaft gewartet und dann an der alten Stelle weitergedruckt, sonst kann man per Tastendruck abrechen. Das ist gut fr Drucker, die sich w„hrend des Druckens l„nger als 30 Sekunden "Offline" schalten. -Ende.........................(Control Q - Merke "Quit") Mit ge„nderten Texten wird so verfahren, wie es in EINSTELLUNG/PROGRAMMENDE eingestellt wurde. Ein Verlassen des Editors ist auch mit Control + Nummernblock m”glich , dabei gibt die Nummer der Taste den Returncode (0,...,9) an und alle Texte werden ohne Nachfrage gespeichert. Das ist eventuell ntzlich fr Compiler- oder TeX-Shells, die in Abh„ngigkeit des Returncodes bestimmte Aktionen ausfhren. 2.2 BLOCK ========= Grunds„tzliches: Die Blockfunktionen folgen dem Cut-Copy-Paste-Prinzip. darunter versteht man folgendes: Es l„sst sich ein Textbereich markieren, dieser wird dann invers dargestellt. Auf diesen markierten Textbereich lassen sich dann die Blockfunktionen anwenden. So l„sst sich der markierte Bereich zB in den sogenannten Zwischenspeicher kopieren. Diesen Zwichenspeicher kann man dann an beliebiger Stelle im Text einfgen. Markieren eines Textbereiches: a) mit der Maus: -Ein Textbereich wird markiert, indem man die Maus an den gewnschten Anfang f„hrt, die Maustaste gedrckt h„lt und zum Ende f„hrt und dort die Taste losl„sst. Der markierte Bereich wird invers gekennzeichnet. F„hrt man mit der Maus ber den Fensterrand, wird das Fenster entsprechend gescrollt. -Hat man bereits einen Bereich markiert, so kann man mit erneutem Mausklick, diesmal mit gedrckte Shifttaste, den Blockanfang/das Ende an die Mausposition bewegen. Ist noch kein Block markiert, kann man mit Shift+Maustaste den Bereich zwischen Cursor und Maus selektieren. -Macht man bei gedrckter Shifttaste einen Mausklick irgendwo in den Text und ist noch kein Block markiert, wird der Text zwischen Cursorposition und Mausposition markiert. -Doppelklick auf eine Klammer markiert von dieser Klammer an bis zur entsprechenden ”ffnenden/schliessenden Klammer (falls vorhanden). -Doppelter Mausklick zusammen mit der Controltaste oder Dreifachklick selektiert einen Absatz. Dabei wird EINSTELLUNG/FORMATIERUNG/ABSATZERKENNUNG zur Rate gezogen. -Doppelklick auf ein Wort selektiert das Wort. -ACHTUNG: Macht man einen Doppelklick in eine Zeile, die wie eine Fehlermeldung aufgebaut ist (siehe EINSTELLUNG/FEHLERMELDUNGEN), so wird nicht selektiert, sondern an die entsprechende Fehlerstelle gesprungen. b) mit der Tastatur -Mit Control-A wird der Anfang des Blockes gesetzt. Im weiteren Verlauf lassen sich zwar keine Buchstaben eingeben, aber der Cursor l„sst sich normal bewegen, wobei automatisch der bereits markierte Text invers dargestellt wird. Nochmaliges Control-A beendet diesen Modus (ausprobieren!!). Das Besondere ist, dass alle Cursorbewegungen wie zB Marke anspringen, Zeile anspringen und Shift/Control+Pfeiltasten auch im Selektionsmodus zur Verfgung stehen. c) Tastatur und Maus-Selektion lassen sich kombinieren. Kommandos: -Ausschneiden.................(Control X - "X" sieht aus wie eine Schere) Der markierte Bereich wird aus dem Text herausgenommen (herausgeschnitten) und in den Zwichenspeicher gelegt. Falls kein Bereich markiert, wird die aktuelle Zeile herrausgeschnitten. -Kopieren.....................(Control C - "Merke Copy") Der markierte Bereich wird in den Zwischenspeicher gelegt, bleibt aber auch im Text erhalten. Falls kein Bereich markiert, wird die aktuelle Zeile kopiert. -Einfgen.....................(Control V - "V" sieht aus wie Spitze einer Klebstofftube) Der Zwischenspeicher wird an der Cursorposition in den Text eingefgt (eingeklebt). Ist ein Block markiert, so wird der Zwischenspeicher ANSTELLE dieses Blockes eingefgt, der vorherige Block geht also verloren. -L”sche Block / Zeile.........(Control Y - Stammt aus WordStar) Falls kein Bereich markiert ist, wird die aktuelle Zeile, sonst der markierte Bereich gel”scht. Das L”schen der aktuellen Zeile kann durch UNDO rckg„ngig gemacht werden. -Blockanfang..................(Control A - Merke "Anfang") Macht die Blockselektion ber Tastatur m”glich: Nach Control A ist man im Selektionsmodus, das bedeutet, dass die aktuelle Cursorposition das Blockende markiert, w„hrend die Position, an der Control A gedrckt wurde, den Blockanfang markiert. Dieses wird durch inversen Text markiert. In diesem Modus sind alle Cursorpositionierungsbefehle (wie Shift+Pfeil) gltig. Der Selektionsmodus wird durch nochmaliges Drcken von Control A beendet. Es ist natrlich nicht sinnvoll, diese Funktion mit der Maus auszufhren. Sie steht lediglich der Vollst„ndigkeit halber und auch zur Erinnerung im Men. -Formatieren..................(Control Z - Merke "Zeilenumbruch") Falls ein Block selektiert ist, wird dieser Block als ein Absatz formatiert. Dabei wird ein einfacher Zeilenumbruch durchgefhrt, die Zeilenl„nge ist unter EINSTELLUNG/FORMATIERUNG/ZEILENUMBRUCH definiert. Der linke Rand wird durch die zweite Absatzzeile bestimmt. Das ist praktisch, da die erste Zeile eines Absatzes oft anders eingerckt ist als die anderen (zB bei numerierten Abs„tzen). Ist kein Block markiert, wird anhand EINSTELLUNG/FORMATIERUNG/ABSATZERKENNUNG versucht, einen Absatz an der Cursorposition zu erkennen. Dieser wird dann formatiert. Der Cursor steht anschliežend am Ende des Absatzes. -Links/Rechts Einrcken.......(Control J oder K) Falls ein Block markiert ist, kann er nach links oder nach rechts eingerckt werden (Manuelles Einrcken). Der Grad des Einrckens wird unter EINSTELLUNG/FORMATIERUNG/EINRšCKEN festgelegt. Dieses ist vor allem fr blockstrukturierte Programmiersprachen ntzlich. 2.3 SUCHEN ========== Zum Konzept: Es wird nur zeilenorientiert gesucht, das heižt, daž der Suchbegriff nicht ber das Zeilenende hinaus gehen kann. -Suchen......................(Control F - Merke "Finden") Es wird nach einer Zeichenkette gesucht. Falls man mit Wildcards suchen will, kann man '*' als Platzhalter fr beliebige Zeichen oder gar kein Zeichen setzen. '?' steht als Platzhalter fr ein beliebiges Zeichen. '*' und '?' lassen sich beliebig kombinieren. Ein Beispiel: Sucht man nach "Abc*defg?hi*jkl", so wird "Abcdefg1hi123jkl" gefunden, aber nicht "Abcdefghijkl". Ebenfalls wird "Abc123defg1hi123jk456jkl" gefunden, aber nicht "Abc123defg1hi123jk456jk" -weiter suchen...............(Control G - liegt neben "F") Die in "Suchen" gemachten Angaben werden zu einer nochmaligen Suche verwendet. Gelangt die Suchfunktion an das Ende, wird die Suchrichtung umgedreht, aber es wird nicht weitergesucht, sondern erst bei nochmaligem Control-G. In EINSTELLUNG/BEDIENELEMENTE kann eingestellt werden, ob eine Alertbox erscheinen soll, falls der Begriff nicht gefunden wurde. -Selektion suchen............(Control I) Ist ein Teil einer Zeile selektiert, so wird dieser in die "Suche"-Dialogbox bernommen und diese wird aufgerufen. Ist nichts selektiert, so wird das Wort selektiert, auf dem der Cursor steht. -Ersetzen....................(Control R - Merke "Replace") Hier gilt Žhnliches wie bei "Suchen". Gibt man bei dem Text, der den gefundenen Text ersetzen soll, ebenfalls Wildcards an, so werden die entsprechenden Wildcards des Suchbegriffes zu Rate gezogen und anhand dieser der gefundene Text eingesetzt. Ein Beispiel: Sucht man nach "Abc*defg?hijkl" und will das durch "Mnopqrstuvw*x?yz" ersetzen, so wird "Abc123defg4hijkl" durch "Mnopqrstuvw123x4yz" ersetzt. Ebenso wird "Abcdefg1hijkl" durch "Mnopqrstuvwx1yz" ersetzt. -weiter ersetzen.............(Control T - liegt neben "R") Hier gilt Žhnliches wie bei "weiter suchen". -gehe zu Zeile...............(Control L - Merke "Line") -passende Klammer............(Control B - Merke "Bracket/Brace") Falls der Cursor auf einer Klammer steht (ist der Cursor ein Strich, muss er links neben der Klammer stehen), wird zu der passenden ”ffnenden/schliessenden Klammer gesprungen, falls diese existiert. Falls nicht, ert”nt ein Warnton. -suche Fehler...............(Control E - Merke "Error") Die Zeile unter der sich der Cursor befindet wird daraufhin untersucht, ob sie einer der Musterfehlermeldung der Dialogbox EINSTELLUNG/FEHLERMELDUNGEN gengt. Falls ja, so wird die entsprechende Datei geladen und in die Fehlerzeile gesprungen. Ist die Datei schon geladen, wird das Fenster nach vorne geholt. Die Funktion "suche Fehler" kann auch durch Doppelklick mit der Maus auf eine Zeile aufgerufen werden. -gehe zu Marke...............(Shift + Funktionstaste - Merke: "Die Marke wird aufgeSucht") -setze Marke.................(Control + Funktionstaste - Merke: "Die Marke wird Controlliert") Es l„sst sich eine von zehn Marken setzen, die mit der vorherigen Funktion wieder aufgesucht werden k”nnen. Es wird versucht, die Marken bei entsprechenden Einfge/L”sch- Operationen mitzufhren. 2.4 FENSTER =========== -Alle untereinander..........(Alternate U) Alle Fenster werden untereinander angeordnet. -Alle nebeneinander..........(Alternate N) -Alle gestaffelt.............(Alternate G) Die Fenster werden gestaffelt angeordnet. -Aktuelles volle Gr”sse......(Alternate V) Diese Funktion ist eigentlich nur fr den Tastaturbetrieb interessant und steht nur der Vollst„ndigkeit halber hier. 2.5 EINSTELLUNGEN ================= -Einfgen....................(Insert) Einfgemodus AN. Eingetippte Zeichen werden an der Cursorposition eingefgt. -šberschreiben...............(Shift + Insert) Einfgemodus AUS. Das Zeichen an der Cursorposition wird von eingetippten Zeichen berschrieben. -Gem-Klemmbrett AN...........(Alternate K) Das Gem-Klemmbrett wird fr die Blockoperationen benutzt. Dazu muss natrlich der SCRAPPFAD definiert sein. Dieses macht Everest jedoch nicht, dafr sollte ein Hilfsprogramm zust„ndig sein. (Etwa das Klemmbrettaccessory oder auch Gemini) Der Sinn des Klemmbrettes ist der Datenaustausch mit anderen Programmen, die dieses auch benutzen. -Gem-Klemmbrett AUS..........(Alternate L - liegt neben "K") Der Zwischenspeicher fr die Blockoperationen befindet sich im Arbeitsspeicher. Dieses ist natrlich schneller als wenn das Klemmbrett, das ja eine Datei auf der Harddisk ist, benutzt wird. -Bedienelemente..............(Alternate B) -Cursor: Es l„sst sich die Darstellung des Cursors „ndern. Sinnvoll ist eigentlich nur die Modusabh„ngige Darstellung, dabei wird n„mlich der Cursor im Einfgemodus als Strich und im šberschreibemodus als Block dargestellt. Der Cursor sollte blinkend eingestellt sein, damit man ihn schneller findet und damit er in der šberschreibedarstellung von einem Block unterscheidbar ist. Aužerdem l„žt sich einstellen, ob in der Kopfzeile des Fensters die aktuelle Cursorposition angezeigt werden soll. Aus Geschwindigkeitsgrnden wird diese Anzeige jedoch nur in einer "tippfreien" Pause aktualisiert. -Fenster: Falls der Rollbalken (das ist die Anzeige an den Fensterr„ndern, an der man die Position im Text ablesen kann) nur in einer Pause aktualisiert wird, hat man einen leichten Geschwindigkeitsvorteil. -Dialoge: Dialoge lassen sich zentriert oder an der Mausposition darstellen. -Dialogbox fr "Suchbegriff nicht gefunden": Fr Leute, die den Pure-C Editor nicht gew”hnt sind, oder die den Warnton bei mižglcktem Suchen nicht h”ren, gibt es jetzt eine Alertbox fr den Fall, daž ein Suchbegriff nicht gefunden wurde. -Zeichensatz.................(Alternate Z) Falls GDOS installiert ist, lassen sich andere, jedoch nur nicht proportionale Zeichens„tze einstellen (Das sind solche, bei denen alle Zeichen die gleiche Breite haben). Allerdings l„sst sich nur ein Zeichensatz fr alle Fenster einstellen. Dieses ist vor allem dafr ntzlich, falls man in den normalen ST-Aufl”sungen 80x25 Zeichen in einem Fenster darstellen will. Bei manchen Zeichens„tzen gibt es bei der inversen Darstellungen Probleme, das liegt meines Wissens jedoch daran, dass bei diesen Zeichens„tzen irgend ein Wert falsch gesetzt ist. Solche fehlerhaften Zeichens„tze lassen sich mit dem Programm FONTFIX korrigieren. Sehr zu empfehlen sind die Gemini-Zeichens„tze. Falls kein GDOS installiert ist, l„sst sich lediglich die Gr”sse des Systemzeichensatzes verstellen. Wird diese Dialogbox das erste Mal aufgerufen, und sind viele Zeichens„tze geladen, so kann es etwas l„nger dauern, da die Zeichens„tze analysiert werden. Das erspart Wartezeit beim Programmstart. -Formatierung................(Alternate F) -Zeilenumbruch: Ist "Zeilen umbrechen" eingeschaltet, so wird, falls der Cursor beim Tippen ber den rechten Rand hinauskommt, die Zeile umgebrochen. Die "Zeilenl„nge" legt den rechten Rand fest, der auch beim Formatieren von As„tzen von Bedeutung ist. -Absatzerkennung: Hier wird festgelegt, wie Abs„tze erkannt werden: "Zus„tzliches CR am Ende" bedeutet, daž am Absatzende zus„tzlich CR steht. Dieses zus„tzliche CR l„žt sich durch Shift+Return erzeugen. Auf jeden Fall wird diese Einstellung nicht besonders gut von Everest untersttzt. Besser ist "kein Leerzeichen am Zeilenende". Das bedeutet, daž nach jeder Zeile, die nicht die letzte Zeile eines Absatzes ist, ein Leerzeichen am Zeilenende steht. Nur die letzte Zeile eines Absatzes hat kein Leerzeichen am Zeilenende. Everest formatiert Abs„tze so, daž diese Konvention eingehalten wird. Benutzt man diese Absatzkennung, muž man darauf achten, daž unter EINSTELLUNG/AUSGABEFORMAT "Leerzeichen am Zeilenende l”schen" ausgeschaltet ist, da sonst die Absatzkennungen ja beim Speichern verlorengehen. Unproblematisch ist auch "Leerzeile trennt Abs„tze", weil man hier genau erkennen kann, wo ein Absatz zu Ende ist. -Einrcken: Beim Blockweisen Einrcken wird ein gesamter markierter Block eingerckt. Das kann jeweils einen Tabulator weit oder eine Anzahl von Leerzeichen sein, aber auch eine beliebige Zeichen- kette. So lassen sich bei einer grossen Anzahl von Zeilen am Anfang jeder einzelnen bestimmte Zeichen einfgen. Das ist zB fr Antworten auf Mailboxbriefe interessant, bei denen Zitate des ursprnglichen Briefes am Anfang jeder Zeile durch ein ">" markiert werden. Hat man also den alten Brief in einem anderen Text, kopiert man das Zitat in den eigenen Brief und braucht dan nur noch Control-K zu tippen, und schon ist das Zitat markiert. "Automatisches Einrcken" bedeutet, dass nach einem Return der Cursor genau an der Stelle steht, an der die vorherige Zeile beginnt. -Tabulatoren.................(Alternate T) Die Tabulatorweite l„sst sich in Abh„ngigkeit der Dateiextension einstellen. -Fehlermeldungen..............(Alternate E - Merke "Error") Hier k”nnen Musterfehlermeldungen eingegeben werden. Es k”nnen Platzhalter fr Dateinamen und Zeilennummer definiert werden. Macht man einen Doppelklick in eine Zeile oder drckt Control-E, so wird berprft, ob diese Zeile wie eine der Muster-Fehlermeldungen aufgebaut ist. Falls ja, so wird der Dateiname und die Zeilennummer herausgelesen und an die entsprechende Stelle gesprungen. Ist in einer Musterfehlermeldung keine Zeilennummer aufgefhrt, so wird in die erste Zeile der Datei gesprungen. Ist kein Dateinamen definiert, so wird, falls nur eine Datei geladen ist, in die Zeile dieser Datei gesprungen, -- falls mehrere Dateien geladen sind, wird in eine andere verzweigt (Also nur bei zwei Dateien sinnvoll). -Ausgabeformat................(Alternate A) -Speichern: Hier ist darauf zu achten, daž "Leerzeichen am Zeilenende l”schen" ausgeschaltet ist, falls man Abs„tze anhand von Leerzeichen an Zeilenenden erkennen will. -Drucker: Es l„žt sich ein linker Rand definieren. Aužerdem kann eingestellt werden, daž nach einer bestimmten Anzahl von Zeilen Formfeed gedruckt wird. Der Atarizeichensatz unterscheidet sich vom gebr„uchlichen IBM Zeichensatz vor allem dadurch, daž das 'ž' einen anderen Code hat. Das fhrt dazu, daž Drucker das 'ž' nicht richtig darstellen. Daher muž Everest in diesem Fall das Zeichen umwandeln. -Text-Listen.................(Alternate W) Eine Text-Listen-Datei ist eine Standard-ASCII Datei, in der in jeder Zeile Dateinamen mit vollem Pfad stehen. Falls Everest eine Textliste abspeichert, werden in diese alle Dateinamen von gerade geladenen Texten geschrieben. Nicht bercksichtigt werden Texte ohne Namen. Hinter dem Dateinamen folgen optional Cursorzeile/spalte,x,y,Breite,H”he des Fensters bezogen auf 1000. Diese Parameter k”nnen von Rechts beginnend weggelassen werden. Falls Everest eine Textliste l„dt, werden diese Texte mit eventueller Berckschtigung der Parameter geladen. Nun zu den Buttons: -Text-Liste laden: Aktuelle Texte: -Alle abspeichern: Alle aktuellen Texte werden geschlossen. Falls einer ver„ndert wurde, wird er ohne Nachfrage abgespeichert. -Einzeln abfragem: Alle aktuellen Texte werden geschlossen. Falls einer ver„ndert wurde, wird nachgefragt, ob er abgespeichert werden soll. -Neue dazuladen: Die aktuellen Texte werden nicht gechlossen. -Text-Liste speichern: siehe obige Erkl„rung. Beim Programmstart versucht Everest die Standard Textliste "EVEREST.LIS" zu laden, falls in der Kommandozeile keine Dateien angegeben worden sind. -Programmende................(Alternate Q -merke Quit) -ver„nderte Texte speichern: Am Ende werden ohne nachzufragen alle ge„nderten Texte gespeichert, allerdigs wird bei namenlosen Texten doch nachgefragt. Genauso wird auch verfahren, falls Everest mit Control + Nummernblock verlassen wird, wobei die Tastennummer den Returncode angibt. -einzeln nachfragen: Klar. -Komplettnachfrage: Am Programmende erscheint eine Dialogbox, in der alle Texte angezeigt werden. Nicht ver„nderte Texte werden hell gerastert dargestellt. Ge„nderte Texte k”nnen angekreuzt werden. Nun kann man entweder "alle ge„nderten Texte speichern", oder "keinen Text speichern" oder "Angekreuzte Texte speichern" anw„hlen. -Einstellungen in INF-Datei speichern: Die Infodatei wird automatisch am Programmende gespeichert. -EVEREST.LIS abspeichern: Nach einem erneuten Start von Everest wird diese Text-Liste automatisch geladen, d.h., daž man dann alle Fenster so vorfindet, wie man sie verlassen hat. -Speichern...................(Alternate S) Die obigen Einstellungen und die Fensterkoordinaten werden in EVEREST.INF, der sogenannten INF-Datei gespeichert (siehe auch oben, unter "Start von Everest"). 2.6 INFOS ========= -Textbelegung................(Alternate I) Es wird die momentane Belegung des Speichers mit Texten angezeigt. Klickt man auf einen der Texte mit der Maus oder drckt man die entsprechende Funktionstaste, so wird das zugeh”rige Fenster nach vorne geholt. Hinter jedem Text wird angezeigt, wieviel Speicher momentan fr denselben reserviert ist. -Bedienung...................(Shift+Help) Es werden Hilfen zur Benutzung der Maus und der Tastaur gegeben, um Funktionen zu nutzen, die nicht aus den Mens ersichtlich sind. Fr diese Funktion w„re Help ohne Shift sicherlich besser gewesen, doch wenn man ein Help-Accessory benutzt, wird dieses im sp„teren Verlauf sehr hinderlich, also doch Shift+Help. -Help-Acc....................(Help) Ist das Turbo-Help-Accessory installiert, so wird an dieses das Wort bergeben, auf dem der Cursor steht. Bei dem Help-Accessory handelt es sich um ein Programm, das bei Turbo/ Pure C mitgeliefert wird, und das die Onlinehilfe aus diesem Entwicklungspacket auch anderen Programmen zur Verfgung stellt. Wird das Turbo-C oder das Pure-C Help-Accessory nicht gefunden, wird auch noch nach "1STGUIDE", sowie nach "HELP" gesucht. ************************************************************************** 3. T A S T A T U R - B E L E G U N G ************************************************************************** Zum Konzept: Bei Pfeiltasten sowie Backspace und Delete gilt: Control bedeutet Wortweise Operation, Shift bedeutet Operation bis zum Zeilenanfang/-ende. Bei Insert und Home: Shift bewirkt das Gegenteil von Insert/Home. Im folgenden werden spezielle Tasten und ihre Funktion aufgelistet: UNDO...............................Zeile wiederherstellen oder Blockoperation rckg„ngig machen. Es werden jedoch nur "Herausschneiden", "Einfgen", "L”schen" und "Hinzuladen" bercksichtigt. "Einrcken" und "Formatieren" k”nnen nicht rckg„ngig gemacht werden. Shift + LINKS,RECHTS.............Cursor an Zeilenende/anfang Control + LINKS,RECHTS.............Cursor Wort vor/zurck Shift + Control + LINKS,RECHTS...Fensterinhalt links/rechts verschieben Shift + HOCH,RUNTER..............Text seitenweise hoch/runter Control + HOCH,RUNTER..............Cursor an obere/untere sichtbare Zeile Shift + Control + HOCH,RUNTER....Fensterinhalt hoch/runter ver- schieben Shift + BACKSPACE................Von Corsurposition bis zum Zeilenanfang l”schen. Control + BACKSPACE................Von Cursorposition bis zum vorherigen Wortanfang l”schen. Shift + DELETE...................Von Cursorposition bis zum Zeilenende l”schen. Control + DELETE...................Von Cursorposition bis zum n„chsten Wortanfang l”schen. HOME...............................Cursor an Textanfang Shift + HOME.......................Cursor an Textende ALTERNATE + NUMMERNBLOCK...........Zeicheneingabe ber ASCII-Code CONTROL + NUMMERNBLOCK.............Der Editor wird verlassen, dabei gibt die Nummer der Taste den Returncode (0,...,9) an und alle Texte werden ohne Nachfrage gespeichert. FUNKTIONSTASTE.....................Holt das Fenster mit der entspr. Nummer nach vorne. ************************************************************************** 4. D I A L O G E ************************************************************************** Alle unterstrichenen Buttons k”nnen durch Bet„tigen der entsprechenden Taste plus Alternate aktiviert werden. Das Feld in der rechten oberen Ecke eines Dialoges dient dazu, hinter diesen zu schauen. Die UNDO Taste macht Eingaben in Textfeldern rckg„ngig. Shift+Pfeillinks/rechts: der Cursor springt in Textfeldern an den Zeilenanfang/ ans Zeilenende. ************************************************************************** 5. A V - P R O T O K O L L ************************************************************************** Genauere Informationen zum AV-Protokoll finden sich in der Gemini Dokumentation. Everest versteht AV_SENDKEY und AV_OPENWIND. Ein anderes Programm kann Everest Tastendrcke senden, wenn "mbuf" folgendermažen belegt wird: mbuf[0] = Nachrichtennummer AV_SENDKEY=0x4710 mbuf[1] = ap_id des Senders mbuf[2] = 0 mbuf[3] = Tastaturstatus mbuf[4] = Scancode der gedrckten Taste (wie von evnt_multi geliefert, also mit ASCII-Code in Bit 0..7, Scan-Code in Bit 8..15) Ebenso kann man mit AV_OPENWIND die Dateiauswahlbox von Everest aufrufen: mbuf[0] = Nachrichtennummer AV_OPENWIND=0x4720 ... mbuf[3] und mbuf[4] = Pointer auf den Pfad mbuf[5] und mbuf[6] = Pointer auf Wildcard (So kann zB Treeview mit Everest kommunizieren). Mit VA_START kann ein anderes Programm Everest eine Kommandozeile bermitteln. mbuf[0] = Nachrichtennummer VA_START=0x4711 ... mbuf[3] und mbuf[4] = Pointer auf Kommandozeile Das bringt unter der Multitaskingerweiterung Mag!X folgenden Vorteil: hat man Everest gestartet, so kann man beliebige Dateien auf das Everest-Icon ziehen, die Everest dann l„dt, ohne neu gestartet zu werden. Dieses funktioniert leider nicht unter MultiGem2, da dieses als VA_START angemeldete Programme berhaupt nicht mehr startet, auch wenn sie momentan nicht geladen sind. Die Nachricht "VA_START" wird dann anscheinend ins Leere geschickt. ************************************************************************** 6. V E R S I O N E N ************************************************************************** Version 0.0 -Ganz alte Version, noch ohne Tastaturuntersttzung bei Dialogen. Version 1.0 5.4.1992 -Erste, richtige Version. Ab dieser Version ist Everest Shareware. Version 1.1 12.4.1992 -Kleinere Fehler bei Speicherverwaltung behoben. -Blockeinfgen optimiert. Version 1.2 17.5.1992 -Fehler bei blockweisem Einrcken behoben. -OK-Buttons k”nnen jetzt auch mit Ziffernblock-"Enter" bet„tigt werden. -EVEREST.INF wird, falls "EVEREST" nicht im Environment definiert ist, jetzt auch nach dem "PATH" Eintrag im Environ- ment und mit shel_find gesucht. -Die Einstellung von Suchen/Ersetzen (Gross/Klein, Alles ersetzen) wird mit in die Info-Datei gespeichert. -Mit Control-B kann der Cursor zur n„chsten ”ffnenden/ schliessenden Klammer springen. -Der Porgrammteil, der das Cursornachlaufen verhindert, schluckt jetzt bei schnellem Tippen keine Zeichen mehr. -Blockweises Einrcken erweitert. -Falls kein Block markiert, gilt die Operation fr Zeile. Version 1.3 8.6.1992 -Fehler beim Scrollen in Verbindung mit Control-Y behoben. -Fehler bei Tastaturabfrage behoben. -Drucken jetzt ber Gemdos-PRN:, um Fehlern bei Multitasking vorzubeugen. -optionale Zeilen/Spalten Anzeige der Cursorposition. -Bei der "Erweiternden Selektion" ber Maus mit Shifttaste ist jetzt auch das Scrollen wie bei normaler Selektion m”glich. Version 1.4 14.6.1992 -Kleinere Fehler bei Blockselektion mit Maus behoben. -Umfangreiche Žnderung beim Textladen und bei der internen Darstellung und Verwaltung. Die Ladegeschwindigkeit konnte nahezu verdoppelt werden. Version 1.5 22.7.1992 -Fehler beim Zeichensatzwechsel behoben. -Neben TC_HELP wird jetzt auch nach PC_HELP gesucht. -Cursorblinken jetzt abstellbar. -Das Programmende kann frei gestaltet werden. -Text-Listen erm”glichen das Abspeichern von kompletten Arbeitsumgebungen. -Fehler bei Tastaturwiederholung behoben. -Verarbeitung von Fehlerlisten, die von Compilern generiert werden. -Die Speichergeschwindigkeit konnte fast verdoppelt werden. -Druckereinstellung. -Zwei schwerwiegende, tiefgreifende Fehler beim Textladen behoben. Version 2.0 15.9.1992 -Endlich: Halbautomatischer Zeilenumbruch. -Fenster jetzt vollst„ndig im Hintergrund bedienbar (zB mit WINX2). -Das "Disabeln" der Meneintr„ge geschieht jetzt nicht mehr direkt im Objektbaum, sondern zur Sicherheit ber "menu_ienable" (Ist natrlich langsamer). -Tastaturabfrage verbessert (Es werden jetzt beim Tippen unter vollbesch„ftigtem MultiGem keine Zeichen mehr verschluckt). -Fehler beim Programmstart behoben. -Sehr schwerwiegenden Fehler beseitigt, der mitten bei der Texteingabe zum pl”tzlichen Absturz fhren kann (Adress-Error). -Fehler behoben, der dazu fhrte, daž nach dem Bewegen einer Dialogbox der Speicher nicht freigegeben wurde. -Fr den Fall, daž ein Suchbegriff nicht gefunden wurde, kann jetzt eine Alertbox dargestellt werden. -Wildcards beim Suchen UND beim Ersetzen. -Peinlichen Fehler behoben, der bei Zeilennummern gr”žer als 32000 in Verbindung mit der Cursorpositionierung per Maus auftrat. -Everest versteht jetzt AV_SENDKEY, AV_OPENWIND und VA_START. -Verbesserte Abfrage w„hrend des Drucken auf Druckerbereitschaft. Die Druckausgabe geht jetzt leider wieder ber "Cprnout", da es bei "Fwrite" Probleme mit der Druckerbereitschaft gab. -Neben "TC_HELP" und "PC_HELP" wird jetzt auch nach "1STGUIDE" gesucht. Version 2.1 17.10.1992 -Beim Scrollen wird die Maus nun mit "evnt_multi" anstatt mit "graf_mkstate" berprft. Daher besteht schon die Chance, daž Everest irgendwann mit noch nicht existierenden WINX Versionen zusammenarbeiten wird. -Speicherverwaltungsfehler behoben, der darin bestand, daž Everest ”fter genau ein Byte ber das Ende eines seiner Speicherbl”cke hinaus geschrieben hat. Das fhrte unter MAG!X zu Fehlermeldungen, und k”nnte auch andere Programme besch„digen. -šberarbeitung der Blockfunktionen, dabei einige Fehler beseitigt. -Hinzuladen von Dateien. -UNDO-Funktion jetzt auch fr Zeilenl”schen mit CTRL-Y. Version 2.2 2.1.1993 und 16.1.1993 -Beim Selektieren mit Maustaste wird die Scrollgeschwindigkeit gr”žer, wenn der Mauszeiger weiter vom unteren/oberen Fensterrand entfernt ist. -Mit Selectric k”nnen jetzt auch mehrere Dateien auf einmal ausgew„hlt werden, wenn man eine Datei laden will. (Nachbesserung hierzu am 16.1.1993). -Falls man noch keinen Block selektiert hat, kann man bei Shift+Maustaste die Maustaste gedrckt halten. Vorher funktionierte Shift+Maustaste ohne vorherigen Block nur, wenn die Maustaste auch gleich wieder losgelassen wurde. -Redraw-Fehler in Verbindung mit Fenster„nderung unter KAOS (hoffentlich) beseitigt. -"Selektion suchen" funktioniert jetzt auch, falls nichts selektiert ist. In diesem Falle wird das Wort, auf dem der Cursor steht, selektiert. -Verbreiterter Accessory-Eintrag. -Mit Control + Nummernblock kann Everest verlassen werden, dabei gibt die Nummer der Taste den Returncode (0,...,9) an und alle Texte werden ohne Nachfrage gespeichert. Version 2.3 17.4.1993 -Kleinen Fehler beim Hinzuladen von Dateien behoben. -In der Dialogbox INFOS/ TEXTBELEGUNG l„žt sich jetzt der gewnschte Text direkt mit der Funktionstaste anw„hlen. -Fehler behoben, der in Verbindung mit Selectric auftrat. -Wird ein Fenster verkleinert, so wird ab jetzt versucht, den sichtbaren Bereich so anzupassen, daž der Cursor an seiner alten Position stehen bleiben kann. -Auf vielfachen Wunsch hin verh„lt sich Everest jetzt beim Programmstart so, daž nie gleichzeitig die Textliste "EVEREST.LIS" und die Kommandozeile ausgewertet werden. Die Kommandozeile hat Vorrang vor der Textliste. -Parameterbergabe von Kommandozeile und ber VA_START berarbeitet. -UNDO-Funktion fr Blockoperationen "Herausschneiden", "Einfgen", "L”schen" und "Hinzuladen". ************************************************************************** 7. U N D J E T Z T: das unvermeidliche Kapitel ************************************************************************** Das Sharewareprinzip ist eines der fairesten gegenber dem Kunden, das ich kenne. Jeder kann das Programm in Ruhe testen, um dann zu entscheiden, ob er es braucht oder nicht. Das ist bei professionellen Programmen oft nicht m”glich, und man stellt erst nachdem man viel Geld ausgegeben hat fest, daž man es sich h„tte sparen k”nnen. Gerade ein Editor ist eine grože Geschmacksfrage, weswegen es auch so viele verschiedene gibt. Everest ist Shareware. Jeder darf das Programm privat weitergeben, jedoch drfen Public Domain Versande oder „hnliches Everest nur mit meinem Einverst„ndniss vertreiben. Wer Everest benutzt, muž jedoch den Sharewarebeitrag von zwanzig Mark zahlen. Zum einen ist dies natrlich der Lohn dafr, daž Everest berhaupt geschrieben wurde, zum anderen erm”glicht der Sharewarebeitrag die Weiterentwicklung. Everest wird st„ndig weiterentwickelt. So werden st„ndig kleinere Fehler behoben und Funktionen verbessert. Wer auf seiner šberweisung deutlich seine Adresse angibt, der ist automatisch registrierter Anwender und darf jederzeit eine formatierte Diskette mit ausreichend frankiertem Rckumschlag einsenden, um die allerneueste Version zu bekommen. Als Alternative dazu kann man mir auch fnf Mark zukommen lassen. Es empfiehlt sich, auf der šberweisung neben seiner Adresse auch die Versionsnummer des benutzten Everest mit anzugeben. Falls mehr als zwanzig Mark berwiesen werden, sollte man angeben, ob das berz„hlige Geld zum Zusenden von Updates verwendet werden soll. Ich bin darauf angewiesen, daž mir von gefundenen Fehlern berichtet wird, da ich nicht alle m”glichen Konfigurationen selbst ausprobieren kann und auch oft Fehler bersehe. Falls ein Fehler aufgetreten ist, sollte dieser so genau wie m”glich mit allen Begleitumst„nden beschrieben werden. Auf jeden Fall sollte man auch die Versionsnummer von Everest angeben, mit der der Fehler passiert ist. Oliver Schmidt Kreissparkasse Ostholstein Haselredder 23 Kontonummer : 127.010.643 2420 Eutin Bankleitzahl: 213.522.40 ab 1.7.1993 gilt die neue Postleitzahl: 23701 Eutin ************************************************************************** Fr die Freunde der DFš sei noch gesagt, daž Fehlermeldungen und Hinweise aller Art auch an folgende Adresse geschickt werden k”nnen: Christian Dalichow @ KI im Maus-Netz **************************************************************************
Back to Text editors