home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Crawly Crypt Collection 2
/
crawlyvol2.bin
/
apps
/
text_ed
/
scedit
/
scedit.doc
< prev
next >
Wrap
Text File
|
2006-03-15
|
33KB
|
760 lines
1. Einleitung
-------------
SCEDIT.PRG (Source code editor) ist ein GEM-gestützter Texteditor, der
(wie der Name schon sagt) hauptsächlich zum Bearbeiten von Programmtexten ge-
dacht ist, aber natürlich auch vor anderen Texten nicht gerade zurückschreckt.
Ziel der Entwicklung war dabei, die Lücke zwischen den einfachen (meist im
VT-52-Modus laufenden) Editoren und den sehr großen (und teuren) GEM-Produk-
ten auszufüllen.
Dieses Programm wird als Shareware vertrieben; die Shareware-Gebühr beträgt
20,-- DM. Näheres siehe unter Abschnitt 15 (Nutzungsbedingungen).
Meine persönlichen Daten:
Harald Becker
Ferrenbergstraße 41
5060 Bergisch Gladbach 2
Tel. 02202/34913
Konto 1311 045 876, Kreissparkasse Köln (Bankleitzahl 373 502 11)
2. Voraussetzungen
------------------
SCEDIT läuft auf ST-Rechnern jeder Speichergröße und läßt sich auf Dis-
ketten, Festplatten und RAMdisks installieren. Das Programm läuft aller-
dings NUR mit monochromen Bildschirmen.
(Anmerkung: Die eingebauten Bildschirmtreiber gehen von einem als Mono-
chrombitmap organisierten Bildschirmspeicher aus. Das heißt aber nicht, daß
das Programm an eine Auflösung von 640 * 400 Pixel gebunden ist. In anderen
Auflösungen müßte es laufen; ich hatte allerdings leider keine Gelegenheit,
es in einer solchen Umgebung zu testen.)
3. Start des Programms
----------------------
SCEDIT wird vom Desktop (Standard oder Alternativ) durch einen einfachen
Doppelklick gestartet. Im gerade aktuellen Verzeichnis sucht er die Resource
SCEDIT.RSC (unbedingt notwendig) und die Konfigurationsdatei SCEDIT.CFG (nicht
lebenswichtig, siehe unten). Anschließend (wenn alles geklappt hat) öffnet er
ein leeres Textfenster mit dem Titel 'Untitled', in dem man sich austoben kann.
Von einer Textshell aus wird das Programm durch Eingabe seines Namens ge-
startet. Hier kann man zusätzlich Parameter angeben. Das Format der Kommando-
zeile lautet:
SCEDIT [Datei [Zeile [Spalte]]]
Datei: Name einer Textdatei, die beim Start geladen und im zuerst ge-
öffneten Textfenster angezeigt wird (anstatt 'Untitled').
Zeile: \
Zeichenposition, auf der der Textcursor plaziert wird.
Spalte:/
(Die beiden letzten Parameter werden auch z. B. von Entwicklungsumgebungen
genutzt, die bei Entdeckung eines Syntaxfehlers beim Kompilieren die Mög-
lichkeit bieten, diesen im Editor sofort zu korrigieren.)
Es ist NICHT empfehlenswert, SCEDIT im Desktop als TTP-Anwendung anzumelden.
SCEDIT sollte aus dem aktuellen GEMDOS-Pfad heraus gestartet werden. Gibt man
als Parameter eine Datei an, deren Name eine Pfadangabe enthält, so wird nach
dem Laden der Resource etc. dieser Pfad aktuell gemacht.
4. Grundfunktionen des Programms
--------------------------------
4.1. Textdarstellung
--------------------
Der Editor benutzt einen (nahezu) standardmäßigen GEM-Bildschirm mit
Menüzeile und bis zu 5 Textfenstern. In den Menüs stehen hinter einigen Ein-
trägen Tastenkombinationen, die dieselbe Funktion auslösen (sog. shortcuts).
Die Titelzeile eines Fensters enthält den Namen der dargestellten Datei;
davor können zwei Zustandskennzeichen stehen:
'*': An diesem Text wurden seit dem Laden/letzten Sichern Änderungen
vorgenommen.
'~': Dieser Text ist z. Zt. gegen Änderungen gesperrt.
Die Infozeile eines Fensters ist hier zweizeilig: Die obere Zeile ent-
hält Angaben über den durch den dargestellten Text belegten Speicher, sowie
über den freien Platz, der für weiteren Text zur Verfügung steht.
In der zweiten Zeile werden die aktuelle Cursorposition (Zeile und Spalte)
und der eingestellte Schreibmodus (I = autom. Einfügen (Insert), R = Über-
schreiben (Replace)) angezeigt.
4.2 Fensterbedienung
--------------------
Die Handhabung der Fenster folgt den Konventionen von GEM. Die Text-
fenster von SCEDIT lassen sich wie die des Desktop verschieben, vergrößern,
verkleinern und schließen (das Schließen bewirkt keinen Verlust von Text-
daten). Die Rollpfeile und -balken bewegen den Textcursor innerhalb des Fen-
sters oder verändern den dargestellten Textausschnitt (näheres siehe unter
4.4). Die Funktionen der Rollpfeile und -balken (mit Ausnahme der Schieber)
werden automatisch wiederholt, wenn die linke Maustaste nach dem Anklicken
festgehalten wird.
4.3 Texteingabe
---------------
In das aktuelle Textfenster (erkennbar am grau unterlegten Balken rechts
und links des Titels) kann man Text eingeben. Die Tastatur wird dabei in
kanonischer Weise verwendet; eingetippte Zeichen erscheinen am Textcursor,
der durch ein schwarz unterlegtes Zeichen im Textfenster markiert wird.
Im Einfügemodus ("Mode: I" in der Infozeile) werden die in der Zeile fol-
genden Zeichen aufgeschoben, um Platz zu schaffen. Die maximale Zeilenlänge
beträgt konstant 250 Zeichen; bei Überschreitung wird die Eingabe blockiert.
Im Ersetzmodus ("Mode: R") werden die bereits vorhandene Zeichen einfach
überschrieben; die Eingabe blockiert hier am tatsächlichen Zeilenende.
4.4 Bewegung des Textcursors
----------------------------
Durch Betätigung der Pfeiltasten bzw. Anklicken der Rollpfeile oder
-balken wird der Cursor in die jeweilige Richtung verschoben. Bei Erreichen
des Fensterrandes wird der Text in entgegengesetzter Richtung gerollt. Am
Textanfang oder -ende bzw. am Zeilenanfang oder -ende blockiert die Bewegung.
Eine Einheit der Bewegung sind Tabulatorpositionen: Das Programm ver-
waltet die Tabulatorgröße als Zahlenwert, gemessen in Zeichenpositionen. Bei
einer Tabulatorgröße von 4 z. B. sind die Tabulatorpositionen bei Spalte 1,
5, 9, 13, 17, usw.
Eine Aufstellung aller Bewegungsmöglichkeiten:
Tasten:
Pfeiltaste: Ein Zeichen in die jeweilige Richtung.
Shift-Pfeil auf/ab: Eine Bildschirmseite auf/ab.
Shift-Pfeil links/rechts: Eine Wort links/rechts.
Control-Pfeil auf/ab: Zum Textanfang/Textende.
Control-Pfeil links/rechts: Zum Zeilenanfang/-ende.
Home: Zum Textanfang.
Shift-Home: Zum Textende.
Anklicken von Fensterelementen:
Rollpfeile: Ein Zeichen in die jeweilige Richtung.
Senkrechter Rollbalken
über/unter dem Schieber: Eine Bildschirmseite auf/ab.
Waagerechter Rollbalken
links/rechts vom Schieber: Nächste Tabulatorposition links/rechts.
Senkrechter Schieber:
Seine Lage und Höhe relativ zum Rollbalken geben Lage und Höhe des darge-
stellten Ausschnitts relativ zum gesamten Text an. Durch Ziehen des Schiebers
läßt sich demgemäß ein neuer Ausschnitt wählen.
Waagerechter Schieber:
Seine Lage und Breite relativ zum Rollbalken geben Lage und Breite des darge-
stellten Ausschnitts relativ zur gesamten aktuellen Zeile an. Durch Ziehen des
Schiebers läßt sich demgemäß ein neuer Ausschnitt wählen.
Textfeld des Fensters:
Klickt man im aktiven Textfenster eine Zeichenposition an, so wird der Cursor
auf dieses Zeichen gesetzt.
4.5 Spezielle Editiertasten
---------------------------
Während der Texterfassung kann man mit einigen Tasten spezielle Editier-
funktionen auslösen, die zum Teil identisch mit den Funktionen bestimmter
Menueinträge sind. Wenn dies der Fall ist, steht im jeweiligen Menueintrag
eine Kurzbezeichnung der Taste. Durch Drücken der Taste "Help" wird eine Dia-
logbox angezeigt, die über einige weitere Tastaturfunktionen Auskunft gibt.
Hier folgt eine ausführlichere Übersicht:
"Backspace":
Bewegt den Cursor um ein Zeichen nach links und löscht das dort stehende
Zeichen.
"Delete":
Löscht das zeichen unter dem Cursor.
"Shift Delete":
Löscht das Wort unter dem Cursor.
"Alternate Delete":
Löscht die Zeile unter dem Cursor.
"Return" oder "Enter":
Teilt die Cursorzeile an der Cursorposition und fügt den hinteren Teil als
neue Zeile ein. Stellt den Cursor auf den Anfang der neuen Zeile. Bei auto-
matischer Einrückung erscheint das erste Zeichen der neuen Zeile unter dem
ersten Nicht-Leerzeichen der Cursorzeile.
Im Ersetzmodus wird nur auf den Anfang der Folgezeile gesprungen.
"Insert":
Fügt vor der Cursorzeile eine neue Zeile ein, stellt den Cursor auf deren
Anfang.
"Undo":
Setzt die zeile unter dem Cursor auf den Zustand zurück, den sie hatte, als
der Cursor sie zum letzten Mal betrat.
"Help":
Zeigt die erwähnte Hilfe-Box an.
"Tab":
Fügt Leerzeichen bis zur nächsten Tabulatorposition rechts vom Cursor ein.
Im Ersetzmodus wird nur zu dieser Tabulatorposition gesprungen.
"Shift Tab":
Springt zur nächsten Tabulatorposition nach links.
"Control-J":
Fügt die Cursorzeile mit ihrer Vorgängerin zusammen, stellt den Cursor auf
die Verbindungsstelle.
"Control-K":
Löscht Text von der Cursorposition (einschließlich) bis zum Ende der aktuellen
Zeile.
"Control-R":
Fügt hinter der Cursorzeile eine Kopie dieser Zeile ein und stellt den Cur-
sor auf deren Anfang.
"Control-#":
Vertauscht das Zeichen unter dem Cursor mit seinem Nachfolger.
5. Menus und Dialogboxen
------------------------
Die Desktop-Menus werden gemäß dem GEM-Standard benutzt. Bestimmte Menu-
einträge fungieren als Schalter. Ist der betreffende Modus eingeschaltet, er-
scheint vor diesen Einträgen ein Häkchen. Zur Zeit nicht anwählbare Menuein-
träge werden in hellgrauer Schrift dargestellt.
Die Dialogboxen von SCEDIT besitzen einige der Eigenschaften von Fenstern
(sog. nichtmodale Dialogboxen). Während eine Dialogbox auf dem Bildschirm ist
kann man Auswahlen in den Menus treffen oder Textfenster durch Anklicken ak-
tivieren, die die Box dann evtl überdecken und inaktiv machen. Ein Mausklick
in den sichtbaren Teil der Box oder ein erneuter Aufruf der entsprechenden
Funktion aktivieren sie wieder.
Wenn eine aktive Box editierbare Textfelder enthält, erscheint auf einen Tas-
tendruck oder Mausklick in eines dieser Felder hin der GEM-Cursor darin. Dann
sind Eingaben möglich. Bei einem Mausklick außerhalb der Editierfelder ver-
schwindet der GEM-Cursor wieder. Solange er sichtbar ist, sind keine Menu-
Auswahlen möglich.
Durch Ziehen des Quadrats in der linken oberen Ecke lassen sich die Boxen auf
dem Bildschirm verschieben.
Es kann maximal eine Dialogbox auf dem Bildschirm dargestellt werden. Ist
dieses Limit schon erreicht, bleiben Aufrufe weiterer Boxen wirkungslos.
Die obigen Besonderheiten gelten nicht für die Dateiauswahlbox, die nach
wie vor vom Betriebssystem verwaltet wird. (Damit hat jeder Anwender die Mög-
lichkeit, seine Lieblingsbox einzubinden.)
6. Verwaltung mehrerer Textpuffer
---------------------------------
SCEDIT.PRG ist in der Lage, bis zu 10 Texte gleichzeitig in Puffern im
Speicher zu halten, die den vorhandenen Speicherplatz nach Belieben unter
sich aufteilen können. Bis zu 5 dieser Texte können gleichzeitig in Fenstern
auf dem Bildschirm dargestellt werden, von denen maximal eines zum Editieren
aktiv ist (erkennbar am grauen Titelbalken).
Jeder Puffer hat einen Namen, der in der Titelzeile des zugehörigen Fensters
angezeigt wird. Dies ist entweder der Name der in diesem Puffer bearbeiteten
Textdatei oder "Untitled".
Die Verwaltung der Puffer wird im Wesentlichen durch das Menu "Speicher"
gehandhabt. Die einzelnen Einträge haben folgende Aufgaben:
(In Klammern jeweils die entsprechende Tastenfunktion, sofern vorhanden)
"Neuer Puffer" (Control-N):
Legt im Speicher einen neuen, leeren Textpuffer an, gibt ihm den Namen
"Untitled" und öffnet für ihn ein Textfenster, sofern nicht bereits 5
Fenster offen sind. Existieren bereits 10 Puffer, oder reicht der Speicher-
platz nicht, bricht die Funktion ab.
"Puffer freigeben":
Löscht den Puffer im gerade aktiven (obersten) Textfenster und gibt allen
Speicher, den er belegt, frei. Würde sich danach kein Puffer mehr im Speicher
befinden, wird ein neuer leerer "Untitled"-Puffer angelegt.
Die anderen Einträge im Menu "Speicher" enthalten die (evtl. verkürzten)
Namen der z. Zt. existierenden Puffer oder das Wort "Unused", sofern weniger
als 10 Puffer vorhanden sind. Anklicken eines Puffernamens öffnet für diesen
Puffer ein aktives Textfenster oder aktiviert es, falls es bereits offen war.
7. Dateioperationen
-------------------
Das Menu "Datei" stellt Funktionen zur Verfügung, die es gestatten, mit
SCEDIT Disketten- oder Plattendateien zu bearbeiten. Die Aufgaben der einzel-
nen Einträge:
"Datei laden" (Control-O):
Zunächst wird die Dateiauswahlbox angezeigt, um den Dateinamen in Erfahrung
zu bringen. Mit diesem Namen wird ein neuer Puffer angelegt, ein Fenster ge-
öffnet und die ausgewählte Datei eingeladen. Wurde eine nichtexistierende Da-
tei ausgewählt, wird dies gemeldet und ein leerer Puffer angelegt, um die
Datei zu erzeugen.
"Text ersetzen":
Nach Auswahl einer Datei wird der Inhalt des aktiven Puffers durch diese
Datei ersetzt.
"Text rücksetzen" (Control-Undo):
Der Inhalt des aktiven Puffers wird erneut von der Disk geladen, also auf
den Zustand zurückgesetzt, den er beim Laden hatte. Bei "Untitled"-Puffern
bleibt diese Funktion wirkungslos.
"Sichern" (Control-S):
Der Inhalt des aktiven Puffers wird auf die entprechende Disk-Datei ge-
schrieben. Bei "Untitled"-Puffern arbeitet "Sichern" genau wie "Speichern als".
"Speichern als":
Es wird nach einem Dateinamen gefragt und der Inhalt des aktiven Puffers
in diese Datei geschrieben. Anschließend erhält der aktive Puffer den Namen
dieser Datei.
"Komprimieren" (Alternate-C):
Dies ist ein Schalter, der beim Speichern/Laden von Dateien die Kompression
von Leerzeichen zu "Tab"-Zeichen (Ascii 9) bzw. die Expansion von "Tabs" in
Leerzeichen steuert. Beim Speichern spart dieser Modus Plattenplatz; beim
Laden kann er evtl. vorhandene Textdateien lesbar machen. Sonst würden etwa
im Text vorhandene "Tabs" als "Uhr"-Zeichen dargestellt. Sollte dies doch ein-
mal passieren, "Komprimieren" durch Anklicken abschalten und den Text mit
"Text rücksetzen" neu laden.
"Autom. Backup" (Alternate-B):
Ist dieser Schalter aktiv, so wird vor dem Speichern eines Puffers die ent-
sprechende Plattendatei vor dem Überschreiben gerettet, indem sie die Namens-
endung "BAK" enthält (also etwa TEST.TXT in TEST.BAK). Man sollte diesen
Modus also nicht bei Dateien verwenden, die schon die Endung "BAK" haben.
8. Blockoperationen
-------------------
Ein Block ist in SCEDIT ein zusammenhängender Textbereich, der von 2 be-
stimmten Zeichenpositionen begrenzt wird. Ein solcher Block kann Teil einer
Zeile sein oder sich über mehrere Zeilen erstrecken. Als Block markierte
Textbereiche lassen sich kopieren und verschieben, sowohl innerhalb eines
Puffers, als auch zwischen verschiedenen Puffern. In jedem Puffer kann ein
Blockbereich ausgewählt werden, der im Textfenster schwarz unterlegt darge-
stellt wird. Zur Auswahl kann die Maus benutzt werden:
Klickt man in den Textbereich des aktiven Fensters, hält die Maustaste fest
und führt die Maus über den Bildschirm ("dragging"), so folgt der Auswahl-
block den Mausbewegungen, bis die Maustaste losgelassen wird. Wenn dabei der
obere oder untere Fensterrand überschritten wird, rollt der Text in die ent-
sprechende Richtung.
Durch Doppelklick auf ein alphanumerisches Zeichen wird das Wort, (d. h. alle
direkt angrenzenden alphanumerischen Zeichen), zu dem das Zeichen gehört, se-
lektiert.
Bei Doppelklick auf ein Klammerzeichen '(', '[', '{', '}', ']', oder ')' sucht
SCEDIT im Text nach dem entsprechenden Gegenstück, und zwar mit Beachtung von
Verschachtelungen. Die beiden Klammern (und alles dazwischen) werden dann als
Block selektiert.
Die Funktionen im Menu "Block":
"Blockanfang setzen":
Definiert im gerade aktiven Puffer den Anfang des Blockbereiches an der ak-
tuellen Cursorposition. War zuvor noch kein Block definiert, so wird auch das
Blockende auf die gewählte Position gesetzt, so daß der Block genau 1 Zeichen
umfaßt. War bereits ein Block definiert, so wird dessen Anfang neu gesetzt.
Setzt man den Anfang hinter das vorige Ende, so wird dieses zum neuen Anfang.
"Blockende setzen":
Definiert im aktiven Puffer das Blockende an der aktuellen Cursorposition.
Diese Funktion ist das genaue Spiegelbild der obigen.
"Ganzer Text" (Control-W):
Setzt den Blockanfang auf das erste und das Blockende auf das letzte Zeichen
des aktuellen Puffers, wählt also den gesamten Text aus.
"Auswahl aufheben" (Control-P):
Macht eine vorherige Blockdefinition rückgängig, so daß der Block am Bild-
schirm nicht mehr hervorgehoben wird und durch die folgenden Operationen
nicht mehr ansprechbar ist.
"Block ausschneiden" (Control-X):
Sofern im aktuellen Puffer ein Block definiert war, wird dessen Inhalt ent-
fernt und in einen speziellen Speicherbereich, die sogenannte "Ablage" ver-
schoben. Der vorherige Inhalt der Ablage geht verloren.
"Block kopieren" (Control-C):
Sofern im aktuellen Puffer ein Block definiert war, wird dessen Inhalt in die
Ablage kopiert. Der vorherige Inhalt der Ablage geht verloren.
"Ablage einfügen" (Control-V):
Der gegenwärtige Inhalt der Ablage wird in den aktuellen Puffer an der Cursor-
position eingefügt.
"Einrücken links":
Diese Funktion richtet Text horizontal aus. In jeder Zeile des Blockbereiches
werden alle Zeichen, die rechts von der Spalte des Blockanfangs stehen, um
einen Tabulatorsprung nach links verschoben, sofern davor genug Leerzeichen
stehen.
"Einrücken rechts":
Dito, nur nach rechts.
"Ablage löschen":
Löscht den aktuellen Inhalt der Ablage und gibt den belegten Speicher frei.
Diese Funktion ist interessant, wenn der Speicherplatz knapp wird.
Ferner existieren noch einige Blockfunktionen, die nur über die Tastatur
erreichbar sind:
Control-U:
Wandelt im selektierten Block alle Kleinbuchstaben in Großbuchstaben um.
Control-L:
Wandelt im selektierten Block alle Großbuchstaben in Kleinbuchstaben um.
Alternate-K:
Wenn der Cursor auf einer Klammersteht, wird der Klammerblock selektiert.
(vgl. Doppelklick auf eine Klammer)
Alternate-W:
Steht der Cursor auf einem alphanumerischen Zeichen, so wird das umgebende
Wort als Block selektiert.
(vgl. Doppelklick auf ein Wort)
9. Suchoperationen
------------------
SCEDIT bietet die Möglichkeit, im bearbeiteten Text nach bestimmten Zei-
chenfolgen zu suchen und sie automatisch durch andere zu ersetzen.
Die entsprechenden Funktionen sind im Menu "Suche" angesiedelt.
"Suchvorgang definieren" (Control-F):
Dieser Befehl öffnet eine Dialogbox, in der der gewünschte Such- und Ersetz-
vorgang zu spezifizieren ist. Die einzelnen Felder dieser Box haben folgende
Funktion:
Suchstring: Die zu suchende Zeichenfolge.
Ersatz : Die Zeichenfolge, durch die der Suchstring ersetzt wird.
Bereich : Hier wird der zu durchsuchende Bereich angegeben. Zur Auswahl
stehen: Der ganze Text, der Bereich zwischen Anfang und dem
Cursor, der Bereich zwischen dem Cursor und dem Ende, oder ein
zuvor ausgewählter Block.
Richtung: Bestimmt, ob der Bereich vorwärts oder rückwärts durchsucht wird.
Ersetzen: Bestimmt, wie oft der Suchstring ersetzt wird:
Einmal: Das erste Vorkommen des Suchstrings wird ersetzt.
Alles: Jedes Vorkommen des Suchstrings im Bereich wird ersetzt.
Rückfrage: Bei jedem Vorkommen des Suchstrings wird der Cursor
dort plaziert und auf einen Tastendruck gewartet. "J" löst das
Ersetzen aus, "N" läßt weitersuchen, und "E" beendet den Vorgang.
Unterscheide
Groß/Klein: Ist dieses Feld auf "Nein" gesetzt, so werden beim Suchen Groß-
und Kleinbuchstaben als gleich angesehen.
Nach Ende
zum Anfang: Steht dieses Feld auf "Ja", so wird bei "Weiter suchen" und
"Weiter ersetzen" nach Erreichen des Bereichsendes am Anfang
fortgesetzt.
Suchen: Beendet den Dialog und führt die Suche im zu diesem Zeitpunkt
aktuellen Puffer durch. Die Ersetzparameter werden ignoriert.
Bei Erfolg wird der Cursor auf die Fundstelle gesetzt.
Ersetzen: Beendet den Dialog und führt den Such/Ersetzvorgang im zu diesem
Zeitpunkt aktuellen Puffer durch.
Abbruch: Beendet den Dialog und tut weiter gar nichts.
"Weiter suchen" (Control-A):
Gemäß den zuvor im Suchdialog eingestellten Parametern wird ab der letzten
Fundstelle weitergesucht und der Cursor bei Erfolg auf die neue Fundstelle
gesetzt.
"Weiter ersetzen" (Control-B):
Wie die obige Funktion, nur daß bei Erfolg der Suchstring ersetzt wird.
10. Weitere Funktionen
----------------------
Die noch nicht erwähnten Funktionen von SCEDIT werden im Folgenden nach
Menu-Titeln geordnet.
10.1 "Desk"
-----------
"SCEDIT":
Zeigt die übliche Copyright-Box an, die mit der "Return"-Taste wieder verlas-
sen wird.
Die übrigen Einträge rufen die jeweils installierten Desk-Accessories auf.
10.2 "Datei"
------------
"Programmende":
Beendet das Programm. Vorher wird noch Gelegenheit gegeben, Puffer, die ver-
ändert wurden, abzuspeichern. Es gibt die Möglichkeit, beim Ausstieg einen
Returncode zu erzwingen, da dieser von gewissen Shells ausgewertet wird. Der
Standard-Returncode ist 0. Hält man während der Menu-Auswahl die "Shift"-
Taste fest, wird 1 zurückgegeben. Die "Control"-Taste liefert 2, die "Alter-
nate"-Taste 3. (Bemerkung: Wenn der Start von SCEDIT nicht gelang (Resource
nicht gefunden o. ä.), wird -1 zurückgegeben.)
10.3 "Suche"
------------
"Zeile anspringen" (Control-G):
Zeigt eine Dialogbox an, in die eine Zeilennummer einzugeben ist. Nach Verlas-
sen der Box mit "OK" wird der Cursor auf die entsprechende Zeile gestellt, so-
fern sie existiert.
10.4 "Optionen"
---------------
"Einfügemodus" (Alternate-M):
Schaltet zwischen dem Einfügemodus und dem Ersetzmodus der Texteingabe um.
Erscheint das Häkchen, so ist der Einfügemodus aktiv. Der Einfügemodus wird in
der Infozeile des aktiven Textfensters durch ein 'I' gekennzeichnet, der Er-
setzmodus durch ein 'R'.
"Autom. Einrücken" (Alternate-E):
Schaltet das automatische Einrücken neuer Zeilen ein oder aus. Ist es einge-
schaltet, so erscheint das Häkchen.
"Tabulatorgröße":
Zeigt eine Dialogbox an, in der die aktuelle Tabulatorgröße steht, und die es
gestattet, diesen Wert zu ändern.
"Puffer sperren" (Control-Q):
Zeigt eine Alarmbox an, die es getattet, den Sperrmodus für den aktuellen
Puffer aus- oder einzuschalten. Ist dieser Modus aktiv, so erscheint vor dem
Puffernamen eine Tilde '~'. Dann sind, wenn der Puffer aktiv ist, alle Funk-
tionen gesperrt, die seinen Inhalt ändern würden. Es ist also nur möglich,
sich diesen Inhalt anzusehen.
"Tastenwiederholrate":
Zeigt eine Alarmbox an, die es gestattet, eine schnellere Wiederholrate der
Tastatur einzustellen.
"Programm starten":
Zeigt eine Dialogbox an, die von SCEDIT aus ein anderes Programm starten
kann (z. B. eine Sprach-Compiler). Dazu ist in das Feld "Dateiname" der voll-
ständige Pfadname der Programmdatei einzutragen. Klickt man auf das "Full-
window"-Symbol links von "Dateiname", so wird eine Dateiauswahlbox geöffnet,
in der die Programmdatei mit der Maus selektiert werden kann. Verläßt man die
Auswahlbox mit "Ok", erscheint der ausgewählte Name im Feld "Dateiname".
In das Feld "Parameterzeile" werden optionale Aufrufparameter dieses Programms
eingetragen, in das Feld "Arbeitspfad" der Pfad, der während der Ausführung
des Programms zum aktuellen Pfad von GEMDOS erklärt werden soll. Erfolgt hier
keine Eintragung, so wird das Verzeichnis verwendet, in dem sich das Programm
befindet. Im Regelfall dürfte es dann funktionieren. Klickt man das "Fullwin-
dow-Symbol" links von "Arbeitspfad" an, wird das z. Zt. aktuelle Verzeichnis
eingetragen.
Im Feld "Bildschirmumgebung" ist "GEM" auszuwählen, wenn es sich um eine maus-
und fensterorientierte GEM-Anwendung handelt, sonst "TOS". In diesem Fall wird
vor dem Start des gesamte Bildschirm weiß geschrieben und nach dem Ende noch
ein Tastendruck abgewartet.
11. Fehlermeldungen
-------------------
Die Fehlermeldungen von SCEDIT enthalten eine Identifikationsnummer, nach
der sie hier geordnet sind.
M1.1: Datenstrukturen zerstört.
Bei Zugriffen auf die Textpuffer führt SCEDIT eine einfache Plausibilitäts-
prüfung der gespeicherten Daten durch. Wird ein Fehler gefunden, erscheint
diese Meldung. Ursache kann ein parallel oder im Hintergrund laufendes Pro-
gramm oder ein Speicherfehler sein. Man sollte SCEDIT sofort verlassen und
nicht mehr versuchen, Texte auf Disk zu sichern, da dies auch Disk-Dateien
zerstören könnte.
(Hoffentlich bekommt niemand diese Meldung je zu sehen.)
M1.2: Speicher vollständig belegt.
Schlichter Speicherüberlauf.
Abhilfe: Überflüssige Puffer freigeben, Zwischenablage löschen, SCEDIT been-
den (Sichern ist noch möglich) und mit evtl. höhergesetzter Speichergrenze
neu starten, neuen Rechner kaufen...
M1.3: Interner Parameterfehler.
Sollte nie erscheinen. (War nur eine Testhilfe.)
M1.4: Ungültige Zeilennummer.
Bei "Zeile anspringen" wurde eine nicht existierende Nummer angegeben.
M1.5: Keine Daten in der Ablage.
"Ablage einfügen" wurde aufgerufen, ohne vorher mit "Block ausschneiden/ko-
pieren" die Ablage zu füllen.
M1.6: Überschreitung der maximalen Zeilenlänge.
Beim Ersetzen, Einfügen o. ä. würde eine Zeile mit mehr als 250 Zeichen
entstehen. Die Operation wird nicht ausgeführt.
M1.7: Kein Suchvorgang definiert.
"Weiter suchen" ist nicht möglich, wenn vorher kein Suchdialog ausgeführt
wurde.
M1.8: Ungültige Suchanforderung.
Fehlerhafte Angaben im Suchdialog. Insbesondere kann nicht nach einem Leer-
string gesucht werden.
M1.9: Kein Ersetzvorgang definiert.
"Weiter ersetzen" wurde ausgewählt, obwohl bei der vorher aufgesetzten Suche
von Ersetzen keine Rede war.
M2.2: Fehler beim Lesen der Datei.
Allgemeiner Fehler aus dem Betriebsystem. Erste Frage: Existiert die Datei
überhaupt?
M2.3: Fehler beim Schreiben der Datei.
Allgemeiner Fehler aus dem Betriebsystem. Erste Frage: Ist die Platte voll?
M2.4: Zu viele Fenster gleichzeitig offen.
Es können maximal 5 Textfenster gleichzeitig offen sein.
M2.5: Aktives Textfenster erforderlich.
Die Editierfunktionen beziehen sich auf das jeweils aktive Fenster. Ist kein
Fenster aktiv (da eine Dialogbox/ein Accessory oben liegt bzw. kein Fenster
offen ist), sind sie gesperrt.
M2.6: Fehler beim Öffnen der Datei zum Schreiben.
Allgemeiner Fehler aus dem Betriebsystem.
M2.7: Die Datei existiert nicht; sie wird beim Sichern des Puffers angelegt.
Erscheint beim Versuch, eine nicht existierende Textdatei zu laden. Danach
wird ein leerer Textpuffer mit diesem Dateinamen zur Verfügung gestellt, um
die Datei zu erzeugen.
M2.8: Alle Puffer bereits belegt.
SCEDIT kann maximal 10 Puffer verwalten.
M2.9: Kein Blockbereich selektiert.
Fehlermeldung aller Funktionen, die versuchen, einen selektierten Block zu
bearbeiten.
M2.10: Suchstring nicht gefunden.
Mißerfolg einer Suchoperation.
Wurde "Nach Ende zum Anfang" gewählt, erscheint diese Meldung, wenn das Be-
reichsende erreicht wurde. Danach wird erst zum Anfang gesprungen.
M2.11: Fehler beim Anlegen der Backup-Datei.
Fehler beim Sichern mit autom. Backup.
M2.12: Ungültige Tabulatorgröße.
Tabulatoren sollten nicht zu klein oder zu groß sein. (2 bis 20 Zeichen)
M2.13: Nicht genug Speicher für weiteres Programm.
Fehlermeldung beim Versuch, ein Programm aus SCEDIT zu starten.
M2.14: Fehler beim Lesen der Konfigurationsdatei.
Die Konfigurationsdatei wurde nicht gefunden, oder sie war nicht lesbar.
M2.15: Die Datei ist kein gültiger ASCII-Text.
Als ungültig werden Dateien angesehen, die Zeichen mit ASCII-Code 0 ent-
halten.
M2.16: Ungültige Pfadangabe.
Beim Nachladen eines Programmes wurde ein nicht auffindbarer Arbeitspfad
angegeben.
M2.17: Syntaxfehler in der Konfigurationsdatei.
Die Konfigurationsdatei enthält Syntaxfehler. (Zur Syntax siehe unten)
13. Die Konfigurationsdatei
---------------------------
Die Konfigurationsdatei SCEDIT.CFG enthält die Ausgangseinstellungen der
Arbeitsparameter von SCEDIT. Sie wird beim Start des Programms in dem Ver-
zeichnis gesucht, in dem sich das Programm befindet. Wenn sie dort nicht auf-
gefunden wird oder als fehlerhaft erkannt wird, werden (nach entsprechender
Fehlermeldung) einfach die im Programm vorgesehenen Standardeinstellungen ver-
wendet. Die Konfiguratiosdatei ist ein einfacher ASCII-Text, der mit SCEDIT
selbst erstellt werden kann.
Ein Eintrag in der Konfiguratiosdatei besteht aus einem Schlüsselwort, das
allein steht (Schalter), oder dem eine Ganzzahl folgt (numerischer Parameter).
Beim Lesen der Schlüsselworte wird nicht zwischen Klein- und Großbuchstaben
unterschieden. Schlüsselworte und Parameter werden durch Leerzeichen, Tabula-
toren und/oder Zeilenenden getrennt.
Einige der Einträge bestimmen Ausgangsbelegungen von Menues oder Dialogboxen;
sie lassen sich während der Arbeit mit SCEDIT ohne weiteres ändern.
13.1 Schalter
-------------
Ein Schalter wird durch ein allein stehendes Schlüsselwort beschrieben.
Die Ausgangsstellung aller Schalter ist "Aus"; wird das Schlüsselwort in der
Konfiguratiosdatei gefunden, so wird der Schalter auf "Ein" gestellt. Tritt
beim Lesen der Konfiguration ein Fehler auf, werden für alle Schalter auf
"Aus" gestellt. Die Schalter im Einzelnen:
"fcomp":
Schaltet die Tabulatorkompression bei Dateioperationen ein.
"fback":
Schaltet die automatische Backuperstellung ein.
"m_ins":
Schaltet den Einfügemodus ein.
"m_ind":
Schaltet das autom. Einrücken ein.
"nocr":
Im Normalfall wird beim Sichern einer Textdatei jede Zeile mit CR (ASCII 13)
und LF (ASCII 10) abgeschlossen. Dieses Schlüsselwort schaltet einen Modus
ein, in dem nur LF geschrieben wird.
Die nächsten Schalter betreffen nur Voreinstellungen in Dialogboxen.
"scase":
Schaltet die Unterscheidung Groß/Kleinschreibung beim Suchen ein.
"swrap":
Schaltet "Nach Ende zum Anfang" beim Suchen ein.
"exgem":
Schaltet Bildschirmumgebung "GEM" in "Programm starten" ein.
13.2 Numerische Parameter
-------------------------
Ein numerischer Parameter besteht aus einem Schlüsselwort, gefolgt von
einer Ganzzahl. Die Parameter werden nach diesem Schema beschrieben:
"name"(Minimalwert, Maximalwert, Default)
Werte, die nicht zwischen Minimal- und Maximalwert liegen, werden beim Lesen
der Konfiguration als Syntaxfehler angesehen. Wenn das Schlüsselwort fehlt,
wird der Defaultwert gewählt. Tritt beim Lesen der Konfiguration ein Fehler
auf, werden für alle Parameter die Defaultwerte gewählt. Die Parameter im
Einzelnen:
"mem"(100, Rechnerspeicher, Rechnerspeicher):
Bestimmt die Maximalgröße des vom Programm reservierten Textspeichers in
Kilobyte.
Während der Arbeit wächst der von SCEDIT belegte Speicher ständig. Dies könnte
dazu führen, daß für nachzuladende Programme nicht mehr genug Speicher zur
Verfügung steht. Daher wird bei Erreichen der durch "mem" bestimmten Höchst-
grenze kein Speicher mehr angefordert und Überlauf gemeldet. Sind weitere
Programme kein Problem, kann man SCEDIT durch Weglassen dieses Parameters den
gesamten Rechnerspeicher zur Verfügung stellen.
"tabs"(2, 20, 4)
Bestimmt den Ausgangswert der Tabulatorgröße.
Die weiteren Parameter betreffen nur Voreinstellungen in Dialogboxen.
"sran"(0, 3, 0)
Bestimmt den Suchbereich: 0 = Ganzer Text, 1 = Anfang -> Cursor,
2 = Cursor -> Ende, 3 = Auswahlblock.
"sdir"(0, 1, 0):
Bestimmt die Suchrichtung: 0 = Vorwärts, 1 = Rückwärts.
"srepl"(0, 2, 0):
Bestimmt den Ersetzmodus: 0 = Einmal, 1 = Rückfrage, 2 = Alles.
14. Zukunftsaussichten
----------------------
Bei hinreichender Resonanz ehrlicher Anwender kann SCEDIT in Zukunft
beliebig erweitert werden. Denkbar wären z. B. Blocksatz, Tastaturmakros
(dafür sind die Funktionstasten freigehalten), Suche nach regulären Aus-
drücken (z. B.: Suche in einem C-Programm alle Funktionsdeklarationen), Aus-
druck von Dateien, usw., usf., etc.,...
15. Nutzungsbedingungen
-----------------------
Dieses Programm ist SHAREWARE. Es darf (und soll) nach Belieben weiter-
kopiert und verbreitet werden. Dabei darf die Zusammenstellung der Dateien
im Ordner SCEDIT nicht geändert werden, die Programm- und Resourcedatei dür-
fen nicht geändert werden und vor allen Dingen darf der Copyrightvermerk
nicht entfernt oder verändert werden. Jeder potentielle Anwender hat die Mög-
lichkeit, das Programm zu testen. Bei regelmäßiger privater Nutzung wird eine
Nutzungsgebühr von 20,-- DM fällig.
Alle darüber hinausgehenden Rechte behalte ich mir vor.
Ich, Harald Becker, kann keine Haftung für irgendwelche direkten oder in-
direkten Schäden - einschliesslich aber nicht beschränkt auf materielle oder
finanzielle - übernehmen, die durch die Benutzung von SCEDIT oder die Untaug-
lichkeit von SCEDIT für einen bestimmten Zweck entstehen.