WaBis

walter.bislins.ch

UPN TeX Editor: Zwischenspeicher

Das oberste Element des Stacks lässt sich in einen Zwischenspeicher kopieren und von dort jederzeit wieder abrufen. Als Speicherwert sind beliebige Elemente oder ein String mit Operatoren möglich.

Es gibt drei Speicher-Operatoren:

x "name" def: Speichern des Stackelementes x in der Variablen name

"code" "name" defop: speichern des Codes code in der Variablen name

"name" del: Löschen der Variablen name

Variablen werden abgerufen, indem einfach ihr Name eingegeben wird.

Speichern eines Stackelementes in einer Speicherzelle

Im folgenden Beispiel wird ein Term aufgebaut und eine Kopie davon in der Speicherzelle mit dem Namen dp gespeichert:

Eingabe Button Stack
\phi(z,t) \phi(z,t)
2 2
\phi(z,t)
partn yx \partial^{2} \phi(z,t)
"dp" dp
\partial^{2} \phi(z,t)
def def "y" x \partial^{2} \phi(z,t)

Das Abspeichern kann auch in einer Zeile eingegeben werden: "dp" def

Achtung: Der Variablenname sollte in Gänsefüsschen gesetzt werden, sonst wird die entsprechende Speicherzelle abgerufen, anstatt dass der Name auf den Stack gesetzt wird! Die Gänsefüsschen können nur weggelassen werden, wenn es nocht keine Speicherzelle mit diesem Namen gibt.

Kopieren einer Speicherzelle auf den Stack

Um den Inhalt der Speicherzelle mit dem Namen dp auf den Stack zu kopieren, muss lediglich der Name dp als Operator eingegeben werden:

Eingabe Button Stack
dp \partial^{2} \phi(z,t)

Programmieren eines eigenen Operators

"code" "name" defop

Mit dem Operator defop können eigene Operatoren definiert werden. Im String code werden dazu eine Sequenz von Elementen (Symbolen, Operatoren usw.) eingegeben. Diese werden beim Abruf der Speicherzelle dann ausgeführt. In der Anzeige des Zwischenspeichers erkennt man eigene Operatoren daran, dass sie in Gänsefüsschen gesetzt sind.

Wenn man zum Beispiel einen Operator tomem (to memory) programmieren will, der den obersten Stack-Eintrag in die Speicherzelle mem kopiert, so kann man diesen wiefolgt erstellen:

"\"mem\" def" "tomem" defop

Achtung: Strings in Strings, wie im Beispiel der String "mem" müssen ein \ vor dem Gänsefüsschen haben.

Im Speicher steht danach:

tomem : ""mem" def"

Bei der Eingabe von tomem werden die Elemente im String, also "mem" und def, der Reihe nach ausgeführt. Dabei wird also zunächst der String (Name) "mem" auf den Stack gesetzt und dann der Operator def ausgeführt, welcher den Namen vom Stack entfernt und dann den obersten Stack-Eintrag in die Variable mem kopiert.

Anzeigen und Editieren des Zwischenspeichers

Mit der Checkbox ShowMem neben der Eingabezeile kann der Zwischenspeicher in einem Fenster angezeigt werden.

Die Anzeige des Speichers im Fenster kann direkt editiert werden! Es können auch neue Einträge direkt in das Fenster eingegeben oder kopiert werden! Über dieses Fenster kann man also den Speicher z.B. in ein Textfile kopieren und von dort wieder in den UPN-TeX Editor einfügen.

Neue Einträge müssen folgendes Format haben:

Variablenname : Wert

Ein Operator hat das Format:

Op-Name : "Code"
Weitere Infos zur Seite
Erzeugt Samstag, 20. Juni 2015
von wabis
Zum Seitenanfang
Geändert Dienstag, 14. Juli 2015
von wabis