*************************** * * * Anleitung zu EDDY 1.0 * * * *************************** Stand: 7.1.91 Programmautor: Matthias Scommoda Kastanienweg 6/1606, D-5100 Aachen Public Domain Software (Freeware) !!! Inhaltsverzeichnis: 1. Allgemeines 2. Public Domain Konzept, Updates 3. Steuerung des Programms 3.1 Cursorsteuerung 3.2 Weitere Tastenfunktionen 4. Die besonderen Funktionen 4.1 Makroprogrammierung 4.2 Blockoperationen 4.3 Suchen / Ersetzen 4.4 Drucken 4.5 Codieren / Decodieren von Texten 4.6 Textanalyse 4.7 Wordwrap 4.8 Sonstiges 5. Probleme mit EDDY 1.0 1. Allgemeines --------------- Bei EDDY 1.0 handelt es sich um einen Texteditor fr ASCII-Dateien. Das Programm wurde komplett in GFA-Basic 3.5 geschrieben und compiliert. Das Programm l„uft nur in hoher Aufl”sung. Alle Grundfunktionen eines Editors werden von EDDY 1.0 beherrscht. Darberhinaus bietet EDDY 1.0 einige besondere Funktionen, die sich sonst nur in Textverarbeitungen finden oder in dieser Form einmalig sind. Hier nun die wichtigsten Leistungsmerkmale von EDDY 1.0: - leistungsf„hige Makroprogrammierung (bis zu 72 Tastaturprogramme) - Auslesen der Kommandozeile (Laden von Dateien mit der Extension .TXT durch direktes Anklicken) - Textl„nge bis zu 10000 Zeilen, Zeilenl„nge bis zu 32767 Zeichen - Schnelles Scrolling - Kein nachlaufender Cursor - Alle Funktionen sind ber Tastatur aufrufbar - Die wichtigsten Funktionen k”nnen auch mit der Maus bedient werden - Umfangreiche Blockoperationen - Wordwrap, Blocksatz, Flattersatz und Zentrierung von Text - Suchen / Ersetzen - Codierung / Decodierung von Textdateien - statistische Auswertung des Textes (Zeichenverteilung, Wortl„ngenverteilung) - Starten von externen Programmen - Benutzung von Accessories m”glich - integrierte Kurzanleitung 2. Public Domain Konzept ------------------------ Das Programm darf frei kopiert werden. Allerdings mssen alle im Ordner EDDY vorhandenen Dateien unver„ndert mitkopiert werden. Das Programm darf nicht verkauft werden. Der Lieferumfang von EDDY 1.0 umfažt folgende Dateien: EDDY_10.PRG Der Editor EDDY.RSC Die zugeh”rige Resource-Datei EDDY.MAK optionale Datei mit Beispielmakros EDDY.PAR optionale Parameterdatei ANLEITUN.TXT Diese Textdatei Updates k”nnen bei mir gegen Zusendung einer formatierten Leerdiskette und eines selbstadressierten frankierten Umschlags (1.70 DM reicht fr normalen Briefumschlag, besser ist natrlich ein geftterter Umschlag) bestellt werden. Spenden sind natrlich willkommen, aber nicht unbedingt erforderlich. Verbesserungsvorschl„ge, Kritik und Informationen ber gefundene Fehler sind natrlich auch erwnscht. Meine Adresse: Matthias Scommoda Kastanienweg 6/1606 D-5100 Aachen 3. Steuerung des Programms -------------------------- Alle Funktionen von EDDY 1.0 k”nnen ber die Tastatur erreicht werden. Nur bei den GEM-Dialog- und Alertboxen muž eventuell zur Maus gegriffen werden. Die Menzeile in den oberen beiden Bildschirmzeilen drfte jedem GFA-Basic-Programmierer bekannt vorkommen. Sie wird auch genauso bedient wie im GFA-Basic-Editor. Die untere Menzeile wird ber die Funktionstasten F1 - F10 erreicht, und die obere Menzeile kann mit Shift + F1 - Shift + F8 (= F11 - F18) angesprochen werden. Alternativ kann man auch mit der Maus Menpunkte direkt anklicken. Die Untermens (bei F1, F6, F10 und F16) werden ber die Cursortasten bedient. Die Auswahl erfolgt durch RETURN. Auch hier kann durch ein Doppelklick mit der Maus ein Menpunkt selektiert werden. 3.1 Cursorsteuerung ------------------- Neben den Cursortasten gibt es folgende M”glichkeiten zur Cursorsteuerung: CTRL-links: Cursor an den Zeilenanfang setzen. CTRL-rechts: Cursor springt ans Zeilenende. CTRL-unten: Es wird um eine Bildschirmseite (20 Zeilen) nach unten gebl„ttert. CTRL-rechts: Es wird um eine Bildschirmseite nach oben gebl„ttert. Home: Der Cursor springt an den Anfang der Bildschirmseite. CTRL-Home: Der Cursor wird an den Textanfang gesetzt. CTRL-Z: Sprung in die letzte Textzeile F12: Sprung um eine Seite nach unten (60 Zeilen), mit F17 einstellbar. F13: Sprung um eine Seite nach oben. Maus: Der Cursor kann auch durch Klicken mit der Maus positioniert werden. Shift: Wird beim Scrolling zus„tlich die Shift-Taste ge- drckt, so beschleunigt sich das Scrolling um ca. 25%. Die Cursortaste kann dann auch wieder losgelas- sen werden. 3.2 Weitere Tastenfunktionen ---------------------------- Backspace: Das Zeichen links vom Cursor wird gel”scht. Delete: Das Zeichen unter dem Cursor wird gel”scht. Return: Ein Zeile nach unten. Im Einfgemodus wird eine neue CTRL-Return: Der Zeilenrest ab Cursorposition wird in eine neue Zeile umgebrochen. CTRL-Delete: Die aktuelle Zeile wird gel”scht (entspricht F3). Undo: Die zuletzt gel”schte Zeile wird wieder in den Text eingefgt. Tab: Der Cursor springt an die n„chste Tabulatorposition. Die Tabulatorweite ist ber F17 einstellbar. Insert: Es wird zwischen Einfge- und šberschreibmodus gewechselt. Im šberschreibmodus wird Wordwrap ausgeschaltet. CTRL-W: Wordwrap am Zeilenende wird ein- bzw. ausgeschaltet. CTRL-U: Der Einrckmodus wird ein- bzw. ausgeschaltet. Ist er eingeschaltet, springt der Cursor bei Return bis zur Einrckung der vorherigen Zeile. Der Zeilenanfang wird mit Leerzeichen aufgefllt. Diese Funktion ist beim Schreiben von strukturierten Programmlistings hilfreich. CTRL-O: Das erste Wort in der folgenden Zeile wird an die aktuelle Zeile angefgt. CTRL-R: Die aktuelle Zeile wird durch Einfgen von Leer- zeichen auf die Blocksatzbreite (mit F17 einstellbar) gebracht. CTRL-S: Eine mit F7 eingegebene Zeichenkette wird ab der Cursorposition gesucht. CTRL-E: Eine mit F8 eingegebene Zeichenkette wird gesucht und ersetzt. Es ist m”glich erst mit CTRL-S zu suchen und dann gegebenenfalls mit CTRL-E zu ersetzen. Esc: Programmende mit Sicherheitsabfrage 4. Die besonderen Funktionen ---------------------------- 4.1 Makroprogrammierung ----------------------- Mit EDDY 1.0 k”nnen sehr flexible Tastaturprogramme ( = Makros) erstellt werden. So ist es z.B. m”glich auf Knopfdruck eine Datei mit voreingestelltem Namen zu laden oder zu speichern. Mit einem Makro kann der Cursor auf eine beliebige Zeile gesetzt werden (Sprungmarken). Ebenso ist es m”glich, den gesamten Text mit einem Makro zu l”schen oder z.B. linksbndig zu setzen. Normale Floskeln lassen sich natrlich auch programmieren. Ein einzelnes Tastaturprogramm darf bis zu 32767 Bytes lang sein. Der Aufruf und die Programmierung von Makros wird ber die Taste F1 gesteuert. In den unteren Bildschirmzeilen erscheinen hierzu Informationen. Nachdem man einmal auf F1 gedrckt hat, bestehen folgende M”glichkeiten: a) Man drckt jetzt eine Taste, die bereits programmiert wurde. Das Tastaturprogramm wird jetzt ausgefhrt. Es kann nicht unterbrochen werden! b) Man drckt eine Taste, die sich programmieren l„žt und noch nicht programmiert wurde. Ab jetzt werden alle Eingaben inklusive der Cursorbewegungen, der Sondertasten und aller CTRL-Sequenzen in einem Makro gespeichert. Alle Blockoperationen (F6), das Laden und Speichern (F10) und das Anspringen von Zeilen (F15) werden im Makro aufgenommen. Wenn ein zweites Mal F1 gedrckt wird, wird die Programmierung beendet. Daraus folgt, daž sich Makros nicht gegenseitig aufrufen k”nnen. c) Wenn man eine Taste drckt, die sich nicht programmieren l„žt (z.B. Space), erscheint nur eine Warnmeldung. d) Man drckt nochmal F1 (oder klickt mit der Maus zweimal |Progrm| in der Menzeile an). Jetzt erscheint ein Untermen, das folgende Funktionen bietet: - Ein Makro-Datei mit der Extension .MAK kann geladen werden. - Die vorhandenen Makros k”nnen in einer Datei mit der Extension .MAK gespeichert werden. Die Datei darf maximal 32767 Bytes lang sein. Beim Programmstart von EDDY l„dt das Programm automatisch - falls vorhanden - eine Datei mit dem Namen EDDY.MAK. - In einer Informationsbox erh„lt man eine šbersicht ber alle programmierte Tasten und die L„nge der einzelnen Tastaturprogramme. - Einzelne Tastaturprogramme k”nnen gel”scht werden. Hierzu ist die zu l”schende Taste zu drcken. - Abbruch des Untermens Beispiel der Programmierung einer Taste: 1. 'F1' drcken -> Es erscheint 'Makroprogramm: Taste drcken (F1: weitere Optionen):' 2. 't' drcken -> 'Programmierung gestartet! (F1: Ende der Programmierung)' 3. 'Guten Tag' ganz normal tippen -> Dieser Text wird jetzt im Makro gespeichert. 4. 'F1' drcken -> Der Text in der unteren Zeile verschwindet. Die Taste 't' ist nun programmiert. Aufruf des Makros: 1. 'F1' drcken -> Es erscheint 'Makroprogramm: Taste drcken (F1: weitere Optionen):' 2. 't' drcken -> Es erscheint 'Programm wird ausgefhrt. :t'. Der Text 'Guten Tag' wird jetzt ab der momentanen Cursorposition in den Text eingefgt bzw. berschrieben. Das war's. Die mitgelieferte Beispieldatei EDDY.MAK enth„lt folgende Beispielprogramme: - 'F1' + '1': Der gesamte Text wird gel”scht (Vorsicht!) - 'F1' + '2': Textende in der Bildschirmmitte positionieren. - 'F1' + '3': Eine Datei 'A:\EDDY\ANLEITUN.TXT' wird geladen. - 'F1' + '4': Der Text wird unter 'A:\EDDY\TEST.TXT' gespeichert. - 'F1' + '5': Der gesamte Text wird linksbndig gesetzt. - 'F1' + '0': Bitte im Einfgemodus und mit ausgeschaltetem Wordwrap ausprobieren! - 'F1' + 'h': Eine Begržung 4.2 Blockoperationen -------------------- Mit den Tasten F4 (Blockstart) und F5 (Blockende) kann ein Block markiert werden. Ein Block muž mindestens eine Zeile umfassen. Die Position der Blockmarken wird in der untersten Bildschirmzeile angezeigt. Danach kann das Untermen mit den Blockoperationen aufgerufen werden (F6). Es stehen folgende Funktionen zur Verfgung: a) 'Laden eines Blockes': Eine Datei mit der Extension .BLK wird ab Blockstart geladen. Die Datei muž vorher ber die Funktion 'Block speichern' erzeugt worden sein. Im Einfgemodus wird der geladene Block in den vorhandenen Text eingefgt, w„hrend im šberschreibmodus die folgenden Zeilen von dem geladenen Block berschrieben werden. b) 'Speichern eines Blockes': Der Blockbereich wird in einer Datei mit der Extension .BLK gespeichert. Hierbei wird die Zeilenanzahl in die erste Zeile der Datei geschrieben. c) 'Block l”schen': Der Blockbereich wird unwiderruflich gel”scht. Durch Markierung des gesamten Textes als Block l„žt sich so der Text l”schen. d) 'Block verschieben': Der Blockbereich wird zur aktuellen Zeile ( = Zeile in der sich der Cursor befindet) verschoben. Die aktuelle Zeile muž sich natrlich aužerhalb des markierten Blockbereichs befinden. e) 'Block kopieren': Der Blockbereich wird ab der aktuellen Zeile in den Text eingefgt. f) 'Zentrieren': Die Zentrierung des Textes erfolgt bezglich der aktuellen Blocksatzbreite, die mit F17 einstellbar ist. Am sinnvollsten ist hier natrlich eine Blocksatzbreite von 80 Zeichen. g) 'Blocksatz': Der ausgew„hlte Blockbereich wird im Blocksatz formatiert. Es werden nur ganze W”rter umgebrochen. Dabei kann der Text natrlich l„nger bzw. krzer werden. Die gewnschte Blocksatzbreite ist ber F17 einstellbar. Leerzeilen werden gel”scht! h) 'Linksbndig': Der Text wird linksbndig gesetzt. i) 'Rechtsbndig': Der Text wird rechtsbndig gesetzt. j) 'Markierungen l”schen': Die Blockmarken werden gel”scht. k) 'Zurck': Abbruch des Untermens. 4.3 Suchen / Ersetzen --------------------- Nach Drcken der Funktionstaste F7 kann eine bis zu 70 Zeichen lange Zeichenkette eingegeben werden. Diese wird dann ab der momentanen Cursorposition gesucht. Wird eine Textstelle gefunden, so wird sie in der obersten Textzeile angezeigt. Durch Drcken von CTRL-S kann weiter gesucht werden. Nach Abbruch des Suchmoduses kann man auch mit CTRL-S im normalen Editormodus weitersuchen. Mit der Funktionstaste F8 kann man Zeichenketten suchen und durch andere ersetzen lassen. Grož- und Kleinschreibung wird immer bercksichtigt, und das Suchen/Ersetzen startet wieder ab der Cursorposition. Mit CTRL-E werden die gefundenen Textstellen im Einzelschrittmodus ersetzt, und mit CTRL-A werden alle folgenden Stellen automatisch ersetzt. Wenn zwei Zeichenketten eingegeben wurden, kann man jederzeit mit CTRL-E die n„chste suchen und ersetzen. 4.4 Drucken ----------- Mit F9 ruft man die Druckroutine auf. Hier kann die Schriftart, die Schriftbreite, die Seitenl„nge, der linke Rand und der Druckbereich eingestellt werden. Da ich einen Epson FX800 besitze, habe ich das Programm auf Epson FX-Drucker abgestimmt. Die Einstellungen der Schriftbreite und das Schalten auf NLQ-Schrift funktionieren z.B. auch mit einem NEC P2200. Mit anderen Druckern kann es natrlich zu Problemen kommen. Falls Umlaute falsch gedruckt werden, so sorgt das PTEPSON.PRG fr Abhilfe. 4.5 Codieren / Decodieren von Texten ------------------------------------ Mit F10 gelangt man in ein weiteres Untermen. Hier k”nnen Textdateien geladen und gespeichert werden. Mit der Funktion 'Dazu laden...' kann eine weitere Datei an die im Speicher befindliche angeh„ngt werden. Man kann so beliebig viele Dateien zusammen'mergen'. Beim Speichern werden schon vorhandene Dateien mit gleichem Namen radikal berschrieben. Also sollte man hier vorsichtig sein. Zus„tzlich besteht die M”glichkeit, Texte mit Hilfe eines Codewortes verschlsselt abzuspeichern. Hierzu w„hlt man den Menpunkt 'Codiertes Speichern' aus. Es muž dann ein bis zu 40 Zeichen langes Codewort eingegeben werden bevor in der Fileselectbox ein Dateiname ausgew„hlt wird. Der Text wird nun verschlsselt auf dem Datentr„ger abgelegt. Beim Laden erkennt EDDY 1.0 automatisch codierte Textdateien und fragt wieder nach dem Codewort. Das Codewort wird nicht mit in der codierten Datei abgelegt und ist zum Entschlsseln unbedingt erforderlich. Falls ein falsches Codewort eingegeben wurde, decodiert EDDY 1.0 zwar auch den Text, kommt aber zu keinem lesbaren Ergebnis (Ausprobieren!). 4.6 Textanalyse --------------- Mit dieser Funktion ist es m”glich, Texte auf die H„ufigkeit der verwendeten Zeichen hin zu untersuchen. Man kann sich die Verteilung der einzelnen Zeichen des Alphabets oder aller 256 Zeichen als Grafik anzeigen lassen. Bei der Alphabetverteilung wird zus„tzlich die absolute und relative H„ufigkeit in Prozent der einzelnen Zeichen angezeigt. Weiterhin kann man sich die Verteilung der Wortl„ngen anschauen. Es wird die Gesamtzahl der W”rter und die h„ufigste Wortl„nge ermittelt, und man kann das Ergebnis wieder als Grafik betrachten. 4.7 Wordwrap ------------ Mit CTRL-W wird der Wordwrapmodus ein- und ausgeschaltet. Bei eingeschaltetem Wordwrap wird beim šberschreiten der gew„hlten Blocksatzbreite (voreingestellt: 72 Zeichen) das angefangene Wort in eine neue Zeile umgebrochen. Beim Schreiben von Texten ist diese Funktion sehr ntzlich, da man nicht auf das Zeilenende achten muž. 4.8 Sonstiges ------------- a) šber F11 ist eine zweiseitige Kurzbeschreibung der Funktionstasten- belegung und der Sondertasten abrufbar. b) Mit F14 wird der Bildschirm komplett neu gezeichnet. Bei Texten, die Steuerzeichen enthalten, kann es zur teilweisen Zerst”rung des Bildschirms kommen. F14 stellt dann den Bildschirminhalt wieder her. c) šber 'Goto' kann man eine anzuspringende Zeilennummer direkt angeben. Diese Funktion l„žt sich auch in Makros speichern, so daž man Sprungmarken programmieren kann. d) Mit F17 erscheint eine Dialogbox zur Eingabe von einige Konstanten. Diese Werte und die aktuelle Druckereinstellung k”nnen in der Datei EDDY.PAR gespeichert werden. EDDY 1.0 versucht beim Programmstart eine Datei solchen Namens zu laden. e) F18: Man erh„lt Informationen ber den Speicherbedarf des Textes und den freien Speicher. f) F19: Externe Programme k”nnen von EDDY 1.0 aus gestartet werden. h) F20: Eine Menzeile wird eingeblendet, so daž man geladene Accesso- ries benutzen kann. 5. Probleme mit EDDY 1.0 ------------------------ Werden Dateien geladen, die viele Sonderzeichen enthalten (CHR$ < 32) kann es bei der Bildschirmausgabe zu Fehlern kommen, da sie mit dem PRINT-Befehl erfolgt. Aužerdem ist das Arbeiten mit fast vollem Speicher ( < 5000 Bytes freier Speicher) sehr unsicher und kann bombig enden. Beim Programmstart wird mit XBIOS(35,10,2) der Tastaturrepeat langsamer gestellt. Dadurch wird jegliches Nachlaufen des Cursors unterbunden. Zus„tzlich wird bei einigen zeitkritischen Funktionen der Tastaturpuffer gel”scht. Dadurch verringert sich etwas die Verarbeitungs- geschwindigkeit. Wer will, kann aber w„hrend des Programmlaufs mit dem Kontrollfeld-Accessory die Tastaturrepeatgeschwindigkeit wieder erh”hen. Dies macht EDDY 1.0 auch beim Programmende. ************************************************************************ Ich wnsche viel Spaž mit EDDY 1.0 und hoffe auf viel Resonanz, die ich auch nach M”glichkeit beantworten werde. Matthias Scommoda ************************************************************************