%format latexg
%\documentstyle[11pt,german,titlepage,makeidx]{article}  % nur f\"ur TXT
%\addtolength{\textwidth}{-1cm}         % nur f\"ur TXT
%\newcommand{\alt}[1]{\#{\tt#1}}        % nur f\"ur TXT
%\footnotesep 11pt                      % nur f\"ur TXT
%\newcommand{\qed}{{\tt qed}}           % nur f\"ur TXT

%\documentstyle[12pt,german,titlepage,makeidx,twoside,mydina4]{article}
\documentstyle[german,titlepage,makeidx,twoside,a5]{article}
\newcommand{\alt}[1]{$\diamondsuit${\tt#1}}
\newcommand{\qed}{{\sf qed}}

\newcommand{\ctrl}[1]{$\wedge${\tt#1}}
\newfont{\headfont}{cmss17 scaled \magstep5}
\hyphenation{Quell-da-te}

%--------------------------------------------------------------------
% Fileselektor => Dateiauswahlbox
% Disk ???
% --Taste, --Icon, Textfenster
%--------------------------------------------------------------------
% .... => hier musz noch was getan werden
%--------------------------------------------------------------------
\sloppy
\setcounter{tocdepth}{3}
\parindent 0cm
\parskip=1ex plus 0.5ex minus 0.5ex
\pagestyle{headings}

\title{{\headfont qed}\\
{\normalsize Version 3.05}\\[1cm]
Bedienungsanleitung\\
}
\author{Programm von Tom Quellenberg\\
Anleitung von Mick Schmidt und Tom Quellenberg}
\date{15. Februar 1993}

\makeindex

\begin{document}
\maketitle

\pagenumbering{roman} \tableofcontents \newpage \pagenumbering{arabic}

\section{Zu \qed\ allgemein}%===============================================

\qed\ ist ein Texteditor f\"ur {\sf Atari ST/TT}, der die Vorz\"uge der
Gem--Be\-nut\-zungs\-ober\-fl\"a\-che, wie Dropdown Men\"us, Dialogboxen und 
Icons, etc.\ nutzt. Neben der Bedienung per Maus wurde aber auch darauf 
geachtet, da\3 (fast) alle Funktionen ebenfalls \"uber die Tastatur erreicht 
werden k\"onnen, so da\3 die BenutzerInnen, die eher die altmodische Art 
bevorzugen bzw.\ per Tastatur schneller arbeiten, soweit wie m\"oglich 
unterst\"utzt werden.

\qed\ ist in erster Linie f\"ur die Eingabe von Quelltexten ausgelegt,
also z.B.\ zum Programmieren oder auch f\"ur \TeX/\LaTeX 
\index{Tex@\TeX}\index{Latex@\LaTeX} (durch den Flie\3textmodus). Als 
weitere wichtige Features seien echte Tabulatoren, die Suchfunktionen mit
re\-gu\-l\"a\-ren Ausdr\"ucken und die K\"urzeldateien genannt.

Sicherlich lassen sich auch Briefe und andere Texte mit \qed\ abfassen, 
jedoch ist der Editor nicht daf\"ur geplant und somit werden in dieser 
Hinsicht w\"unschenswerte Funktionen, wie z.B. Blocksatz, etc.\ nicht 
angeboten. F\"ur solche Aufgaben sei dann doch eher auf direkt darauf 
ausgelegte Software verwiesen, also Textverarbeitungsprogramme. 
\index{Textverarbeitungen}

\begin{quote}
{\bf Hinweis:} Nat\"urlich wurde versucht, \qed\ von allen Fehlern zu 
bereinigen. Da Software aber ab einer gewissen Komplexit\"at im allgemeinen 
niemals fehlerfrei sein kann, ist es nicht auszuschlie\3en, da\3 sich auch 
in \qed\ noch einige Fehler verstecken. Daher \"ubernehmen wir keinerlei 
Haftung\index{Haftung} f\"ur eventuelle Sch\"aden und Datenverluste, die beim 
Gebrauch von \qed\ auftreten.

Ebenso d\"urften sich auch in diese Anleitung noch Fehler eingeschlichen 
haben. F\"ur Hinweise in dieser Richtung haben wir daher jederzeit ein 
offenes Ohr und sind dankbar daf\"ur.\footnote{Wie uns diese mitgeteilt 
werden k\"onnen, siehe am Ende des n\"achsten Abschnittes}

Die in dieser Anleitung erw\"ahnten Soft-- und Hardwarebezeichnungen  sind 
fast alle eingetragene Warenzeichen und sollten daher als solche 
betrachtet werden.
\end{quote}

\subsection{Nutzungsbedingungen}
\index{Nutzungsbedingungen}
Kommen wir nun zu den Formalit\"aten.

\begin{center}
{\Large \qed\ ist ein Sharewareprogramm!}\index{Shareware}
\end{center}

Das hei\3t, da\3 es sowohl erlaubt, als auch erw\"unscht ist, da\3 es sich 
jedermann kopiert bzw.\ da\3 es z.B.\ auch \"uber Mailboxen, etc.\ verbreitet 
wird, nichtsdestotrotz ist das Programm {\bf nicht} umsonst.

Wenn das Programm nach einer gewissen Testzeit (einige Wochen) weiterhin 
genutzt werden soll, so mu\3 der Sharewarebeitrag an den Autor gezahlt 
werden, ansonsten ist das Programm genauso eine Raubkopie, wie illegale 
Kopien von nicht frei erh\"altlicher, kommerziell vertriebener Software.

Weiterhin darf \qed\ weder verkauft werden, noch d\"urfen f\"ur das Kopieren 
irgendwelche Ge\-b\"uh\-ren erhoben werden. Somit ist auch der Vertrieb \"uber 
kos\-ten\-pflich\-ti\-ge PD--Versender\index{PD--Versender} ausgeschlossen.

Bei der Weitergabe ist au\3erdem darauf zu achten, da\3 das \qed\ Paket 
\index{qed@\qed\ Paket} immer komplett kopiert wird, d.h.\ es m\"ussen die 
folgenden Dateien enthalten sein:

\begin{tabular}{ll}
{\tt QED.APP}    & Das eigentliche Programm \\
{\tt QED.RSC}    & Die Resource Datei mit Men\"us, Dialogen, etc.\\
{\tt DEFAULT.QED}& Parameter-Datei(die automatisch geladen wird).\\
{\tt LATEX.KRZ}  & Zwei Beispiel K\"urzeldateien f\"ur \LaTeX und\\
{\tt MODULA.KRZ} & Modula-2, ohne Anspruch auf Vollst\"andigkeit.\\
{\tt README.1ST} & Wichtige Informationen\\
{\tt QED.TEX}    & Diese Anleitung als \LaTeX Dokument\\
{\tt QED.DVI}    & und hier als \LaTeX-Ausgabe\\
{\tt QED.TXT}    & Dieser Text als ASCII-Text, mit DVI2TTY erzeugt\\
{\tt CHANGES.TXT}& Versions-Geschichte
\end{tabular}

\vspace{2ex}

{\bf Sharewaregeb\"uhr:}

Der Preis f\"ur \qed\ betr\"agt 50,-- DM.

Zahlungen entweder bar, per Scheck oder als \"Uberweisung an:
\begin{verbatim}
Tom Quellenberg
Im Speitel 25a
W-7500 Karlsruhe 41
Deutschland (Germany)

Bankverbindung:
Volksbank Karlsruhe 
BLZ 661 900 00
Kto.-Nr. 500 783 02
\end{verbatim}

\begin{quote}
{\bf Wichtig:} Bitte nicht vergessen, Name und Adresse deutlich auf 
\"Uber\-wei\-sungs\-tr\"a\-gern, etc.\ zu vermerken. Diese Daten sind wichtig 
f\"ur die Registrierung \index{Registrierung} und k\"unftige Updates. Sie 
werden nur zu diesem Zweck privat gespeichert und nat\"urlich auch nicht an 
Dritte weitergegeben.
\end{quote}

Eine aktuelle Version von \qed\ ist durch Zusendung einer auf 720 KByte 
formatierten 3.5'' Diskette und einem frankierten R\"uckumschlag jederzeit 
erh\"altlich.

Fragen, Probleme und Fehlermeldungen, \index{Fehlermeldungen} bitte immer 
unter Angabe der Versionsnummer, k\"on\-nen ebenfalls an obige Adresse 
gerichtet werden, oder aber per e--mail an: \index{E--Mail}

\begin{verbatim}
Mausnet:    Tom Quellenberg @ KA
InterEunet: Tom_Quellenberg @ ka.maus.de
Fido:       Tom Quellenberg @ MAUS KA (242/2.6)
\end{verbatim}

Fragen und Fehler zum Programm und speziell zur Anleitung k\"onnen per 
e--mail auch an den Autor dieser Zeilen direkt gerichtet werden:
\begin{verbatim}
Mausnet:    Mick Schmidt @ HB
InterEunet: ms@hb.maus.de
\end{verbatim}

\section{Systemvoraussetzungen}%=============================================
\index{Systemvorrausetzungen}
\qed\ sollte auf jeder {\sf Atari} {\tt ST(e)/TT} Konfiguration laufen, 
die mindestens 512 KByte Hauptspeicher hat sowie \"uber eine Aufl\"osung von 
640*200 Pixeln und h\"oher verf\"ugt.

\section{Installation}%======================================================
\index{Installation}\label{Ins}
Um den Editor benutzen zu k\"onnen, mu\3 grunds\"atzlich nur sichergestellt 
werden, da\3 sich die Resource-Datei\footnote{{\tt QED.RSC}} von \qed\ an 
einer Stelle befindet, wo sie beim Start gefunden wird. Am sinnvollsten 
legt man sie zusammen mit der Programmdatei ab. Da es aber auch denkbar 
ist, da\3 man alle Resourcen von den Programmen getrennt aufbewahren 
m\"ochte, wird die Datei ebenfalls gefunden, wenn sie in einem Verzeichnis 
liegt, das in der Suchpfadliste\footnote{Environment--Variable {\tt PATH}} 
aufgef\"uhrt ist.

Der Anwender kann die von ihm vorgenommenen Einstellungen von \qed\ 
abspeichern lassen, so da\3 beim n\"achsten Start des Editors wieder dieselbe 
Konfiguration zur Verf\"ugung steht. Die dazu benutzte Datei erh\"alt den 
Namen {\tt DEFAULT.QED}. Es ist aber auch m\"oglich, mehrere verschiedene 
Konfigurationen unter anderen Namen anzulegen und diese von \qed\ benutzen 
zu lassen. Beim Starten geht \qed\ folgenderma\3en vor:

\begin{itemize}
\item Zun\"achst wird \"uberpr\"uft, ob ein Dateiname mit der Endung
  {\tt .QED} als Parameter \"ubergeben wurde. Wenn ja und wenn die
  angegebene Datei existiert, so wird sie benutzt.
\item Sollte der Anwender keine andere {\tt .QED} Datei als Parameter 
  \"ubergeben haben wird nach {\tt DEFAULT.QED} gesucht:
      \begin{enumerate}
      \item Zun\"achst sucht \qed\ im aktuellen Verzeichnis. Sollte er dort 
        nicht f\"undig werden,
      \item so sucht er in dem Verzeichnis, in dem er {\tt QED.APP}, also das 
        Editor-Programm selbst, vermutet.\footnote{Was nicht immer zu 
        ermitteln ist, wenn der Editor nicht \"uber das
        ARGV--Verfahren gestartet wurde.}
      \item Wenn auch dort kein {\tt DEFAULT.QED} gefunden wurde, so wird 
        noch in einem Verzeichnis gesucht, da\3 \"uber die 
        Environment--Variable {\tt QED} angegeben werden kann, also z.B. 
        {\verb/QED=D:\QED\/}.
      \end{enumerate}
\item Sollte all dies fehlschlagen, so bekommt man die M\"oglichkeit, eine 
  Einstellungsdatei mit dem Dateiselektor auszuw\"ahlen. Tut man dies 
  nicht, so werden im Editor eingebaute Standardeinstellungen verwendet.
\end{itemize}

\index{Zeile anspringen}
Nat\"urlich kann man auch Dateinamen beim Starten \"ubergeben. Die Dateien 
werden dann automatisch ge\"offnet. Folgt als weiterer Parameter hinter 
einem Dateinamen eine Zahl, wird der Cursor nach dem Laden in die 
entsprechende Zeile gesetzt. Folgt eine zweite Zahl, wird der Cursor in 
die vorgegebene Spalte gebracht.

\subsection{als Accessory}

\qed\ kann auch als Accessory \index{Accessory}\index{Installation als 
Accessory} installiert werden, jedoch mu\3 hierbei noch einiges zus\"atzlich 
beachtet werden, da auch \qed\ mit den \"ublichen Problemen von Accessories 
zu k\"ampfen hat, insbesondere bez\"uglich der Belegung von Speicher durch ein 
Accessory und die falsche Behandlung von Systemmeldungen beim Starten von 
Programmen durch
{\sf Atari}--GEM\footnote{Gemeint ist die Meldung {\tt AC\_CLOSE}, welche 
im {\sf Atari}--GEM bis einschlie\3lich {\tt TOS} 1.62 erst gesendet wird, 
wenn die Hauptapplikation bereits beendet ist, was die besagten 
Konsequenzen hat. Die Speicherbl\"ocke des Accessory, die nicht beim Start 
reserviert wurden, sind schon wieder freigegeben, obwohl da\3 {\tt ACC} 
noch gar keine entsprechenden Sicherungsma\3nahmen vornehmen konnte.} 
Versionen $< 3.00$.

Die Folgen davon sind, da\3 im Betrieb als Accessory verschiedene 
Funktionen (wie z.B.\ K\"urzel und Makros) nicht verf\"ugbar sind und
da\3 beim Starten oder Beenden eines Programmes die noch nicht
gesicherten Daten (Texte) von \qed\ verloren gehen!

Nun mag es aber doch den einen oder anderen geben, der schon immer auf ein 
Editor Accessory gewartet hat und der mutig genug ist, es trotzdem zu 
wagen. Daher also nun endlich die Hinweise, was bei der Installation als 
Accessory zu beachten ist:

Dazu benennt man {\tt QED.APP} in {\tt QED.ACC} um und kopiert dieses 
zusammen mit {\tt QED.RSC} und {\tt DEFAULT.QED} dorthin, wo man auch 
seine anderen Accessories stehen hat, also im Normalfall in das 
Wurzelverzeichnis seiner Bootdiskette bzw.\ Bootpartition.

\subsection{unter einem Multitasking GEM}

Unter einem Multitasking Betriebssystem, welches gleichzeitig mehrere 
Hauptapplikationen zul\"a\3t, mag es sinnvoll sein, den \qed\ Desktop 
abzuschalten, so da\3 er nicht mit 
dem Desktop vom GEM bzw.\ von alternativen Desktops, wie z.B. GEMINI, 
Neodesk, etc., kollidiert oder zwischen diesem und dem von \qed\ immer 
hin-- und hergeschaltet werden mu\3.

Daher kann man unter dem Men\"upunkt {\em Optionen /Einstellungen}
(Seite \pageref{OptEin}) den Schalter {\em kein Desktop} gesetzt
haben. Nach dem Sichern der Einstellungen und dem erneuten Starten von
\qed\ wird kein eigener Desktop installiert (Seite
\pageref{NoDesktop}). Dies ist aber wie gesagt optional, es geht
normalerweise auch anders, eben durch automatisches 
Umschalten der verschiedenen Desktops.

\section{Men\"us}%========================================================

Im folgenden Abschnitt werden alle Funktionen aus der Men\"uleiste 
\index{Menuleiste@Men\"uleiste} beschrieben, wobei teilweise, bei 
komplexeren Funktionen, auf genauere Erkl\"arungen in den weiter hinten 
folgenden Kapiteln verwiesen wird.

In der \"Uberschrift der einzelnen Men\"upunkte steht in eckigen Klammern {\bf 
[ ]} die jeweilige Tastenkombination \index{Tastenkombination} (sogenannte 
Shortcuts \index{Shortcuts} = (dt.) Abk\"urzungen) mit der diese Funktion 
auch \"uber die Tastatur ausgel\"ost werden kann. Meist handelt es sich dabei 
um Kombinationen der {\sf Alternate}-- oder {\sf Control}--Taste zusammen 
mit einer Buchstabentaste. In einem solchen Fall steht vor dem Buchstaben 
ein {\bf \ctrl{}} f\"ur {\sf Control} bzw.\ ein {\bf \alt{}} f\"ur {\sf 
Alternate} (in den Men\"us im Programm stehen diese {\em Shortcuts} 
ebenfalls immer hinter dem Men\"upunkt, jedoch ohne eckige Klammern, und 
hier sieht das Zeichen f\"ur Alternate anders aus, aber das werden Sie 
sicher schnell erkennen). Wenn keines dieser Zeichen auftaucht, so mu\3 
auch keine der beiden Tasten zusammen mit der angegebenen gedr\"uckt 
gehalten werden.

\subsection{\qed}

Unter diesem Men\"ueintrag befindet sich neben den aktuell installierten 
Accessories, \"uber die wir aus unerfindlichen Gr\"unden nichts wissen, nur 
der Me\-n\"u\-punkt {{\em \"Uber \qed...} [\ctrl{\"U}]}. Hinter diesem
verbirgt sich wie \"ublich eine kleine Info Box, die \"uber den Autor, dessen 
Erreichbarkeit, die Shareware Bedingungen und, speziell bei R\"uckfragen und 
Fehlermeldungen besonders wichtig, \index{Fehlermeldungen} die {\em 
Versionsnummer} \index{Versionsnummer} des vorliegenden \qed\ Auskunft 
gibt.

\subsection{Datei}

\subsubsection{Neu... [\ctrl{N}]}
\index{Neue Textdatei anlegen}
Mit diesem Men\"upunkt legt man eine neue Textdatei an. Auf dem \qed\
Desktop erscheint ein Text--Icon, und es wird ein Textfenster
ge\"offnet, welches nun zur Eingabe des Textes bereit steht. Diese
Datei hat zun\"achst keinen Namen. Erst wenn sie gesichert werden
soll, wird \"uber die Dateiauswahlbox ein Name festgelegt.

\subsubsection{\"Offnen... [\ctrl{O}]}
\index{Offnen@\"Offnen einer Textdatei} \index{Laden einer Textdatei}
{\em \"Offnen...} dient, wie der Name schon sagt, zum \"Offnen einer schon 
vorhandenen (Text--) Datei. Es erscheint die 
Dateiauswahlbox, in der man eine Datei ausw\"ahlen bzw.\ einen Namen 
eingeben kann. Wenn die Datei nicht existieren sollte, dann wird man vor 
die Wahl gestellt, entweder den Vorgang abzubrechen oder aber eine neue 
Datei mit diesem Namen anlegen zu lassen. In letzterem Fall erscheint 
ein Text--Icon mit dem Dateinamen, sowie ein Fenster, 
welches auf die Eingabe von neuem Text harrt. Wenn die Datei existiert, 
was ja eigentlich der Normalfall sein sollte, dann wird zum oben genannten 
noch der geladenene Text in dem Fenster dargestellt. 

Neben dem \"Offnen von Dateien (also dem Laden) kann man mit diesem 
Me\-n\"u\-punkt auch einen schon im Speicher befindlichen Text wieder 
darstellen lassen, d.h.\ wenn der Text nur als Icon dargestellt wird, so 
kann man das Icon selektieren und anschlie\3ende Anwahl des Men\"upunktes das 
zugeh\"orige Textfenster \"offnen (mehr eine M\"oglichkeit f\"ur Leute, die 
Probleme mit Doppelklicks haben, denn ein solcher auf das Icon \"offnet das 
Fenster genauso). Das funktioniert nat\"urlich auch bei Projekten, beim 
Klemmbrett (Clipboard), sowie dem Disk--Icon, bei dem es dieselbe 
Wirkung hat, wie wenn gar kein Icon selektiert ist.

\subsubsection{Schlie\3en [\ctrl{U}]}
\index{Fenster schlie\3en}
Mit {\em Schlie\3en} veranla\3t man \qed\ dazu, das oberste (also das 
aktuelle) Fenster zu schlie\3en, womit nur noch das zugeh\"orige Icon auf dem 
\qed\ Desktop zur\"uck bleibt. Die Funktion bewirkt also dasselbe, wie das 
Anklicken des Schlie\3knopfes in der oberen linken Fensterecke.

\subsubsection{L\"oschen [\ctrl{D}]}
\index{Loschen@L\"oschen eines Textes/Projektes}
Dieser Men\"upunkt dient dem Entfernen eines Textes oder Projektes aus dem 
Speicher (aber nicht von der Diskette oder Festplatte!), d.h.\ das
selektierte Icon oder, 
wenn kein Icon gew\"ahlt war, das oberste Fenster samt zugeh\"origem Icon, 
werden vom Desktop entfernt und ebenso der entsprechende Text aus dem 
Speicher. Sollte das gew\"ahlte Objekt noch nicht gesicherte \"Anderungen 
beinhalten, so wird man darauf aufmerksam gemacht und hat die M\"oglichkeit, 
den Text noch vor dem L\"oschen speichern zu lassen.

Diese Funktion l\"a\3t sich auch auf das Klemmbrett anwenden, jedoch wird in 
diesem Fall nur der Inhalt des Klemmbrettes gel\"oscht. Das Icon und ggf.\ 
auch das zugeh\"orige Fenster bleiben erhalten.

\subsubsection{Fenter wechseln [\ctrl{W}]}
\index{Fenster wechseln}
Mit {\em Fenster wechseln} kann man die ge\"offneten Fenster "`rundherum"' 
jeweils zum aktuellen machen lassen, d.h.\ das aktuelle Fenster wird nach 
"`hinten"' gestellt und das n\"achste wird zum aktuellen. Das "`rundherum"' 
bezieht sich darauf, da\3 nat\"urlich irgendwann das zu Anfang aktuell 
gewesene Fenster auch wieder "`oben"' ankommt, und dann geht das Spiel 
wieder von vorne los.

\subsubsection{Sichern [\ctrl{S}]}
\index{Speichern eines Textes/Projektes}
{\em Sichern} speichert den Text des selektierten Icons, bzw.\ wenn kein 
Icon angew\"ahlt wurde, den im aktuellen Fenster unter dem Dateinamen ab, 
unter dem er geladen bzw.\ neu angelegt wurde. Auch diese Funktion 
ber\"ucksichtigt neben Texten auch Projekte.

\subsubsection{Sichern unter... [\ctrl{M}]}
\index{Speichern unter neuem Namen}
Mit {\em Sichern unter...} kann man einen Text, einen Block, ein Projekt 
oder den Text des Klemmbrett unter einem anderem Namen speichern, als dem, 
unter dem er geladen bzw.\ neu angelegt wurde.
Wie auch bei {\em Sichern} wird der Text gespeichert, der zum selektierten 
Icon geh\"ort oder, wenn kein Icon gew\"ahlt ist, der gerade aktive Text (der 
im obersten Fenster). Ist ein Text ausgew\"ahlt, in dem ein Block markiert 
ist, so bezieht sich das Sichern auf diesen Block. F\"ur die Angabe des 
neuen Dateinamens bzw.\ Laufwerkes oder Pfades erscheint wie gewohnt die 
Dateiauswahlbox.

Neben den im Speicher befindlichen Texten kann auch der Inhalt des 
Klemmbretts mit dieser Funktion unter einem anderen Namen gesichert 
werden.\index{Speichern des Klemmbrettes}

Wenn man einen Namen w\"ahlt, der schon existiert, wird man gefragt, ob die 
Datei \"uberschrieben werden soll oder nicht.

\subsubsection{Letzte Fassung [\ctrl{H}]}
\index{Verwerfen von \"Anderungen}\index{Letzte Fassung}
Diese Operation dient dazu, alle \"Anderungen, die man an einem Text bzw.\ 
einem Projekt seit dem letzten Sichern gemacht hat, r\"uckg\"angig zu machen, 
d.h.\ man verwirft den aktuellen Text im Speicher und erh\"alt den,
der zuletzt gesichert wurde. Diese Funktion wird, wie die vorigen, auf
den zu einem selektierten Icon geh\"orenden Text bzw.\ auf das oberste
Text-- bzw.\ Projektfenster angewendet.

\subsubsection{Drucken... [\ctrl{P}]}
\index{Drucken von Text(passagen)}
Es k\"onnen verschiedene Objekte ausgedruckt werden:
\begin{itemize}
\item eine Textdatei, dadurch da\3 das zugeh\"orige Icon selektiert ist oder 
  da\3 entsprechende Textfenster das oberste ist, wenn man diese Funktion 
  ausl\"ost.
\item ein markierter Block, indem ebenso wie beim gesamten Text entweder 
  das Icon selektiert oder das Fenster oben ist.
\item den Inhalt des Klemmbretts, auch hier dadurch, da\3 das
  Clipboard--Icon selektiert ist oder aber das Clipboard Fenster das oberste 
  ist.
\item ein Projekt, wenn das entsprechende Projekticon selektiert ist. 
  Dabei werden alle enthaltenen Dateinamen mit komplettem Pfad gedruckt.
\end{itemize}

Nun wird sich der Eine oder Andere fragen, wie denn die Unterscheidung bei 
den ersten beiden F\"allen gemacht wird, ob nun der gesamte Text oder nur 
der markierte Block gedruckt werden soll.

Diese Frage l\"a\3t sich beantworten, wenn man den Dialog in Betracht zieht, 
der nach dem Anw\"ahlen des Men\"upunktes {\em Drucken...} erscheint.

Hier wird zun\"achst einmal der Name des zu druckenden Objektes angezeigt, 
bei Texten der Dateiname, der ja auch das zugeh\"orige Icon bezeichnet, beim 
Klemmbrett wird entweder {\tt KLEMMBRETT} angezeigt, wenn selbiges im 
Speicher liegt oder {\tt SCRAP.TXT}, da dies standardm\"a\3ig der Name der 
Klemmbrettdatei ist.\footnote{N\"aheres zum Thema Klembrett auf Disk/im 
Speicher siehe weiter unten zum Men\"upunkt {\em Optionen / Klemmbrett auf 
Disk} (Seite \pageref{OptKle})}

\index{Druckparameter}
Darunter hat man nun diverse Einstellungsm\"oglichkeiten. Einerseits, ob der 
Text mit Zeilen-- und/oder Seitennummern gedruckt werden soll und ob eine 
Wandlung der {\em Sonder\-zeichen}\footnote{Bei eingeschaltetem 
EPSON--Modus werden Sonderzeichen wie Umlaute, eckige Klammern, etc.\ auf 
Epson--Kompatiblen Druckern richtig ausgegeben, ansonsten werden die 
ST--Zeichencodes ungewandelt an den Drucker gesendet.}  vorgenommen werden 
soll. Zum anderen kann man Papierl\"ange und Papierbreite angeben, d.h.\ 
wieviele Zeilen und Spalten pro Seite gedruckt werden sollen, und auch 
wieviele Spalten als linker Rand frei gelassen werden sollen.\\
Bei der Papierl\"ange gibt es noch einen Sonderfall. Gibt man hier den Wert 
0 ein, so wird der Text in einem St\"uck gedruckt, d.h.\ \qed\ f\"uhrt keine 
Seitenvorsch\"ube aus.

Schlie\3lich gibt es noch f\"ur den oben angesprochenen Fall die
M\"oglichkeit, zu entscheiden, ob der gesamte Text oder nur der
markierte Block gedruckt werden soll. Diese Auswahl gibt es
nat\"urlich nur, wenn auch ein Block im gew\"ahlten Text markiert ist.

Mit dem {\tt OK} Knopf kann man nun den Druckvorgang starten, mit {\tt 
Abbruch} kann man den Dialog wieder verlassen, ohne da\3 gedruckt wird.

\index{Druckunterbrechung}
W\"ahrend des Druckens wird auf dem Bildschirm in einer Box dargestellt, wie 
weit der Ausdruck schon fortgeschritten ist. Man kann den Ausdruck durch 
Dr\"ucken der {\sf Esc}--Taste unterbrechen. Es erscheint dann ein Dialog, 
in dem man vor die Wahl gestellt wird, ob man den Ausdruck fortsetzen oder 
ganz abbrechen m\"ochte.

\subsubsection{Info... [\ctrl{I}]}

Mit diesem Men\"upunkt kann man Informationen zu verschiedenen Objekten 
erhalten. Unter Objekten sind die Icons auf dem Desktop oder die 
Textfenster gemeint.
\begin{itemize}
\item \qed\\
 Wenn kein Fenster ge\"offnet und kein Icon angew\"ahlt ist, dann erh\"alt man 
 die gleichen Informattionen, wie wenn das Disk-Icon selektiert ist.
 Siehe hierzu den n\"achsten Punkt. 
\item Disk\\ \index{Infos zum Diskplatz}
 Wenn die Funktion bei selektiertem Disk--Icon angew\"ahlt wurde, erscheint 
 eine Dialogbox, die Auskunft \"uber die Namen und F\"ullgrade der Laufwerke 
 (Disketten, Festplattenpartitionen, etc.) gibt.
 Im oberen Bereich des Dialogs kann man ausw\"ahlen, zu welchem Laufwerk man 
 die Information w\"unscht, im unteren Abschnitt wird diese dann einmal in 
 Form von gesamt verf\"ugbarem sowie noch freiem Platz in Kilobyte, als auch 
 grafisch dargestellt.
\item {\bf Text}\\ \index{Infos zu einem Text}
 Wenn ein Textfenster ge\"offnet oder ein Text--Icon angew\"ahlt ist, dann 
 erh\"alt man Informationen \"uber den Text, wie Dateiname, Laufwerk und den 
 (ggf.\ teilweise gek\"urzten) Pfad, wo der Text gespeichert ist, L\"ange des 
 Textes in Bytes, sowie was als Zeilenendkennung \index{Zeilenendkennung} 
 f\"ur diesen Text verwendet wird. Letzteres kann hier auch ge\"andert werden. 
 M\"oglich sind die von {\sf Atari}--{\tt TOS} und {\tt MS-DOS} verwendete 
 Zeilendkennung {\tt CR/LF} (Carriage Return/Linefeed) oder die unter {\sf 
 Unix} \"ubliche, welche nur aus einem {\tt LF} besteht. Normalerweise sollte 
 hier {\tt CR/LF} eingestellt sein, es sei denn, da\3 man Dateien erzeugen 
 m\"ochte, die auf einem {\sf Unix}--System Verwendung finden k\"onnen, die 
 dann aber von vielen ST--Programmen nicht mehr richtig verarbeitet werden 
 k\"onnen (z.B.\ der Editor von Turbo C).
\item {\bf Projekt}\\ \index{Infos zu einem Projekt}
 Wenn das oberste Fenster ein Projekt--Fenster ist oder ein
 Projekt--Icon angew\"ahlt ist, dann wird eine Projekt--Info angezeigt, die 
 den Namen des Projektes umfa\3t, die Anzahl der im Projekt enthaltenen 
 Dateien, die Anzahl der Zeilen und die Gr\"o\3e in Bytes all dieser Dateien. 
 Da zu diesem Zweck alle im Projekt enthaltenen Dateien kurz gelesen werden 
 m\"ussen, was einen Augenblick dauert, wird der Fortschritt der Operation in 
 einer Box auf dem Bildschirm dargestellt.
\end{itemize}

Wenn der Men\"upunkt nicht anw\"ahlbar ist (disabled), dann liegt das daran, 
da\3 es zu dem entsprechenden Objekt keine Informationen gibt. Dies ist 
z.B.\ der Fall, wenn das Drucker--Icon selektiert ist.\footnote{Dieses 
Beispiel gilt f\"ur die Vers.\ 3.00.\\Sp\"atere Versionen m\"ogen auch beim 
Drucker Informationen anzeigen, z.B. f\"ur welchen Drucker ein Treiber 
geladen wurde, sofern \qed\ ein solches Feature unterst\"utzen sollte.}

\subsubsection{Sichern \& Beenden [\alt{Q}]}
\index{Beenden mit Sichern}
Dieser Men\"upunkt beendet \qed, speichert aber vorher alle im Speicher 
befindlichen Texte, die noch nicht gesicherte \"Anderungen beinhalten.

Wird beim Ausl\"osen dieser Funktion die {\sf Shift}--Taste gedr\"uckt 
gehalten, so wird die Voreinstellung {\em Optionen automatisch 
sichern}\footnote{siehe unter Men\"upunkt {\em Optionen / Einstellungen} 
(Seite \pageref{OptEin})} umgekehrt behandelt, d.h., wenn die Optionen per 
Einstellung nicht gesichert werden sollten, dann werden sie es nun doch 
und umgekehrt. Dies ist z.B. sinnvoll, wenn die Optionen
\"ublicherweise automatisch am Programmende gesichert werden, die
\"Anderungen dieser Programmsitzung aber nicht gesichert werden soll.

\subsubsection{Beenden [\ctrl{Q}]}
\index{Beenden von \qed}
Auch dieser Men\"upunkt beendet \qed, hier wird jedoch f\"ur noch nicht 
gesicherte Texte explizit nachgefragt, ob die \"Anderungen gesichert oder 
verworfen werden sollen.

Auch hier gilt wie bei der vorigen Funktion, da\3 die Einstellung {\em 
Optionen automatisch sichern} durch Festhalten der {\sf Shift}--Taste beim 
Ausl\"osen dieser Funktion umgekehrt werden kann.

\subsection{Bearbeiten}

\subsubsection{Undo [\ctrl{Z}]}
\index{Undo} \index{Zur\"ucknehmen einer Operation}\label{BeaUnd}
Die Funktion {\em Undo} dient zum R\"uckg\"angig machen einer Aktion, die man 
z.B. aus Versehen ausgel\"ost hat bzw.\ deren Ergebnis nicht den W\"unschen 
entsprach.

\begin{quote}
Mit {\it Undo} kann nur die jeweils letzte Aktion zur\"uckgenommen 
werden! Au\3erdem lassen sich auch nicht alle Operationen wieder
r\"uckg\"angig machen!
\end{quote}

{\em Undo} funktioniert bei Operationen wie Zeilenl\"o\-schen, Block 
L\"o\-schen/Aus\-schnei\-den/Ein\-f\"u\-gen. Hier wird immer der Zustand 
wiederhergestellt, wie er vor der Anwendung der Operation war. Auch beim 
Suchen und Ersetzen wirkt {\em Undo}, wenn aber mehrere Ersetzungen auf 
einmal stattfanden, so wird nur die letzte r\"uckg\"angig gemacht. Wenn keine 
der oben angesprochenen Funktionen unmittelbar zuvor durchgef\"uhrt wurde, 
so arbeitet {\em Undo} mit der aktuellen Zeile als Zielobjekt, im Klartext 
hei\3t das, die zuletzt geschriebene Zeile wird entfernt oder 
wiederhergestellt.

{\em Undo} arbeitet auch auf bzw.\ "`gegen"' sich selbst, d.h.\ wenn man 
z.B. nach dem L\"oschen einer Zeile {\em Undo} einmal bet\"atigt, so ist sie 
wieder da, nach einem weiteren {\em Undo} ist sie wieder weg, usw.

\subsubsection{Absatz umbrechen [\alt{F}]}
\index{Umbrechen eines Absatz}\label{BeaAbs}
Mit {\em Absatz umbrechen} kann man im Flie\3text--Modus\footnote{Siehe 
weiter unten unter Men\"upunkt {\em Optionen / Zeilenumbruch} (Seite 
\pageref{OptZei})} einen Absatz, der nicht richtig formatiert ist (d.h.\ 
der z.B. \"uber die eingestellte Zeilenl\"ange hinausragt, oder bei dem es 
nach dem L\"oschen von einigen W\"ortern zu halbvollen Zeilen gekommen ist), 
wieder in "`maximal"' gef\"ullte Zeilen formatieren lassen.

\index{Umbrechen eines Textes}
Wird beim Ausl\"osen dieser Operation eine {\sf Shift}--Taste gedr\"uckt
gehalten, wird der gesamte Text neu formatiert.

\subsubsection{(Block) markieren [\ctrl{B}]}
\index{Block markieren}\label{BloFunc}
Das Markieren eines Blockes kann neben der M\"oglichkeit, dies mit der Maus 
zu tun\footnote{Siehe hierzu, aber auch allgemein zum Arbeiten mit 
Bl\"ocken, weiter unten unter {\em Blockoperationen} (Seite \pageref{Blo})}, 
auch \"uber die Tastatur erreicht werden. Dazu positioniert man einfach den 
Cursor auf die Stelle, an der der Block beginnen soll, l\"ost die hier 
beschriebene Funktion aus und kann dann den Block mit den 
Cursor\-steuer\-funktionen\footnote{n\"aheres hierzu siehe weiter unten 
im Abschnitt \ref{EdiCur}} "`aufziehen"'.

Diese Funktion kann entweder durch ein weiteres Ausl\"osen\footnote{des 
Men\"upunktes mit der Maus oder per Shortcut} beendet werden, durch einen 
Mausklick an das gew\"unschte Blockende bei gedr\"uckt gehaltener {\sf 
Shift}--Taste oder durch eine der weiter unten folgenden Blockfunktionen 
{\em Kopieren, Ausschneiden, Einf\"ugen}.

Ist diese Funktion aktiviert, wird dies durch ein H\"akchen vor dem 
Men\"ueintrag angezeigt.

\subsubsection{Alles (als Block) markieren [\ctrl{A}]}
\index{Block markieren}
Mit dieser Funktion wird der gesamte Text des aktuellen Fensters bzw.\ des 
selektierten Text--Icons als Block markiert.

\subsubsection{(Block) ausschneiden [\ctrl{X}]}
\index{Block ausschneiden}
Mit {\em Ausschneiden} wird der im aktuellen Fenster bzw.\ Icon 
selektierte Block aus dem Text entfernt und auf das Klemmbrett kopiert, 
welches zuvor ge\-l\"oscht wird. Wird gleichzeitig die {\sf Shift}--Taste 
gedr\"uckt gehalten, so entf\"allt das L\"oschen des Klemmbrettes, und
der Block wird an den dort schon enthaltenen Text angef\"ugt.

\subsubsection{(Block) kopieren [\ctrl{C}]}
\index{Block kopieren}\label{BeaKop}
Hier wird, wie zuvor, der Block auf das Klemmbrett kopiert, welches zuvor 
gel\"oscht wird, jedoch wird er nicht aus dem Text entfernt. Wenn 
gleichzeitig die {\sf Shift}--Taste gedr\"uck gehalten wird, so wird auch 
hier das Klemmbrett nicht gel\"oscht, sondern der Block wird an den dort 
schon enthaltenen Text angef\"ugt.

\subsubsection{(Block) einf\"ugen [\ctrl{V}]}
\index{Block einf\"ugen}\label{BeaEin}
Mit dieser Funktion kann man einen Block, der auf das Klemmbrett kopiert 
wurde wieder in einen Text einf\"ugen. Der Inhalt des Klemmbretts erscheint 
dabei ab der aktuellen Cursorposition.

\subsubsection{Schiebe links [\alt{U}]}
\index{Block einr\"ucken}
Diese, wie auch die nachfolgende Funktion beziehen sich immer auf eine 
Blockselektion, sie sind daher auch nicht anw\"ahlbar, wenn es gar keinen 
Block im aktuellen Text gibt.

Mit {\em Schiebe links} wird der gesamte Block um die unter 
Tab--Weite\footnote{Siehe unter {\em Optionen / Einstellungen} (Seite 
\pageref{OptEin})} eingestellte Anzahl Leerzeichen nach links verschoben, 
solange dies noch m\"oglich ist, d.h.\ solange noch mehr bzw.\ genau soviele 
Leerzeichen wie in Tab--Weite eingestellt links neben dem Block sind. Im 
Tab--Modus wird nat\"urlich genau ein Tabulator--Zeichen ({\tt ASCII} 9) 
gel\"oscht.

\subsubsection{Schiebe rechts [\alt{I}]}

Diese Funktion schiebt, analog zur vorigen, den markierten Block um die 
eingestellte Tab--Weite nach rechts, bzw.\ im Tab--Modus wird ein 
Tabulator Zeichen eingef\"ugt.

\subsection{Suchen}

Im folgenden werden nur kurz die Men\"upunkte zum Suchen/Ersetzen im Text 
und die dazugeh\"origen Dialogboxen sowie die Funktionen zum Springen im 
Text und das dazugeh\"orige Setzen von Marken erkl\"art. Die eigentlichen 
F\"ahigkeiten der Suchfunktionen werden weiter unten im Kapitel {\em Suchen 
und Ersetzen} genauer erl\"autert.

\subsubsection{Suchen/Ersetzen... [\ctrl{F}]}

Diese Funktion arbeitet auf verschiedenen Zielobjekten. Zun\"achst einmal 
auf Texten (Text--Icon selektiert oder oberstes Fenster ist ein 
Textfenster), hier ist sowohl Suchen, als auch Suchen und Ersetzen 
m\"oglich. Die Funktion kann aber auch auf Projekte angewendet werden 
(Projekt--Icon selektiert oder oberstes Fenster ist ein Projektfenster). 
Und schlie\3lich kann auch auf Diskette bzw.\ Festplatte gesucht
werden (wenn bei Ausl\"osen des Men\"upunktes das Disk--Icon
selektiert ist). Bei den beiden letzteren ist allerdings nur ein
Suchen m\"oglich, kein Ersetzen.

\paragraph{Suchen (und Ersetzen) im (aktuellen) Text}
\index{Suchen}\index{Ersetzen}\label{Suchen}
Nach Anwahl des Men\"upunktes bekommt man einen Dialog pr\"asentiert, in dem 
man zun\"achst einen Begriff, der im Text gesucht werden soll, per Tastatur 
eingeben kann. Dazu gibt es noch einen History--Puffer \index{Suchbegriff 
History--Puffer}f\"ur bis zu zehn Suchbegriffe. Beim Start eines 
Suchvorgangs wird der jeweilige Begriff hier automatisch eingetragen, 
falls er nicht schon vorher im Puffer enthalten war. Wenn schon zehn 
Begriffe im Puffer sind, wird der \"alteste "`rausgeschoben"'. 
Klickt man mit der Maus auf das Wort `Suchbegriff', so klappt 
ein Men\"u auf, in welchem die bisher verwendeten Suchbegriffe stehen. Die 
Auswahl eines Suchbegriffes geschieht wie in einem ganz normalen Men\"u aus 
der Men\"uleiste mit der Maus. Wenn man keinen Eintrag w\"ahlen
m\"ochte, so kann man die Men\"ubox dadurch verschwinden lassen, da\3
man einen Mausklick irgendwo au\3erhalb der Box macht.

Als n\"achstes kann man im Suchdialog festlegen, in welcher Richtung im Text 
gesucht werden soll, also in Richtung Textende oder in Richtung 
Textanfang, und ab welcher Position im Text die Suche beginnen soll. F\"ur 
letzteres gibt es, wie f\"ur die Richtung, zwei M\"oglichkeiten. Ab der 
aktuellen Cursorposition (das sollte klar sein), sowie global. Global 
bedeutet: je nach Suchrichtung entweder vom Anfang des Textes (wenn von 
oben nach unten gesucht wird) oder vom Ende, bei der umgekehrten 
Suchrichtung. Ist im zu durchsuchenden Text ein Block markiert, so kann 
der Suchbereich auf diesen eingeschr\"ankt werden. Die M\"oglichkeit, ab dem 
Cursor zu suchen, ist dann durch diese neue Option ersetzt. Zus\"atzlich 
kann man festlegen, ob "`im Kreis"' gesucht werden soll. Ist dieser Punkt 
angew\"ahlt, wird am Textende automatisch zum Textanfang gesprungen und die 
Suche von dort fortgesetzt.

Danach folgen ein paar Schalter f\"ur die Suchmodi. Hier kann man festlegen, 
ob die {\em Gro\3--Kleinschreibung} beim Suchen beachtet werden soll, ob 
{\em Wildcards} (Joker, Quantoren oder wie auch immer man das noch bisher 
genannt hat) benutzt werden sollen und ob der Suchbegriff {\em nur als 
ganzes Wort} gefunden werden soll.\footnote{Beispiel: Suchbegriff ist {\em 
wort} und im Text steht {\em Suchwort}, dann wird dieses nicht gefunden.}

Speziell zu den Wildcards, was hier im einzelnen unterst\"utzt wird und wie 
es funktioniert, sei auf den Abschnitt {\em Suchen und Ersetzen}
(Seite \pageref{SuE}) verwiesen.

Neben dem Suchbegriff kann man darunter noch einen weiteren Begriff 
eingeben: den String, durch den der jeweils im Text gefundene Suchbegriff 
ersetzt werden soll, sofern eine Ersetzoperation gew\"unscht wird.

Schlie\3lich gibt es hierzu noch einen Satz Schalter mit Ersetz--Optionen, 
mit denen man spezifizieren kann, ob nur an der ersten Fundstelle ersetzt 
werden soll, ob alle passenden Ausdr\"ucke ersetzt werden sollen oder aber 
ob bei jeder Ersetzung zuvor nachgefragt werden soll, ob tats\"achlich 
ersetzt werden soll, ob nicht oder ob der gesamte Vorgang abgebrochen 
werden soll.

Zum Ausl\"osen der gew\"unschten Operation stehen die beiden Kn\"opfe {\tt 
Su\-chen} und {\tt Er\-set\-zen} zur Verf\"ugung. Zum Nichtdurchf\"uhren gibt 
es {\tt Ab\-bruch}, au\3erdem gibt es noch einen weiteren Knopf, welcher 
mit {\tt Hilfe} betitelt ist und eben dies bewirkt. Es wird eine Box mit 
einigen kurzen Hilfsinformationen zu den Suchoptionen angezeigt.

\paragraph{Suchen in/nach Dateien} \index{Suchen nach/in Dateien}
Neben der Suche von Zeichenketten im aktuellen Text hat man auch die 
M\"oglichkeit, in einem Verzeichnis nach Dateien und/oder nach Fundstellen 
des Suchbegriffes in Dateien suchen zu lassen.

F\"ur die Suche nach bzw.\ in Dateien steht ein erweiterter Suchdialog 
bereit, zu dem man, wie weiter oben schon beschrieben, gelangt, wenn man 
bei selektiertem Dis\-ket\-ten--Icon die Suchfunktion aufruft.

Im oberen Abschnitt dieser Dialogbox kann man das Verzeichnis festlegen, 
in bzw.\ ab dem die Suche stattfinden soll. Wenn man den Knopf {\tt Pfad 
festlegen} bet\"atigt, erscheint eine Dateiauswahlbox, mit deren Hilfe man 
das Verzeichnis ausw\"ahlen kann. Ein eventuell ausgew\"ahlter Dateiname wird 
hier ignoriert, nur der Pfad wird benutzt. Unter dem aktuell eingestellten 
Pfad befindet sich ein Eingabefeld f\"ur die Dateisuchmaske. Diese mu\3 eine 
g\"ultige {\sf Gemdos}--Suchmaske sein, d.h.\ als {\em Wildcards}
k\"onnen hier nur `*' und `?' verwendet werden. Neben der Suchmaske
befindet sich weiterhin noch ein Schalter, mit dem man festlegen kann,
ob nur in dem angegeben Verzeichnis gesucht werden soll oder ob auch
noch eventuell vorhandene Unterverzeichnisse in die Suche mit
einbezogen werden sollen.

Im unteren Abschnitt befindet sich die Eingabezeile f\"ur den Suchbegriff. 
Auch hier gibt es die schon vom Suchen in Texten bekannten 
Modus--Schalter.\footnote{Erkl\"arungen dazu siehe weiter oben unter {\em 
Suchen im (aktuellen) Text} (Seite \pageref{Suchen})}
Wenn hier {\bf kein} Suchbegriff eingegeben wurde, dann wird nur nach 
Dateinamen gesucht, die der vorgegebenen Dateisuchmaske entsprechen, 
ansonsten werden die bei der Dateinamensuche gefundenen Dateien auch noch 
nach dem Suchbegriff durchsucht, und am Ende werden nur die Dateien in die 
Fundliste aufgenommen, in denen der Begriff gefunden wurde.

Als Liste der gefundenen Dateien wird in beiden F\"allen eine Projekt--Datei 
erzeugt und deren Fenster sofort dargestellt. N\"aheres dazu siehe weiter 
unten unter {\em Projekte} (Seite \pageref{Pro}).

\paragraph{Suchen in Projekten} \index{Suchen in Projekten}
Auch Projekte k\"onnen nach einem Suchbegriff durchsucht werden.
Es stehen dieselben M\"oglichkeiten zum Spezifizieren von Suchbegriff und 
Suchmodi zur Ver\-f\"u\-gung, wie beim {\em Suchen in Dateien}, da das 
Suchen in einem Projekt ja quasi dasselbe ist, mit dem Unterschied, da\3 
hier schon die Dateien feststehen, die durchsucht werden sollen und ggf.\ 
auch schon im Speicher vorliegen. Das Ergebnis einer erfolgreichen
Suche ist ein neues Projekt, das diejenigen dateinamen enth\"alt, in
denen der Suchbegriff auftritt.
\par

Noch zu erw\"ahnen ist, da\3 der Suchbegriff zwischen den verschiedenen 
Suchfunktionen ausgetauscht wird, d.h.\ wenn ein Suchbegriff in einem der 
Such-- bzw.\ Ersetz--Dialoge eingeben wird, so wird er beim Aufruf einer 
anderen Suchfunktion auch dort wieder als Vorgabe eingesetzt.

\subsubsection{Weiter [\ctrl{G}]}
\index{Weitersuchen/--ersetzen}
Es wird die unter {\em Suchen/Ersetzen...} spezifizierte Operation erneut 
durchgef\"uhrt. Die Funktion arbeitet immer ab der aktuellen Cursorposition 
und ist nur f\"ur Operationen auf Texten verf\"ugbar (also nicht f\"ur
Disk oder Projekt Suchoperationen). Es wird die im Suchdialog eingestellte 
Suchrichtung verwendet, es sei denn, beim Ausl\"osen der Funktion wird die 
{\sf Shift}--Taste gedr\"uckt gehalten. Dann wird in der entgegengesetzten 
Richtung gesucht bzw.\ ersetzt.\footnote{Hinweis: Diese Umkehrung der 
Suchrichtung gilt nur f\"ur diese eine Operation, d.h.\ sie wird nicht im 
Suchdialog ge\"andert. Beim n\"achsten Aufruf von {\em Weiter} ohne {\sf 
Shift}--Taste wird wieder die eingestellte Richtung verwendet.}

\subsubsection{Gehe zu Zeile... [\ctrl{L}]}
\index{Zeile anspringen}
Diese Funktion erlaubt es, eine Zeile direkt \"uber die Zeilennummer 
anzuspringen, d.h.\ man kann in einem Dialog per Tastatur eine Zeilenzahl 
angeben, und wenn diese nicht gr\"o\3er ist als die Anzahl der Zeilen des 
Textes, dann wird der Cursor in diese Zeile positioniert. Sollte der 
eingegebene Wert zu gro\3 sein, so wird zur letzten Zeile gesprungen. 
Ebenso wird bei Eingabe von negativen Werten immer die erste Zeile 
angesprungen (welchen Sinn es auch haben mag, negative Werte einzugeben).

\subsubsection{Marke setzen... [\alt{S}]}
\index{Marken setzen}\index{Sprungmarken}
Mit {\em Marke setzen...} k\"onnen bis zu f\"unf "`Markierungen"' im Text 
gesetzt werden, die mit der nachfolgend beschriebenen Funktion direkt 
angesprungen werden k\"onnen. Diese Markierungen sind nicht im Text 
sichtbar, tats\"achlich merkt sich \qed\ beim Setzen einer Marke nur die 
aktuelle Zeilen-- und Spaltennummer, in der der Cursor gerade steht.
Wenn man den Men\"upunkt aufruft, erscheint eine Dialogbox, in der man
mit einem der f\"unf 
Kn\"opfe vor den Markennamen ausw\"ahlen kann, welche Marke man 
(neu)\footnote{Nat\"urlich k\"onnen schon einmal benutzte Marken neu vergeben 
werden.} setzen m\"ochte. Au\3erdem kann man jeder Marke einen eigenen 12 
Zeichen langen Namen geben, der auch im Men\"u angezeigt wird. Wird kein 
Name eingegeben, steht stattdessen der Dateiname im Men\"u. Wenn man den 
Dialog \"uber den {\tt OK} Knopf verl\"a\3t, wird die ausgew\"ahlte
Marke gesetzt und der eventuell ge\"anderte Name wird \"ubernommen.
Mit dem Knopf {\tt Abbruch} kann man den Dialog verlassen, ohne da\3
eine Marke gesetzt und der zugeh\"orige Name ge\"andert wird.

\subsubsection{Marke anspringen [\ctrl{1} -- \ctrl{5}]}
\index{Marken anspringen}
Mit diesen f\"unf Men\"upunkten bzw.\ den \"aquivalenten
Tastaturk\"urzeln kann man nun die mit der obigen Funktion
festgelegten Marken anspringen. Der Text, auf den sich die Marke
bezieht, wird ggf.\ geladen.

Wird beim Ausw\"ahlen einer dieser f\"unf Punkte eine {\sf Shift}--Taste 
gedr\"uckt gehalten, wird die Marke gel\"oscht.

\subsection{Spezial} %=======================================================

\subsubsection{Makro aufzeichnen [\ctrl{(}]}
\index{Makro aufzeichnen}
In \qed\ ist es m\"oglich eine h\"aufig benutzte Sequenz von
Tastendr\"ucken aufzuzeichnen und beliebig oft abspielen zu lassen.
Dazu wird zun\"achst dieser Men\"upunkt aktiviert. Jetzt k\"onnen
beliebige Tasten gedr\"uckt werden, ....

W\"ahrend der Aufnahme wird am oberen rechten Bildschirmrand in 
der Men\"uleiste {\tt Makro-Rec} eingeblendet. Um die Aufnahme des Makros zu 
beenden, w\"ahlt man erneut den Men\"upunkt an, womit die Aufnahme beendet ist 
(der Schriftzug {\tt Makro-Rec} verschwindet ebenfalls) und das Makro 
steht ab sofort zur Verf\"ugung.

\subsubsection{Makro abspielen [\ctrl{E}]}
\index{Makro abspielen}

Durch diesen Men\"upunkt wird die aufgezeichnete Tastensequenz
abgespielt. Wird beim Ausl\"osen der Funktion die {\sf Shift}--Taste
gedrueckt, erscheint eine Dialogbox, in der man angeben kann, wie oft
das Makro direkt hintereinander ausgef\"uhrt werden soll.

Makros k\"onnen durch Dr\"ucken der {\sf ESC}--Taste unterbrochen werden. Auch 
der Versuch einer Makrofunktion den Cursor \"uber die erste oder letzte 
Zeile des Textes hinaus zu bewegen bricht das Makro ab. Dies ist besonders 
bei Makros mit einer Endlosschleife sinnvoll. Man kann so leicht das Makro 
auf alle Zeilen eines Textes anwenden.

Hierzu ein kleines Beispiel. M\"ochte man vor jeder Zeile eines Textes ein 
`:' einf\"ugen, sind folgende Schritte notwendig:
\begin{enumerate}
\item Starten der Makroaufzeichnung
\item Dr\"ucken folgender Tasten: \verb/<:> <Cursor links> <Cursor runter> 
<^E>/
\item Beenden der Aufnahme
\end{enumerate}

Stellt man nun den Cursor an den Anfang der ersten Zeile und startet
die Markoabspielung wird das `:'-Zeichen eigef\"ugt und der Cursor
anschlie\3end an den Zeilenanfang der n\"achsten Zeile bewegt. Da der
letzte Tastendruck im Makro das \ctrl{E} ist (also das Starten des
Makros) wird die gleiche Opertion wiederholt. Die erfolgt in einer
Endlosschleife und wird erst beendet, wenn das makro mittels der {\sf
Esc}--Taste abgebrochen wird, oder die letzte Zeile des Textes erreicht
wird.

\subsubsection{.... [\alt{M}]}
\index{Funktionstastenbelegung}
\qed\ bietet die M\"oglichkeit, die Funktionstasten (jeweils mit und ohne
{\sf Shift}--Taste, also insgesamt zwanzig) mit Makros zu belegen.

Wenn man den Men\"upunkt anw\"ahlt, erscheint zun\"achst ein Dialog,
in dem man die Funktionstaste, die belegt bzw.\ deren Belegung
gel\"oscht werden soll, mit den beiden {\em Pfeil}--Kn\"opfen
ausw\"ahlen kann. Wenn man ein Makro l\"oschen m\"ochte, so braucht
man einfach nur den Knopf {\tt L\"oschen} bet\"atigen, sobald man die
gew\"unschte Funktionstaste ausgew\"ahlt hat. Das Makro wird dann entfernt.

Will man einene Funktionstaste mit dem aktuellen Makro belegen, so
mu\3 zun\"achst ein Name eingegeben werden, dann bet\"atigt man den
Knopf {\tt makro \"ubernehmen}. 
....Bloecke

\subsubsection{K\"urzel... [\alt{K}]}
\index{Kurzelers@K\"urzelersetzung}
Dieser Men\"upunkt erlaubt es, K\"urzeldateien zu laden bzw.\ geladene 
K\"urzeldateien wieder aus dem Speicher zu l\"oschen. Dazu dienen die beiden 
Kn\"opfe in dem Dialog, der bei Anwahl dieses Men\"upunktes erscheint. In 
diesem Dialog wird auch der Name der aktuell geladenen K\"urzeldatei 
angezeigt.

Was K\"urzel in \qed\ sind und wie eine K\"urzeldatei aufgebaut ist,
wird weiter unten im Abschnitt {\em K\"urzeldateien} (Seite
\pageref{Kurzel}) beschrieben.

\subsubsection{Neues Projekt... [\alt{N}]}
\index{Projekt neu anlegen}
Mit dieser Funktion kann ein neues Projekt bzw.\ eine neue Projektdatei 
angelegt werden. Es erscheint die Dateiauswahlbox, in welchem man Namen und 
Pfad f\"ur die neue Projektdatei eingeben kann.

Was Projekte in \qed\ sind und wie man mit dem Projektfenster umgeht, wird 
im weiter unten folgenden Abschnitt {\em Projekte} (Seite \pageref{Pro})
beschrieben.

\subsubsection{Projekt laden... [\alt{P}]}
\index{Projekt laden}
Mit {\em Projekt laden...} kann man eine schon bestehende Projektdatei 
nachladen, indem man im erscheinenden Dateiauswahlbox den Pfad und Namen 
eingibt bzw.\ ausw\"ahlt.

Auch hier sei zu n\"aheren Informationen bzgl. der Funktion der 
Projektdateien auf den Abschnitt {\em Projekte} (Seite \pageref{Pro}) 
hingewiesen.

\subsubsection{Aufr\"aumen... [\alt{C}]}
\index{Aufr\"aumen des Desktop}
Hinter diesem Men\"upunkt verbirgt sich ein Dialog, der Funktionen zur 
Anordnung der Textfenster und Icons auf dem Desktop bietet.

Zun\"achst kann man ausw\"ahlen, ob Fenster oder Icons oder beides
aufger\"aumt, d.h.\ auf dem Desktop umpositioniert werden sollen,
indem man im jeweiligen Kasten den Schalter {\tt aufr\"au\-men} anw\"ahlt.

W\"ahrend beim Icon--Aufr\"aumen die Icons einfach nur auf die n\"achste 
"`gerade"' Position in einem Raster ausgerichtet werden, hat man bei den 
Fenstern verschiedene M\"oglichkeiten, diese anordnen zu lassen. Zun\"achst 
kann man eine von drei Anordnungsarten w\"ahlen: volle Fenstergr\"o\3e und 
leicht versetzt gestaffelte Anordnung, reduzierte H\"ohe, so da\3 zwei 
Fenster untereiander passen, alle weiteren dann (bei gleichfalls 
reduzierter Fensterh\"ohe) wieder leicht versetzt gestaffelt, und 
schlie\3lich drittens eine reduzierte Breite der Fenster, so da\3 zwei 
schmale Fenster nebeneiander auf den Bildschirm passen, die weiteren 
Fenster dann wieder versetzt gestaffelt. Neben diesen drei 
Anordnungsm\"oglichkeiten kann man auch noch die Gr\"o\3e der Fenster explizit 
festlegen. Bislang wurden immer Defaultwerte benutzt, die die 
Bildschirmgr\"o\3e m\"oglichst gut ausnutzen. Man kann aber auch die H\"ohe 
und/oder die Breite "`hart"' festlegen, indem man per Tastatur einen Wert 
eingibt und den entsprechenden Schalter f\"ur H\"ohe oder Breite selektiert.

\subsubsection{Zeilen s\"aubern [\alt{X}]}
\index{Zeilen(enden) s\"aubern}
Diese Funktion entfernt alle Leer-- und Tabulatorzeichen von den 
Zeilenenden des aktuellen Textes. Sie ist nur einsetzbar, wenn der 
automatische Zeilen\-umbruch\footnote{siehe Men\"u Optionen (Seite 
\pageref{Opt})} ausgeschaltet ist.

\subsubsection{Tab $\Rightarrow$ LZ [\alt{L}]}
\index{Tabulator--Expansion}
Mit dieser Funktion k\"onnen aus einem geladenen Text alle
Tabulator--Zeichen ({\tt ASCII} 9) entfernt und durch eine entsprechende 
Anzahl von Leerzeichen ersetzt werden, so da\3 das Aussehen des Textes 
nicht ver\"andert wird. Wie z.B. die Such--, Block-- und Editierfunktionen 
arbeitet auch diese Funktion immer auf dem aktuellen Text, also dem 
obersten Textfenster bzw.\ einem oder mehreren selektierten Text--Icons.

Die Funktion ist nur anwendbar, wenn \qed\ mit echten Tabulatoren 
arbeitet.\footnote{siehe dazu Men\"upunkt {\em Optionen / Einstellungen} 
(Seite \pageref{OptEin})}

\subsubsection{LZ $\Rightarrow$ Tab [\alt{T}]}
\index{Leerzeichen--Komprimierung}
Diese Funktion bewirkt das genaue Gegenteil der eben beschriebenen, d.h.\ 
hier werden \"uberall, wo eine entsprechende Anzahl von Leerzeichen im Text 
ist, diese entfernt und durch ein Tabulator Zeichen ersetzt, wieder mit 
dem Ziel, da\3 sich das Aussehen des Textes nicht ver\"andert. Auch diese 
Funktion ist nur im {\em Tab--Modus} verf\"ugbar.

\subsection{Optionen}
\label{Opt}
Die ersten drei Auswahlpunkte in diesem Men\"u l\"osen keine direkten 
Funktionen aus, sondern versetzen \qed\ in einen anderen Modus. Ist ein 
Modus aktiviert, so wird dies durch ein kleines H\"akchen vor dem jeweiligen 
Men\"upunkt angezeigt.

\subsubsection{Automatisch einr\"ucken [\alt{A}]}
\index{Einr\"ucken, automatisches}
Wenn {\em Automatisch einr\"ucken} eingeschaltet ist, dann werden bei jedem 
{\em Zeilenumschalten}, also bei bet\"atigen der {\sf Return}--Taste, in der 
neuen Zeile genausoviele Leerzeichen bzw.\ Tabs am Anfang der Zeile 
eingef\"ugt, wie Leerzeichen oder Tabulator--Zeichen am Anfang der 
vorhergehenden Zeile stehen.

Dieser Modus ist speziell bei Programmierern sehr beliebt, die bei 
geschachtelten, einger\"uckten Programmteilen nicht immer erst den Cursor 
vom Anfang der neuen Zeile bis zum Anfang des einger\"uckten Blockes von 
Hand positionieren m\"ussen, sondern gleich weiterschreiben k\"onnen.

\subsubsection{Zeilenumbruch [\alt{B}]}
\index{Zeilenumbruch, automatischer}\label{OptZei}
Wenn {\em Zeilenumbruch} eingeschaltet ist, werden die Zeilen automatisch 
immer dann umgebrochen, wenn sie \"uber die eingestellte 
Zeilenl\"ange\footnote{siehe unter {\em Optionen / Einstellungen} (Seite 
\pageref{OptEin})} hinausragen. Dies ist z.B. sehr angenehm, wenn man 
l\"angere Texte schreibt, bei denen es nicht auf eine festgelegte 
Formatierung ankommt, z.B. Quelltexte f\"ur \TeX/\LaTeX--Dokumente. Man 
schreibt einfach drauflos, und sobald ein Wort \"uber die Zeilenl\"ange 
hinausragt, wird es in die n\"achste Zeile umgebrochen, und man schreibt 
automatisch dort weiter.

Der Zeilenumbruch kann aber auch nachtr\"aglich auf einen Absatz angewendet 
werden, z.B.\ wenn man gr\"o\3ere Ver\"anderungen vorgenommen hat, die die 
Formatierung durcheinandergebracht haben. Siehe hierzu weiter oben unter 
{\em Bearbeiten / Absatz umbrechen} (Seite \pageref{BeaAbs}).

\subsubsection{Klemmbrett auf Disk [\alt{G}]}
\index{Klemmbrett}\index{Clipboard}\label{OptKle}
Da\3 man mit den Blockfunktionen Textpassagen auf das Klemmbrett kopieren 
und von dort wieder in den Text einf\"ugen lassen kann, ist ja schon weiter 
oben erl\"autert worden.

Hier hat man nun die M\"oglichkeit festzulegen, ob das GEM--Klemmbrett oder 
ob das interne \qed\ Klemmbrett benutzt werden soll.

Das interne Klemmbrett (kein H\"akchen am Men\"upunkt) hat den
Vorteil, da\3 es schneller arbeitet, da der zu kopierende Text nicht
auf Disk gespeichert, sondern im Speicher gehalten wird. 

Das GEM--Klemmbrett auf Disk hingegen dient im allgemeinen zum 
Datenaustausch zwischen verschiedenen Programmen und ist in erster Linie 
zu diesem Zweck in \qed\ implementiert. Beispiel: Es liegt ein l\"angerer 
Text vor, aus dem ein Teil in eine Nachricht in CAT (ein
Frontend--Programm\footnote{Newsreader/Maileditor und mehr!} f\"ur die MAUS 
und QUARK Mailboxen) \"ubernommen werden soll. Der Editor von CAT kann aber 
nur Texte bis max. 16 KByte bzw.\ 200 Zeilen laden, so da\3 man auf einen 
externen Editor (also \qed\ ;-)) zur\"uckgreifen mu\3. Nun k\"onnte man den 
Block ausschneiden und unter einem anderen Namen in einer eigenen Datei 
sichern, die man dann im CAT--Editor hinzul\"adt. Einfacher ist es aber, bei 
eingeschaltetem {\em Klemmbrett auf Disk} einfach den Block auf das 
Klemmbrett zu kopieren, \qed\ zu verlassen (wenn \qed\ als Accessory l\"auft 
nichtmal das), zu CAT zu wechseln und dort einfach den Klemmbrettinhalt in 
den gew\"unschten Text wieder einzuf\"ugen.

\subsubsection{Font... [\alt{Z}]}
\index{Zeichens\"atze}\index{Fonts}\index{GDOS}
Bei \qed\ ist man nicht darauf angewiesen, mit dem Systemfont zu arbeiten. 
\qed\ unterst\"utzt {\tt GDOS} (z.B. von {\sf Atari},
{\tt AMC-GDOS} oder das in {\tt NVDI} eingebaute).

Wenn {\tt GDOS} installiert ist und in dessen {\tt ASSIGN.SYS}--Datei 
Zeichen\-s\"atze (Fonts) angemeldet sind, so stehen diese unter \qed\ in 
einem Dialog zur Auswahl, den man bei Anwahl dieses Men\"upunktes 
pr\"asentiert bekommt.

Nun gibt es es zwei verschiedene Arten von Zeichens\"atzen, die man mit {\tt 
GDOS} installieren kann.

\begin{itemize}
\item {\bf nicht--proportionale}\\
  Nicht--proportionale Zeichens\"atze, bei denen alle Zeichen eines 
  Zeichensatzes die gleiche Breite haben, k\"onnen von \qed\ ohne Probleme 
  benutzt werden. Das einzige Problem, welches auftreten k\"onnte, sind 
  Zeichens\"atze, die Fehler bzgl. der Angabe der H\"ohe der Zeichen im 
  Zeichensatz enthalten. Es mag sein, da\3 noch einige solcher Zeichens\"atze 
  kursieren. Zum korrigieren dieser Zeichens\"atze sei auf das Programm {\tt 
  FONTFIX.TTP} von Julian Reschke verwiesen, welches als Freeware 
  er\-h\"altlich ist.
\item {\bf proportionale}\\
  Diese Zeichens\"atze, bei denen der Abstand der einzelnen Zeichen zueinander 
  bzw.\ die Breite der Zeichen nicht bei allen Zeichen desselben 
  Zeichensatzes gleich ist, werden von \qed\ ebenfalls vollst\"andig 
  unterst\"utzt, jedoch ist hierbei die Geschwindigkeit bei der Darstellung 
  geringer, was sich speziell beim Scrollen bemerkbar macht.
\end{itemize}

Im Zeichensatz Dialog von \qed\ werden alle per {\tt GDOS} installierten 
Zeichen\-s\"atze angeboten, diese k\"onnen mit den beiden
Pfeilkn\"opfen hinter {\em Font} durchgebl\"at\-tert werden. Darunter
kann man, ebenso mit zwei Pfeilkn\"opfen, die gew\"unschte Gr\"o\3e
einstellen. Damit sofort \"uberpr\"uft werden kann, wie die Wahl
aussieht, erscheint in der Box darunter eine Testzeile im gew\"ahlten
Font und der gew\"unschten Gr\"o\3e.

\subsubsection{Einstellungen... [\ctrl{E}]}
\label{OptEin}
\"Uber den Men\"upunkt {\em Einstellungen} gelangt man zu einer Dialogbox, in 
der verschiedene weitere Parameter eingestellt werden k\"onnen, auf die ja 
schon teilweise im Text zuvor hingewiesen wurde.

Dies sind im einzelnen:
\begin{itemize}
\item {\bf Zeilenl\"ange}\\
  \index{Zeilenl\"ange}
  Hier gibt man die f\"ur den {\em Zeilenumbruch}--Modus gew\"unschte 
  Zeilenl\"ange ein, an der die Zeilen automatisch umgebrochen werden sollen. 
  Die Zeilenl\"ange hat nur in besagtem Modus eine Bedeutung!
\item {\bf Tab--Weite}\\
  \index{Tab(ulator) Weite}
  Hier gibt man an, um wieviele Leerzeichen der Cursor bei Bet\"atigen der 
  Tabulator--Taste springen soll. Dieser Wert findet, wie weiter oben schon 
  erw\"ahnt, z.B. auch beim links/rechts schieben von Bl\"ocken Verwendung.
\item {\bf echte Tabulatoren}\\
  \index{Tabulatoren, echte}
  Dieser Schalter legt fest, ob ein Druck auf die {\sf Tab}--Taste das 
  Einf\"ugen eines echten Tabulatorzeichens (ASCII 9) nach sich zieht oder ob 
  eine Anzahl von Leerzeichen bis zum n\"achsten unter Tab--Weite 
  eingestellten Tabulator--Stop eingef\"ugt werden sollen.
\item {\bf Backup--Extension}\\
  \index{Sicherungskopien}
  Hier kann man zum einen mit dem Schalter festlegen, ob vor dem Sichern 
  einer Textdatei eine Backup--Kopie des ggf.\ vorhandenen alten Textes 
  angefertigt werden soll und zum anderen kann man auch noch angeben, welche 
  {\em Extension} (Dateinamen--Erweiterung) diese Kopie erhalten soll.
\item {\bf Optionen automatisch sichern}\\
  \index{Einstellungen sichern}
  Ist dieser Schalter markiert, so werden alle Einstellungen von \qed, die 
  Namen der geladenen Texte, die Koordinaten der Icons und der ge\"offneten 
  Fenster, die Makros, etc.\ immer automatisch beim Programmende gesichert. 
  Die hier getroffene Einstellung kann beim Beenden von \qed\ einmalig 
  umgekehrt werden, indem man dabei die {\sf Shift}--Taste gedr\"uckt h\"alt. 
  Diese Umkehrung ist wie gesagt nur w\"ahrend des Haltens der
  {\sf Shift}--Taste wirksam, sie wird nicht mit gespeichert!
\item {\bf Desktop im Fenster}\\
  \index{Desktop in Fenster}
  Diese M\"oglichkeit kann in erster Linie bei der Benutzung eines
  Mul\-ti\-GEM n\"utzlich sein, da man hiermit erzwingen kann, da\3 der 
  Desktop 
  von \qed\ in einem Fenster und nicht auf dem tats\"achlichen Desktop 
  erscheint, wie es z.B. auch im Accessory--Modus automatisch immer der Fall 
  ist. Diese Option wird erst nach dem Sichern der Einstellungen und einem 
  Neustart von \qed\ wirksam!
\item {\bf Wechsel der Fenster \"uber VA--Protokoll}\\
  \index{VA--Protokoll}
  Wenn der Schalter gesetzt ist, dann werden \"uber das VA--Protokoll auch die 
  Fenster von anderen Applikationen (z.B. Accesories) mit einbezogen, sofern 
  diese dies auch unterst\"utzen. Der Schalter ist nur sichtbar, wenn eine
  VA--Protokoll Verbindung aufgenommen werden konnte.
\end{itemize}

Wie die meisten Dialoge kann man auch diesen entweder mit dem {\tt 
Abbruch}--Knopf verlassen, dann werden die an den Einstellungen 
vorgenommenen \"Anderungen verworfen, oder man benutzt den
{\tt OK}--Knopf, womit die \"Anderungen (bis auf {\em Desktop im Fenster} 
unverz\"uglich wirksam werden.

\subsubsection{Einstellungen sichern [\alt{E}]}
\index{Einstellungen sichern}
Mit dieser Funktion kann man die aktuellen Einstellungen von \qed\ in eine 
Datei sichern. Dazu erscheint eine Dateiauswahlbox, die mit dem Dateinamen 
der beim Programmstart geladenen Einstellungsdatei vorbelegt ist (also 
meistens {\tt DEFAULT.QED}).

Es k\"onnen aber nat\"urlich auch andere Namen (mit Endung {\tt .QED}) 
verwendet werden, um Einstellungsdateien zu erzeugen, die \qed\ beim 
Programmstart \"ubergeben werden k\"onnen.\footnote{siehe weiter oben unter 
{\em Installation} (Seite \pageref{Ins})}

\section{Editieren von Texten}%============================================
\index{Editieren} \index{Cursorbewegung} \index{Textfenster}
\label{EdiCur}

Die Position des Cursors wird in jedem Textfenster am oberen Rand mit 
Zeile und Spalte angegeben. Zus\"atzlich wird durch ein `*' angezeigt, da\3 
der Text seit dem letzten Sichern ver\"andert wurde. Ein `!' in der 
Titelzeile besagt, da\3 der Text auf der Diskette bzw.\ Festplatte 
schreibgesch\"utzt ist.

\begin{itemize}
\item {\sf Control--Rechts}\footnote{Wenn bei Tastenkombinationen, wie 
  hier mit {\sf Control} oder {\sf Shift} zusammen {\sf Rechts, Links, 
  Rauf} oder {\sf Runter} auftauchen , so ist damit immer die 
  entsprechende Cursorsteuertaste gemeint.}\\
  Bewegt den Cursor an den Anfang des n\"achsten Wortes.
\item {\sf Control--Links}\\
  Bewegt den Cursor an den Anfang des vorherigen Wortes.
\item {\sf Shift--Rechts}\\
  Bewegt den Cursor an das Ende der aktuellen Zeile.
\item {\sf Shift--Links}\\
  Bewegt den Cursor an den Anfang der aktuellen Zeile.
\item {\sf Shift--Rauf}\\
  Bl\"attert eine Bildschirmseite nach oben.\footnote{Der Cursor bleibt 
  bei dieser, wie auch bei der n\"achsten Funktion aber relativ zum 
  Fenster an derselben Position, d.h.\ er ver\"andert nur seine Position 
  im Text, dadurch da\3 der Text "`unter"' dem Fenster bewegt wird.}
\item {\sf Shift--Runter}\\
  Bl\"attert eine Bildschirmseite nach unten.
\item {\sf Shift--Return}\\
  Bewegt den Cursor an den Anfang der n\"achsten Zeile.\footnote{{\sf 
  Shift--Return} f\"uhrt dieselbe Cursorbewegung aus wie {\sf Return}, 
  jedoch ohne dabei eine neue Zeile einzuf\"ugen.}
\item {\sf Home}\\
  Bewegt den Cursor an den Anfang der ersten Textzeile.
\item {\sf Shift--Home}\\
  Bewegt den Cursor an den Anfang der letzten Textzeile.
\end{itemize}

Neben der normalen Cursorsteuerung (also der zeichenweisen Bewegung des 
Cursors in alle vier Richtungen) und den oben beschriebenen Men\"ufunktionen 
gibt es in \qed\ noch eine Reihe von Funktionen, die nur per Tastatur 
erreichbar sind. Diese dienen im allgemeinen dem reinen Editieren des 
Textes und sind daher auf der Tastatur am besten aufgehoben. 

\begin{itemize}
\item {\sf Control--Y}\\
  Mit dieser Funktion l\"oscht man die aktuelle Zeile, d.h.\ die Zeile 
  in der der Cursor sich befindet. Die gel\"oschte Zeile wird dabei auf 
  das Klemmbrett kopiert, welches zuvor gel\"oscht wird. Wird zusammen 
  mit {\sf Control--Y} die {\sf Shift}--Taste gedr\"uckt gehalten, so 
  wird der Klemmbrettinhalt nicht gel\"oscht. Die aus dem Text
  gel\"oschte 
  Zeile wird in diesem Fall an den Text auf dem Klemmbrett 
  angeh\"angt.\footnote{Siehe auch weiter oben bei den Blockfunktionen 
  (Seite \pageref{BloFunc}), diese arbeiten genauso.} Da diese 
  Funktion oftmals benutzt wird, um Zeilen einfach nur zu l\"oschen und 
  dies bei der Verwendung des GEM--Klemmbrettes dazu f\"uhrt, da\3 immer 
  auf das Medium auf dem sich das CLIPBRD--Verzeichnis befindet 
  zugegriffen werden mu\3, wird das Kopieren des gel\"oschten Textes ins 
  Klemmbrett unterbunden, wenn diese Funktion mehrmals schnell 
  nacheinander ausgef\"uhrt wird. D.h.\ wenn man {\sf Control--Y} l\"anger 
  gedr\"uckt h\"alt, um mehrere Zeilen zu l\"oschen, werden diese Zeilen 
  {\em nicht} alle nacheinander auf das Klemmbrett kopiert, sondern 
  nur die letzte.
\item {\sf Shift--Delete}\\
  Hiermit werden alle Zeichen ab der Cursorposition bis zum Ende der 
  Zeile ge\-l\"oscht.
\item {\sf Control--Delete}\\
  Hiermit werden alle Zeichen ab der Cursorposition bis zum Anfang des 
  n\"achsten Wortes gel\"oscht.
\item {\sf Insert}\\
  Die {\sf Insert}--Taste erf\"ullt dieselbe Funktion, wie der Men\"upunkt 
  {\em Ein\-f\"u\-gen}\footnote{Shortcut: {\sf Control--V}} aus dem {\em 
  Bearbeiten} Men\"u (Seite \pageref{BeaEin}), d.h.\ es wird an der 
  Cursorposition der Klemmbrettinhalt eingef\"ugt.
\item {\sf Undo}
  Ein Druck auf die {\sf Undo}--Taste bewirkt dasselbe, wie der 
  Men\"u\-punkt {\em Undo}\footnote{Shortcut: {\sf Control--Z}} im {\em 
  Bearbeiten} Men\"u, d.h.\ man kann hiermit verschiedenen Operationen 
  r\"uck\-g\"angig machen.\footnote{F\"ur n\"ahere Informationen siehe weiter 
  oben unter der Beschreibung des Men\"u\-punktes {\em Bearbeiten / 
  Undo} (Seite \pageref{BeaUnd})}
\end{itemize}

\section{Blockoperationen}%=================================================
\index{Block markieren}\label{Blo}
Die eigentlichen Blockfunktionen {\em Kopieren, Ausschneiden} und {\em 
Einf\"ugen} sind weiter oben bei der Beschreibung der Men\"upunkte 
beschrieben. Hier sollen die nicht sofort aus dem Programm ersichtlichen 
M\"oglichkeiten der Blockmarkierung beschrieben werden.

\subsection{Block--"`Aufziehen"' mit der Maus}
Um einen beliebigen Block mit der Maus zu markieren, positionieren Sie 
einfach den Mauszeiger an die Stelle, wo der Block beginnen oder enden 
soll. Dann halten Sie die linke Maustaste gedr\"uckt und bewegen die Maus, 
je nachdem, ob das Blockende oder der Blockanfang als Startpunkt gew\"ahlt 
wurde, nach oben oder nach unten, nach links oder rechts. Dabei wird der 
Block "`aufgezogen"', was man sofort an der erscheinenden Blockmarkierung 
(invertierter Text) sehen kann.

Wenn sie die Textpassage, die Sie selektieren wollen, vollst\"andig markiert 
haben, dann brauchen Sie einfach nur die Maustaste loszulassen und k\"onnen 
dann die oben beschriebenen Blockfunktionen anwenden.

Wenn sie aus Versehen die Maustaste beim Selektieren losgelassen haben 
oder aus einem anderen Grund den aktuellen Block vergr\"ossern oder 
verkleinern wollen, so ist auch das kein Problem. Halten Sie einfach die 
{\sf Shift}--Taste gedr\"uckt, bevor sie die linke Maustaste (nat\"urlich mit 
dem Mauszeiger im Textfenster) wieder gedr\"uckt halten. In diesem Fall wird 
kein neuer Block markiert, sondern die alte Blockendemarkierung l\"a\3t sich 
verschieben. Dies kann man nat\"urlich auch dazu verwenden, um mit der Maus 
Blockanfang und Blockende zu markieren, also nicht die Aufziehfunktion zu 
verwenden, die bei gro\3en Bl\"ocken manchmal unangebracht sein mag. Man 
positioniert also einfach den Cursor auf den Anfang oder das Ende des 
gew\"unschten Blocks, bewegt sich dann mit den Scroll-- oder Page--Elementen 
des Fensterrahmens im Text, bis man die Stelle f\"ur das Ende des Blocks 
gefunden hat. Dann h\"alt man die {\sf Shift}--Taste gedr\"uckt und markiert 
das Blockende mit einem Mausklick.

\subsection{Wort als Block markieren}
\index{Block = Wort}
Mit einem Doppelklick mit der Maus auf ein Wort im aktuellen Text k\"onnen 
Sie selbiges als Block markieren. Wird nach dem Doppelklick die Maustaste 
gedr\"uckt gehalten und die Maus bewegt, wird der Block wortweise 
vergr\"o\3ert oder verkleinert.

\subsection{Zeile als Block markieren}
\index{Block = Zeile}
Ebenso k\"onnen Sie auch eine Zeile selektieren, indem Sie neben dem 
Doppelklick in diese Zeile auch noch gleichzeitig die {\sf Shift}--Taste 
gedr\"uckt halten. Auch mit dieser Funktion kann man durch Dr\"ucken der 
Maustaste erreichen, das der Block erweitert wird.

\section{Suchen und Ersetzen}%================================================
\index{Suchen}\index{Ersetzen}\label{SuE}
Die Bedienung der {\em Suchen und Ersetzen} Dialoge ist ja schon bei der 
Beschreibung der Men\"u\-punkte erkl\"art worden. Hier soll nun genauer auf 
die M\"oglichkeiten der Suchfunktionen, speziell bez\"uglich der Wildcards, 
eingegangen werden.

Die "`normalen"' Suchfunktionen, bei denen einfach nur nach einem festen 
Suchbegriff gesucht wird (ggf.\ mit der Einschr\"ankung, da\3 der Begriff ein 
ganzes Wort sein soll und nicht nur ein Wortfragment) d\"urfte ziemlich klar 
sein. Hier wird einfach nur der Text so durchsucht, bis die vorgegebene 
Zeichenkette gefunden wird.

Die sogenannten {\em Wildcards}\index{Wildcards}\footnote{dt. Joker} 
erweitern dies nun um einige m\"achtige Funktionen in Richtung der Suche mit 
sogenannten {\em Regular Expressions}\index{Regular 
Expressions}.\footnote{dt. regul\"are Ausdr\"ucke} Die Wildcards stellen dabei 
Platzhalter im Suchbegriff dar, f\"ur die beliebige oder auch explizit 
vorgegebene Zeichen stehen k\"onnen.

In der Praxis sieht das dann so aus, da\3 alle Textstellen gefunden werden, 
die dem Suchmuster entsprechen, d.h.\ bei denen der fixe Teil des 
Suchbegriffes, der explizit durch eine Zeichenkette vorgegeben ist, exakt 
\"ubereinstimmt, w\"ahrend f\"ur die {\em Wildcards} eben beliebige bzw.\ 
bestimmte vorgegebene unterschiedliche Zeichen stehen k\"onnen.

\qed\ unterst\"utzt drei Arten dieser {\em Wildcards}: `*', `?' und 
`$[\hspace{1em}]$', sowie die Angabe von `\ctrl{}' und `\$', welche die 
Position des zu findenden Begriffs innerhalb einer Zeile vorgeben.

\begin{itemize}
\item [\bf *] steht f\"ur eine beliebige Anzahl von beliebigen Zeichen.
  Es k\"onnen auch mehrere `*' in einem Suchbegriff vorkommen. Will man
  nach dem Zeichen `*' suchen, so mu\3 man es im Suchstring in 
  eckige Klammern setzen, also [*] schreiben.
\item [\bf ?] steht f\"ur {\em genau ein} bliebiges Zeichen.
  Ebenso wie beim `*' k\"onnen auch `?' mehrmals im Suchbegriff vorkommen. 
  W\"ah\-rend zwei `*' nacheinander jedoch nicht viel Sinn machen, da einer 
  schon bliebig viele Zeichen "`freih\"alt"', kann man beliebig viele `?' 
  nacheinander verwenden, also z.B. B??r, welches dann Bier, Baer, Beer, 
  etc.\ findet, nicht aber B\"ar oder Biber. Will man nach dem Zeichen
  `?' suchen, so mu\3 man es im Suchstring in eckige Klammern setzen,
  also [?] schreiben.
\item [\bf {$[\hspace{1em}]$}] sind \"ahnlich wie `?', da auch hier nur ein 
  Zeichen "`freigehalten"' wird, jedoch kann zwischen den Klammern eine 
  Teilmenge von Buchstaben vorgegeben werden, die als passend angesehen 
  werden sollen oder aber auch nicht vorkommen d\"urfen.
\item[\bf \ctrl{}] Wenn dieses Zeichen am Anfang des Suchstrings steht, so 
  bedeutet es {\em Zeilenanfang}, d.h.\ der Suchbegriff wird nur gefunden, 
  wenn er im Text am Anfang einer Zeile steht. Wird das Zeichen an einer 
  anderen Stelle im Suchbegriff benutzt, so hat es keine weitere Bedeutung, 
  d.h.\ es ist dann einfach nur ein Akzent Zeichen. Weiterhin kann man es 
  nat\"urlich auch am Suchstringanfang als Akzent verwenden, indem man es wie 
  schon bei den anderen Wildcards in eckige Klammern einschlie\3t, also 
 [\ctrl{}] schreibt.
\item[\bf \$] Steht dieses Zeichen am Ende des Suchbegriffes, dann 
  symbolisiert es das {\em Zeilenende}, d.h.\ der Suchstring wird nur dann 
  im Text gefunden, wenn er am Ende einer Zeile steht. Auch dieses Zeichen 
  hat an einer anderen Stelle im Suchstring nur seine normale Bedeutung als 
  Dollar Zeichen. Auch hier kann man wieder durch Einschlie\3en in eckige 
  Klammern [\$] erzwingen, da\3 das Dollarzeichen auch am Suchstringende nur 
  als Dollarzeichen angesehen wird.
\end{itemize}

Es sind beliebige Kombinationen der verschiedenen Wildcards m\"oglich, wenn 
auch nicht alle sinnvoll sind. Hier nun ein paar kleine Beispiele:

\begin{tabular}{lp{3in}}
{\tt B*r}             & findet {\tt Bier}, {\tt B\"ar}, {\tt Biber},
                        {\tt Bauer}, etc.\\
{\tt P?st}            & findet {\tt Post}, {\tt Pest}, etc.\\
{\tt Ann[ae]}         & findet {\tt Anna} und {\tt Anne}.\\
{\tt [a-f]\_var}      & findet alle Textstellen, die mit den Buchstaben
                        {\tt a} bis {\tt f} beginnen und denen {\tt
                        \_var} folgt.\\
{\tt Kunterbun[\^\/d]}& findet z.B. {\tt Kunterbunt}, aber nicht {\tt
                        Kunterbund},
                        d.h.\ es werden alle Textstellen gefunden, die
                        mit {\tt Kunterbun} beginnen, denen aber KEIN
                        {\tt d} folgt.\\
....&....
\end{tabular}

\section{K\"urzeldateien}%===================================================
\label{Kurzel}
\qed\ hat ein K\"urzelersetzungssystem, welches ein-- bis achtbuchstabige 
K\"urzel durch eine Zeichenkette ersetzt. Diese K\"urzel mit jeweils 
zugeh\"origer "`Ersatz"'--Zeichenkette k\"onnen vom Benutzer selbst erstellt 
werden. Es handelt sich dabei um reine ASCII--Dateien, so da\3 man dies am 
besten der Einfachheit halber mit \qed\ erledigt, man kann aber nat\"urlich 
auch jeden anderen ASCII--Editor daf\"ur verwenden.

Das ganze funktioniert folgenderma\3en:

In jeder Zeile der K\"urzeldatei steht ein K\"urzel--Ersatzzeichenkette--Paar. 
Links\-b\"un\-dig das K\"ur\-zel, welches aus bis zu acht Zeichen (z.B. auch 
Zahlen) bestehen kann, als n\"achstes folgt ein `=' Zeichen (vor dem noch 
beliebig viele Leerzeichen stehen d\"urfen). Hinter dem `=' folgt die 
Zeichenkette, die f\"ur das K\"urzel eingesetzt wird. Hier werden sowohl 
f\"uhrende, als auch folgende Leerzeichen mitber\"ucksichtigt, d.h.\ an der 
K\"urzelstelle mit in den Text eingef\"ugt! Zeilen, die mit einem `\#' 
beginnen, werden ignoriert.

Weiterhin kann im Ersetzungstext auch noch ein spezielles Zeichen 
vorkommen und zwar die Tilde ($\sim$), welches die Stelle markiert, an der 
der Cursor nach der Ersetzung stehen soll. Ist keine Tilde im 
Ersetzungstext, dann steht der Cursor nach der Ersetzung hinter dem 
eingef\"ugten Text.

\index{Kurzeldatei@K\"urzeldateiformat}
Als Beispiel einer kleiner Ausschnitt aus der \LaTeX--K\"urzeldatei des 
Autors dieser Zeilen:

\begin{verbatim}
ds =\documentstyle[german]{~}
ps =\pagestyle{~}
bd =\begin{document}
ed =\end{document}
bi =\begin{itemize}
ei =\end{itemize}
it =\item s =\section{~}
ss =\subsection{~}
sss =\subsubsection{~}
bv =\begin{verbatim}
\end{verbatim}

Kommen wir nun zur Anwendung der K\"urzelersetzung.
\index{Kurzelers@K\"urzelersetzung}
Um eine K\"urzelersetzung im Text vornehmen zu lassen, dr\"uckt man einfach 
die {\sf Esc}--Taste, wenn der Cursor direkt (ohne Leerzeichen) hinter dem 
K\"urzel steht. Wenn in der geladenen K\"urzeldatei ein entsprechendes K\"urzel 
gefunden wird, so wird nun das K\"urzel aus dem Text entfernt und daf\"ur die 
Ersatzzeichenkette eingesetzt. Wenn eine Tilde im Ersatzbegriff sein 
sollte, so wird diese ebenfalls entfernt und der Cursor an diese Stelle 
positioniert, ansonsten steht der Cursor nach der Ersetzung hinter der 
eingef\"ugten Zeichenkette. Es wird jeweils das l\"angste passende K\"urzel 
benutzt.

K\"urzeldateien sollten mit der Dateinamenerweiterung {\tt .KRZ} versehen 
werden. Der Name der aktuell geladenen K\"urzeldatei wird beim Sichern der 
Einstellungen mitgespeichert, so da\3 diese K\"urzeldatei beim
n\"achsten Start von \qed\ mit der entsprechenden Einstellungsdatei
automatisch wieder mitgeladen wird.

\section{Projekte}%============================================================
\index{Projekt}\label{Pro}
Projekte stellen eine M\"oglichkeit dar, eine Reihe von Dateien f\"ur 
bestimmte Operationen zusammenzufassen.

Zur Zeit steht hier nur das Suchen in mehreren Dateien zur Verf\"ugung, 
d.h.\ wenn man in einem Projekt suchen l\"a\3t, dann werden alle im Projekt 
enthaltenen Dateien nach dem Suchbegriff durchsucht.

Es gibt verschiedenen Arten, Projekte anzulegen. Zum einen kann dies 
manuell geschehen, indem man ein neues Projekt erzeugt und die gew\"unschten 
Dateien in Form ihrer Texticons vom \qed\ Desktop auf das Projekt Fenster 
oder das Projekt--Icon schiebt. Zum anderen ist das Ergebnis einer 
erfolgreichen Suche in Dateien oder in einem Projekt ein neues Projekt.

Eine in einem Projekt enthaltene Datei kann \"uber einen Doppelklick auf den 
Dateinamen im Projektfenster ge\"offnet werden oder analog durch selektieren 
des Namens und Benutzung der Men\"ufunktion {\em  \"Offnen...}.

Wenn ein Projekt sehr viele Dateien umfassen sollte, dann kann man einen 
Dateinamen in diesem Projekt suchen, in dem man, wenn das Projektfenster 
das aktuelle (oberste) Fenster ist, den Anfangsbuchstaben des Namens 
eingibt. Wenn eine Datei mit dem Anfangsbuchstaben vorhanden ist, so wird 
der Name selektiert, wenn es mehrere mit diesem Anfangsbuchstaben gibt, 
dann wird der erste selektiert. In einem solchen Fall kann man solange 
weitere Buchstaben eingeben, bis es auf die gesuchte Datei eindeutig pa\3t.

\section{Sonstiges}%=========================================================

\subsection{\qed\ und Accessories}
\index{Accessory} \index{VA--Protokoll} \index{XACC--Protokoll}
\qed\ unterst\"utzt die Protokolle VA und XACC zur Kommunikation mit 
Accessories. Dies macht sich z.B. dadurch bemerkbar, da\3 Fenster von 
Accessories (die diese Protokolle beherrschen) als oberste Fenster auf dem 
Desktop liegen d\"urfen, und \qed\ trotzdem auf Tastendr\"ucke reagiert.

Im einzelen wird vom XACC--Protokoll die Stufe 0
\begin{itemize}
\item ACC\_ID
\item ACC\_ACC
\item ACC\_OPEN
\item ACC\_CLOSE
\end{itemize}
(an Stufe 1 wird gearbeitet) und vom VA--Protokoll die Mitteilungen:
\begin{itemize}
\item AV\_SENDKEY
\item AV\_OPENWIND
\item AV\_STATUS
\item AV\_GETSTATUS
\item AV\_ACCWINDOPEN
\item AV\_ACCWINDCLOSE
\end{itemize}
unterst\"utzt.

\subsection{\qed\ und Lindner--\TeX}
\index{tex-shell@\TeX--Shell, Lindner--\TeX}
\qed\ unterst\"utzt die Fehlermeldungen, die vom Lindner--\TeX, bzw.\ der 
zugeh\"origen \TeX--Shell, \"ubergeben werden. Es werden dann die
Protokoll--Datei des \TeX--Laufes und die \TeX--Quell\-datei ge\"offnet, 
sowie der Cursor an die Fehlerstelle positioniert.

\subsection{\qed\ und Selectric}
\index{Selectric}
\qed\ unterst\"utz die Dateiauswahlbox Selectric. Es k\"onnen beim Laden von 
Texten und Projekten mehrere Files in der Auswahlbox angew\"ahlt werden, die 
dann anschlie\3end geladen werden.

\subsection{Das ARGV--Verfahren}
\index{ARGV--Verfahren}
\qed\ unterst\"utzt das ARGV--Verfahren. Dadurch k\"onnen beim Starten von 
\qed\ beliebig viele Dateinamen (eventuell mit Angaben zur 
Cursorpositionierung) \"ubergeben werden. Unter z.B.\ GEMINI kann man \qed\ 
auf dem Desktop ablegen, mehrere Dateien in einem Fenster selektieren und 
mit der Maus auf das \qed--Icon schieben. Damit wird \qed\ gestartet und 
die entsprechenden Dateien geleden.

\subsection{Block einf\"ugen in Dialog--Textfelder}
\index{Block einf\"ugen}
Mit der {\sf Insert}--Taste oder {\sf Control--V} kann man die erste Zeile 
des Klemmbrettinhaltes in das aktuelle editierbare Textfeld eines Dialoges 
einf\"ugen.

Dies ist z.B.\ sehr angenehm, wenn man andere Stellen sucht, an denen ein 
Wort vorkomt, welches man gerade im aktuellen Textausschnitt vor sich hat. 
Man selektiert das Wort dann einfach mit einem Doppelklick als 
Block\footnote{siehe weiter oben unter Blockfunktionen (Seite 
\pageref{BloFunc})}, kopiert es auf das Klemmbrett\footnote{z.B.\ mit {\sf 
Control--C}, siehe unter {\em Bearbeiten / Kopieren} (Seite 
\pageref{BeaKop})}, ruft dann den Suchdialog auf und f\"ugt das Wort dann 
dort in das Suchbegriff Feld wieder ein.

\section{Entstehungsgeschichte}%===========================================
\index{Entstehungsgeschichte}
Dieser Abschnitt ist f\"ur all diejenigen gedacht, die sich wundern, warum 
die erste Version von \qed, die sie in die Finger bekommen, schon eine 
Versionsnummer $>3.00$ tr\"agt.

Nun, dies liegt daran, da\3 die Entwicklung von \qed\ bis etwa ins Jahr 
1989 zur\"uckreicht. Der Editor entstand in erster Linie als Test bzw.\ als 
sinnvolles Projekt zum Erlernen von C\@. Er wurde zun\"achst nur privat 
bzw.\ von einigen wenigen Freunden eingesetzt, die damit auch quasi gleich 
Betatester waren.

\qed\ wandelte sein Aussehen und seine F\"ahigkeiten teils recht drastisch, 
speziell ersteres.

Die 1.xx Versionen arbeiteten noch ohne GEM--Fenster und konnten nur einen 
Text zur Zeit darstellen. Auch gab es damals aus der Not heraus einmal 
eine \qed\ Version, die als Editor im TDI--Modula--2 System, welches an 
der Uni zu benutzen war, eingesetzt werden konnte und dessen 
Fehlermeldungen unterst\"utzte. Mit dieser Version wurden auch die 
K\"urzeldateien eingef\"uhrt.

Irgendwann Anfang 1990 wurde dann der Umstieg auf GEM--Fenster und {\tt 
GDOS}--Zeichen\-s\"atze vollzogen, wobei die Versionsnummer auf 2.00 erh\"oht 
wurde.

Auch seitdem sind im Laufe der Zeit immer mehr Neuerungen eingebaut 
worden, z.B.\ mehr als nur vier Texte gleichzeitig bearbeitbar, 
verbesserte Suchfunktionen (regul\"are Aus\-dr\"ucke), Makros, Projekte, usw.

Was noch alles kommen mag bleibt abzuwarten...

Um den Mund ein wenig w\"asserig zu machen hier ein paar Ideen:
\begin{itemize}
\item Sch\"onerer Ausdruck (mehr Parameter und {\tt GDOS}--Unterst\"utzung)
\item Mehrstufiges Undo
\item Einklappen von Textst\"ucken
\end{itemize}

\section{Danksagungen}%====================================================
\index{Danksagungen}
\subsection{des Programmautors}

Zum Schlu\3 nun auch ein paar Wort von mir. H\"atte ich vor zwei Jahren 
geahnt, wieviel Zeit man mit der Programmierung eines Editors verbringen 
kann, h\"atte ich damit sicher nicht begonnen. Ohne die Unterst\"utzung durch 
meine Freunde w\"are diese Programm auch sicher nicht so weit entwickelt 
worden. Mein Dank geht insbesonders an Frank, Thomas, Markus und Michael. 
Ihre teuflische Taktik bestand aus harter Kritik mit st\"andiger Motivation.

Ich hoffe, da\3 mit der Ver\"offentlichung von \qed\ meine investierte Arbeit 
ein wenig gerechtfertigt wird, indem m\"oglichst viele Menschen mit dem 
Programm arbeiten. \"Uber jede Art von Resonanz w\"urde ich mich freuen.

Da die Entwicklung von \qed\ nicht abgeschlossen ist, hat jeder eine 
reelle Chance, da\3 seine W\"unsche ber\"ucksichtigt werden. Aber nicht 
vergessen, die Taktik lautet: Kritik {\em plus
Mo\-ti\-va\-ti\-on}.\footnote{Ich bin \"ubrigens Schokoladeabh\"angig}

\subsection{des Autors der Anleitung}

Mein Dank geht an Markus Kommant f\"ur Korrekturlesen und 
Verbesserungsvorschl\"age zur Anleitung und nat\"urlich an Tom
Quellenberg f\"ur diesen hervorragenden Editor, der mir schon einiges
an Arbeitszeit erspart hat.

\addcontentsline{toc}{section}{\protect\indexname}
\printindex

\end{document}
