
		1. Einleitung
		-------------

	SCEDIT.PRG (Source code	editor)	ist	ein	GEM-gesttzter Texteditor, der
(wie der Name schon	sagt) haupts„chlich	zum	Bearbeiten von Programmtexten ge-
dacht ist, aber	natrlich auch vor anderen Texten nicht	gerade zurckschreckt.
Ziel der Entwicklung war dabei,	die	Lcke zwischen den einfachen (meist	im
VT-52-Modus	laufenden) Editoren	und	den	sehr grožen	(und teuren) GEM-Produk-
ten	auszufllen.
Dieses Programm	wird als Shareware vertrieben; die Shareware-Gebhr	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
Menzeile und bis zu 5 Textfenstern. In	den	Mens 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 fr weiteren	Text zur Verfgung steht.
In der zweiten Zeile werden	die	aktuelle Cursorposition	(Zeile und Spalte)
und	der	eingestellte Schreibmodus (I = autom. Einfgen (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 Einfgemodus	("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 Drcken der Taste	"Help" wird	eine Dia-
logbox angezeigt, die ber einige weitere Tastaturfunktionen Auskunft gibt.
Hier folgt eine	ausfhrlichere š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	fgt den hinteren Teil als
neue Zeile ein.	Stellt den Cursor auf den Anfang der neuen Zeile. Bei auto-
matischer Einrckung 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":
Fgt vor der Cursorzeile eine neue Zeile ein, stellt den Cursor	auf	deren
Anfang.

	"Undo":
Setzt die zeile	unter dem Cursor auf den Zustand zurck, den sie hatte,	als
der	Cursor sie zum letzten Mal betrat.

	"Help":
Zeigt die erw„hnte Hilfe-Box an.

	"Tab":
Fgt 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":
Fgt 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":
Fgt 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 fr 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 fr 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. Wrde 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. verkrzten)
Namen der z. Zt. existierenden Puffer oder das Wort	"Unused", sofern weniger
als	10 Puffer vorhanden	sind. Anklicken	eines Puffernamens ”ffnet fr diesen
Puffer ein aktives Textfenster oder	aktiviert es, falls	es bereits offen war.


		7. Dateioperationen
		-------------------

	Das	Menu "Datei" stellt	Funktionen zur Verfgung, 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 rcksetzen" (Control-Undo):
Der	Inhalt des aktiven Puffers wird	erneut von der Disk	geladen, also auf
den	Zustand	zurckgesetzt, 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	wrden etwa
im Text	vorhandene "Tabs" als "Uhr"-Zeichen	dargestellt. Sollte	dies doch ein-
mal	passieren, "Komprimieren" durch	Anklicken abschalten und den Text mit
"Text rcksetzen" 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	fhrt 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 Gegenstck, 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 rckg„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	einfgen" (Control-V):
Der	gegenw„rtige Inhalt	der	Ablage wird	in den aktuellen Puffer	an der Cursor-
position eingefgt.

	"Einrcken 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.

	"Einrcken 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	gewnschte 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 rckw„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.
			Rckfrage: 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 fhrt 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 fhrt 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 zurckgegeben. Die "Control"-Taste liefert 2, die "Alter-
nate"-Taste	3. (Bemerkung: Wenn	der	Start von SCEDIT nicht gelang (Resource
nicht gefunden o. „.), wird	-1 zurckgegeben.)

	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"
	---------------
	"Einfgemodus" (Alternate-M):
Schaltet zwischen dem Einfgemodus und dem Ersetzmodus der Texteingabe um.
Erscheint das H„kchen, so ist der Einfgemodus aktiv. Der Einfgemodus wird	in
der	Infozeile des aktiven Textfensters durch ein 'I' gekennzeichnet, der Er-
setzmodus durch	ein	'R'.

	"Autom.	Einrcken" (Alternate-E):
Schaltet das automatische Einrcken	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	fr	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 wrden. 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 Ausfhrung
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 drfte 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 fhrt SCEDIT eine einfache	Plausibilit„ts-
prfung	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 Speicherberlauf.
Abhilfe: šberflssige 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: Ungltige	Zeilennummer.
Bei	"Zeile anspringen" wurde eine nicht	existierende Nummer	angegeben.

M1.5: Keine	Daten in der Ablage.
"Ablage	einfgen" wurde	aufgerufen,	ohne vorher	mit	"Block ausschneiden/ko-
pieren"	die	Ablage zu fllen.

M1.6: šberschreitung der maximalen Zeilenl„nge.
Beim Ersetzen, Einfgen	o. „. wrde	eine Zeile mit mehr	als	250	Zeichen
entstehen. Die Operation wird nicht	ausgefhrt.

M1.7: Kein Suchvorgang definiert.
"Weiter	suchen"	ist	nicht m”glich, wenn	vorher kein	Suchdialog ausgefhrt
wurde.

M1.8: Ungltige	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 Verfgung 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: Ungltige Tabulatorgr”že.
Tabulatoren	sollten	nicht zu klein oder	zu grož	sein. (2 bis 20	Zeichen)

M2.13: Nicht genug Speicher	fr	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 gltiger ASCII-Text.
Als	ungltig werden	Dateien	angesehen, die Zeichen mit ASCII-Code 0	ent-
halten.

M2.16: Ungltige 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	Schlsselwort, das
allein steht (Schalter), oder dem eine Ganzzahl	folgt (numerischer Parameter).
Beim Lesen der Schlsselworte wird nicht zwischen Klein- und Grožbuchstaben
unterschieden. Schlsselworte 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 Schlsselwort beschrieben.
Die	Ausgangsstellung aller Schalter	ist	"Aus"; wird	das	Schlsselwort in der
Konfiguratiosdatei gefunden, so	wird der Schalter auf "Ein"	gestellt. Tritt
beim Lesen der Konfiguration ein Fehler	auf, werden	fr	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 Einfgemodus ein.

	"m_ind":
Schaltet das autom.	Einrcken ein.

	"nocr":
Im Normalfall wird beim	Sichern	einer Textdatei	jede Zeile mit CR (ASCII 13)
und	LF (ASCII 10) abgeschlossen. Dieses	Schlsselwort 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	Schlsselwort, 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 Schlsselwort fehlt,
wird der Defaultwert gew„hlt. Tritt	beim Lesen der Konfiguration ein Fehler
auf, werden	fr	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 fhren, daž fr nachzuladende Programme nicht mehr	genug Speicher zur
Verfgung 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 Verfgung 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 = Rckw„rts.

	"srepl"(0, 2, 0):
Bestimmt den Ersetzmodus: 0	= Einmal, 1	= Rckfrage, 2 = Alles.


		14.	Zukunftsaussichten
		----------------------

	Bei	hinreichender Resonanz ehrlicher Anwender kann SCEDIT in Zukunft  
beliebig erweitert werden. Denkbar w„ren z.	B. Blocksatz, Tastaturmakros
(dafr sind	die	Funktionstasten	freigehalten), Suche nach regul„ren	Aus-
drcken	(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	dr-
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
Nutzungsgebhr von 20,-- DM	f„llig.
Alle darber hinausgehenden	Rechte behalte ich mir vor.

Ich, Harald	Becker,	kann keine Haftung fr 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	fr	einen bestimmten Zweck entstehen.

