Raw2Ent 1.9 Dokumentation - GEBRAUCH

[ Allgemeines | Argumente | Modi | Rückgabewerte | Raw2Ent.ced | Raw2Ent.rexx | Raw2EntCheck ]

[ Inhalt | zurück | vorwärts ]

Gebrauch


Allgemeines

Meta-Struktur Raw2Ent besteht aus vier Teilen: einem Assembler-Programm, zwei ARexx-Scripts und einer Batch-Datei.

Wenn Du einen Text bloß einmal konvertieren willst, brauchst Du das Assembler-Programm. Falls Du einen Text mehr als einmal konvertieren willst, weil Du an einem Projekt arbeitest, wie eine Web-Seite mit aktuellen Informationen, ist das ARexx-Script vielleicht nützlich.

Raw2Ent kann direkt mit Cygnus ED verwandt werden.

Raw2Ent wird eine Backup-Datei erzeugen, wenn Raw2Ent eine andere Datei überschreibt. Diese Funktion kann mit dem Schalter "NOBAK" oder "NOBACKUP" ausgeschaltet werden.

Wenn Du eine Datei an die andere anhängen willst, benutze die AmigaDOS-Konventionen. Bitte beachte, daß die "BACKUP"-Funktion sich in diesem Falle nicht auf die Zieldatei auswirkt!

Du kannst die RETURNBYTE-Option zur Implementierung des Check-Modus' von Raw2Ent in Editoren wie Cygnus ED benutzen.


Argumente

FROM Die Quelldatei (acht Bit breit)
TO Die Zieldatei (mit "Entity-Codes")
[Pfad ohne Dateinamen wird nicht akzeptiert]
DATA/K Definitions-Datei
ENT/S voreingestellter Modus
TAG/S aktiviert den TAG-Modus
SMART/S aktiviert den SMART-Modus
COPY=HTML/S aktiviert den HTML-Modus
UML=NOENT/S entfernt 8-Bit-Zeichen mit Zeichen und Worten
CODE/S konvertiert alle "Entity-Codes" mit Code-Nummern
(ausgenommen den vier "Spezial-Entities")
TOTALCODE/S konvertiert ALLE Zeichen mit Entity-Code-Nummern
INVERSE=ENT2RAW/S kehrt die Funktion von Raw2Ent in Ent2Raw um
CHECK/S überprüft, ob die Datei eine 7-Bit-Datei ist
COLCODE=COLORCODE/Swandelt Farb-Namen in Farb-Codes um
COLHTML=COLORHTML/Swandelt Farb-Codes in HTML-Farb-Namen um
COLNETSCAPE=COLORNETSCAPE/Swandelt Farb-Codes in NETSCAPE-Farb-Namen um
LISTENT=LISTENTITY/Slistet die Entity-Tabelle
LISTUML=LISTUMLAUT/Slistet die Umlaut-Tabelle
LISTCOL=LISTCOLOR/Slistet die Farb-Tabelle (HTML 3.2)
LISTNET=LISTNETSCAPE/Slistet die Netscape-Farb-Tabelle (ohne HTML 3.2)
NOBAK=NOBACKUP/S schaltet die Backup-Funktion ab
RETBYTE=RETURNBYTE/SGibt die Byte-Position als Return-Code im Check-Modus zurück

Modi

DATA-ModusArgumente
lädt eine Definitionsdatei und benutzt sie als Konvertierungstabelle. Wenn Du eine Tabelle selbst definieren willst, mußt Du den Anweisungen sehr exakt folgen!

Schreibe die Definitionsdatei mit einem ASCII-Editor wie folgt:
(8 Bit-Zeichen)=(Ausdruck)<LINE-FEED>
(8 Bit-Zeichen)=(Ausdruck)<LINE-FEED>
etc.
#<LINE-FEED>

Beispiel
©=Copyright in
®=Produced on
¶=<P>
#

MERKE:
DU MUSST DIESEN ANWEISUNGEN STRIKT FOLGEN.
Dies bedeutet:
  • Das 8-Bit Zeichen muß in der ersten Spalte sein
  • Das "=" Zeichen muß in der zweiten Spalte sein
  • Der Ausdruck ist frei und muß mit einem Zeilenvorschub enden
  • Keine leeren Zeilen sind erlaubt!
  • Am Ende der Definition muß ein "#" in einer einzigen Zeile stehen
ALLE UNDEFINIERTEN 8-BIT-ZEICHEN WERDEN MIT <NULL> REPRÄSENTIERT
D.h. sie werden gelöscht

ENT-ModusArgumente
ist der voreingestellte Modus und wandelt alle bekannten Zeichen in ihre "Entity-Codes" um.

TAG-ModusArgumente
wird die vier Zeichen: & < > " nicht konvertieren.
Dies ist für ASCII-Text brauchbar, der schon "Entity-Codes" oder "HTML-Tags" enthält. Das Zeichen "&" leitet gewöhnlich die "Entity-Codes" ein. Wenn Du den TAG-Modus benutzt, wird die Quelldatei nicht ein zweites Mal auf eine falsche Weise konvertiert, aber unberührte "Spezial-Zeichen" werden konvertiert. Desshalb solltest Du diesen Modus verwenden, wannimmer Du einen Text zum zweiten Mal umwandelst.

SMART-ModusArgumente
ist eine Kombination aus dem >ENT<-Modus und dem >TAG<-Modus.
HTML-Dateien z.B. werden ohne Zerstörung von HTML-Tags und "Character-Entity-Codes" konvertiert - wie im >TAG<-Modus. Der Unterschied ist, daß die Zeichen: < > & " werden konvertiert, wenn Raw2Ent "denkt", daß diese Zeichen keine Elemente von den "Character-Entity-Codes" oder HTML-Tags sind. Dies funktioniert am Besten, wenn die HTML-Datei "guten" Code enthält. Ich kann keine korrekte Interpreation von Raw2Ent garantieren, aber ich denke es funktioniert in 95% von HTML-Dateien ohne Fehler.
ACHTUNG !!!
Raw2Ent interpretiert in diesem Modus selbstständig!
HTML-Code, der z.B. Argumentangaben dieser Form enthält:

<TABLE BORDER=1 WIDTH=100%>

wird nicht richtig interpretiert. Es muß lauten:

<TABLE BORDER="1" WIDTH="100%">

HTML-Modus / COPY-ModusArgumente
wird einfach die Quelldatei in die Zieldatei kopieren ohne etwas zu ändern.
Diese Funktion ist implementiert, um das Programm in Skript-Dateien problemlos einsetzen zu können.
(siehe z.B. Raw2Ent.rexx)

NOENT-Modus / UML-ModusArgumente
ist ein Modus, welcher jedes 8-Bit-Zeichen durch Zeichen im 7-Bit-Bereich ersetzt, ohne "Character-Entity-Codes" zu verwenden.
Z.B.: "ü" wird in "ue" übersetzt und "£" wird in "pound" übersetzt und "©" wird in "(C)" übersetzt usw.. Es wird empfohlen dieses Argument in Verbindung mit dem "TAG"-Argument zu gebrauchen. Optional kannst Du >UML< (wie: Umlaute) benutzen, welches ein Synonym zu >NOENT< ist.
[Dieser Modus wurde inspiriert durch Andreas Bais]

CODE-ModusArgumente
wird alle "Entity-Codes" nicht mit "Entity-Namen" konvertieren, aber mit den "Entity-Code-Zahlen".
Dies mag brauchbar sein, wenn ein "Browser" nicht alle "Entity-Namen" unterstützt, jedoch die Zahlen. Merke: Auf der einen Seite sind die Code-Zahlen für Menschen schlecht zu lesen, doch auf der anderen Seite ist die Zieldatei vielleicht kürzer.
[Die kleinsten Dateien werden wohl im "TAG NOENT"-Modus erzeugt.]

TOTALCODE-Modus / TOTCODE-ModusArgumente
wird JEDES Zeichen mit seiner Code-Zahl umwandeln.
Der einzigste Grund für diesen Modus ist es den Menschen das Lesen der Textdatei schwer zu machen. Dieser Text wird nur von einem "HTML-Browser" lesbar angezeigt. Dieser Modus wird sicher die größte Zieldatei erzeugen!

INVERSE-Modus / ENT2RAW-ModusArgumente
konvertiert alle "Character-Entity-Codes" (Namen und Nummern) in das Amiga-ASCII - dem Latin-1-Standard. (ISO-8859-1)
So kannst Du Raw2Ent als ein Ent2Raw benutzen. Wenn Du den >TAG<-Modus setzt, wird dieser Modus die folgenden Zeichen nicht berühren: &gt; &lt; &amp; und &quot;.

CHECK-ModusArgumente
überprüft, ob dein Text pures 7-Bit-ASCII ist.
Raw2Ent wird dich über die Position, dem Zeichen und die Klassifikation der 8-Bit-Codes informieren. Raw2Ent unterscheidet die 8-Bit-Zeichen auf zwei Weisen: jene die innerhalb von SGML/HTML-Kommentaren und jene außerhalb der Kommentare sind.

Dieser Modus ist unterbrechbar mit dem Unterbrechungssignal CTRL+C.
Das Programm wird drei verschiedene Text-Datei-Stati unterscheiden:
Der Text enthält pures 7-Bit-ASCII$RC=0 (OK)
Der Text enthält bloß 8-Bit-Zeichen innerhalb von Kommentaren$RC=1
Der Text enhält 8-Bit-Zeichen$RC=5 (WARN)

COLORCODE-Modus / COLCODE-ModusArgumente
wandelt HTML- und Netscape-Farb-Namen in Farb-Codes um.
Merke
Nur Farb-Namen, die mit einem Gleichheitszeichen eingeführt werden, werden umgewandelt.

COLORHTML-Modus / COLHTML-Modus
COLORNETSCAPE-Modus / COLNETSCAPE-Modus
Argumente
konvertiert Farb-Codes (eingeführt durch ein "#") in Farb-Namen referierend zum HTML 3.2-Standard (COLORHTML) oder zur Netscape-Definition (COLORNETSCAPE).
Der COLORNETSCAPE-Modus wird ebenfalls die HTML 3.2-Farb-Namen benutzen, wenn ein Code nicht definiert ist. Deshalb ist eine Kombination beider Modi nicht notwendig und wenn Du dies tust, hat der COLORHTML-Modus die höhere Priorität.

LISTENT-Modus & LISTUML-Modus
LISTCOL-Modus & LISTNET-Modus
Argumente
Listet die Tabellen, die in Raw2Ent benutzt werden, in "stdout".
Dies ist nützlich, wenn Du wissen willst, wie Raw2Ent die Zeichen konvertiert.
Um eine vollständige Liste der Netscape-Farb-Codes und -Namen zu sehen, solltest Du Dich auf die "Raw2EntTables.doc"-Datei beziehen.
Argumente
LISTENTListet alle HTML 3.2-Entity-Namen und Zeichen
LISTUMLListet alle alternativen Zeichen (Umlaute)
LISTCOLListet alle HTML 3.2-Farb-Codes und -Namen
LISTNETListet alle NETSCAPE-Farb-Codes und -Namen ohne die HTML 3.2-Codes


Rückgabewerte

$RC=0(OK)alles in Ordnung!
$RC=5(WARN)falscher Gebrauch
$RC=10(ERROR)Fehler (Speicher)
$RC=20(FAIL)Fehler (Ein-/Ausgabe)

Raw2Ent.ced VER: 1.01 (26.12.96)

Raw2Ent.ced ist ein ARexx-Script für ASDG's CygnusED Professional Release 3.5 (oder später). Installiere das Script in CED's DOS/ARexx-Menü und benutze, indem Du den Anweisungen folgst. Markierung möglich!

Im CHECK-Modus wird das letzte 8-Bit-Zeichen angesprungen.


Raw2Ent.rexx VER: 1.4.1 (14.07.96)

Argumente

FROM/ADie Quelldatei (acht Bit breit)
TO/ADie Zieldatei (mit "Entity-Codes")
[Pfad ohne Dateinamen ist nicht akzeptiert]
TAG/Saktiviert den TAG-Modus
HTML/Saktiviert den HTML-Modus
ENT/Svoreingestellter Modus

Modi

siehe Raw2Ent-Gebrauch (2.1.)

Raw2Ent.rexx behandelt


Raw2EntCheck

Raw2EntCheck ist ein AmigaOS-Script, um ein Verzeichnis auf 7-Bit-Zeichen zu überprüfen.

Argumente

DIRDer Name des Verzeichnisses
ALL/SAlle Unter-Verzeichnisse werden einbezogen
CED/Sstarted Cygnus ED's "ED"-Kommando für Dateien mit 8-Bit-Zeichen

Infos

benutze CTRL+C um die Raw2Ent-Check-Prozedur zu unterbrechen
benutze CTRL+D um das AmigaOS-Script zu unterbrechen


Raw2Ent © 1996-98 Tamio Patrick Honma (BätchWare)
software@honma.de - http://www.honma.de/software/