Flips

Empfehlungen zum Anlegen von Flips in den Anzeigeparametern 

Das ist ein Thema für Parametrierer, nicht für "normale" Endanwender! 

In a99/alcarta sind Flips so etwas wie Hyperlinks, deswegen sind sie meistens blau und unterstrichen. Aber Flips können nicht nur andere Texte aufrufen, sondern Funktionen oder Programme auslösen. Diese Funktionen müssen in der Makro-Sprache `FLEX` programmiert sein. 

Mit alcarta/a99 kann man alle Flips nach einem einheitlichen Schema anlegen 
Für DOS-Kenner: Der Abschnitt #-`` in den Anzeige-Parametern wird dadurch überflüssig. 

Jeder Flip benötigt 3 Dinge: 

1. Was man sieht (erscheint meistens blau und unterstrichen, wie auf einer Webseite) 
2. Die #uY-Variable verbindet 1. mit 3.: 
3. Die #uZ-Variable: enthält den eigentlichen Flip-Befehl 
   oder die FLEX-Befehlskette (siehe `FLEX-Doku`) 

Diese Variablen müssen nicht einzeln ihrem Zweck fest zugeordnet werden wie bei DOS. 

Beispiel: Inhalt von #31s (Sachschlagwort) soll in Flips aufgelöst werden. 
Es können beliebig viele Schlagwoerter darinstecken, getrennt durch "; " 
Der Flip soll jeweils auf die Registerstelle springen, wo das Schlagwort 
steht. 
Das geht nach diesem Rezept: 

   Empfohlene Standard-Zwischenteile (allgemein für alle Flips): 
69=160 t74 t97       Code 160, blau, Unterstreichung ein 
68=t96 t76 160       Unterstreichung aus, schwarz, Code 160 
.... 
#nr dY~ dZ~    alle Flips beseitigen (muß irgendwo am Anfang der Parameter stehen) 
....... 
#31s =sw e0      Kopiere #31s nach #usw 

#-S     Beginn der Schleife 
#usw e";" F" " p"?|3" =Z~       nächste #uZi praeparieren 
#usw e";" F" " y1 =Y~           zugehörige #uYi (y1 wegen Sonderzeichen!) 
#usw C e";" F" " p69 P68        Text ausgeben mit Begrenzern und Attributen 
#usw +S b";" f" " =sw           vorderen Teil abschneiden, zurueck nach #-S 

Es entstehen dann #uZ0, #uZ1, ... und #uY0, #uY1, ... Diese gehören paarweise zusammen. 
Code 160 ist ein unsichtbares ANSI-Zeichen und dient als Begrenzungszeichen. 
Statt dessen kann man auch die eckigen Klammern verwenden oder in der INI-Datei mit dem Befehl FlipMark=... ein anderes Zeichen mit dieser Wirkung versehen. 
Die Zwischenteile haben standardmäßig folgende Bedeutung (in d-rtf.apt): 

74 = blau 
76 = normal (schwarz) 
97 = Unterstreichen ein 
96 = Unterstreichen aus 

Die Schlagwörter erscheinen also untereinander, blau unterstrichen, und die Begrenzungszeichen ermöglichen, daß das Programm bei Mausklick die Zeichenkette exakt vom Bildschirm entnehmen und mit den #uY-Variablen vergleichen kann. Die zugehörige #uZ-Variable wird dann als Befehl ausgeführt. 
Folgende Befehle können in einer Z-Variable stecken: (Genau auf die Leerzeichen achten!) 

f per name..     FLEX-Findbefehl 
f #nnn           lade Satz nnn (interne Nummer) 

j xabc           Springe zu Label #-x in den Anzeigeparametern, in #u1 steht dann abc 

?|ixyz		   Zeige Register i an der Stelle xyz 

h name           Lade Hilfsdatei nameGER.RTF 

~prog            Starte das externe Programm prog 
                 (es kann fuer prog ein vollständiger Programmaufruf stehen, 
                 auch der Name einer Batchdatei, z.B.  cp.bat) 

x flextext       Hinter x kann eine ganze Befehlskette folgen. Dieses 
X Dateiname        mächtige Konzept nennt sich `FLEX` 
		   Bei 'X' wird die Befehlskette aus einer Datei entnommen. 

Wenn ein Flip nicht funktioniert: mit Alt+r in den Reservespeicher schauen, dort sieht man, was in #uYi und #uZi wirklich steht. Insbes. muß der Inhalt von #uYi exakt mit dem Fliptext in der Anzeige übereinstimmen. 

Für Testarbeiten
Start von Flips ohne Hyperlink: Die Flips unter #uX0 bis #uX9 können mit der Alt-Taste ausgelöst werden: man drückt Alt+5, um #uX5 auszuführen. 
Das ist natürlich eher etwas für Eingeweihte, aber diese können sich dann durch Direkteingabe eines Flip-Befehls (besonders mit den FLEX-Erweiterungen) das Leben u.U. sehr erleichtern... Die Variablen #uXi bleiben auch nach der Sitzung erhalten, sie werden in der eigenen `Phrasendatei` gespeichert. 
Die Eingabe eines solchen Flips wird noch erleichert durch diese Möglichkeit: Im Schreibfeld eingeben 
i FLEX-Befehlskette
Das landet dann in  #uXi und schon kann Alt+i gedrückt werden zum Auslösen. Die Flips 1 bis 8 sind mit den 8 sog. Flip-Buttons (links unter dem Auswahlfeld) gekoppelt. Mit dem FLEX-Befehl `flip` kann man die Belegung und Beschriftung dieser Buttons ändern.

?FLEX=h flex 
?FLEX-Doku=h flex 
?Phrasendatei=h phras 
?flip=h xflip