%
% Look-Anleitung V 3.5 by André Voget
%
\documentstyle[german,makeidx]{garticle}

\newcommand{\Look}{{\sc Look }}

\makeindex

\title{\Look Version 3.5}
\author{von André Voget}
\date{6. Juni 1994}

\begin{document}

\maketitle

\tableofcontents

\newpage
\section{Allgemeines}

\subsection{Copyright}\index{Copyright}

Das Programm \Look und die dazugehörigen Anleitungen im ASCII-, Guide- und
DVI-Format sind Copyright © 1992-1994 by André Voget. Alle Rechte vorbehalten.

\subsection{Vertriebsbedingungen}\index{Vertriebsbedingungen}
\Look ist Shareware! Wer dieses Programm regelmäßig benutzt oder eine oder
mehrere Dateien mit \Look als Textanzeiger veröffentlicht, muß mir {\em vor}
der Veröffentlichung die Sharewaregebühr von 20 DM bezahlen, um sich
registrieren zu lassen. Die Gebühr bitte nur bar zahlen oder am besten
überweisen, bitte keine Briefmarken oder Schecks!

André Voget\\
Sonnenblick 16\\
D-56428 Dernbach

Kontonummer 55 01 08\\
BLZ 570 910 00\\
Volksbank Montabaur-Wallmerod

Da das Programm in keinster Weise eingeschränkt ist, kann jeder sich von diesem
Programm überzeugen. Aber bitte seien Sie fair und überweisen Sie mir
die wohlverdiente Sharewaregebühr! Es steckt eine lange Entwicklungsarbeit in
\Look und die Gebühr ermuntert mich, auch in Zukunft zu programmieren!

Bei Mißachtung dieser Shareware-Regelung (das ist schon mehr als einmal
vorgekommen) sehe ich mich gezwungen, rechtliche Schritte
einzuleiten. Bei Verständnisschwierigkeiten kann man mich auch fragen!

Die Dateien \Look, Look.dok, Look.guide, Look.dvi und ihre Icons dürfen nur
unverändert und zusammen weitergegeben werden. Ausnahme: Wird \Look als
Textanzeiger benutzt, müssen die Dokumentationsdateien nicht mitkopiert werden.
Zudem darf die Kopiergebühr für eine Diskette mit \Look fünf D-Mark nicht
übersteigen.

Soll \Look auf eine PD-Serie erscheinen, so ist dies nur mit meiner schriftlichen
Erlaubnis {\em vor} der Veröffentlichung möglich. Dies gilt insbesondere für
gewerbliche Vertreiber\index{Gewerbliche Vertreiber}, die \Look zum Beispiel auf
einem PD-Paket veröffentlichen wollen. In der Regel wird dann eine Gebühr von 50
DM fällig, die auch die Registrierung mit einschließt.

Der Autor haftet {\em nicht} für Schäden jeglicher Art, die durch das Benutzen
dieses Programmes hervorgerufen wurden! Natürlich wurde das Programm
sorgfältig getestet, bevor es veröffentlicht wurde!

\subsection{Updates}\index{Updates}
  
Leider ist mittlerweile der Aufwand zu groß geworden, um jeden einzelnen
registrierten Benutzer bei einem Update zu informieren. Jede neue
\Look-Version wird aber auf jeden Fall auf den PD-Serien Fish und Time
erscheinen. Außerdem kann man die aktuelle \Look-Version bei mir umsonst gegen
eine Diskette und einen ausreichend frankierten Rückumschlag bekommen!

\subsection{Hintergrund}\index{Hintergrund}

\Look wurde im Februar 1992 mit dem Gedanken entwickelt, einmal das ultimative
Anzeigeprogramm für Diskettenmagazine zu werden! Zwar gab es bereits einige
Magazinprogramme, doch sie waren meist eingeschränkt in ihren Funktionen
und umständlich zu bedienen. 

Nach diesen Gesichtspunkten wurde dann \Look programmiert: es ist einfach zu
bedienen und besitzt alle notwendigen Funktionen (und mehr) für den
Benutzer als auch für den Magazin-Herausgeber. Nebenbei ist es kurz in der
Programmlänge, sowie schnell und sicher im Ablauf.

Durch viele Verbesserungsvorschläge wuchs aus einem ehemaligen
Gfa-Ba"-sic-Pro"-gramm nach einer kurzen Station in Assembler ein
Oberon-2-Programm, das einige Assembler-Routinen enthält.

Dank der über zweijährigen Entwicklungszeit ist \Look an die verschiedensten
Bedürfnisse von Anwendern und Herausgebern angepaßt. Ideen und
Verbesserungsvorschläge sind aber weiterhin sehr willkommen!

\Look wurde bisher --- dank seiner Flexibilität und Konfigurierbarkeit --- in
vielen Bereichen eingesetzt. Den  größten  Anteil  haben  natürlich  die
Magazine, die \Look als Magazinprogramm benutzen. \Look wird aber  auch immer
häufiger für eine persönliche "`Infodisk"' benutzt, eine Diskette für 
Tauschpartner. Auch einige PD-Versender benutzen \Look für ihre
Katalogdisketten.  Nebenbei gibt es einige, die \Look auch als Textanzeiger für
Texte aller Art einsetzen.

\subsection{Features}

\begin{itemize}
\item{Komfortable Benutzerführung: Alle Aktionen können mit der Maus oder mit
der Tastatur ausgeführt werden.}
\item{\Look versteht neben reinen ASCII-Texten auch solche, die
Ansi-Sequenzen\index{Ansi-Sequenzen} enthalten.}
\item{Man kann Texte blättern und auch scrollen.}
\item{\Look besitzt über 20 Textbefehle, mit denen man IFF-Brushes einfügen,
verschieden große Fonts (bis zu 16 verschiedene in einem Text) benutzen,
Programme starten und IFF-Bilder anzeigen lassen kann.}
\item{Mit diesen Textbefehlen kann man auch ein Inhaltsverzeichnis erstellen,
mit dem man andere Texte, Bilder oder Programme auswählen kann.}
\item{Alle Texte, Brushes und Bilder dürfen mit dem PowerPacker gepackt sein.}
\item{\Look kann Texte nicht nur einspaltig, sondern auch zwei- oder dreispaltig
anzeigen!}
\item{Textbuffer-System, d.~h. mehrere Texte können im Speicher gehalten werden}
\item{Suchfunktion}
\item{Gehe-Zu-Zeile und Gehe-Zu-Seite-Funktion}
\item{Farbrequester}
\item{Konfigurationsfenster mit abspeicherbarer Konfigurationsdatei}
\item{Hilfe-Seite, die mit der [Help]-Taste aufgerufen werden kann}
\item{25 Überblendeffekte, die auch abschaltbar sind}
\item{Druckfunktion (Textbefehle können auf Wunsch auch gefiltert werden)}
\item{Iconify-Funktion (ab OS 2.04 wird ein AppIcon erstellt)}
\item{\Look ist im OS 2.0-Look gehalten --- auch unter Kickstart 1.3}
\item{\Look läuft auf allen AMIGA-Betriebssystemversionen von 1.2 bis 3.1.}
\item{\Look wird seit 1992 ständig weiterentwickelt!}
\item{\Look ist das ideale Programm für Diskettenmagazine, Katalogdisketten und
per"-sön"-li"-che Infodisks!}
\end{itemize}

\section{Installation und Starten}
\subsection{Installation}\index{Installation}

\Look benötigt ab der Version 3.5 die "`iff.library"' für das Anzeigen von
IFF-Bildern und IFF-Brushes. Fehlt diese, können keine Bilder und Brushes
angezeigt werden. Außerdem wird die "`diskfont.library"' benötigt, wenn Fonts
eingeladen werden. \Look unterstützt bei Vorhandensein auch Routinen aus der
"`ReqTools.library"', "`asl.library"' und "`utility.library"'. Keine der genannten
Libraries sind aber zwingend notwendig.

\subsection{Starten über die Shell}\index{Starten}

Wird \Look ohne einen Textnamen aufgerufen, dann öffnet sich ein Filerequester
(sofern die asl.library oder die reqtools.library vorhanden ist, sonst öffnet
sich ein kleines Fenster mit einem Stringgadget auf der Workbench). Wird
ein Textname beim Starten angegeben, dann stehen weitere Optionen zur Verfügung:

\begin{itemize}
\item{"`BITPLANES"':\index{BITPLANES} Gibt die Tiefe des
\Look-Screens an. Bei "`2"' wird \Look mit vier Farben (voreingestellt), bei
"`3"' mit acht Farben und bei "`4"' mit 16 Farben erscheinen.}

\item{"`CONFIG"':\index{CONFIG} Hier kann man den Namen einer Konfigurationsdatei angeben,
sonst versucht \Look sie unter dem Namen "`S:Look.Config"' zu laden. \Look
kann auch ohne sie gestartet werden. }

\item{"`HEIGHT"':\index{HEIGHT} Bestimmt die Screenhöhe. Voreingestellt ist der
Wert "`256"'.}

\item{"`NOGADGETS"':\index{NOGADGETS} Öffnet den \Look-Screen ohne die untere
Gadgetleiste. In Verbindung mit der "`NOTITLE"'-Option kann man das Aussehen
des Look-Screens selbst bestimmen.}

\item{"`NOTITLE"':\index{NOTITLE} Öffnet den \Look-Screen ohne die
Titelleiste.} 

\item{"`PICTURE"':\index{PICTURE} Zeigt vor dem Öffnen des \Look-Screens noch
das angegebene IFF-Bild an, z.~B. als Titelbild.\index{Titelbild}}

\item{"`SCRMODE"':\index{SCRMODE} Bestimmt den Bildschirm-Modus. Der Wert sollte
hexadezimal angegeben werden, also beginnend mit dem Zeichen "`\$"'.
Voreingestellt ist der Wert \$~8000 für "`MedRes"'. Der Wert \$~8004
öffnet zum Beispiel einen "`HiRes"'-Screen. Diese Option sollte nur von
erfahrenen AMIGA-Usern verwendet werden.}

\item{"`SETTAB"':\index{SETTAB} Diese Option ist für Disketten-Magazin-Ersteller
gedacht\footnote{Die Idee stammte von Sven Drieling für das Diskettenmagazin
"`Power-Brei"'.} . Hier kann man eine feste Anzahl an Leerzeichen pro TAB
angeben. Dieser Wert kann dann im Konfigurationsfenster nicht mehr geändert
werden, so daß der Seitenaufbau nicht zerstört werden kann. }

\item{"`WIDTH"':\index{WIDTH} Bestimmt die Screenbreite. Voreingestellt ist der
Wert "`640"'.}
\end{itemize}

\subsection{Starten von der Workbench}\index{Starten}

\Look wird durch einen Doppelklick auf sein Icon gestartet. \Look öffnet dann
einen Filerequester. \Look kann auch einen Text anzeigen, wenn der Text ein
Project-Icon besitzt und als "`Default Tool"' \Look eingetragen ist (so
wie bei der Datei "`Look.dok"').
Als ToolTypes kann man die Namen der CLI-Optionen angeben, zum Beispiel
"`BITPLANES=3"'.

\subsection{Wichtig}\index{Stackgröße}

Die Stackgröße muß mindestens 8000 Bytes betragen, sonst kann \Look beim
Anzeigen von IFF-Bildern abstürzen. Vor dem Aufruf von \Look sollte also der
CLI-Befehl "`stack 8000"' vorangehen, oder dieser Wert in sein Icon eingetragen
werden.


\section{Bedienung}

\subsection{Allgemeines}

Das Wichtigste zuerst: Ein Text wird mit der linken Maustaste
vorgeblättert und mit der rechten Maustaste blättert man entsprechend zurück.
Einfacher geht es nicht mehr!
Alle Tastaturbefehle sind übrigens im Hilfe-Fenster\index{Hilfe} aufgelistet. Es
erscheint, wenn man die [Help]-Taste drückt.

Wer \Look-Versionen bis 2.0 kennt, wird sicherlich über Begriffe wie
"`Inhaltsverzeichnis"', "`Scriptdatei"', "`Einzeltext"', "`Textmodus"' oder
"`Zeilenmodus"' gestolpert sein. Diese Unterscheidungen sind ab Version 3.0
nicht mehr notwendig (die Begriffe sollten deshalb schnell vergessen werden! ;-)

Eine Unterscheidung gibt es allerdings noch, diese kann man sich aber leicht
merken: die Textanzeige heißt "`Blättermodus"'\index{Blättermodus}, wenn man die
Seiten mit Hilfe der Maustasten blättern kann (dies ist voreingestellt). Sie
heißt "`Scrollmodus"'\index{Scrollmodus}, wenn man den Text scrollen kann
(nachdem man die Taste [m] oder [Ins] gedrückt hat).

\subsection{Funktionen}

\subsubsection{Iconify}\index{Iconify}

\Look wird "`iconifiziert"', wenn man die [y]-Taste drückt. Stolze Besitzer
einer Drei-Tasten-Maus drücken einfach die mittlere Maustaste! \Look gibt nun
seinen benutzten Speicher frei und öffnet ein kleines Fenster auf der
Workbench und wartet darauf, daß man dieses Fenster aktiviert und die rechte
Maustaste drückt. Ab dem Betriebssystem 2.0 und höher wird versucht, ein
AppIcon\index{AppIcon} zu erstellen.  Um einen  Text  zu  laden,  wird das
Text-Icon einfach auf das AppIcon gezogen. Ein Doppelklick auf das AppIcon kehrt
zum zuletzt gelesenen Text zurück.

\subsubsection{Suchen}\index{Suchen}

Selbstverständlich kann man in \Look auch nach Wörtern suchen.  Mit  der  Taste
[s] öffnet sich ein Fenster mit einem Stringgadget, so daß man das gesuchte Wort
eingeben kann. Wird nur die Taste [s] gedrückt, wird bei der Suche nicht auf die
Groß-  und  Kleinschreibung  geachtet.  Wird  die  Taste  [s] zusammen mit einer
Shift-Taste gedrückt, also ein großes [S], dann wird  bei  der  Suche  auch  die
Groß-  und  Kleinschreibung  berücksichtigt.  Mit  der Taste [n] kann man ab der
Stelle, wo die  Suche  das  letztemal  stoppte,  weitersuchen.  Wenn  das  Wort
gefunden  wurde, wird die Zeile, in der das Wort steht, unterstrichen. Wurde das
Wort nicht gefunden, blitzt der Bildschirm kurz auf.

\subsubsection{Drucken}\index{Drucken}

Ein Ausdruck kann sowohl von Texten als auch von  Bildern  erfolgen.  Dazu  wird
einfach  die Taste [d] oder [PrtSc] gedrückt. Bei Texten öffnet sich ein kleines
Fenster mit Stringgadget, das den Text "`PRT:"', also die parallele 
Schnittstelle anspricht,  enthält.  Im Konfigurationsfenster\index{Konfiguration}
kann man einstellen, ob eventuell vorhandene \Look-Textbefehle mit
ausgedruckt werden sollen. Bei Bildern wird eine Hardcopy\index{Hardcopy}
gemacht. Zum  Ausdruck  muß  auf  jeden Fall  ein  passender Druckertreiber, 
das  "`printer.device"'  und  meistens auch das "`parallel.device"' vorhanden
und ansprechbar sein, andernfalls erscheint eine Fehlermeldung.

Für  Fortgeschrittene:  Die  Drucken-Funktion kann als
"`Speicher"'-Funktion\index{Speichern} mißbraucht werden! Wird in dem
Stringgadget  der  Text "`PRT:"' gelöscht (mit [Amiga] und [x]) und ein 
Dateiname angegeben (z.~B. "`RAM:Text"'), dann speichert \Look den Text unter
diesem Namen. Ein gepackter Text wird ungepackt gespeichert. Im
Konfigurationsfenster\index{Konfiguration} sollte man in diesem Fall eingestellt
haben, daß die \Look-Textbefehle mit ausgedruckt werden, so daß der Text
unverändert gespeichert wird.

\subsubsection{Scrollen}\index{Scrollmodus}

Voreingestellt kann \Look Texte nur seitenweise anzeigen. Wenn man die Taste [m]
drückt, kann man den Text aber auch scrollen! Dabei kann mit der linken
Maustaste runter- und mit der rechten Maustaste hochgescrollt werden. Ebenso
verhält es sich mit den Tasten [runter]/[hoch] und [Space]/[Backspace]. Wird
zusätzlich die [Shift]-Taste gedrückt, kann man seitenweise "`scrollen"'. Dies
kann man auch mit den Tasten [PgUp] und [PgDn] auf dem Ziffernblock erreichen.
Mit [Alt hoch] springt man an den Textanfang, analog dazu gelangt man mit [Alt
runter] an das Textende.

Im Konfigurationsfenster (Taste [k])\index{Konfiguration} kann  man  einstellen,
ob  \Look  den Text mit allen Farben oder nur mit einer Farbe scrollen soll. Das
Scrolling mit nur einer  Farbe  ist  wesentlich  schneller.  Außerdem  kann  man
entscheiden,  ob  die  Betriebssystem-Routinen  oder  meine eigenen Routinen zum
Scrollen benutzt werden sollen.

\subsubsection{Gehe-Zu-Funktionen}\index{Gehe-Zu-Funktionen}

\Look kann auch direkt eine bestimmte Seite oder Zeile anspringen. Im
Blättermodus öffnet sich durch Drücken der Taste [g] ein kleines Fenster, das
die aktuelle Seite angibt (sie steht übrigens auch links unten neben dem
Prozentzeichen). Nun kann man die gewünschte Seite angeben. Im Scrollmodus wird
die Anzahl aller Zeilen in dem Fenster ausgegeben. Hier kann man nun die
gesuchte Zeile eingeben. Sie wird --- wenn möglich --- am oberen Bildschirmrand
erscheinen.

\subsubsection{Konfigurationsfenster}\index{Konfiguration}

Im Konfigurationsfenster, das mit der Taste [k] aufgerufen wird, kann man seine
persönlichen Werte einstellen, z.~B. ob ein Text geblättert oder gescrollt werden
soll, ob Blendeffekte erscheinen oder nicht usw. Über das Gadget [Speichern]
wird eine Konfigurationsdatei unter dem Namen "`S:Look.Config"' gespeichert, sie
benötigt nur wenig Platz (z.~Zt. 174 Bytes). Über das Gadget [Laden] wird sie
entsprechend geladen. Da die Konfigurationsdatei beim Programmstart automatisch
geladen wird, besitzt man so immer seine persönlichen Lieblingswerte...!

\begin{itemize}
\item{[Blättermodus] / [Scrollmodus]\index{Blättermodus}\index{Scrollmodus}
  Mit diesem Gadget entscheidet man, ob  der  Text  geblättert  oder  gescrollt
  werden  soll. Dies kann man auch ohne das Konfigurationsfenster mit der Taste
  [m] (wie "`Modus"') ändern.}

\item{ [Überblendeffekte an] / [Überblendeffekte aus]\index{Ueberblendeffekte@Überblendeffekte}
  Schaltet die Überblendeffekte an oder aus.  Ohne  Konfigurationsfenster  geht
  dies auch mit der Taste [e].}

\item{[Originalen Text drucken] / [Beim Drucken Textbefehle filtern]\index{Drucken}
  Anhand  dieses  Gadgets  bestimmt  man, ob beim Ausdruck eventuell vorhandene
  \Look-Textbefehle ausgedruckt werden sollen oder nicht.}

\item{[\Look-Requester an] / [\Look-Requester aus]\index{Requester}
  Wer  glaubt,  daß  er  auf  alle  \Look-Meldungen   und   -Sicherheitsabfragen
  verzichten kann, der kann sie mit diesem Gadget ausschalten.}

\item{[Eine Farbe scrollen (schnell)] / [Alle Farben scrollen (langsam)]\index{Scrollmodus}
  Wer Texte auch einfarbig lesen kann, wird mit schnellerem Scrolling belohnt.}

\item{[System-Scrollroutinen] / [Eigene Scrollroutinen]\index{Scrollmodus}
  Dieses Gadget bestimmt, ob die Scrollroutinen des Betriebssystems oder eigene
  Scrollroutinen benutzt werden. Die ersteren sind 100 \% systemkonform, während
  die  zweiteren deutlich flüssiger sind.}

\item{[Load-While-Reading an] / [Load-While-Reading aus]\index{Load-While-Reading}
  Stehen  mehrere  Tex\-te  zur  Auswahl  (wenn  nicht,  ist  dieses Gadget nicht
  anwählbar), dann wird \Look  durch  das  sogenannte  "`Load-While-Reading"'  den
  jeweils  nächsten  Text buffern, während man den aktuellen noch liest, so daß
  er sofort zur Verfügung steht, wenn man ihn anwählt.  Dies  läßt  sich  durch
  dieses Gadget auch abschalten.}

\item{[Text vor: nächsten Text zeigen] / [Text vor: Inhalt zeigen]
  Manche  \Look-Anwender  bevorzugen  es,  daß das Inhaltsverzeichnis erscheint,
  wenn man das Gadget [Text vor] oder [Text zurück]  anklickt,  statt  daß  der
  nächste  Text geladen wird. Dies läßt sich hier einstellen. Dieses Gadget ist
  natürlich nur anwählbar, wenn es auch ein Inhaltsverzeichnis gibt.}

\item{[Textbuffer-Größe] Hier gibt man die Größe des Textbuffers in 1000 Bytes
(kB) an.}

\item{[TAB-Größe]\index{TAB-Größe}
  Hier kann man einen Wert zwischen zwei und 16 eingeben. Dieser Wert gibt  die
  Anzahl der Leerzeichen pro TAB in einem Text an. Voreingestellt ist acht.}
\end{itemize}

Neben diesen Einstellungen werden auch die Farben in der Konfigurationsdatei
gespeichert. 

\subsubsection{Textbuffer-System}\index{Textbuffer}

\Look besitzt ein einzigartiges Textbuffer-System. Im Konfigurationsfenster
stellt man dessen Größe ein. Voreingestellt sind 50 kB. Werden in einem Magazin
mehrere Texte nacheinander ausgewählt, so behält \Look sie alle im Speicher,
sofern sie in den Textbuffer passen. Die Größe des Textbuffers ist nur ein
ungefährer Wert; wird z.~B. versucht, einen 100 kB-Text zu laden, wird er
dennoch angezeigt, landet aber nicht im Textbuffer. Der Speicher des Textbuffers
wird dynamisch verwaltet, d.~h., es wird nicht (um bei dem Beispiel zu bleiben)
50 kB alloziert, sondern nur der benötigte Speicher für die Texte. Wird der
Textbuffer zu klein, wird der Text gelöscht, der (zeitlich) am längsten
zurückliegt. 

\subsubsection{Load-While-Reading}\index{Load-While-Reading}

Auf deutsch bedeutet dies etwa "`Laden während des Lesens"'. Stehen bei einem
Magazin mehrere Texte zur Auswahl und diese Option wurde im
Konfigurationsfenster eingestellt, dann wird der nächste Text, der im Magazin
steht, bereits in den Speicher geladen, während man die erste Seite des Textes
liest. Dies funktioniert nur, wenn der Textbuffer groß genug ist, um den
nächsten Text aufzunehmen.

\subsubsection{Farbrequester}\index{Farbrequester}

Mit der Taste [f] ruft man den Farbrequester auf. Ist die "`ReqTools.library"'
vorhanden, wird deren Farbrequester benutzt. Ansonsten erscheint ein eigener:
Mit [Zurück] verläßt man den Farbrequester, ohne daß eine Änderung übernommen
wird. [Okay] übernimmt die Farbänderung. 

\subsubsection{Bildanzeige}\index{Bildanzeige}

Wenn \Look ein Bild anzeigt, zum Beispiel wenn der Textbefehl "`@SP"' erfolgt ist
oder wenn beim Starten das Schlüsselwort "`PICTURE"'\index{PICTURE} angegeben
wurde, dann stehen einige Kommandos zur Verfügung. Die Tasten [Esc], [q],
[Space], [Hoch] und [Runter] oder eine Maustaste beenden die Bildanzeige. Einen
Ausdruck (Hardcopy)\index{Drucken}\index{Hardcopy} erhält man, wenn man die
Taste [d] oder [PrtSc] drückt.

\subsubsection{Requester}\index{Requester}

\Look unterrichtet den Anwender mit einer Nachricht, wenn etwas schiefgegangen
ist oder ein Textbefehl falsch angewendet wurde. Die Nachricht erscheint in
einem sogenannten "`Requester"'. Diese Requester können im
Konfigurationsfenster\index{Konfiguration} abgeschaltet werden (wenn sie nerven
sollten ;). \Look kennt in der aktuellen Version zirka 20 verschiedene
Fehlermeldungen.

\section{Befehlsübersicht}\index{Befehle}\index{Textbefehle|see Befehle}

\Look versteht zur Zeit genau 21 Befehle, mit denen man die Möglichkeiten dieses
Programmes erst ausschöpfen kann. Jeder Befehl beginnt mit einem
"`Klammeraffen"', also dem Zeichen "`@"', das man erhält, wenn man die
[Alt]-Taste zusammen mit der [2] drückt. Das Zeichen "`@"' wird gefolgt von zwei
Buchstaben, die groß geschrieben werden müssen. Anhand dieser zwei Buchstaben
unterscheidet \Look die Befehle. Danach folgen (jeweils mit einem Leerzeichen
getrennt) die Parameter des entsprechenden Befehls. Parameter, die nicht nur aus
Zahlen bestehen, dürfen in Anführungszeichen stehen, damit man Leerzeichen
verwenden kann. 

Die ausführliche Befehlsbeschreibung befindet sich im Anhang.

\begin{itemize}
\item{@BP x (box parameter, x=1: 3D, x=2: invertiertes 3D, x=3: beides)}
\index{BP}
\item{@CN x (number of columns, x: 1--3}
\index{CN}
\item{@CO x y (colour, x: Vorder-, y: Hintergrundfarbe)}
\index{CO}
\item{@EX x pathname (execute program, x=1: mit Sicherheitsabfrage)}
\index{EX}
\item{@FO x (format selectfields, x: 1, 2, 4)}
\index{FO}
\item{@HE vonSpalte anzSpalten brushname (headline-brush)}
\index{HE}
\item{@IC x y name1 name2 (icon, x: LEFT/ RIGHT/ CENTER, y: UNDER/ OVERW,
name1: Brush-Dateiname, name2: Text/Bild/Prog.-Dateiname)}
\index{IC}
\item{@IX x, increase x-position of text}
\index{IX}
\item{@IY x, increase y-position of text}
\index{IY}
\item{@LF x (linefeed, x: Größe des Zeilenvorschubs)}
\index{LF}
\item{@NC (next side or column)}
\index{NC}
\item{@OF n y fontname (open font, n: Registernummer (1-15), y: Fontgröße)}
\index{OF}
\item{@PA r g b [\ldots] (palette, "`r g b"': Rot/Grün/Blau-Werte (0-15))}
\index{PA}
\item{@PP x (program parameter, x=0/1: ohne/mit Sicherheitsabfrage)}
\index{PP}
\item{@SB x y pathname (show brush, x und y wie bei "`IC"')}
\index{SB}
\item{@SE text pathname (select text/picture/program)}
\index{SE}
\item{@SF n (set font, n: Registernummer 0-15)}
\index{SF}
\item{@SH x (shadow, x: "`y"' für Schatten, "`n"' für keinen)}
\index{SH}
\item{@SP pathname (show picture)}
\index{SP}
\item{@ST x (style, x=1: unterstrichen, x=2: fett, x=4: kursiv)}
\index{ST}
\item{@TI text (title, text: neuer Screentitel)}
\index{TI}
\end{itemize}

\section{Magazin-Erstellung}\index{Magazin-Erstellung}

Am Anfang mag die Erstellung eines Magazines und die Anwendung der Textbefehle
sehr kompliziert klingen, deshalb werden wir nun mal ein kleines
Beispielmagazin erstellen. Jetzt wird aber nicht erklärt, wie man eine Diskette
formatiert, sie bootfähig macht und eine Startup-Sequence schreibt. Wer sich
damit noch nicht auskennt, sollte sich vorerst leichteren Sachen widmen, als dem
Herausgeben eines Magazines!

\subsection{Das erste Magazin}

@CN 2 @OF 1 16 frankfurter.font @SH y @CO 2 1\\
@SF 1 Das Beispiel-Magazin @SF 0

@BP 1 @SE ``Die erste Anklickzeile'' df0:texte/1\\
@BP 2 @SE ``Ein Bild'' df0:bild/bsp.iff

@SE Programm ``:p/PowerPlayer :songs/1''\\
@NC Dies ist nur ein Text. @BP 3\\
@IC LEFT UNDER dh0:gfx/brush/TeX ram:text

@ST 4 Tschüß!

Unser Magazin soll zweispaltig erscheinen, deshalb lautet der erste Befehl auch
"`@CN 2"'. Dann soll
 ein Font geöffnet werden, "`frankfurter.font"' in der Größe
16, in das Register 1, den wir später noch brauchen. Der Befehl "`@SH y"'
schaltet den Schatten ein, und damit man ihn sieht, setzten wir die
Vordergrundfarbe auf die Farbe 2 (weiß) und die Hintergrundfarbe auf 1
(schwarz). Der nachfolgende Text erscheint also in weißer Schrift mit einem
schwarzen Schatten. Obwohl wir direkt nach dem "`@CO 2 1"'-Befehl (mit einem
Leerzeichen) weiterschreiben könnten, machen wir --- aufgrund der
Übersichtlichkeit --- in der nächsten Zeile weiter. Dort wird der Font, der in
Register 1 geladen wurde, gesetzt. Der Text "`Das Beispiel-Magazin"' wird jetzt
mit dem "`frankfurter.font"' geschrieben. Danach soll mit dem Systemfont,
Topaz-8, weitergeschrieben werden: "`@SF 0"'.
Wie es sich für ein Magazin gehört, brauchen wir Anklickzeilen, damit der
Anwender Texte, Bilder oder Programme auswählen kann. Dazu setzen wir zuerst die
Rahmenform auf einen 3D-Rahmen: "`@BP"'. Dann folgt unsere erste Anklickzeile,
die den Text "`df0:texte/1"' bei Anwahl laden soll. Nun folgen zwei
Anklickzeilen, die ein Bild und ein Programm anwählbar machen, in der Rahmenform
2. Dann beenden wir unsere erste Spalte: "`@NC"'.
Auf der zweiten, rechten Spalte wird nun ein Brush gesetzt, das in der
Rahmenform 3 erscheint und einen Text anwählbar macht.
Zum Schluß setzen wir die Schriftart auf 4 (kursiv) und schreiben ein
freundliches "`Tschüß!"'.

Na, das war doch gar nicht so schwer, oder? Man sollte unbedingt mal alle
Befehle ausprobieren und ein bißchen mit diesem Text "`spielen"'.
Damit \Look nach einem Befehl keinen Zeilenvorschub\index{Zeilenvorschub}
ausführt, sollte man die Befehle hintereinander schreiben und den eigentlichen
Text hintendran (alles mit einem Leerzeichen getrennt).

\subsection{Hinweise zur Erstausgabe}\index{Erstausgabe}

Ist das Magazin fertig, sollte man es auf verschiedenen AMIGAS bei Freunden
testen. Auf jeden Fall sollte ein Test für Kickstart 1.3 und OS 2.0 gemacht
werden. Außerdem sollte überprüft werden, ob das Magazin auch auf 512
KB-Rechnern läuft. \Look benötigt zwar nicht so viel Speicherplatz, aber wenn
viele Brushes und Bilder benutzt werden und im Hintergrund vielleicht noch ein
Song läuft, könnte es dennoch knapp werden.

Wenn die Erstausgabe fertiggestellt ist, mußt Du SPÄTESTENS jetzt die 20 DM
Sharewaregebühr an mich schicken. Dies ist ein "`MUSS"' und keine freiwillige
Leistung, ansonsten ist "`\Look"' auf dem Magazin eine Raubkopie!! Wenn Du das
nicht wußtest, solltest Du besser einmal das erste Kapitel über die
Kopierbestimmungen lesen, denn Unwissenheit schützt nicht vor Strafe! Sobald ich
die Sharewaregebühr bekommen habe, wirst Du bei mir registriert. Bitte gebe dazu
auch unbedingt die Bezugsquelle und den Preis (der 5 DM nicht übersteigen darf)
Deines Magazines an.

\section{Versionsunterschiede}\index{Versionen}

\subsection{Neuerungen der Version 3.5}\index{Look-Version 3.5}

\begin{itemize}

\item{NEU: dynamisch verwaltetes Textbuffer-System (einstellbare Größe)}
\item{NEU: Optionen WIDTH und HEIGHT zum Einstellen der Screenbreite und -höhe}
\item{NEU: Option SCRMODE zum Einstellen des Bildschirmmodus}
\item{NEU: Optionen NOTITLE und NOGADGETS zum Ausschalten der Titelleiste und
der Gadgetleiste, so daß nun auch der ganze Screen zur freien Verfügung
stehen kann}
\item{NEU: Befehl "`FO"' (format) zum Ausrichten von Text-Anklickfeldern}
\item{NEU: Befehle "`IX"' (increase xpos) und "`IY"' (increase ypos), um die aktuelle
x- und y-Position des Textes relativ zu ändern, z.~B. um zwei Spalten gleich
auszurichten}
\item{NEU: TeX-Anleitung}
\item{NEU: "`iff.library"' zum problemlosen Anzeigen von IFF-Bildern und Brushes}
\item{NEU: Scrolling wird jetzt immer ohne Titel- und Gadgetleiste ausgeführt}
\item{VERBESSERUNG: Die jeweilige Inhaltsseite wird nun direkt angezeigt. Es wird
nicht mehr dorthin "`geblättert"'}
\item{VERBESSERUNG: größere Unterstützung von OS2.04- und OS 3.0-Routinen
(sofern vorhanden)} 
\item{VERBESSERUNG: Die Schrift in den SE-Boxen berücksichtigt nun die aktuelle
Vorder- und Hintergrundfarbe}
\item{VERBESSERUNG: Überarbeitet wurden Konfigurationsfenster, die Hilfe und das
Ausblenden}
\item{BUGFIX: einige Bilder und Programme konnten in einem Menü zwar
angewählt, aber nicht angezeigt bzw. gestartet werden}
\item{BUGFIX: Jetzt Fehlermeldung, wenn Brush nicht auf die Seite paßt}
\item{BUGFIX: Der Look-eigene Farbrequester wurde nicht korrekt angezeigt}
\item{BUGFIX: Nun wird es richtig abgefangen, wenn kein Speicher mehr für den
Scrollmodus vorhanden ist}
\item{SORRY: ColorCycling steht zur Zeit nicht mehr zur Verfügung, wegen der
Neuprogramierung mit der "`iff.library"'}
\end{itemize}


\subsection{Neuerungen der Version 3.1}\index{Look-Version 3.1}

\begin{itemize}
\item{NEU: Befehl "`BP"'. Mit ihm kann man Anklickzeilen und Icons einen
3D-Rahmen geben. Dabei sind drei verschiedene Varianten möglich.}

\item{NEU: Im  Konfigurationsfenster   kann   man   nun   zwischen   meinen   eigenen
 Scrollroutinen  und den System-Scrollroutinen wählen. Die ersteren sind
normalerweise viel flüssiger, während die anderen den Vorteil besitzen,
systemkonformer zu sein.}

\item{NEU: Fünf Routinen wurden aus Geschwindigkeitsgründen in Assembler
 neugeschrieben, z.~B. die  Routine,  die  einen  Text  auf  das  Vorkommen  von
 In"-halts"-ver"-zei"-ch"-nis-Befehlen  prüft  und die Routine, die das Umschalten in den
 Scrollmodus vorbereitet.}

\item{NEU: Da der Reqtools-Filerequester  komfortabler  als  der
System-Filerequester ist, wird zuerst versucht, diesen zu öffnen.}

\item{NEU: Die Eingabe von einem Verzeichnisnamen führt nun zur  Öffnung  des
Filerequesters, statt zur Beendigung des Programms.}

\item{BUGFIX: Bei  fehlerhafter Anwendung eines Textbefehls wurde manchmal die
falsche Zeile angegeben.}
\item{BUGFIX: Die Parameter-Angabe bei IC und SB funktionierte mit mehreren
Spalten nicht korrekt.}
\item{BUGFIX: Nun dürfen auch mehrere Leerzeichen zwischen den Parametern bei
Textbefehlen stehen.}
\item{BUGFIX: Nach Befehlen wie EX oder SP wurde machmal ein fehlerhafter Titel
angezeigt.}
\item{BUGFIX: Wurde  die Vorder-  oder  Hintergrundfarbe  mit  ANSI-Sequenzen
geändert, so wurde immer angenommen, daß der Schatten ausgeschaltet war.}
\item{BUGFIX: CLI-Optionen  mußten  groß geschrieben  werden.}
\item{BUGFIX: Nicht-Textbefehle werden nun auch als solche erkannt. Das Zeichen
"`@"', das sonst Befehle einleitet, kann jetzt fast beliebig benutzt werden.}
\end{itemize}

\subsection{Neuerungen der Version 3.0}\index{Look-Version 3.0}

\Look V3.0 ist eigentlich keine neue Version zu 2.0, sondern ein völlig neues
Programm. Es wurde nicht am alten Quellcode "`herumgedoktort"', sondern alle
Routinen wurden neu erstellt. Folgendes hat sich dabei geändert:

\begin{itemize}
\item{NEU: \Look wurde vollkommen neu in der Programmiersprache Oberon-2 programmiert!
Die Vorteile sind eine viel höhere Programmstabilität, volle
Kompatibilität\index{Kompatibilität} zu allen AMIGA-Betriebssystemversionen ab
Kickstart 1.2, bessere Wartbarkeit und schneller Programmablauf bei kurzem
Programmcode. Darüberhinaus ist \Look jetzt residentfähig\index{Residentfähigkeit}.}

\item{NEU: \Look  macht  nun  keinen  Unterschied  mehr zwischen einem Text und einem
Script, es gibt also auch keine Unterscheidung mehr zwischen Text- und
Scriptbefehlen, sie heißen jetzt nur noch Textbefehle.}

\item{NEU: Anklickzeilen,  die  Texte,  Bilder oder Programme anzeigen bzw. starten,
werden nur noch von einem Textbefehl generiert (statt wie bisher von drei), denn
\Look erkennt nun automatisch beim Laden, ob es sich um einen Text, ein Bild oder
ein Programm handelt!}

\item{SORRY: Leider gibt es zum erstenmal ein Bruch in der Kompatibilität: alle
Textbefehle mußten geändert werden, in ihrem Namen und in ihren Parametern.
Dafür sind sie nun viel komfortabler und bleiben für die Zukunft auf jeden Fall
100 \% kompatibel. Ein Textparameter darf nun zum Beispiel Anführungszeichen
enthalten, um Leerzeichen zu verwenden. Nun sind auch mehrere Textbefehle in
einer Zeile möglich und damit auch zum Beispiel mehrere Anklickzeilen und
verschiedene Fonts in einer Zeile!}

\item{NEU: Neben einer "`Gehe-Zu-Zeile"'-Funktion gibt es nun auch eine
"`Gehe-Zu-Seite"'-Funktion.}
\item{NEU: Mit dem neuen "`HE"'-Befehl kann ein Brush als Logo benutzt
werden, d.h. es wird auf jeder Seite angezeigt, ohne daß es jedesmal neu geladen
werden muß.}

\item{VERBESSERUNG: Das Zurückblättern\index{Zurückblättern} ist nun genausoschnell wie
das Vorblättern, es gibt keine Verzögerungen mehr!}
\item{VERBESSERUNG: Die Filerequester besitzen nun auch ein Pattern-Gadget.}
\item{NEU: Bei  IFF-Bildern  kann  man nun über die [Tab]-Taste ein Color-Cycling
ein- und  ausschalten.}
\item{VERBESSERUNG: Die Funktion "`Textende"' arbeitet nun wesentlich
"`intelligenter"' und merkt sich bereits gelesene Seiten.}
\item{VERBESSERUNG:  \Look  benutzt  nun  keine  Hardwareregister  mehr, sondern
ausschließlich Systemfunktionen, um 100 \% systemkonform zu sein.}
\item{VERBESSERUNG: Unglaublich viele Detail-Änderungen wurden vorgenommen,  z.~B. wird
nun die Zeilennummer bei einem Textbefehl-Fehler mit ausgegeben und beim
Rücksprung in ein Inhaltverzeichnis wird der zuletzt gelesene Text farbig
markiert und die Screen-Zentrierung ist nun auch endlich drin und, und, und.}
\end{itemize}

\subsection{Umstieg auf die neuen Textbefehle}\index{Befehle}\index{Umwandlung von Befehlen}

Dieser Abschnitt behandelt die Umwandlung von Textbefehlen von \Look-Versionen
bis zur Version 2.0\index{Look-Version 2.0} auf die neuen Textbefehle ab Version 3.0.

Um die Umstellung auf die neue \Look-Version 3.0 zu erleichtern, möchte ich kurz
aufzeigen, welche V3.0-Befehle man für die alten benutzt und was sich dabei
geändert hat. Die größte Änderung --- neben den Textbefehlnamen --- ist der
Vorteil, daß die einzelnen Parameter nun durch ein Leerzeichen getrennt werden
und daß das ganze so viel übersichtlicher ist. Es werden auch keine
Hexadezimalzahlen mehr benötigt, alle Zahlen sind jetzt ausschließlich
Dezimalzahlen. Die Unterscheidung zwischen Script- und Textbefehlen entfällt,
denn \Look unterscheidet auch nicht mehr zwischen einer Scriptdatei und einem
normalen Text. Im einzelnen:

\begin{tabular*}{14.625cm}{|l|l|}\hline {\Look \bf{V2.0}} & {\Look \bf{V3.0}}\\
\hline @BIvhKommentar|Pfadname & @CO v h @SE Kommentar Pfadname\\
\hline @BLpfadname & @SP pfadname\\
\hline @BRxxxyyyPfadname & @SB x y pfadname [1]\\
\hline @COvh & @CO v h [2]\\
\hline @DIx & entfällt [3]\\
\hline @EXipfadname & @EX i pfadname [4]\\
\hline @ICxxxyyyPfadname1|XXPfadname2 & @IC x y pfadname1 pfadname2 [5]\\
\hline @KOvhKommentar & @CO v h Kommentar\\
\hline @LBn & nicht möglich [6]\\
\hline @LZ & ein [RETURN]-Zeichen reicht jetzt\\
\hline @NS & @NC\\
\hline @OZnyyFontname & @OF n y Fontname [7]\\
\hline @PPn & @PP n [8]\\
\hline @PRvhKommentar|Pfadname & @CO v h @SE Kommentar Pfadname [9]\\
\hline @SAx & @SH x\\
\hline @SCvhKommentar|Pfadname & @CO v h @SE Kommentar Pfadname [10]\\
\hline @SFrgbrgbrgbrgb & @PA r g b r g b r g b r g b [11]\\
\hline @SPn & @CN n\\
\hline @STn & @ST n\\
\hline @TAn & nicht mehr möglich\\
\hline @TBnn & entfällt [3]\\
\hline @TEvhKommentar|Pfadname & @CO v h SE Kommentar Pfadname [12]\\
\hline @UBtitel & @TI titel [13]\\
\hline @ZSn & @SF n [14]\\
\hline @ZZnn & @LF n\\
\hline
\end{tabular*}

[1] xxx: "`-01"' wird zu "`CENTER"', "`-02"' wird zu "`LEFT"', "`-03"' wird zu
"`RIGHT"'; yyy: "`-01"' wird zu "`UNDER"', "`-02"' wird zu "`OVERW"'.
[2] "`v"' und "`h"' werden jetzt in Dezimalzahlen angegeben, von 0--15.
[3] Der Befehl wird jetzt im Konfigurationsfenster eingestellt.
[4] i: Parameter "`2"' (Sicherheitsabfrage) wird zu "`1"', die alten Parameter
"`1"' und "`4"' werden nicht mehr unterstützt.
[5] Parameterumwandlung für "`xxx"' und "`yyy"' wie bei "`@BR zu @SB"', "`XX"'
entfällt, da  \Look jetzt automatisch den Dateityp erkennt.
[6] Hat eh nie richtig funktioniert! ;-(
[7] "`n"' darf jetzt sogar von 1--15 reichen; Fonts müssen jetzt aber für jeden
Text einzeln geöffnet werden.
[8] Es darf jetzt für jedes Programm ein "`@PP"'-Befehl erfolgen.
[9] \Look erkennt jetzt automatisch, daß es sich um ein Programm handelt.
[10] \Look erkennt jetzt automatisch, daß es sich um eine Scriptdatei handelt.
[11] "`r"',"`g"' und "`b"' werden jetzt in Dezimalzahlen angegeben, von 0--15.
[12] \Look erkennt automatisch, daß es sich um einen Text handelt.
[13] Wie alle Parameterwörter darf auch der "`titel"' jetzt von
Anführungszeichen umschlossen werden, um Leerzeichen zu benutzen.
[14] "`n"' darf jetzt von 0 bis 15 reichen.


\subsection{Nächste Version}

Ein Erscheinungstermin für die nächste Version ist noch völlig offen. Einige
Ideen schweben mir noch vor; ich nehme aber gerne weitere
Verbesserungsvorschläge und Anregungen entgegen.

\section{Tips \& Tricks}\index{Tips und Tricks}

\subsection{Schnellerer Bildschirmaufbau}

Unter Kickstart 1.2 und 1.3 ist die Text-Routine des Betriebssystems sehr lahm!
Deshalb sollten diese \Look-Benutzer auf jeden Fall Textbeschleuniger verwenden,
z.~B. "`TempoTopaz"', "`TurboTopaz"' (beide sind Freeware und auf Fred Fish 396
vorhanden) oder das bekannte "`SysFont"' verwenden, das auf diversen PD-Disketten
erhältlich ist.

Einen schnelleren Bildschirmaufbau beim Blättern erhält man, wenn man die
Überblendeffekte abschaltet (Taste [e] drücken).\index{Ueberblendeffekte@Überblendeffekte}
 
Für das Scrollen\index{Scrollmodus} gibt es zwei Möglichkeiten zur
Beschleunigung. Beide stellt man im Konfigurationsfenster ein: "`Eine Farbe
scrollen (schnell)"' statt "`Alle Farben scrollen (langsam)"' und "`Eigene
Scrollroutinen"' statt "`System-Scrollroutinen"'.

\subsection{Informationsfenster}

Ab der Version 3.5 gibt es das Informationsfenster. Die dargestellten
Informationen waren zuvor im Konfigurationsfenster enthalten, aber der Platz
reichte nicht mehr aus. Man ruft das Fenster mit der Taste [F1] auf. Neu sind
die Informationen zum Textbuffer.

\subsection{Zwei Fonts in einer Zeile}

Wer kennt nicht den tollen Effekt, wenn ein Satz mit einem großen, von einem
anderen Font stammenden Buchstaben anfängt? Auch mit \Look ist dieser Effekt
ohne weiteres möglich. Wir wollen nun den Anfang eines Märchens "`Es war
einmal..."' mit einem großen "`E"' anfangen lassen, den wir dem
"`frankfurter.font"' der Größe 16 entnehmen. Die restlichen Buchstaben sollen
mit dem "`topaz.font"' in der Größe 8 erscheinen. So geht es:

@OF 1 16 frankfurter.font @SF 1 E@IY 7 @SF 0 s war einmal...

Zuerst wird unser großer Font geöffnet und dann gesetzt. Mit ihm schreiben wir
den Buchstaben "`E"'. Der IY-Befehl erhöht die y-Position, so daß die Fonts auf
einer Linie erscheinen. Der Wert für den IY-Befehl muß ganz einfach ausprobiert
werden und hängt von den verwendeten Fontgrößen ab. Dann setzen wir wieder den
Topaz-Font und schreiben den Rest. Auch bei eingeschaltetem Schatten bleibt der
Wert für den IY-Befehl gleich.

\subsection{Scripts erstellen}

Wer schon einmal ein Inhaltsverzeichnis (Script) für \Look erstellt hat, weiß,
daß man öfters das Script ändern muß, weil da und dort noch einiges nicht
stimmt. Nun gibt es zwei Möglichkeiten, diese Prozedur zu beschleunigen. Als
erstes kann man mit dem CLI-Befehl "`resident"' \Look resident im Speicher
halten, denn \Look ist residentfähig und reentrant (für Programmierer). Nun muß
das Programm nicht mehr geladen werden, sondern wird bei jedem Aufruf aus dem
Speicher gestartet.
Die zweite Möglichkeit ist, die Iconify-Funktion zu benutzen. Man drückt die
Taste [y] und \Look öffnet ein Fenster oder ein AppIcon auf der Workbench (je
nach OS-Version). Dann ändert man das Script und klickt das AppIcon zweimal an
(beim Fenster die rechte Maustaste drücken), damit \Look zum Text zurückkehrt.
Dies funktioniert, da \Look bei einem Iconify alle Textspeicher aus dem
Textbuffer zurückgibt und der Text neu geladen werden muß.
 
\subsection{Ziffernblock}\index{Ziffernblock}

Das muß ich unbedingt noch erwähnen: Stolze Besitzer eines AMIGA´s mit
Ziffernblock können sich freuen: Mit den Ziffernblock-Tasten kann man
vorblättern, zurückblättern, an den Anfang oder an das Ende eines Textes
springen, auf Scrollen umschalten, Drucken, im Inhaltsverzeichnis Texte
auswählen und starten und sogar \Look beenden! Einfach ausprobieren!

\section{Sonstiges}

\subsection{Programmfehler}\index{Fehler}

Durch die Programmierung von \Look in der Programmiersprache Oberon-2 kann man
davon ausgehen, daß das Programm sehr stabil läuft. Natürlich wird das Programm
auch vor jeder Veröffentlichung ausgiebig getestet. Dennoch ist es
wahrscheinlich, daß in einem so komplexen Programm noch Fehler enthalten sind.
Solltest Du einen entdecken, dann zögere bitte nicht, mir den Fehler
mitzuteilen. Am besten wäre es, wenn Du mir den Text oder das Brush schickst,
bei dem der Fehler aufgetreten ist. Wichtig ist auch die Angabe Deiner
AMIGA-Ausstattung (welche Hardware, wieviel Speicher) und der genaue Zeitpunkt,
wann der Fehler aufgetreten ist. Bekannte Fehler gibt es im Moment nicht.

\subsection{Dankeschön}

An dieser Stelle möchte ich einigen Leuten danken!

\begin{itemize}
\item{Fridtjof Siebert für die Programmierung des tollen Oberon-2-Compilers auf
dem AMIGA}
\item{Dietmar Eilert für seinen tollen Shareware-Editor "`GoldED"', mit dem ich
u.~a. diesen Text schreibe!}
\item{Donald E. Knuth für sein wahnsinnig leistungsfähiges \TeX und Georg
Heßmann für die Portierung}
\item{Jan Geißler für sein tolles Shareware-Programm "`AddressMaster"' (übrigens
auch ein Oberon-2-Programm)}
\item{Nico Francois für die Entwicklung der "`PowerPacker.Library"' und
"`ReqTools.Lib"-ra"-ry"'}
\item{Christian A. Weber für die "`iff.library"'}
\item{Alle Leute, die so ehrlich waren und die Sharewaregebühr für \Look bezahlt
haben}
\item{Alle, die mir eifrig Fehler gemeldet haben (es sind leider zu viele, um
sie alle einzeln zu erwähnen ;-)}
\item{Frank Gärtner, der einen sehr positiven Testbericht über \Look für die
Amiga-Special 1/94 geschrieben hat!}
\item{An den APC, der \Look zum "`Programm des Jahres 1993"' gewählt hat.}
\item{An alle, die mich bei der Entwicklung dieses Programmes in jeglicher
Hinsicht unterstützt haben (und das waren nicht wenige!), besonders Gerd Frank
für die unermüdliche Public Relations und vieles mehr, Jörg Herz für
Unterstützung und das Lachen über müde ironische Gags (:-), Hanns Holger Rutz
für das unglaubliche Betatesting und für die noch unglaublicheren
Verbesserungsvorschläge (8-) und Randall Walter und Frau für die
Unterstützung!}
\item{Johannes Selbach, Kayhan Kaymak und Lars Koernig-Kron für alles\ldots}
\end{itemize}

Grüße gehen an (nach Vornamen sortiert):

Alain Declerq, Andreas Mauß, Andreas Müller, Andreas Neumann, AUGS, Axel
Melzener, Bernd Künnen, Carlo Zottmann, Carsten Drücke, Daniel Wicke, Georg
Windisch, Gerd Frank, Guido Roßmann, Hans Werner Schmitt, Holgi Rutz,
InfoXRedaX, Johannes Selbach, Jörg Herz, Jörn Udo Garbe, Karl Heinz Ruckmich,
Kayhan Kaymak, Lars Koernig-Kron, Markus Spiering, Peter Händel, Stefan Kremer,
Sven Drieling, Thomas Hartmann.

\newpage
\appendix

\section{Befehlsbeschreibungen}

\subsubsection{BP --- box parameter}\index{BP}

\begin{itemize}
\item{Zweck: Einstellen der Rahmenform für Anklicktexte und Icons}
\item{Syntax: @BP x}
\item{Beschreibung: Dieser Befehl kann  das  Aussehen  eines  Inhaltsverzeichnisses
verbessern. Er gibt die Rahmenform für Anklicktexte und Icons an. Normalerweise
besitzen diese ja keinen Rahmen, aber mit diesem Befehl kann man einen von drei
verschiedenen aussuchen. Ist x=1, dann wird ein 3D-Rahmen erzeugt, wie z.~B. alle
Icons auf der Workbench seit dem Betriebssystem 2.0 besitzen. Bei x=2 wird
dieser Rahmen invertiert dargestellt. Man kann beide Rahmenformen auch
kombinieren (x=3). Dieser Befehl gilt für alle folgenden "`@SE"'- und "`@IC"'-Befehle,
bis ein neuer folgt. Soll kein Rahmen erstellt werden, setzt man für "`x"' einfach
"`0"' ein (dies ist voreingestellt). Auch hier gilt: unbedingt alle Parameter
ausprobieren!}
\item{Beispiel: @BP 2    (ab jetzt invertierter 3D-Rahmen für Anklicktexte)}
\item{Siehe auch: @IC und @SE}
\end{itemize}

\subsubsection{CN --- column}\index{CN}

\begin{itemize}
\item{Zweck: Einstellen der Spaltenanzahl}
\item{Syntax: @CN x}
\item{Beschreibung: Mit diesem Befehl stellt man die Spaltenanzahl ein.  \Look
kann Texte in bis zu drei Spalten anzeigen, der Wert "`x"' darf also von "`1"' bis
"`3"' reichen. Wenn dieser Befehl nicht am Anfang eines Textes steht, sollte man
unbedingt zuvor einen @NC-Befehl ausführen, damit \Look bei der Spaltenberechnung
nicht durcheinander kommt. Voreingestellt ist der Wert "`1"', \Look benutzt also
die volle Seite. Bei einem Font der Größe 8 (z. B. topaz.font) dürfen im
Zweispaltenmodus allerdings nur noch 38 Zeichen in einer Zeile stehen, bei drei
Spalten sogar nur 25. (Für Mathe-Fans: die Formel lautet (640:fb):x = Anzahl
Zeichen (abgerundet), wobei "`fb"' die Fontbreite ist und "`x"' die Anzahl der
Spalten).}
\item{Beispiel: @CN 2 (setzt den Zweispaltenmodus)}
\item{Siehe auch: @NC}
\end{itemize}

\subsubsection{CO --- colour}\index{CO}

\begin{itemize}
\item{Zweck: Vorder- und Hintergrundfarbe bestimmen}
\item{Syntax: @CO v h}
\item{Beschreibung: Dieser  Befehl  setzt   die   Vorder-   und   Hintergrundfarbe,
entsprechend den Werten "`v"' und "`h"'. Ist "`v"' zum Beispiel "`3"' und "`h"'
"`2"', dann wird der Text in der Farbe 3 angezeigt, mit einem Hintergrund in der
Farbe 2. Wurde allerdings mit dem Befehl "`@SH"' der Schatteneffekt
eingeschaltet, dann wird die Hintergrundfarbe für den Schatten benutzt. Wurde
\Look mit vier Farben gestartet (voreingestellt), dann reichen die Werte für
"`v"' und "`h"' von "`0"' bis "`3"', bei acht Farben von "`0"' bis "`7"' und bei
16 Farben von "`0"' bis "`15"'.}
\item{Beispiel: @CO 1 3         (Vordergrund in Farbe 1, Hintergrund in Farbe 3)}
\item{Siehe auch: @SH}
\end{itemize}

\subsubsection{EX --- execute program}\index{EX}

\begin{itemize}
\item{Zweck: Ein Programm direkt starten}
\item{Syntax: @EX x programmname}
\item{Beschreibung: Mit diesem Befehl kann man ein Programm starten. Der
Parameter "`x"' gibt an, ob dabei eine Sicherheitsabfrage für den Benutzer
erfolgen soll. Dies geschieht, wenn "`x"' gleich "`1"' ist. Das Programm wird
direkt gestartet, sobald \Look diesen Textbefehl findet.}
\item{Beispiel: @EX 0 Workbench:System/Calculator   (Start ohne Abfrage)}
\end{itemize}

\subsubsection{FO --- format selectfields}\index{FO}

\begin{itemize}
\item{Zweck: Anklickfelder ausrichten}
\item{Syntax: @FO x}
\item{Beschreibung: Mit diesem Befehl kann man die Anklickfelder besser
ausrichten. Bei "`x=0"' wird das Anklickfeld --- wie üblich --- an der aktuellen
Textposition gesetzt. Bei "`x=1"' wird das Anklickfeld linksbündig, bei "`x=2"'
rechtsbündig und bei "`x=4"' zentriert angezeigt.}
\item{Beispiel: @FO 4 (die nächsten Anklickfelder erscheinen nun zentriert)}
\item{Siehe auch: @SE}
\end{itemize}

\subsubsection{HE --- headline brush}\index{HE}

\begin{itemize}
\item{Zweck: Ein Brush als Logo in der oberen Seitenhälfte anzeigen}
\item{Syntax: @HE vonSpalte anzSpalten pathname}
\item{Beschreibung: Mit diesem Befehl kann man sein Magazin viel
abwechslungsreicher gestalten. Er erlaubt das Setzen eines Brushes in die obere
Hälfte der Seite. Das kann man zwar auch mit dem "`@SB"'-Befehl erreichen, aber das
Besondere hierbei ist, daß dieses Brush von den nachfolgenden Seiten nicht
überschrieben wird! Der nachfolgende Text fängt also immer unter diesem Brush
an. Der Parameter "`vonSpalte"' gibt die Spalte an, auf der das Brush erscheinen
soll. Der Parameter "`anzSpalten"' gibt an, wieviele Spalten das Brush breit ist.
Einfacher wird es mit einem Beispiel: Unser Text besitzt drei Spalten. Nun soll
das Brush in der zweiten Spalte beginnen und eine Spalte breit sein, also ist
"`vonSpalte"' "`2"' und "`anzSpalten"' "`1"'. Der Text fließt automatisch um dieses
Brush herum! Folgende Kombinationen sind also denkbar: Im einspaltigen Text "`1 1"',
im zweispaltigen "`1 1"', "`1 2"' und "`2~1"', im dreispaltigen "`1 1"',
"`1 2"', "`1 3"', "`2 1"' , "`2 2"' und "`3 1"'. "`pathname"' ist der Dateiname
des Brushes. Das Brush wird automatisch in der Spalte zentriert. Achtung: Dieser
Befehl muß ganz an den Anfang eines Textes gesetzt werden! Es darf höchstens ein
"`@CN"'-Befehl vorangehen, um die Spaltenanzahl zu bestimmen, sonst gerät der
Seitenaufbau durcheinander.}
\item{Beispiele: @HE 3 1 Magazin:Logo/Leserbriefe.iff (funktioniert nur in
einem dreispaltigen Text, Brush erscheint in der rechten Ecke); @HE 1 1
Work:Gfx/Testbrush (dies ist die Standardanweisung für einspaltige Texte)}
\item{Siehe auch: @CN}
\end{itemize}

\subsubsection{IC --- icon}\index{IC}

\begin{itemize}
\item{Zweck: Brush zum Anklicken, um Text/Bild/Programm zu laden}
\item{Syntax: @IC x y pathname1 pathname2}
\item{Beschreibung: Anklickbare  Zeilen  müssen  nicht unbedingt Texte sein. Dieser
Befehl zeigt das angegebene IFF-Brush (pathname1) an, welches dann anklickbar
ist, um ein Text, Bild oder ein Programm (pathname2) zu laden. Es verhält sich
also wie ein Icon auf der Workbench. Die Parameter "`x"' und "`y"' können die
absoluten Pixelkoordinaten enthalten, an denen das Brush angezeigt werden soll.
Da diese Art der Positionierung aber sehr umständlich ist, kann \Look auch
relative Werte verstehen, in Form von Schlüsselwörter. Für "`x"' kann man die
Werte "`LEFT"', "`RIGHT"' und "`CENTER"' angeben, die das Brush linksbündig,
rechtsbündig oder zentriert erscheinen lassen. Der Parameter "`y"' kann die Werte
"`UNDER"' oder "`OVERW"' enthalten, je nachdem, ob der nachfolgende Text unter dem
Brush, oder ob der Text über das Brush geschrieben werden soll. Das Brush wird
dann an der aktuellen y-Position ausgegeben. Wenn das Brush einen 3D-Rahmen
bekommen soll, dann sollte ein entsprechender BP-Befehl vorangehen.}
\item{Beispiele: @IC 100 42 df0:brush.iff (zeigt das Brush an x=100, y=42 an),
@IC RIGHT UNDER GFX:Brush (Brush erscheint rechtsbündig, der nachfolgende Text
darunter), @IC 50 OVERW df0:g/b1 (Brush erscheint an x=50 und an der aktuellen
y-Position, nachfolgender Text erscheint über Brush)}
\item{Siehe auch: @BP und @SE}
\end{itemize}

\subsubsection{IX --- increase x-position of text}\index{IX}

\begin{itemize}
\item{Zweck: Erhöhung der x-Position}
\item{Syntax: @IX x}
\item{Beschreibung: Mit diesem Befehl kann man die x-Position
relativ verändern und dient zur pixelgenauen Positionierung eines Textes. Der
nachfolgende Text erscheint an der aktuellen x-Position plus dem angegebenen
Wert. Der Text muß in derselben Zeile wie der Befehl stehen und gilt auch nur
für diese Zeile.}
\item{Beispiel: @IX 100 Hier geht der Text weiter}
\item{Siehe auch: @IY}
\end{itemize}

\subsubsection{IY --- increase y-position of text}\index{IY}

\begin{itemize}
\item{Zweck: Erhöhung der y-Position}
\item{Syntax: @IY x}
\item{Beschreibung: Dieser Befehl ähnelt dem @IX-Befehl. Er gilt aber für
den ganzen nachfolgenden Text und nicht nur für den, der in derselben Zeile
steht. Der nachfolgende Text muß auch nicht unbedingt in derselben Zeile wie der
Befehl stehen. Eine praktische Anwendung wäre z.~B. die pixelgenaue Ausrichtung
der zweiten Spalte bei einem Zwei-Spalten-Text.}
\item{Beispiel: @IY 3}
\item{Siehe auch: @CN, @IX}
\end{itemize}

\subsubsection{LF --- linefeed}\index{LF}

\begin{itemize}
\item{Zweck: Setzen des Zeilenvorschubs}\index{Zeilenvorschub}
\item{Syntax: @LF x}
\item{Beschreibung: Dieser  Befehl setzt die Größe des Zeilenvorschubs.
Beim voreingestellten "`topaz.font"' in der Größe 8 werden zwischen zwei Zeilen
zwei Pixel frei gelassen, damit der Text besser lesbar ist (die meisten
Textanzeiger verwenden nur einen Pixel). Der Wert "`x"' wird aus der Größe des
Fonts (8) und dem sogenannten "`Durchschuß"' (2) berechnet, ist also
voreingestellt "`10"'. Bei einem "`frankfurter.font"' mit der Größe 16 und einem
Durchschuß von drei Pixeln wäre der Wert also "`19"'. Wird ein neuer Font mit
dem Befehl "`@SF"' gesetzt, dann wird automatisch ein neuer Wert "`x"' gesetzt
(Fontgröße+2). Wird für "`x"' der Wert "`-1"' angegeben, dann berechnet \Look
den Wert automatisch (aktuelle Fontgröße plus zwei Pixel).}
\item{Beispiel: @LF 12}
\item{Siehe auch: @SF}
\end{itemize}

\subsubsection{NC --- next side or next page}\index{NC}

\begin{itemize}
\item{Zweck: Beenden der aktuellen Spalte oder Seite}
\item{Syntax: @NC      (ohne Parameter)}
\item{Beschreibung: Dieser  Befehl  beendet immer nur die aktuelle Spalte. Wird der
Text nur einspaltig angezeigt (voreingestellt), dann wird natürlich die aktuelle
Seite beendet. Dieser Befehl ist nützlich, wenn man beim Schreiben eines Textes
die aktuelle Seite beenden will und nicht umständlich ausprobieren möchte,
wieviele Leerzeilen dafür nötig sind.}
\item{Beispiel: @NC}
\item{Siehe auch: @CN}
\end{itemize}

\subsubsection{OF --- open font}\index{OF}

\begin{itemize}
\item{Zweck: Öffnen und Bereithalten eines Fonts}
\item{Syntax: @OF n y fontname}
\item{Beschreibung: Dieser  Befehl öffnet einen Font, der sich auf Diskette oder im
Speicher befindet. \Look kann maximal 16 verschiedene Fonts pro Text verwalten.
Um sie zu unterscheiden, muß man beim Öffnen eines Fonts eine sogenannte
Registernummer angeben; sie darf von 1 bis 15 reichen ("`0"' ist bereits mit dem
topaz.font in der Größe 8 belegt). Anhand dieser Nummer kann man den Font dann
mit dem Befehl "`@SF"' benutzen. Wird ein neuer Text geladen, so werden die alten
Fonts gelöscht, d.h. man muß die gewünschten Fonts in jedem Text neu öffnen.
\footnote{Sorry, aber es geht nicht anders, bedingt durch das offene Konzept von \Look, so
daß zum Beispiel jederzeit eine weitere Inhaltsdatei geladen werden kann!} "`n"'
ist die gewünschte Registernummer, "`y"' gibt die Höhe des Fonts an und
"`fontname"' ist der komplette Fontname, also auch mit dem Zusatz "`.font"'.
Hinweis: In einem Text darf man einen Font nur einmal mit derselben
Registernummer öffnen!}
\item{Beispiele: @OF 1 12 diamond.font, @OF 15 8 pearl.font}
\item{Siehe auch: @SF}
\end{itemize}

\subsubsection{PA --- palette}\index{PA}

\begin{itemize}
\item{Zweck: Einstellen der Screenfarbe}
\item{Syntax: @PA r1 g1 b1 r2 g2 b2 r3 g3 b3 r4 g4 b4 [...]}
\item{Beschreibung: Dieser Befehl ändert die Screenfarben.  Dazu  muß  man  einfach
nacheinander die Rot-, Grün- und Blauwerte der einzelnen Farben angegeben. Sie
dürfen jeweils von "`0"' bis "`15"' reichen. Die Anzahl der Werte hängt natürlich
davon ab, wieviele Farben der \Look-Screen besitzt (voreingestellt vier, also
müssen vier mal drei gleich zwölf Parameter angegeben werden). Um es ganz
deutlich zu machen: Wird \Look mit acht Farben gestartet, müssen 24 Parameter,
bei 16 Farben sogar 48 Parameter angegeben werden! Diesen Befehl sollte man
möglichst vermeiden, denn jeder besitzt seine eigenen Lieblingsfarben, die in
der Konfigurationsdatei mit abgespeichert werden. Eine sinnvolle Anwendung wäre
das Ändern der Screenfarben beim Anzeigen eines Brushes, das andere Farben
verwendet als der \Look-Screen. Hinweis: Wird ein neuer Text geladen, dann setzt
\Look wieder die Farben auf die ursprünglichen Werte.}
\item{Beispiel: @PA 7 7 7 0 0 0 15 15 15 6 8 11 (\Look mit vier Farben)}
\item{Siehe auch: "`Konfigurationsfenster"'}
\end{itemize}

\subsubsection{PP --- program parameter}\index{PP}

\begin{itemize}
\item{Zweck: Parameter setzen für ein zu startendes Programm}
\item{Syntax: @PP x}
\item{Beschreibung: Wurde  mit dem Befehl "`@SE"' eine Anklickzeile definiert, die ein
Programm starten soll, dann hat man sich sicherlich gefragt, wie man den
entsprechenden Parameter setzen kann. Nun, mit diesem Befehl ist es möglich! :-)
\Look bietet zur Zeit nur einen einzigen Parameter an, nämlich wenn man für "`x"'
"`1"' angibt, dann wird vor dem Starten des Programmes eine Sicherheitsabfrage
ausgeführt. Ist der Parameter x=0, dann gibt es keine Abfrage.}
\item{Beispiel: @PP 1}
\item{Siehe auch: @EX}
\end{itemize}

\subsubsection{SB --- show brush}\index{SB}

\begin{itemize}
\item{Zweck: Anzeigen eines Brushes}
\item{Syntax: @SB x y pathname}
\item{Beschreibung: Dieser Befehl lädt das angegebene Brush und zeigt es direkt an.
Die Parameter sind exakt dieselben wie bei dem Befehl "`@IC"'. Der einzige
Unterschied besteht darin, daß dieses Brush nicht zum Anklicken ist, sondern zur
Auflockerung des Textes dient.}
\item{Beispiel: @SB RIGHT 100 Magazin:Brushes/1}
\item{Siehe auch: @IC}
\end{itemize}

\subsubsection{SE --- select text, picture or program}\index{SE}

\begin{itemize}
\item{Zweck: ein anklickbares Feld generieren}
\item{Syntax: @SE text pathname}
\item{Beschreibung: "`@SE"'  ist  augenscheinlich  der wichtigste Befehl, wenn man ein
Inhaltsverzeichnis erstellen will. Er generiert nämlich eine anklickbare Fläche,
die, wenn sie angeklickt wird, \Look veranlaßt, ein Text oder ein Bild anzuzeigen
oder ein Programm zu starten! Dazu gibt man in "`text"' den Text an, der später im
Menü erscheinen soll. "`pathname"' ist der komplette Dateiname eines Textes,
Bildes oder Programmes. \Look erkennt beim Laden automatisch, ob es sich um einen
Text, ein Bild oder ein Programm handelt. Dies muß also nicht mehr extra
angegeben werden\footnote{Dies war bis zur Version 2.0 der Fall.}. Zwei kleine
Einschränkungen gibt es: Es dürfen maximal 300 Anklickzeilen pro Text definiert
werden und der angegebene Dateiname darf maximal 80 Zeichen umfassen. Das dürfte
wohl ausreichen :-) Mit dem "`@BP"'-Befehl kann man für die anklickbare Fläche
auch einen 3D-Rahmen erzeugen lassen.}
\item{Beispiele: @SE ``Die neue Look-Dokumentation''
DH0:Look/LookV3.1/Bedienung, @SE ``Das exklusive A5000-Bild''
DF0:Bilder/A5000.iff, @SE ``MuchMore - ein toller Textanzeiger'' :c/MuchMore}
\item{Siehe auch: @BP und "`Magazin-Erstellung"'}
\end{itemize}

\subsubsection{SF --- set font}\index{SF}

\begin{itemize}
\item{Zweck: Setzen eines zuvor geöffneten Fonts}
\item{Syntax: @SF n}
\item{Beschreibung: Mit  diesem  Befehl  kann  man  einen zuvor mit dem Befehl
"`@OF"' geöffneten Font benutzen. Um also eine andere Schrift in  einem
Text zu verwenden, muß der Font zuvor mit "`@OF"' geöffnet und mit "`@SF"' gesetzt
werden. "`n"' ist die Registernummer, die beim "`@OF"'-Befehl benutzt wurde und darf
von 0 bis 15 reichen. Register 0 ist bereits mit topaz.font, Größe 8, belegt.}
\item{Beispiel: @SF 1 (von nun an wird der Font in Register 1 benutzt)}
\item{Siehe auch: @OF}
\end{itemize}

\subsubsection{SH --- shadow}\index{SH}\index{Schatten}

\begin{itemize}
\item{Zweck: Schatten ein- oder ausschalten}
\item{Syntax: @SH x}
\item{Beschreibung: Dieser  Befehl gibt an, wie die Vorder- und Hintergrundfarbe
in \Look behandelt werden soll. Voreingestellt ist, daß der Schatten
ausgeschaltet ist, so daß "`reverse Balken"' entstehen, wenn die Hintergrundfarbe
eine andere ist als die im Vordergrund. Wird der Schatten eingeschaltet (wenn
man für x ein "`y"' wie "`yes"' angibt), so wird die Hintergrundfarbe als
Schatteneffekt benutzt. Dabei darf die Hintergrundfarbe aber nicht 0 sein, sonst
sieht man ja den Schatten nicht! Gibt man für x "`n"' an (wie "`no"'), dann wird
der Schatten wieder ausgeschaltet.}
\item{Beispiel: @SH y  (schaltet den Schatten ein, Hintergrundfarbe darf nicht 0
sein!)} 
\item{Siehe auch: @CO}
\end{itemize}

\subsubsection{SP --- show picture}\index{SP}\index{Bildanzeige}

\begin{itemize}
\item{Zweck: Direktes Anzeigen eines IFF-Bildes}
\item{Syntax: @SP bildname}
\item{Beschreibung: Das direkte Anzeigen eines IFF-Bildes  ist  mit  diesem 
Befehl sehr einfach möglich. Es wird einfach der komplette Pfadname des Bildes
angegeben. Stößt \Look dann auf diesen Textbefehl, wird das Bild sofort
angezeigt. Wichtig ist, daß es sich um ein IFF-Bild handelt und daß nur die
Formate LowRes, MedRes, ExtraHalfBrite und HAM, alle auch mit Interlace,
unterstützt werden.}
\item{Beispiel: @SP df0:bilder/meinbild.iff}
\item{Siehe auch: "`Bildanzeige"'}
\end{itemize}

\subsubsection{ST --- style}\index{ST}\index{Ansi}

\begin{itemize}
\item{Zweck: Schriftstil ändern}
\item{Syntax: @ST x}
\item{Beschreibung: Mit   diesem   Textbefehl   kann   man   den   Schriftstil 
des nachfolgenden Textes ändern. Dies ist für alle Schreiber gedacht, die keinen
ansifähigen Editor besitzen. Für "`x"' kann man verschiedene Werte einsetzen:
"`1"' läßt den Text unterstrichen erscheinen, "`2"' schreibt den Text fett und
"`4"' setzt eine kursive Schriftart. Diese Werte kann man auch addieren, zum
Beispiel ergibt der Wert "`6"' eine fette und kursive Schriftart.}
\item{Beispiel: @ST 3 (der nachfolgende Text ist nun fett und unterstrichen)}
\item{Siehe auch: "`Ansi-Sequenzen"'}
\end{itemize}

\subsubsection{TI --- title}\index{TI}\index{Ueberschrift@Überschrift}

\begin{itemize}
\item{Zweck: Überschrift ändern}
\item{Syntax: @TI ueberschrift}
\item{Beschreibung: Dieser Befehl dient dazu, den  Screentitel  zu  setzen. 
Dieser gilt solange, bis entweder ein neuer "`@TI"'-Befehl erfolgt oder ein neuer
Text geladen wird. Um Leerzeichen im Titel verwenden zu können, muß man den ganzen
Text in Anführungszeichen setzen.}
\item{Beispiel: @TI ``Dies ist eine neue Überschrift!''}
\end{itemize}

\newpage
\section{Bisherige Versionen}

Aus Platzgründen habe ich diese Übersicht erheblich gekürzt. Einzelheiten können
bei der \Look V2.0-Dokumentation nachgelesen werden.

\begin{itemize}
\item{\Look V0.6 bis V1.17d (1. Februar bis 29. Juli 1992)\\ Erste Versionen in
GfaBasic compiliert und veröffentlicht}
\item{\Look V1.2 (29. August 1992, Fish 743)\\ \Look in Assembler umgesetzt}
\item{\Look V1.3 (26. September 1992)\\ Zurückblättern beschleunigt, Hardcopy, 
Farbrequester} 
\item{\Look V1.4 (4. Oktober 1992)\\ Load-While-Reading}
\item{\Look V1.5 (15. November 1992, Fish 808)\\ Scrollmodus, Suchfunktion}
\item{\Look V1.52 (22. November 1992)\\ Ansi im Scrollmodus möglich,
Gehe-Zu-Zeile}
\item{\Look V1.6 (17. Januar 1993, Fish 816)\\ Brushes anklickbar, ZZ}
\item{\Look V1.7 (21. Februar 1993)\\ Default-Tool/ToolTypes, Filerequester}
\item{\Look V1.8 (3. April 1993)\\ Konfiguration, CO, ST, PP, Cursorsteuerung im
Inhalt} 
\item{\Look V1.9 (16. Mai 1993, Fish 892)\\ 16-Farben-Unterstützung}
\item{\Look V2.0 (7. August 1993, Fish 919, Time 220)\\ Iconify-AppIcon, Texte speichern}
\item{\Look V3.0 (1. März 1994, Time 295)\\ siehe "`Neuerungen der Version 3.0"'}
\item{\Look V3.1 (23. März 1994)\\ siehe "`Neuerungen der Version 3.1"'}
\item{\Look V3.5 (6. Juni 1994)\\ siehe "`Neuerungen der Version 3.5"'}
\end{itemize}

\newpage
\section{Ansi-Sequenzen}\index{Ansi-Sequenzen}
 
\Look versteht auch sogenannte Escape-Sequenzen, die von einigen Editoren
unterstützt werden. Damit kann man Texte unterstreichen, fett schreiben, kursiv
anzeigen, andere Farben einstellen und vieles mehr. Diese Attribute können
selbstverständlich addiert werden. Folgende Escape-Sequenzen kann \Look
verstehen:

\begin{itemize}
\item{ESC[0m: normale Schriftart und Farben}
\item{ESC[1m: fett an}
\item{ESC[22m: fett aus}
\item{ESC[23m: kursiv aus}
\item{ESC[24m: unterstrichen aus}
\item{ESC[27m: Aufhebung des Tausches von Vorder- und Hintergrundfarbe}
\item{ESC[30m-[37m: Vordergrundfarbe setzen}
\item{ESC[3m: kursiv an}
\item{ESC[40m-[47m: Hintergrundfarbe setzen}
\item{ESC[4m: unterstrichen an}
\item{ESC[7m: Vorder- und Hintergrundfarbe tauschen}
\end{itemize}

Man kann diese Sequenzen auch kombinieren. Zum Beispiel ergibt ESC[3;33;42m eine
kursive Schriftart mit Farbe 3 für den Vordergrund und Farbe 2 für den
Hintergrund. ESC[1;4m setzt die Schriftart auf fett und unterstrichen. ESC[0m
stellt die normale Schriftart wieder ein. Für "`ESC"' muß man bei manchen Editoren
die [Esc]-Taste drücken. \Look erkennt eine Escape-Sequenz, wenn im Text die
ASCII-Codes "`27"' oder "`155"' auftauchen.

\newpage
\section{Fehlermeldungen}\index{Fehlermeldungen}

Die Fehlermeldungen sind in alphabetischer Reihenfolge sortiert. Wird eine
Zeilennummer mit angegeben, so ist die Zeile in der Datei gemeint (und nicht im
Sourcecode!!).

\begin{itemize}
\item{"`Bild konnte nicht angezeigt werden!"': Fehler beim Benutzen der
"`iff.library"'. Meistens war nicht genügend Speicher vorhanden oder die Datei
konnte nicht gefunden werden.}
\item{"`Brush paßt nicht auf die Seite (Zeile x)!"': Entweder war das Brush zu
groß, um auf der aktuellen Textposition ausgegeben zu werden, oder es wurden
unsinnige Werte beim IC- oder SB-Befehl angegeben.}
\item{"`Der 'HE'-Befehl muß am Textanfang stehen (Zeile x)!"': Der HE-Befehl
wurde nicht am Anfang eines Textes verwendet. Dies ist aber notwendig, sonst
gerät \Look bei der Spaltenberechnung außer Kontrolle.}
\item{"`Diskfont.Library nicht verfügbar in Zeile x!"'}
\item{"`Drucken ist fehlgeschlagen!"': Vermutlich konnte das angegebene Gerät
nicht angesprochen werden ("`PRT:"' für den Drucker an der parallelen
Schnittstelle), weil das "`printer.device"' oder das "`parallel.device"' oder
der Druckertreiber nicht verfügbar waren. Vielleicht wurde auch der Drucker
ausgeschaltet, oder das Papier ist alle...}
\item{"`Falsche Parameter bei 'HE'-Befehl in Zeile x!"': Vermutlich wurden die
Parameter vertauscht und eine falsche (nicht mögliche) Spaltenzahl angegeben.}
\item{"`Falsche Spaltenanzahl in Zeile x!"': Beim CN-Befehl wurde eine Spalte
angegeben, die kleiner als eins oder größer als drei ist.}
\item{"`Falsches Fontregister benutzt in Zeile x!"': Beim OF-Befehl muß die
Fontregister-Nummer zwischen eins und 15 liegen.}
\item{"`Fehler bei Hardcopy!"': Entweder war zu wenig Speicher vorhanden, oder
das "`printer.device"' war nicht verfügbar oder das zu druckende Bild war nicht
geeignet (meistens mit Kickstart 1.x).}
\item{"`iff.library nicht verfügbar!"': Entweder war sie wirklich nicht
verfügbar oder es wurde eine zu alte Version benutzt. Eine neuere müßte in der
\Look-Schublade vorhanden sein.}
\item{"`Konnte Datei nicht laden!"': Meistens war ein Dateiname angegeben, der
nicht existiert. Zuwenig Speicher kann auch die Ursache sein.}
\item{"`Konnte Font nicht setzen in Zeile x!"': Es wurde eine falsche Fontnummer
beim SF-Befehl angegeben. Sie ist entweder kleiner als Null oder größer als 15.
Vielleicht wurde auch noch kein Font in das angegebene Fontregister geladen.}
\item{"`Konnte Font nicht öffnen in Zeile x!"': Der OF-Befehl konnte den
gewünschte Font nicht öffnen, weil er unter diesem Namen oder mit dieser Größe
nicht existiert.}
\item{"`Konnte Konfiguration nicht laden!"': Entweder existiert die Datei
"`S:Look.Config"' nicht, oder es wurde mit der "`CONFIG"'-Option ein Dateiname
angegeben, der nicht existiert oder es wurde versucht, eine ältere
Konfigurationsdatei zu laden. Abhilfe in allen Fällen: Die Konfiguration
speichern und dann wieder versuchen, sie zu laden.}
\item{"`Konnte Konfiguration nicht speichern!"': \Look konnte die Datei unter
dem Namen "`S:Look.Config"' oder unter dem Namen, der mit der "`CONFIG"'-Option
angegeben wurde, nicht speichern. Unwahrscheinlich ist, daß zuwenig Speicher
vorhanden war.}
\item{"`Nicht genügend Chip-Speicher vorhanden!"': Vielleicht sollte man erst
einmal ein paar Fenster auf der Workbench schließen, das nervende Musikstück im
Hintergrund beenden oder die Textbuffer-Größe im Konfigurationsfenster
verringern. Vielleicht war auch kein größerer, zusammenhängender Speicher mehr
verfügbar. Ab OS 2.04 lohnt der Aufruf des CLI-Befehls "`Avail Flush"'.}
\item{"`Nicht genügend Speicher für Scrollmodus!"': Tja, dann wird man eben nur
blättern können... ;)} 
\item{"`Nicht genügend Speicher vorhanden!"': Siehe "`Nicht genügend
Chip-Speicher vorhanden!"'.}
\item{"`powerpacker.library nicht verfügbar!"': Entweder existiert die Library
wirklich nicht oder es wurde eine zu alte Version verwendet.}
\item{"`Printer.Device nicht gefunden!"': Entweder war es nicht im "`DEVS:"'-Verzeichnis
vorhanden, oder es wird gerade von einem anderen Programm benutzt.}
\item{"`Probleme mit dem console.device!"': Es konnte nicht geöffnet werden.
Dieser Fehler ist dermaßen unwahrscheinlich, daß vorher der Rechner hätte
abstürzen müssen!}
\item{"`Zuviele Anklickzeilen definiert!"': Es wurden mehr als 200 Anklickzeilen
in einer Datei definiert. Wie wäre es mit Untermenüs?}
\end{itemize}

\newpage
\section{CLI-Fehlercodes}\index{CLI-Fehlercodes}

Beendet sich \Look nach dem Starten selbst, kann dies verschiedene Ursachen
haben. Zu diesem Zweck wird eine Fehlernummer in das Shell-Fenster
ausgegeben. Die Zahlen haben folgende Bedeutung:

\begin{itemize}
\item{100: Es konnte keine Bitmap erstellt werden (zuwenig Chip-Speicher).}
\item{110: Das "`console.device"' konnte nicht geöffnet werden.}
\item{120: Es konnte kein Layer erstellt werden (zuwenig Chip-Speicher).}
\item{130: Es konnte keine LayerInfo erstellt werden (zuwenig Speicher).}
\item{140: Der Screen konnte nicht geöffnet werden (zuwenig Chip-Speicher).}
\item{150: Nicht genügend Speicher für die Anklickfelder vorhanden.}
\item{160: Das Fenster konnte nicht geöffnet werden (zuwenig Chip-Speicher).}
\item{170: Nicht genügend Speicher vorhanden.}
\end{itemize}

\printindex
\end{document}

