home *** CD-ROM | disk | FTP | other *** search
/ Crawly Crypt Collection 2 / crawlyvol2.bin / apps / text_ed / scedit / scedit.doc < prev    next >
Text File  |  2006-03-15  |  33KB  |  760 lines

  1.  
  2.         1. Einleitung
  3.         -------------
  4.  
  5.     SCEDIT.PRG (Source code    editor)    ist    ein    GEM-gestützter Texteditor, der
  6. (wie der Name schon    sagt) hauptsächlich    zum    Bearbeiten von Programmtexten ge-
  7. dacht ist, aber    natürlich auch vor anderen Texten nicht    gerade zurückschreckt.
  8. Ziel der Entwicklung war dabei,    die    Lücke zwischen den einfachen (meist    im
  9. VT-52-Modus    laufenden) Editoren    und    den    sehr großen    (und teuren) GEM-Produk-
  10. ten    auszufüllen.
  11. Dieses Programm    wird als Shareware vertrieben; die Shareware-Gebühr    beträgt
  12. 20,-- DM. Näheres siehe    unter Abschnitt    15 (Nutzungsbedingungen).
  13.  
  14. Meine persönlichen Daten:
  15.  
  16.         Harald Becker
  17.         Ferrenbergstraße 41
  18.         5060 Bergisch Gladbach 2
  19.         Tel. 02202/34913
  20.         Konto 1311 045 876,    Kreissparkasse Köln    (Bankleitzahl 373 502 11)
  21.  
  22.  
  23.  
  24.         2. Voraussetzungen
  25.         ------------------
  26.  
  27.     SCEDIT läuft auf ST-Rechnern jeder Speichergröße und läßt sich auf Dis-
  28. ketten,    Festplatten    und    RAMdisks installieren. Das Programm    läuft aller-
  29. dings NUR mit monochromen Bildschirmen.
  30.     (Anmerkung:    Die    eingebauten    Bildschirmtreiber gehen    von    einem als Mono-
  31. chrombitmap    organisierten Bildschirmspeicher aus. Das heißt    aber nicht,    daß
  32. das    Programm an    eine Auflösung von 640 * 400 Pixel gebunden    ist. In    anderen
  33. Auflösungen    müßte es laufen; ich hatte allerdings leider keine Gelegenheit,
  34. es in einer    solchen    Umgebung zu    testen.)
  35.  
  36.  
  37.         3. Start des Programms
  38.         ----------------------
  39.  
  40.     SCEDIT wird    vom    Desktop    (Standard oder Alternativ) durch einen einfachen
  41. Doppelklick    gestartet. Im gerade aktuellen Verzeichnis sucht er    die    Resource
  42. SCEDIT.RSC (unbedingt notwendig) und die Konfigurationsdatei SCEDIT.CFG    (nicht
  43. lebenswichtig, siehe unten). Anschließend (wenn    alles geklappt hat)    öffnet er
  44. ein    leeres Textfenster mit dem Titel 'Untitled', in    dem    man    sich austoben kann.
  45.     Von    einer Textshell    aus    wird das Programm durch    Eingabe    seines Namens ge-
  46. startet. Hier kann man zusätzlich Parameter    angeben. Das Format    der    Kommando-
  47. zeile lautet:
  48.  
  49.         SCEDIT [Datei [Zeile [Spalte]]]
  50.  
  51.     Datei:    Name einer Textdatei, die beim Start geladen und im    zuerst ge-
  52.             öffneten Textfenster angezeigt wird    (anstatt 'Untitled').
  53.     Zeile: \
  54.             Zeichenposition, auf der der Textcursor    plaziert wird.
  55.     Spalte:/
  56.  
  57. (Die beiden    letzten    Parameter werden auch z. B.    von    Entwicklungsumgebungen
  58. genutzt, die bei Entdeckung    eines Syntaxfehlers    beim Kompilieren die Mög-
  59. lichkeit bieten, diesen    im Editor sofort zu    korrigieren.)
  60. Es ist NICHT empfehlenswert, SCEDIT    im Desktop als TTP-Anwendung anzumelden.
  61. SCEDIT sollte aus dem aktuellen    GEMDOS-Pfad    heraus gestartet werden. Gibt man
  62. als    Parameter eine Datei an, deren Name    eine Pfadangabe    enthält, so    wird nach
  63. dem    Laden der Resource etc.    dieser Pfad    aktuell    gemacht.
  64.  
  65.  
  66.         4. Grundfunktionen des Programms
  67.         --------------------------------
  68.  
  69.     4.1. Textdarstellung
  70.     --------------------
  71.     Der    Editor benutzt einen (nahezu) standardmäßigen GEM-Bildschirm mit
  72. Menüzeile und bis zu 5 Textfenstern. In    den    Menüs stehen hinter    einigen    Ein-
  73. trägen Tastenkombinationen,    die    dieselbe Funktion auslösen (sog. shortcuts).
  74.     Die    Titelzeile eines Fensters enthält den Namen    der    dargestellten Datei;
  75. davor können zwei Zustandskennzeichen stehen:
  76.     '*': An    diesem Text    wurden seit    dem    Laden/letzten Sichern Änderungen
  77.          vorgenommen.
  78.     '~': Dieser    Text ist z.    Zt.    gegen Änderungen gesperrt.
  79.  
  80.     Die    Infozeile eines    Fensters ist hier zweizeilig: Die obere    Zeile ent-
  81. hält Angaben über den durch    den    dargestellten Text belegten    Speicher, sowie
  82. über den freien    Platz, der für weiteren    Text zur Verfügung steht.
  83. In der zweiten Zeile werden    die    aktuelle Cursorposition    (Zeile und Spalte)
  84. und    der    eingestellte Schreibmodus (I = autom. Einfügen (Insert), R = Über-
  85. schreiben (Replace)) angezeigt.
  86.  
  87.     4.2    Fensterbedienung
  88.     --------------------
  89.     Die    Handhabung der Fenster folgt den Konventionen von GEM. Die Text-
  90. fenster    von    SCEDIT lassen sich wie die des Desktop verschieben,    vergrößern,
  91. verkleinern    und    schließen (das Schließen bewirkt keinen    Verlust    von    Text-
  92. daten).    Die    Rollpfeile und -balken bewegen den Textcursor innerhalb    des    Fen-
  93. sters oder verändern den dargestellten Textausschnitt (näheres siehe unter
  94. 4.4). Die Funktionen der Rollpfeile    und    -balken    (mit Ausnahme der Schieber)
  95. werden automatisch wiederholt, wenn    die    linke Maustaste    nach dem Anklicken
  96. festgehalten wird.
  97.  
  98.     4.3    Texteingabe
  99.     ---------------
  100.     In das aktuelle    Textfenster    (erkennbar am grau unterlegten Balken rechts
  101. und    links des Titels) kann man Text    eingeben. Die Tastatur wird    dabei in 
  102. kanonischer    Weise verwendet; eingetippte Zeichen erscheinen    am Textcursor,
  103. der    durch ein schwarz unterlegtes Zeichen im Textfenster markiert wird.
  104. Im Einfügemodus    ("Mode:    I" in der Infozeile) werden    die    in der Zeile fol-
  105. genden Zeichen aufgeschoben, um    Platz zu schaffen. Die maximale    Zeilenlänge
  106. beträgt    konstant 250 Zeichen; bei Überschreitung wird die Eingabe blockiert.
  107. Im Ersetzmodus ("Mode: R") werden die bereits vorhandene Zeichen einfach
  108. überschrieben; die Eingabe blockiert hier am tatsächlichen Zeilenende.
  109.  
  110.     4.4    Bewegung des Textcursors
  111.     ----------------------------
  112.     Durch Betätigung der Pfeiltasten bzw. Anklicken    der    Rollpfeile oder    
  113. -balken    wird der Cursor    in die jeweilige Richtung verschoben. Bei Erreichen    
  114. des    Fensterrandes wird der Text    in entgegengesetzter Richtung gerollt. Am 
  115. Textanfang oder    -ende bzw. am Zeilenanfang oder    -ende blockiert    die    Bewegung.
  116.     Eine Einheit der Bewegung sind Tabulatorpositionen:    Das    Programm ver-
  117. waltet die Tabulatorgröße als Zahlenwert, gemessen in Zeichenpositionen. Bei
  118. einer Tabulatorgröße von 4 z. B. sind die Tabulatorpositionen bei Spalte 1,
  119. 5, 9, 13, 17, usw.
  120.  
  121.     Eine Aufstellung aller Bewegungsmöglichkeiten:
  122.     Tasten:
  123. Pfeiltaste:                    Ein    Zeichen    in die jeweilige Richtung.
  124. Shift-Pfeil    auf/ab:            Eine Bildschirmseite auf/ab.
  125. Shift-Pfeil    links/rechts:    Eine Wort links/rechts.
  126. Control-Pfeil auf/ab:        Zum    Textanfang/Textende.
  127. Control-Pfeil links/rechts:    Zum    Zeilenanfang/-ende.
  128. Home:                        Zum    Textanfang.
  129. Shift-Home:                    Zum    Textende.
  130.  
  131.     Anklicken von Fensterelementen:
  132. Rollpfeile:                    Ein    Zeichen    in die jeweilige Richtung.
  133. Senkrechter    Rollbalken
  134.  über/unter    dem    Schieber:    Eine Bildschirmseite auf/ab.
  135. Waagerechter Rollbalken
  136.  links/rechts vom Schieber:    Nächste    Tabulatorposition links/rechts.
  137.  
  138.     Senkrechter    Schieber:
  139. Seine Lage und Höhe    relativ    zum    Rollbalken geben Lage und Höhe des darge-
  140. stellten Ausschnitts relativ zum gesamten Text an. Durch Ziehen    des    Schiebers
  141. läßt sich demgemäß ein neuer Ausschnitt    wählen.
  142.  
  143.     Waagerechter Schieber:
  144. Seine Lage und Breite relativ zum Rollbalken geben Lage    und    Breite des darge-
  145. stellten Ausschnitts relativ zur gesamten aktuellen    Zeile an. Durch    Ziehen des
  146. Schiebers läßt sich    demgemäß ein neuer Ausschnitt wählen.
  147.  
  148.     Textfeld des Fensters:
  149. Klickt man im aktiven Textfenster eine Zeichenposition an, so wird der Cursor
  150. auf    dieses Zeichen gesetzt.
  151.  
  152.     4.5    Spezielle Editiertasten
  153.     ---------------------------
  154.     Während    der    Texterfassung kann man mit einigen Tasten spezielle    Editier-
  155. funktionen auslösen, die zum Teil identisch    mit    den    Funktionen bestimmter
  156. Menueinträge sind. Wenn    dies der Fall ist, steht im    jeweiligen Menueintrag
  157. eine Kurzbezeichnung der Taste.    Durch Drücken der Taste    "Help" wird    eine Dia-
  158. logbox angezeigt, die über einige weitere Tastaturfunktionen Auskunft gibt.
  159. Hier folgt eine    ausführlichere Übersicht:
  160.  
  161.     "Backspace":
  162. Bewegt den Cursor um ein Zeichen nach links    und    löscht das dort    stehende
  163. Zeichen.
  164.  
  165.     "Delete":
  166. Löscht das zeichen unter dem Cursor.
  167.  
  168.     "Shift Delete":
  169. Löscht das Wort    unter dem Cursor.
  170.  
  171.     "Alternate Delete":
  172. Löscht die Zeile unter dem Cursor.
  173.  
  174.     "Return" oder "Enter":
  175. Teilt die Cursorzeile an der Cursorposition    und    fügt den hinteren Teil als
  176. neue Zeile ein.    Stellt den Cursor auf den Anfang der neuen Zeile. Bei auto-
  177. matischer Einrückung erscheint das erste Zeichen der neuen Zeile unter dem
  178. ersten Nicht-Leerzeichen der Cursorzeile.
  179. Im Ersetzmodus wird    nur    auf    den    Anfang der Folgezeile gesprungen.
  180.  
  181.     "Insert":
  182. Fügt vor der Cursorzeile eine neue Zeile ein, stellt den Cursor    auf    deren
  183. Anfang.
  184.  
  185.     "Undo":
  186. Setzt die zeile    unter dem Cursor auf den Zustand zurück, den sie hatte,    als
  187. der    Cursor sie zum letzten Mal betrat.
  188.  
  189.     "Help":
  190. Zeigt die erwähnte Hilfe-Box an.
  191.  
  192.     "Tab":
  193. Fügt Leerzeichen bis zur nächsten Tabulatorposition    rechts vom Cursor ein.
  194. Im Ersetzmodus wird    nur    zu dieser Tabulatorposition    gesprungen.
  195.  
  196.     "Shift Tab":
  197. Springt    zur    nächsten Tabulatorposition nach    links.
  198.  
  199.     "Control-J":
  200. Fügt die Cursorzeile mit ihrer Vorgängerin zusammen, stellt    den    Cursor auf
  201. die    Verbindungsstelle.
  202.  
  203.     "Control-K":
  204. Löscht Text    von    der    Cursorposition (einschließlich)    bis    zum    Ende der aktuellen
  205. Zeile.
  206.  
  207.     "Control-R":
  208. Fügt hinter    der    Cursorzeile    eine Kopie dieser Zeile    ein    und    stellt den Cur-
  209. sor    auf    deren Anfang.
  210.  
  211.     "Control-#":
  212. Vertauscht das Zeichen unter dem Cursor    mit    seinem Nachfolger.
  213.  
  214.  
  215.         5. Menus und Dialogboxen
  216.         ------------------------
  217.  
  218.     Die    Desktop-Menus werden gemäß dem GEM-Standard    benutzt. Bestimmte Menu-
  219. einträge fungieren als Schalter. Ist der betreffende Modus eingeschaltet, er-
  220. scheint    vor    diesen Einträgen ein Häkchen. Zur Zeit nicht anwählbare    Menuein-
  221. träge werden in    hellgrauer Schrift dargestellt.
  222.     Die    Dialogboxen    von    SCEDIT besitzen    einige der Eigenschaften von Fenstern
  223. (sog. nichtmodale Dialogboxen).    Während    eine Dialogbox auf dem Bildschirm ist
  224. kann man Auswahlen in den Menus    treffen    oder Textfenster durch Anklicken ak-
  225. tivieren, die die Box dann evtl    überdecken und inaktiv machen. Ein Mausklick
  226. in den sichtbaren Teil der Box oder    ein    erneuter Aufruf    der    entsprechenden
  227. Funktion aktivieren    sie    wieder.
  228. Wenn eine aktive Box editierbare Textfelder    enthält, erscheint auf einen Tas-
  229. tendruck oder Mausklick    in eines dieser    Felder hin der GEM-Cursor darin. Dann
  230. sind Eingaben möglich. Bei einem Mausklick außerhalb der Editierfelder ver-
  231. schwindet der GEM-Cursor wieder. Solange er    sichtbar ist, sind keine Menu-
  232. Auswahlen möglich.
  233. Durch Ziehen des Quadrats in der linken    oberen Ecke    lassen sich    die    Boxen auf
  234. dem    Bildschirm verschieben.
  235. Es kann    maximal    eine Dialogbox auf dem Bildschirm dargestellt werden. Ist
  236. dieses Limit schon erreicht, bleiben Aufrufe weiterer Boxen    wirkungslos.
  237.     Die    obigen Besonderheiten gelten nicht für die Dateiauswahlbox,    die    nach
  238. wie    vor    vom    Betriebssystem verwaltet wird. (Damit hat jeder    Anwender die Mög-
  239. lichkeit, seine    Lieblingsbox einzubinden.)
  240.  
  241.  
  242.         6. Verwaltung mehrerer Textpuffer
  243.         ---------------------------------
  244.  
  245.     SCEDIT.PRG ist in der Lage,    bis    zu 10 Texte    gleichzeitig in    Puffern    im
  246. Speicher zu    halten,    die    den    vorhandenen    Speicherplatz nach Belieben    unter
  247. sich aufteilen können. Bis zu 5    dieser Texte können    gleichzeitig in    Fenstern
  248. auf    dem    Bildschirm dargestellt werden, von denen maximal eines zum Editieren
  249. aktiv ist (erkennbar am    grauen Titelbalken).
  250. Jeder Puffer hat einen Namen, der in der Titelzeile    des    zugehörigen    Fensters
  251. angezeigt wird.    Dies ist entweder der Name der in diesem Puffer    bearbeiteten
  252. Textdatei oder "Untitled".
  253. Die    Verwaltung der Puffer wird im Wesentlichen durch das Menu "Speicher" 
  254. gehandhabt.    Die    einzelnen Einträge haben folgende Aufgaben:
  255. (In    Klammern jeweils die entsprechende Tastenfunktion, sofern vorhanden)
  256.  
  257.     "Neuer Puffer" (Control-N):
  258. Legt im    Speicher einen neuen, leeren Textpuffer    an,    gibt ihm den Namen
  259. "Untitled" und öffnet für ihn ein Textfenster, sofern nicht    bereits    5
  260. Fenster    offen sind.    Existieren bereits 10 Puffer, oder reicht der Speicher-
  261. platz nicht, bricht    die    Funktion ab.
  262.  
  263.     "Puffer    freigeben":
  264. Löscht den Puffer im gerade    aktiven    (obersten) Textfenster und gibt    allen
  265. Speicher, den er belegt, frei. Würde sich danach kein Puffer mehr im Speicher
  266. befinden, wird ein neuer leerer    "Untitled"-Puffer angelegt.
  267.  
  268.     Die    anderen    Einträge im    Menu "Speicher"    enthalten die (evtl. verkürzten)
  269. Namen der z. Zt. existierenden Puffer oder das Wort    "Unused", sofern weniger
  270. als    10 Puffer vorhanden    sind. Anklicken    eines Puffernamens öffnet für diesen
  271. Puffer ein aktives Textfenster oder    aktiviert es, falls    es bereits offen war.
  272.  
  273.  
  274.         7. Dateioperationen
  275.         -------------------
  276.  
  277.     Das    Menu "Datei" stellt    Funktionen zur Verfügung, die es gestatten,    mit
  278. SCEDIT Disketten- oder Plattendateien zu bearbeiten. Die Aufgaben der einzel-
  279. nen    Einträge:
  280.  
  281.     "Datei laden" (Control-O):
  282. Zunächst wird die Dateiauswahlbox angezeigt, um    den    Dateinamen in Erfahrung
  283. zu bringen.    Mit    diesem Namen wird ein neuer    Puffer angelegt, ein Fenster ge-
  284. öffnet und die ausgewählte Datei eingeladen. Wurde eine    nichtexistierende Da-
  285. tei    ausgewählt,    wird dies gemeldet und ein leerer Puffer angelegt, um die
  286. Datei zu erzeugen.
  287.  
  288.     "Text ersetzen":
  289. Nach Auswahl einer Datei wird der Inhalt des aktiven Puffers durch diese
  290. Datei ersetzt.
  291.  
  292.     "Text rücksetzen" (Control-Undo):
  293. Der    Inhalt des aktiven Puffers wird    erneut von der Disk    geladen, also auf
  294. den    Zustand    zurückgesetzt, den er beim Laden hatte.    Bei    "Untitled"-Puffern
  295. bleibt diese Funktion wirkungslos.
  296.  
  297.     "Sichern" (Control-S):
  298. Der    Inhalt des aktiven Puffers wird    auf    die    entprechende Disk-Datei    ge-
  299. schrieben. Bei "Untitled"-Puffern arbeitet "Sichern" genau wie "Speichern als".
  300.  
  301.     "Speichern als":
  302. Es wird    nach einem Dateinamen gefragt und der Inhalt des aktiven Puffers
  303. in diese Datei geschrieben.    Anschließend erhält    der    aktive Puffer den Namen
  304. dieser Datei.
  305.  
  306.     "Komprimieren" (Alternate-C):
  307. Dies ist ein Schalter, der beim    Speichern/Laden    von    Dateien    die    Kompression
  308. von    Leerzeichen    zu "Tab"-Zeichen (Ascii    9) bzw.    die    Expansion von "Tabs" in
  309. Leerzeichen    steuert. Beim Speichern    spart dieser Modus Plattenplatz; beim
  310. Laden kann er evtl.    vorhandene Textdateien lesbar machen. Sonst    würden etwa
  311. im Text    vorhandene "Tabs" als "Uhr"-Zeichen    dargestellt. Sollte    dies doch ein-
  312. mal    passieren, "Komprimieren" durch    Anklicken abschalten und den Text mit
  313. "Text rücksetzen" neu laden.  
  314.  
  315.     "Autom.    Backup"    (Alternate-B):
  316. Ist    dieser Schalter    aktiv, so wird vor dem Speichern eines Puffers die ent-
  317. sprechende Plattendatei    vor    dem    Überschreiben gerettet,    indem sie die Namens-
  318. endung "BAK" enthält (also etwa    TEST.TXT in    TEST.BAK). Man sollte diesen
  319. Modus also nicht bei Dateien verwenden,    die    schon die Endung "BAK" haben.
  320.  
  321.  
  322.         8. Blockoperationen
  323.         -------------------
  324.  
  325.     Ein    Block ist in SCEDIT    ein    zusammenhängender Textbereich, der von 2 be-
  326. stimmten Zeichenpositionen begrenzt    wird. Ein solcher Block    kann Teil einer
  327. Zeile sein oder    sich über mehrere Zeilen erstrecken. Als Block markierte
  328. Textbereiche lassen    sich kopieren und verschieben, sowohl innerhalb    eines
  329. Puffers, als auch zwischen verschiedenen Puffern. In jedem Puffer kann ein
  330. Blockbereich ausgewählt    werden,    der    im Textfenster schwarz unterlegt darge-
  331. stellt wird. Zur Auswahl kann die Maus benutzt werden:
  332. Klickt man in den Textbereich des aktiven Fensters,    hält die Maustaste fest
  333. und    führt die Maus über    den    Bildschirm ("dragging"), so    folgt der Auswahl-
  334. block den Mausbewegungen, bis die Maustaste    losgelassen    wird. Wenn dabei der
  335. obere oder untere Fensterrand überschritten    wird, rollt    der    Text in    die    ent-
  336. sprechende Richtung.
  337. Durch Doppelklick auf ein alphanumerisches Zeichen wird    das    Wort, (d. h. alle
  338. direkt angrenzenden    alphanumerischen Zeichen), zu dem das Zeichen gehört, se-
  339. lektiert.
  340. Bei    Doppelklick    auf    ein    Klammerzeichen '(',    '[', '{', '}', ']',    oder ')' sucht
  341. SCEDIT im Text nach    dem    entsprechenden Gegenstück, und zwar    mit    Beachtung von
  342. Verschachtelungen. Die beiden Klammern (und    alles dazwischen) werden dann als
  343. Block selektiert.
  344.  
  345. Die    Funktionen im Menu "Block":
  346.  
  347.     "Blockanfang setzen":
  348. Definiert im gerade    aktiven    Puffer den Anfang des Blockbereiches an    der    ak-
  349. tuellen    Cursorposition.    War    zuvor noch kein    Block definiert, so    wird auch das
  350. Blockende auf die gewählte Position    gesetzt, so    daß    der    Block genau    1 Zeichen
  351. umfaßt.    War    bereits    ein    Block definiert, so    wird dessen    Anfang neu gesetzt.
  352. Setzt man den Anfang hinter    das    vorige Ende, so    wird dieses    zum    neuen Anfang.
  353.  
  354.     "Blockende setzen":
  355. Definiert im aktiven Puffer    das    Blockende an der aktuellen Cursorposition.
  356. Diese Funktion ist das genaue Spiegelbild der obigen.
  357.  
  358.     "Ganzer    Text" (Control-W):
  359. Setzt den Blockanfang auf das erste    und    das    Blockende auf das letzte Zeichen
  360. des    aktuellen Puffers, wählt also den gesamten Text    aus.
  361.  
  362.     "Auswahl aufheben" (Control-P):
  363. Macht eine vorherige Blockdefinition rückgängig, so    daß    der    Block am Bild-
  364. schirm nicht mehr hervorgehoben    wird und durch die folgenden Operationen
  365. nicht mehr ansprechbar ist.
  366.  
  367.     "Block ausschneiden" (Control-X):
  368. Sofern im aktuellen    Puffer ein Block definiert war,    wird dessen    Inhalt ent-
  369. fernt und in einen speziellen Speicherbereich, die sogenannte "Ablage" ver-
  370. schoben. Der vorherige Inhalt der Ablage geht verloren.
  371.  
  372.     "Block kopieren" (Control-C):
  373. Sofern im aktuellen    Puffer ein Block definiert war,    wird dessen    Inhalt in die
  374. Ablage kopiert.    Der    vorherige Inhalt der Ablage    geht verloren.
  375.  
  376.     "Ablage    einfügen" (Control-V):
  377. Der    gegenwärtige Inhalt    der    Ablage wird    in den aktuellen Puffer    an der Cursor-
  378. position eingefügt.
  379.  
  380.     "Einrücken links":
  381. Diese Funktion richtet Text    horizontal aus.    In jeder Zeile des Blockbereiches
  382. werden alle    Zeichen, die rechts    von    der    Spalte des Blockanfangs    stehen,    um
  383. einen Tabulatorsprung nach links verschoben, sofern    davor genug    Leerzeichen
  384. stehen.
  385.  
  386.     "Einrücken rechts":
  387. Dito, nur nach rechts.
  388.  
  389.     "Ablage    löschen":
  390. Löscht den aktuellen Inhalt    der    Ablage und gibt    den    belegten Speicher frei.
  391. Diese Funktion ist interessant,    wenn der Speicherplatz knapp wird.
  392.  
  393.     Ferner existieren noch einige Blockfunktionen, die nur über    die    Tastatur
  394.     erreichbar sind:
  395.  
  396.     Control-U:
  397. Wandelt    im selektierten    Block alle Kleinbuchstaben in Großbuchstaben um.
  398.  
  399.     Control-L:
  400. Wandelt    im selektierten    Block alle Großbuchstaben in Kleinbuchstaben um.
  401.  
  402.     Alternate-K:
  403. Wenn der Cursor    auf    einer Klammersteht,    wird der Klammerblock selektiert.
  404. (vgl. Doppelklick auf eine Klammer)
  405.  
  406.     Alternate-W:
  407. Steht der Cursor auf einem alphanumerischen    Zeichen, so    wird das umgebende
  408. Wort als Block selektiert.
  409. (vgl. Doppelklick auf ein Wort)
  410.  
  411.  
  412.         9. Suchoperationen
  413.         ------------------
  414.  
  415.     SCEDIT bietet die Möglichkeit, im bearbeiteten Text    nach bestimmten    Zei-
  416. chenfolgen zu suchen und sie automatisch durch andere zu ersetzen.
  417. Die    entsprechenden Funktionen sind im Menu "Suche" angesiedelt.
  418.  
  419.     "Suchvorgang definieren" (Control-F):
  420. Dieser Befehl öffnet eine Dialogbox, in    der    der    gewünschte Such- und Ersetz-
  421. vorgang    zu spezifizieren ist. Die einzelnen    Felder dieser Box haben    folgende
  422. Funktion:
  423. Suchstring:    Die    zu suchende    Zeichenfolge.
  424. Ersatz :    Die    Zeichenfolge, durch    die    der    Suchstring ersetzt wird.
  425. Bereich    :    Hier wird der zu durchsuchende Bereich angegeben. Zur Auswahl
  426.             stehen:    Der    ganze Text,    der    Bereich    zwischen Anfang    und    dem
  427.             Cursor,    der    Bereich    zwischen dem Cursor    und    dem    Ende, oder ein
  428.             zuvor ausgewählter Block.
  429. Richtung:    Bestimmt, ob der Bereich vorwärts oder rückwärts durchsucht    wird.
  430. Ersetzen:    Bestimmt, wie oft der Suchstring ersetzt wird:
  431.             Einmal:    Das    erste Vorkommen    des    Suchstrings    wird ersetzt.
  432.             Alles: Jedes Vorkommen des Suchstrings im Bereich wird ersetzt.
  433.             Rückfrage: Bei jedem Vorkommen des Suchstrings wird    der    Cursor
  434.             dort plaziert und auf einen    Tastendruck    gewartet. "J" löst das
  435.             Ersetzen aus, "N" läßt weitersuchen, und "E" beendet den Vorgang.
  436. Unterscheide
  437. Groß/Klein:    Ist    dieses Feld    auf    "Nein" gesetzt,    so werden beim Suchen Groß-
  438.             und    Kleinbuchstaben    als    gleich angesehen.
  439. Nach Ende
  440. zum    Anfang:    Steht dieses Feld auf "Ja",    so wird    bei    "Weiter    suchen"    und
  441.             "Weiter    ersetzen" nach Erreichen des Bereichsendes am Anfang
  442.             fortgesetzt.
  443. Suchen:        Beendet    den    Dialog und führt die Suche im zu diesem    Zeitpunkt
  444.             aktuellen Puffer durch.    Die    Ersetzparameter    werden ignoriert.
  445.             Bei    Erfolg wird    der    Cursor auf die Fundstelle gesetzt.
  446. Ersetzen:    Beendet    den    Dialog und führt den Such/Ersetzvorgang    im zu diesem
  447.             Zeitpunkt aktuellen    Puffer durch.
  448. Abbruch:    Beendet    den    Dialog und tut weiter gar nichts.
  449.  
  450.     "Weiter    suchen"    (Control-A):
  451. Gemäß den zuvor    im Suchdialog eingestellten    Parametern wird    ab der letzten
  452. Fundstelle weitergesucht und der Cursor    bei    Erfolg auf die neue    Fundstelle
  453. gesetzt.
  454.  
  455.     "Weiter    ersetzen" (Control-B):
  456. Wie    die    obige Funktion,    nur    daß    bei    Erfolg der Suchstring ersetzt wird.
  457.  
  458.  
  459.         10.    Weitere    Funktionen
  460.         ----------------------
  461.  
  462.     Die    noch nicht erwähnten  Funktionen von SCEDIT    werden im Folgenden    nach
  463. Menu-Titeln    geordnet.
  464.  
  465.     10.1 "Desk"
  466.     -----------
  467.     "SCEDIT":
  468. Zeigt die übliche Copyright-Box    an,    die    mit    der    "Return"-Taste wieder verlas-
  469. sen    wird.
  470.  
  471. Die    übrigen    Einträge rufen die jeweils installierten Desk-Accessories auf.
  472.  
  473.     10.2 "Datei"
  474.     ------------
  475.     "Programmende":
  476. Beendet    das    Programm. Vorher wird noch Gelegenheit gegeben,    Puffer,    die    ver-
  477. ändert wurden, abzuspeichern. Es gibt die Möglichkeit, beim    Ausstieg einen
  478. Returncode zu erzwingen, da    dieser von gewissen    Shells ausgewertet wird. Der
  479. Standard-Returncode    ist    0. Hält    man    während    der    Menu-Auswahl die "Shift"-
  480. Taste fest,    wird 1 zurückgegeben. Die "Control"-Taste liefert 2, die "Alter-
  481. nate"-Taste    3. (Bemerkung: Wenn    der    Start von SCEDIT nicht gelang (Resource
  482. nicht gefunden o. ä.), wird    -1 zurückgegeben.)
  483.  
  484.     10.3 "Suche"
  485.     ------------
  486.     "Zeile anspringen" (Control-G):
  487. Zeigt eine Dialogbox an, in    die    eine Zeilennummer einzugeben ist. Nach Verlas-
  488. sen    der    Box    mit    "OK" wird der Cursor auf die entsprechende Zeile gestellt, so-
  489. fern sie existiert.
  490.  
  491.     10.4 "Optionen"
  492.     ---------------
  493.     "Einfügemodus" (Alternate-M):
  494. Schaltet zwischen dem Einfügemodus und dem Ersetzmodus der Texteingabe um.
  495. Erscheint das Häkchen, so ist der Einfügemodus aktiv. Der Einfügemodus wird    in
  496. der    Infozeile des aktiven Textfensters durch ein 'I' gekennzeichnet, der Er-
  497. setzmodus durch    ein    'R'.
  498.  
  499.     "Autom.    Einrücken" (Alternate-E):
  500. Schaltet das automatische Einrücken    neuer Zeilen ein oder aus. Ist es einge-
  501. schaltet, so erscheint das Häkchen.
  502.  
  503.     "Tabulatorgröße":
  504. Zeigt eine Dialogbox an, in    der    die    aktuelle Tabulatorgröße    steht, und die es
  505. gestattet, diesen Wert zu ändern.
  506.  
  507.     "Puffer    sperren" (Control-Q):
  508. Zeigt eine Alarmbox    an,    die    es getattet, den Sperrmodus    für    den    aktuellen
  509. Puffer aus-    oder einzuschalten.    Ist    dieser Modus aktiv,    so erscheint vor dem
  510. Puffernamen    eine Tilde '~'.    Dann sind, wenn    der    Puffer aktiv ist, alle Funk-
  511. tionen gesperrt, die seinen    Inhalt ändern würden. Es ist also nur möglich,
  512. sich diesen    Inhalt anzusehen.
  513.  
  514.     "Tastenwiederholrate":
  515. Zeigt eine Alarmbox    an,    die    es gestattet, eine schnellere Wiederholrate    der
  516. Tastatur einzustellen.
  517.  
  518.     "Programm starten":
  519. Zeigt eine Dialogbox an, die von SCEDIT    aus    ein    anderes    Programm starten
  520. kann (z. B.    eine Sprach-Compiler). Dazu    ist    in das Feld    "Dateiname"    der    voll-
  521. ständige Pfadname der Programmdatei    einzutragen. Klickt    man    auf    das    "Full-
  522. window"-Symbol links von "Dateiname", so wird eine Dateiauswahlbox geöffnet,
  523. in der die Programmdatei mit der Maus selektiert werden    kann. Verläßt man die
  524. Auswahlbox mit "Ok", erscheint der ausgewählte Name    im Feld    "Dateiname".
  525. In das Feld    "Parameterzeile" werden    optionale Aufrufparameter dieses Programms
  526. eingetragen, in    das    Feld "Arbeitspfad" der Pfad, der während der Ausführung
  527. des    Programms zum aktuellen    Pfad von GEMDOS    erklärt    werden soll. Erfolgt hier
  528. keine Eintragung, so wird das Verzeichnis verwendet, in    dem    sich das Programm
  529. befindet. Im Regelfall dürfte es dann funktionieren. Klickt    man    das    "Fullwin-
  530. dow-Symbol"    links von "Arbeitspfad"    an,    wird das z.    Zt.    aktuelle Verzeichnis
  531. eingetragen.
  532. Im Feld    "Bildschirmumgebung" ist "GEM" auszuwählen,    wenn es    sich um    eine maus-
  533. und    fensterorientierte GEM-Anwendung handelt, sonst    "TOS". In diesem Fall wird
  534. vor    dem    Start des gesamte Bildschirm weiß geschrieben und nach dem Ende    noch
  535. ein    Tastendruck    abgewartet.
  536.  
  537.  
  538.         11.    Fehlermeldungen
  539.         -------------------
  540.  
  541.     Die    Fehlermeldungen    von    SCEDIT enthalten eine Identifikationsnummer, nach
  542. der    sie    hier geordnet sind.
  543.  
  544. M1.1: Datenstrukturen zerstört.
  545. Bei    Zugriffen auf die Textpuffer führt SCEDIT eine einfache    Plausibilitäts-
  546. prüfung    der    gespeicherten Daten    durch. Wird    ein    Fehler gefunden, erscheint
  547. diese Meldung. Ursache kann    ein    parallel oder im Hintergrund laufendes Pro-
  548. gramm oder ein Speicherfehler sein.    Man    sollte SCEDIT sofort verlassen und
  549. nicht mehr versuchen, Texte    auf    Disk zu    sichern, da    dies auch Disk-Dateien
  550. zerstören könnte.
  551. (Hoffentlich bekommt niemand diese Meldung je zu sehen.)
  552.  
  553. M1.2: Speicher vollständig belegt.
  554. Schlichter Speicherüberlauf.
  555. Abhilfe: Überflüssige Puffer freigeben,    Zwischenablage löschen,    SCEDIT been-
  556. den    (Sichern ist noch möglich) und mit evtl. höhergesetzter    Speichergrenze
  557. neu    starten, neuen Rechner kaufen...
  558.  
  559. M1.3: Interner Parameterfehler.
  560. Sollte nie erscheinen. (War    nur    eine Testhilfe.)
  561.  
  562. M1.4: Ungültige    Zeilennummer.
  563. Bei    "Zeile anspringen" wurde eine nicht    existierende Nummer    angegeben.
  564.  
  565. M1.5: Keine    Daten in der Ablage.
  566. "Ablage    einfügen" wurde    aufgerufen,    ohne vorher    mit    "Block ausschneiden/ko-
  567. pieren"    die    Ablage zu füllen.
  568.  
  569. M1.6: Überschreitung der maximalen Zeilenlänge.
  570. Beim Ersetzen, Einfügen    o. ä. würde    eine Zeile mit mehr    als    250    Zeichen
  571. entstehen. Die Operation wird nicht    ausgeführt.
  572.  
  573. M1.7: Kein Suchvorgang definiert.
  574. "Weiter    suchen"    ist    nicht möglich, wenn    vorher kein    Suchdialog ausgeführt
  575. wurde.
  576.  
  577. M1.8: Ungültige    Suchanforderung.
  578. Fehlerhafte    Angaben    im Suchdialog. Insbesondere    kann nicht nach    einem Leer-
  579. string gesucht werden.
  580.  
  581. M1.9: Kein Ersetzvorgang definiert.
  582. "Weiter    ersetzen" wurde    ausgewählt,    obwohl bei der vorher aufgesetzten Suche
  583. von    Ersetzen keine Rede    war.
  584.  
  585. M2.2: Fehler beim Lesen    der    Datei.
  586. Allgemeiner    Fehler aus dem Betriebsystem. Erste    Frage: Existiert die Datei
  587. überhaupt?
  588.  
  589. M2.3: Fehler beim Schreiben    der    Datei.
  590. Allgemeiner    Fehler aus dem Betriebsystem. Erste    Frage: Ist die Platte voll?
  591.  
  592. M2.4: Zu viele Fenster gleichzeitig    offen.
  593. Es können maximal 5    Textfenster    gleichzeitig offen sein.
  594.  
  595. M2.5: Aktives Textfenster erforderlich.
  596. Die    Editierfunktionen beziehen sich    auf    das    jeweils    aktive Fenster.    Ist    kein
  597. Fenster    aktiv (da eine Dialogbox/ein Accessory oben    liegt bzw. kein    Fenster
  598. offen ist),    sind sie gesperrt.
  599.  
  600. M2.6: Fehler beim Öffnen der Datei zum Schreiben.
  601. Allgemeiner    Fehler aus dem Betriebsystem.
  602.  
  603. M2.7: Die Datei    existiert nicht; sie wird beim Sichern des Puffers angelegt.
  604. Erscheint beim Versuch,    eine nicht existierende    Textdatei zu laden.    Danach
  605. wird ein leerer    Textpuffer mit diesem Dateinamen zur Verfügung gestellt, um
  606. die    Datei zu erzeugen.
  607.  
  608. M2.8: Alle Puffer bereits belegt.
  609. SCEDIT kann    maximal    10 Puffer verwalten.
  610.  
  611. M2.9: Kein Blockbereich    selektiert.
  612. Fehlermeldung aller    Funktionen,    die    versuchen, einen selektierten Block    zu
  613. bearbeiten.
  614.  
  615. M2.10: Suchstring nicht    gefunden.
  616. Mißerfolg einer    Suchoperation.
  617. Wurde "Nach    Ende zum Anfang" gewählt, erscheint    diese Meldung, wenn    das    Be-
  618. reichsende erreicht    wurde. Danach wird erst    zum    Anfang gesprungen.
  619.  
  620. M2.11: Fehler beim Anlegen der Backup-Datei.
  621. Fehler beim    Sichern    mit    autom. Backup.
  622.  
  623. M2.12: Ungültige Tabulatorgröße.
  624. Tabulatoren    sollten    nicht zu klein oder    zu groß    sein. (2 bis 20    Zeichen)
  625.  
  626. M2.13: Nicht genug Speicher    für    weiteres Programm.
  627. Fehlermeldung beim Versuch,    ein    Programm aus SCEDIT    zu starten.
  628.  
  629. M2.14: Fehler beim Lesen der Konfigurationsdatei.
  630. Die    Konfigurationsdatei    wurde nicht    gefunden, oder sie war nicht lesbar.
  631.  
  632. M2.15: Die Datei ist kein gültiger ASCII-Text.
  633. Als    ungültig werden    Dateien    angesehen, die Zeichen mit ASCII-Code 0    ent-
  634. halten.
  635.  
  636. M2.16: Ungültige Pfadangabe.
  637. Beim Nachladen eines Programmes    wurde ein nicht    auffindbarer Arbeitspfad
  638. angegeben.
  639.  
  640. M2.17: Syntaxfehler    in der Konfigurationsdatei.
  641. Die    Konfigurationsdatei    enthält    Syntaxfehler. (Zur Syntax siehe    unten)
  642.  
  643.  
  644.         13.    Die    Konfigurationsdatei
  645.         ---------------------------
  646.  
  647.     Die    Konfigurationsdatei    SCEDIT.CFG enthält die Ausgangseinstellungen der
  648. Arbeitsparameter von SCEDIT. Sie wird beim Start des Programms in dem Ver-
  649. zeichnis gesucht, in dem sich das Programm befindet. Wenn sie dort nicht auf-
  650. gefunden wird oder als fehlerhaft erkannt wird,    werden (nach entsprechender
  651. Fehlermeldung) einfach die im Programm vorgesehenen    Standardeinstellungen ver-
  652. wendet.    Die    Konfiguratiosdatei ist ein einfacher ASCII-Text, der mit SCEDIT
  653. selbst erstellt    werden kann.
  654. Ein    Eintrag    in der Konfiguratiosdatei besteht aus einem    Schlüsselwort, das
  655. allein steht (Schalter), oder dem eine Ganzzahl    folgt (numerischer Parameter).
  656. Beim Lesen der Schlüsselworte wird nicht zwischen Klein- und Großbuchstaben
  657. unterschieden. Schlüsselworte und Parameter    werden durch Leerzeichen, Tabula-
  658. toren und/oder Zeilenenden getrennt.
  659. Einige der Einträge    bestimmen Ausgangsbelegungen von Menues    oder Dialogboxen;
  660. sie    lassen sich    während    der    Arbeit mit SCEDIT ohne weiteres    ändern.
  661.  
  662.     13.1 Schalter
  663.     -------------
  664.     Ein    Schalter wird durch    ein    allein stehendes Schlüsselwort beschrieben.
  665. Die    Ausgangsstellung aller Schalter    ist    "Aus"; wird    das    Schlüsselwort in der
  666. Konfiguratiosdatei gefunden, so    wird der Schalter auf "Ein"    gestellt. Tritt
  667. beim Lesen der Konfiguration ein Fehler    auf, werden    für    alle Schalter auf
  668. "Aus" gestellt.    Die    Schalter im    Einzelnen:
  669.  
  670.     "fcomp":
  671. Schaltet die Tabulatorkompression bei Dateioperationen ein.
  672.  
  673.     "fback":
  674. Schaltet die automatische Backuperstellung ein.
  675.  
  676.     "m_ins":
  677. Schaltet den Einfügemodus ein.
  678.  
  679.     "m_ind":
  680. Schaltet das autom.    Einrücken ein.
  681.  
  682.     "nocr":
  683. Im Normalfall wird beim    Sichern    einer Textdatei    jede Zeile mit CR (ASCII 13)
  684. und    LF (ASCII 10) abgeschlossen. Dieses    Schlüsselwort schaltet einen Modus
  685. ein, in    dem    nur    LF geschrieben wird.
  686.  
  687.     Die    nächsten Schalter betreffen    nur    Voreinstellungen in    Dialogboxen.
  688.     "scase":
  689. Schaltet die Unterscheidung    Groß/Kleinschreibung beim Suchen ein.
  690.  
  691.     "swrap":
  692. Schaltet "Nach Ende    zum    Anfang"    beim Suchen    ein.
  693.  
  694.     "exgem":
  695. Schaltet Bildschirmumgebung    "GEM" in "Programm starten"    ein.
  696.  
  697.     13.2 Numerische    Parameter
  698.     -------------------------
  699.     Ein    numerischer    Parameter besteht aus einem    Schlüsselwort, gefolgt von
  700. einer Ganzzahl.    Die    Parameter werden nach diesem Schema    beschrieben:
  701.     "name"(Minimalwert,    Maximalwert, Default)
  702. Werte, die nicht zwischen Minimal- und Maximalwert liegen, werden beim Lesen
  703. der    Konfiguration als Syntaxfehler angesehen. Wenn das Schlüsselwort fehlt,
  704. wird der Defaultwert gewählt. Tritt    beim Lesen der Konfiguration ein Fehler
  705. auf, werden    für    alle Parameter die Defaultwerte    gewählt. Die Parameter im
  706. Einzelnen:
  707.  
  708.     "mem"(100, Rechnerspeicher,    Rechnerspeicher):
  709. Bestimmt die Maximalgröße des vom Programm reservierten    Textspeichers in
  710. Kilobyte.
  711. Während    der    Arbeit wächst der von SCEDIT belegte Speicher ständig. Dies    könnte
  712. dazu führen, daß für nachzuladende Programme nicht mehr    genug Speicher zur
  713. Verfügung steht. Daher wird    bei    Erreichen der durch    "mem" bestimmten Höchst-
  714. grenze kein    Speicher mehr angefordert und Überlauf gemeldet. Sind weitere
  715. Programme kein Problem,    kann man SCEDIT    durch Weglassen    dieses Parameters den
  716. gesamten Rechnerspeicher zur Verfügung stellen.
  717.  
  718.     "tabs"(2, 20, 4)
  719. Bestimmt den Ausgangswert der Tabulatorgröße.
  720.  
  721.     Die    weiteren Parameter betreffen nur Voreinstellungen in Dialogboxen.
  722.     "sran"(0, 3, 0)
  723. Bestimmt den Suchbereich: 0    = Ganzer Text, 1 = Anfang -> Cursor,
  724.                           2    = Cursor ->    Ende, 3    = Auswahlblock.
  725.  
  726.     "sdir"(0, 1, 0):
  727. Bestimmt die Suchrichtung: 0 = Vorwärts, 1 = Rückwärts.
  728.  
  729.     "srepl"(0, 2, 0):
  730. Bestimmt den Ersetzmodus: 0    = Einmal, 1    = Rückfrage, 2 = Alles.
  731.  
  732.  
  733.         14.    Zukunftsaussichten
  734.         ----------------------
  735.  
  736.     Bei    hinreichender Resonanz ehrlicher Anwender kann SCEDIT in Zukunft  
  737. beliebig erweitert werden. Denkbar wären z.    B. Blocksatz, Tastaturmakros
  738. (dafür sind    die    Funktionstasten    freigehalten), Suche nach regulären    Aus-
  739. drücken    (z.    B.:    Suche in einem C-Programm alle Funktionsdeklarationen),    Aus-
  740. druck von Dateien, usw., usf., etc.,...
  741.  
  742.  
  743.         15.    Nutzungsbedingungen
  744.         -----------------------
  745.  
  746.     Dieses Programm    ist    SHAREWARE. Es darf (und    soll) nach Belieben    weiter-
  747. kopiert    und    verbreitet werden. Dabei darf die Zusammenstellung der Dateien
  748. im Ordner SCEDIT nicht geändert    werden,    die    Programm- und Resourcedatei    dür-
  749. fen    nicht geändert werden und vor allen    Dingen darf    der    Copyrightvermerk
  750. nicht entfernt oder    verändert werden. Jeder    potentielle    Anwender hat die Mög-
  751. lichkeit, das Programm zu testen. Bei regelmäßiger privater    Nutzung    wird eine
  752. Nutzungsgebühr von 20,-- DM    fällig.
  753. Alle darüber hinausgehenden    Rechte behalte ich mir vor.
  754.  
  755. Ich, Harald    Becker,    kann keine Haftung für irgendwelche    direkten oder in-
  756. direkten Schäden - einschliesslich aber    nicht beschränkt auf materielle    oder
  757. finanzielle    - übernehmen, die durch    die    Benutzung von SCEDIT oder die Untaug-
  758. lichkeit von SCEDIT    für    einen bestimmten Zweck entstehen.
  759.  
  760.