Exportieren kann man entweder direkt mit dem Befehl   write , der unmittelbar in die eingestellte Exportdatei schreibt, oder aber mit Hilfe von Export-Parametern über die  export -Befehle. Das zweite ist eine noch mächtigere Methode, dafür aber muß man sich mit der  Exportsprache  auskennen.

 

write  cstring        (Was ist ein  cstring ? )    avanti

So kann man am schnellsten Satzinhalte und beliebigen Text ausgeben. Der cstring kommt zusätzlich in die  iV !

Beispiel:

write "Titel: " #20 n "Verfasser: " #40 n "Ort: " #74 " (" #76 ")"

produziert eine Ausgabe in dieser Form:

 

   Titel: Hamlet

   Verfasser: Shakespeare, William

   Ort: London (1982)

 

Das  'n'  ist der Befehl für eine "neue Zeile".

Schlichte Exporte kann man hiermit ohne Exportsprache machen.

a99: Soll dabei von ASCII nach ANSI umcodiert werden, muß man das über die iV machen, also

            var cstring\ansi\write  statt nur   write cstring

avanti: Umcodierung mittels o-Befehlen (o.apt) erfolgt automatisch, falls nicht  set c0  gesetzt ist.

Eine bessere Möglichkeit: man kann einen speziellen Abschnitt in den Exportparametern für den write-Befehl nutzen. Dazu ist der Befehl   export wX   nötig.

 

Sonderformen:

 

write     bzw. in  avantiwrite iV

Inhalt der  internen Variablen  (iV) unverändert in die momentan aktive Ausgabedatei schreiben.

Mit if no ... kann man anschließend checken, ob das Schreiben gelungen ist.

Ist der Inhalt ein cstring, muß man ihn vorher noch mit  var  in richtigen Text verwandeln.

Die "momentan aktive Ausgabedatei" ist diejenige, die zuletzt mit  open x dateiname  geöffnet wurde oder gleichwertig mit  exp f dateiname .

write   NUR avanti

In avanti wird der iV-Inhalt als cstring interpretiert, d.h. nicht unverändert herausgeschrieben. Wenn es ein Textinhalt ist, muß er also in "..." oder '...' stehen.

Mit  switch c 1  kann ferner der Textinhalt beim Herausschreiben in ANSI (ISO8859-1) konvertiert werden.

Die "momentan aktive Ausgabedatei" ist am Anfang stdout, dann die jeweils zuletzt mit exp f dateiname geöffnete Datei.

Eine flexible Option ist ab V26 die Umcodierung mittels Parameter: siehe   export wX 

 

write iV   avanti

Der momentane  iV-Inhalt wird unverändert (insbes. ohne Umcodierung) ausgegeben.

 

write ^

Dasselbe, aber Strg-Kombinationen  werden durch die Steuercodes ersetzt (^A durch 1 etc.), genau umgekehrt wie beim Befehl   fetch 

Besonders nach einem Einlesen von Daten mit fetch ist das sinnvoll. Die Daten können zwischenzeitlich in ein Datenfeld, eine #u-Variable oder eine $-Variable kopiert und mit var #... bzw. var $... wieder in die iV zurückgeholt worden sein. Wegen der Umwandlung in ^A etc. geht kein Steuerzeichen dabei verloren.

Sinnvoll kann es auch sein, weil man auf diese Weise auch Codes unterhalb 32 direkt in einen Text einstreuen kann, die man nicht über die Tastatur eingeben könnte. z.B. ^I für das TAB-Zeichen, ^M^J  für 13 10 (Zeilenvorschub).

 

 

Hinweis: Mit  if no ...  kann man jeweils checken, ob das Schreiben nicht geklappt hat.

 

Write  cstring        (großes W)    NUR avanti

Gibt auf dem Kanal  stderr  aus, statt in die Standardausgabe bzw. Ausgabedatei.

 

Sonderfall:

write Ffilename        avanti

Inhalt der Datei  filename in die Ausgabe übernehmen.

filename  kann auch eine Internet-Adresse sein, wie beim Befehl   get I url .

Vorsicht: Ist die Datei länger als 2 Mio. Zeichen, wird sie abgeschnitten.

Achtung: Im Dateinamen / statt \ verwenden, oder aber \\

 

Hinweis:

Wenn man V14-Methodik hat (Stammsatz-Ersetzungen) und/oder V-Sequenzen (Unicode-Verfahren 1), dann kommen beim write-Befehl nicht die Klartexte bzw. die eigentlichen Zeichen heraus. Will man das erreichen, muß man vor den write-Befehlen mit 

 exp R   und/oder   exp V  

die Ersetzungen vornehmen lassen. Für das erste hat avanti  statt dessen den Befehl   set ai

 

Besonderheiten bei  avanti

Alle diese Sonder-Befehlswörter lassen sich bis auf den ersten Buchstaben verkürzen (nur der ist wirksam) und haben dann dieselbe Bedeutung wie die  Sondervariablen  in a99.

 

write internal              Interne Satznummer des aktuellen Satzes

 

write lastnum                 Anzahl Ergebnisse (Größe der aktuellen Erg.Menge)

 

write newline                 Neue Zeile (UNIX: Code 10, DOS: 13 10)

 

write primkey                 Primärschlüssel des aktuellen Satzes ausgeben

 

write relative              laufende Nr. (relative Position) des aktuellen Satzes innerhalb der Erg.Menge ausgeben

 

                Nur wenn eine .STL existiert:

 

write short                     Kurzzeile des Datensatzes (.STL-Eintrag) schreiben.