=============================================================================== Dokumentation zum Programm `Text2DVI' - Version 1.03 28.06.1992 =============================================================================== Inhaltsverzeichnis 1. Allgemeines, Einleitung 2. Hinweise zur Installation 3. Aufruf des Programms, Optionen 3.1. Zu bearbeitende Textdatei 3.2. Konfigurationsdateien 3.3. Optionen 4. Arbeitsweise des Programms 4.1. Interpretation der Textdatei 4.2. Erzeugung der DVI-Datei 5. Fehlermeldungen 6. Verschiedenes 7. Autor, Nutzungsrechte =============================================================================== 1. Allgemeines, Einleitung Mit TeX und den zugeh”rigen Druckertreibern steht ein leistungsf„higes Satzsystem zur Verfgung. Oft sollen aber auch einfache Textdateien (z.B. Listings, Programm-Dokumentationen usw.) mit hoher Qualit„t ausgedruckt werden. Jeder Drucker sollte natrlich solche Dateien sofort ausdrucken k”nnen, aber die Einstellung von Papierformat, R„ndern, Zeichensatz usw. ist von Typ zu Typ verschieden, es stehen nur bestimmte Zeichens„tze in festgelegten Gr”áen zur Verfgung, eine Informationszeile mit Dateiname und Seitennummer wird nicht erzeugt - man ben”tigt also ein spezielles Druckprogramm. Zu einer funktionsf„higen TeX-Installation geh”rt nun ein Druckertreiber, mit dem die von TeX erzeugten DVI-Dateien auf dem jeweils vorhandenen Drucker ausgegeben werden k”nnen, das DVI-Format selbst ist ger„teunabh„ngig. Es stehen verschiedene Schreibmaschinenschriften zum Ausdruck zur Verfgung, mittels METAFONT k”nnen sie ggf. auch in beliebigen Gr”áen berechnet werden. Das Programm Text2DVI erzeugt aus einer Textdatei ohne Umweg ber TeX direkt eine DVI-Datei. Es kommt dabei mit nur einem Font aus, Grafik- und Sonderzeichen, die nicht in den Schreibmaschinen-Zeichens„tzen (z.B. cmtt10) enthalten sind, werden aus anderen Zeichen bzw. geraden Linien m”glichst gut zusammengesetzt. Da das Programm TFM-Dateien lesen kann, k”nnen auch Fonts verwendet werden, die nicht standardm„áig zu TeX geh”ren (z.B. cmpica). Jede Seite wird mit einer gerahmten Kopfzeile versehen, die u.A. den Namen der gedruckten Datei und die Seitennummer enth„lt. Das Seitenformat, die Auswahl von Zeichensatz und Vergr”áerung sowie weitere Programmfunktionen werden durch Optionen gesteuert. Immer wieder verwendete Einstellungen k”nnen dabei in Konfigurationsdateien abgespeichert werden. Text2DVI ist mit Turbo-Pascal 6.0 erstellt worden. Es arbeitet relativ schnell: auf einem 12 MHz AT-286 setzt es seinen eigenen Quelltext (68 KByte in 2300 Zeilen) in 3.5 Sekunden in eine 78 KByte groáe DVI-Datei mit 36 Seiten um. =============================================================================== 2. Hinweise zur Installation Das Programm Text2DVI stellt keine besonderen Anforderungen an die Hardware und l„uft hoffentlich auf jedem `Kompatiblen'. Es ist kein numerischer Coprozessor erforderlich. Als Betriebssystem muá mindestens MS-DOS 3.3 verwendet werden. Text2DVI wertet die Environment-Variable TeXTFM aus, um TFM-Dateien zu finden. Die entsprechenden Pfade sollten also mit SET TeXTFM= dort eingetragen werden, falls das nicht schon in der vorhandenen TeX-Installation gemacht wurde (emTeX z.B. verwendet dieselbe Environment-Variable). =============================================================================== 3. Aufruf des Programms, Optionen Alle Informationen, die Text2DVI fr seine Arbeit ben”tigt, werden dem Programm beim Aufruf in der Kommandozeile mitgeteilt, nach Programmstart werden keine Eingaben des Benutzers mehr erwartet. Das Programm kann somit auf einfache Weise auch im Batch-Betrieb verwendet werden. Eine kurze deutsche Hilfestellung zur Arbeitsweise des Programms und zu den Optionen erh„lt man durch folgenden Aufruf: Text2DVI ? Auáer dieser Hilfestellung erfolgen alle weiteren Meldungen des Programms in englischer Sprache (fr's TeX-Feeling ...). (bitte keine Prgel ... !) Es gibt drei verschiedene Arten von Argumenten in der Kommandozeile: 1.) Der Name der zu bearbeitenden Textdatei, 2.) Befehl zum Lesen einer Konfigurationsdatei und 3.) Optionen. Zwei Argumente mssen durch mindestens ein Leer- oder Tabulatorzeichen voneinander getrennt werden, innerhalb eines Arguments drfen weder Leer- noch Tabulatorzeichen stehen. Die Argumente werden der Reihe nach abgearbeitet. ------------------------------------------------------------------------------- 3.1 Zu bearbeitende Textdatei Der Name der zu bearbeitenden Textdatei erh„lt keine besondere Kennzeichnung, er muá vollst„ndig mit Erweiterung und ggf. Pfadangabe geschrieben werden. Sind mehrere Dateinamen angegeben worden, z„hlt der letzte Name. Beispiele: Text2DVI TEST --> Die Datei TEST. wird bearbeitet. Text2DVI TEST C:\DOCS\TEST.DOC --> Die Datei C:\DOCS\TEST.DOC wird bearbeitet. Es muá nicht unbedingt eine Textdatei zur Bearbeitung angegeben werden, wenn man z.B. nur das Seitenformat anpassen oder berprfen will (sinnvollerweise in Verbindung mit der Option /i). Nach Abarbeitung aller Optionen beendet das Programm dann seine Arbeit mit der Meldung: I have nothing to do! (Help: Text2DVI ?) Wenn die Textdatei bearbeitet wird, wird „hnlich zu TeX zur Information der Dateiname in runden Klammern und die aktuelle Seitennummer in eckigen Klammern angezeigt. Ist die Datei nicht vorhanden, bricht das Programm ab mit der Meldung: (# steht fr den Dateinamen) I can't find file `#'. ------------------------------------------------------------------------------- 3.2. Konfigurationsdateien Immer wieder verwendete Optionen k”nnen in Konfigurationsdateien gespeichert werden. Es handelt sich um einfache ASCII-Dateien, die z.B. mit einem Editor erstellt werden k”nnen. Argumente in Konfigurationsdateien mssen durch mindestens ein Leer- oder Tabulatorzeichen oder aber durch einen Zeilenvorschub (CR, danach eventuell LF) voneinander getrennt werden, Leerzeilen sind erlaubt. Es k”nnen Kommentare eingefgt werden: nach einem Prozent-Zeichen `%' wird der Rest der Zeile ignoriert. Aus einer Konfigurationsdatei heraus k”nnen keine weiteren gelesen werden, als Argumente drfen also nur Optionen und der Name der zu bearbeitenden Textdatei in Konfigurationsdateien stehen. Das Lesen einer Konfigurationsdatei wird veranlaát, indem dem Namen der Datei das Zeichen `@' vorangestellt wird. Ist der Name ohne Erweiterung geschrieben, wird .CFG angeh„ngt. Beispiele: Text2DVI @TEST --> Konfigurationsdatei TEST.CFG wird gelesen. Text2DVI @TEST.CNF --> Konfigurationsdatei TEST.CNF wird gelesen. Text2DVI @C:\CFGS\TEST. --> Konfigurationsdatei C:\CFGS\TEST. wird gelesen. Existiert im aktuellen Verzeichnis eine Datei Namens Text2DVI.CFG, so wird diese automatisch vor Auswertung aller brigen Optionen gelesen. Ist das nicht der Fall, wird in dem Verzeichnis, in dem das Programm Text2DVI.EXE steht, nach einer Datei Text2DVI.CFG gesucht und, falls vorhanden, ausgewertet. Wenn eine Konfigurationsdatei gelesen wird, wird zur Information der Dateiname in runden Klammern angezeigt. Ist die Datei nicht vorhanden, bricht das Programm ab mit der Meldung: (# steht fr den Dateinamen) I can't find file `#'. ------------------------------------------------------------------------------- 3.3. Optionen Optionen bestehen aus einem Schr„gstrich `/' oder einem Bindestrich `-' und einem Buchstaben, bei manchen Optionen muá noch ein weiterer Parameter # folgen (# kann z.B. fr eine L„nge oder einen Dateinamen stehen). Zwischen Buchstaben und # darf dann noch ein Doppelpunkt `:' oder ein Gleichheitszeichen `=' stehen. Gltige Schreibweisen fr Optionen sind z.B. Option /a: /a /A -a -A Option /f#: /f12 /F12 -f12 -F12 /f:12 /F:12 -f:12 -F:12 /f=12 /F=12 -f=12 -F=12 Ist eine Option falsch geschrieben und kann nicht ausgewertet werden, bricht das Programm ab mit der Meldung: (# steht fr die fehlerhafte Option) Error: Invalid Option `#'. (Help: Text2DVI ?) Manche Optionen arbeiten als Schalter und k”nnen nur gesetzt werden (z.B. /b), es ist dann unerheblich, ob die Option einmal oder mehrfach angegeben wurde. Andere (z.B. L„ngenangaben) berschreiben die zuvor gemachten Einstellungen. Zu beachten ist, daá die Option /f11 auch die Einstellung von /s# „ndert und sich die Optionen /l#, /w# und /x# bzw. /t#, /h# und /y# gegenseitig beeinflussen. /? Hilfestellung Option /? ------------------------------------------------------------------------------- Es wird eine kurze deutsche Hilfestellung zur Arbeitsweise des Programms und zu den Optionen angezeigt, das Programm wird darauf abgebrochen, d.h. es findet keine weitere Bearbeitung statt. Die Hilfestellung erh„lt man auch, wenn man als erstes Argument ein Fragezeichen alleine eingibt: Text2DVI ? /h Hilfestellung Option /h ------------------------------------------------------------------------------- Es wird eine kurze deutsche Hilfestellung zur Arbeitsweise des Programms und zu den Optionen angezeigt, das Programm wird darauf abgebrochen, d.h. es findet keine weitere Bearbeitung statt. Die Hilfestellung wird nur angezeigt, wenn /h alleine steht, normalerweise stellt /h# mit L„ngenangabe # die Texth”he ein. /i Informationen zum Format anzeigen Option /i ------------------------------------------------------------------------------- Diese Option arbeitet als Schalter. Wenn die Option /i gesetzt ist, werden nach Auswertung aller anderen Optionen einige Informationen zum Seitenformat und zum Zeichensatz angezeigt, das folgende Beispiel zeigt die Standardeinstellungen: Lines : 66 per page Characters : 86 per line Font & size : cmtt10 scaled 1000 Line skip : 3.6 mm (= 0.141 in, = 10.2 pt) Top margin : 25.4 mm (= 1.000 in, = 72.3 pt) Left margin : 25.4 mm (= 1.000 in, = 72.3 pt) Height : 246.2 mm (= 9.693 in, = 700.5 pt) Width : 159.2 mm (= 6.268 in, = 453.0 pt) Height (eff.) : 244.8 mm (= 9.636 in, = 696.4 pt) Width (eff.) : 158.7 mm (= 6.247 in, = 451.5 pt) Height und Width stehen fr die L„ngen, die durch die Optionen vorgegeben werden. Height (eff.) und Width (eff.) stehen fr die L„ngen, die sich unter Bercksichtigung der Breite eine Zeichens und Zeilenabstands tats„chlich ergeben. Es gilt immer: Height (eff.) <= Height, Width (eff.) <= Width. Die Kopfzeile hat die Breite Width. /o# #[.DVI] = Pfad/Name der DVI-Datei Option /o# ------------------------------------------------------------------------------- Normalerweise wird die DVI-Datei im aktuellen Verzeichnis erzeugt, ihr Name ergibt sich aus dem Namen der zu bearbeitenden Textdatei, der mit der Erweiterung .DVI versehen wird. Mit der Option /o# k”nnen diese Einstellungen ge„ndert werden. Die folgenden Beispiele zeigen die Wirkung der Option /o#, dabei sei TEST.TXT der Name der zu bearbeitenden Textdatei: Text2DVI TEST.TXT --> Die DVI-Datei ist TEST.DVI im aktuellen Verzeichnis. Text2DVI TEST.TXT /oD: --> Die DVI-Datei ist TEST.DVI im aktuellen Verzeichnis auf Laufwerk D:. Text2DVI TEST.TXT /oDVIS\ --> Die DVI-Datei ist DVIS\TEST.DVI, wenn DVIS ein Unterverzeichnis ist. Text2DVI TEST.TXT /oDVIS --> Die DVI-Datei ist DVIS\TEST.DVI, wenn DVIS ein Unterverzeichnis ist, sonst DVIS.DVI im aktuellen Verzeichnis. Text2DVI TEST.TXT /oDVIS.OUT --> Die DVI-Datei ist DVIS.OUT\TEST.DVI, wenn DVIS.OUT ein Unterverzeichnis ist, sonst DVIS.OUT im aktuellen Verzeichnis. Text2DVI TEST.TXT /oD:\DVIS\OUTPUT --> Die DVI-Datei ist D:\DVIS\OUTPUT\TEST.DVI, wenn D:\DVIS\OUTPUT ein Verzeichnis ist, sonst D:\DVIS\OUTPUT.DVI. /b Gr”áeren Zeilenabstand w„hlen Option /b ------------------------------------------------------------------------------- Diese Option arbeitet als Schalter. Normalerweise w„hlt Text2DVI einen relativ knappen Zeilenabstand. Wenn die Option /b gesetzt ist, werden gr”áere Abst„nde eingestellt, die ungef„hr denen entsprechen, die auch LaTeX verwendet. Die folgende Tabelle zeigt ein paar Beispiele: Zeichensatz Abstand ohne /b Abstand mit /b ----------------------------------------------------- cmtt8 scaled 1000 8.1 pt 9.6 pt cmtt9 scaled 1000 9.2 pt 10.8 pt cmtt10 scaled 1000 10.2 pt 12.1 pt cmtt10 scaled 1095 11.1 pt 13.2 pt cmtt12 scaled 1000 12.2 pt 14.6 pt /e Leerzeilen auch am Seitenanfang Option /e ------------------------------------------------------------------------------- Diese Option arbeitet als Schalter. Normalerweise unterdrckt Text2DVI bei der Ausgabe Leerzeilen am Anfang einer Seite, so daá die erste Zeile auf einem Blatt immer Text enth„lt. Wenn die Option /e gesetzt ist, werden alle Leerzeilen ausgegeben, auch wenn sie am Anfang einer Seite stehen. /n Kein Seitenkopf Option /n ------------------------------------------------------------------------------- Diese Option arbeitet als Schalter. Normalerweise erscheint auf jeder Seite eine gerahmte Kopfzeile, die u.A. den Namen der gedruckten Datei und die Seitennummer enth„lt. Wenn die Option /n gesetzt ist, wird diese Kopfzeile unterdrckt, es passen dann 2 bis 3 Zeilen mehr auf das Blatt. /g Deutscher Seitenkopf Option /g ------------------------------------------------------------------------------- Diese Option arbeitet als Schalter. Normalerweise wird in der Kopfzeile dem Dateinamen das Wort `File:' und der Seitennummer `Page:' vorangestellt. Wenn die Option /g gesetzt ist, werden stattdessen `Datei:' und `Seite:' verwendet. Ist gleichzeitig auch die Option /n gesetzt, bleibt /g ohne Wirkung. /c Seiten vorher durchz„hlen Option /c ------------------------------------------------------------------------------- Diese Option arbeitet als Schalter. Normalerweise macht Text2DVI nur einen Durchlauf durch die Textdatei und weiá somit am Anfang noch nicht, wieviele Seiten die Datei insgesamt enth„lt. Wenn die Option /c gesetzt ist, erfolgen zwei Durchl„ufe und in der Kopfzeile steht statt `Page: n' nun 'Page: n of m' und bei gesetzter Option /g statt `Seite: n' nun `Seite: n von m'. Dabei steht n fr die laufende Seitennummer und m fr die Gesamtzahl der Seiten. Weil zwei Durchl„ufe durch die Textdatei erfolgen, verdoppelt sich die Bearbeitungszeit. /s# Skalierung Option /s# ------------------------------------------------------------------------------- Mit der Option /s# kann die Skalierung des Zeichensatzes eingestellt werden. Normalerweise werden Zeichens„tze in ihrer Entwurfsgr”áe verwendet. Die Angabe der Vergr”áerung kann in Magsteps oder in Promille erfolgen. Ist # nur ein Zeichen, werden Magsteps angenommen, erlaubt ist dann # = 0, 1, 2,..., 9 fr einen scaled-Faktor von (1000 * 1.2 ^ #) oder # = h, H fr (1000 * 1.2 ^ 0.5). Umfaát # mehr als ein Zeichen, wird eine direkte Angabe des scaled-Faktors in Promille angenommen, /s1200 hat also denselben Effekt wie /s1. Zur Vermeidung von Rundungsfehlern sollten m”glichst Magsteps verwendet werden. Achtung: Die Option /f11 setzt automatisch auch /sh ! /f# Font Option /f# ------------------------------------------------------------------------------- Mit der Option /f# kann der Zeichensatz eingestellt werden. Text2DVI kennt bereits die Zeichens„tze cmtt8, cmtt9, cmtt10 und cmtt12, fr diese sind keine TFM-Dateien erforderlich. Diese Fonts k”nnen durch # = 8, 9, 10, 11 oder 12 angew„hlt werden; /f11 wird intern zu /f10 /sh umgesetzt, beeinfluát also auch die Skalierung. Andere Zeichens„tze (z.B. die Standard-TeX-Fonts cmtcsc10, cmsltt10, cmitt10 oder Nicht-Standard-Fonts wie z.B. cmpica) k”nnen angew„hlt werden, indem fr # der Name der zugeh”rigen TFM-Datei eingesetzt wird. Ist der Name der TFM-Datei ohne Erweiterung geschrieben, wird .TFM angeh„ngt. Ein Pfad kann vorangestellt werden, die TFM-Datei wird dann nur in dem angegebenen Verzeichnis gesucht. Wurde der Name ohne Pfadangabe geschrieben, wird die TFM-Datei zun„chst im aktuellen Verzeichnis gesucht, danach wird die Environment-Variable TeXTFM ausgewertet und alle darin genannten Verzeichnisse durchsucht (Mehrere Pfadangaben mssen durch jeweils ein Semikolon `;' voneinander getrennt sein). Wenn eine TFM-Datei gelesen wird, wird zur Information der Dateiname in runden Klammern angezeigt. Ist die Datei nicht vorhanden, bricht das Programm ab mit der Meldung: (# steht fr den Dateinamen) I can't find file `#'. Es k”nnen nicht beliebige Zeichens„tze bzw. TFM-Dateien in Verbindung mit Text2DVI verwendet werden: Die TFM-Datei muá kleiner als 28 KByte sein (was in der Praxis wohl keine Beschr„nkung darstellt), alle Zeichen mssen dieselbe Breite besitzen (Fixschriften), die Zeichen 0 bis 127 mssen im Font vorhanden sein, und Entwurfsgr”áe, Zeichenbreite und Zeichenh”he drfen nicht Null sein. Ist eine dieser Bedingungen nicht erfllt, reagiert Text2DVI mit einer der folgenden Fehlermeldungen und bricht die Ausfhrung ab: Error: TFM file contains more than # bytes! Error: Characters don't have the same width! Error: Font contains less than 128 characters! Error: Font is not suitable for use with Text2DVI! Einstellung des Seitenformats Optionen /w# /h# /l# /t# /x# /y# /a ------------------------------------------------------------------------------- Es gibt zwei verschiedene M”glichkeiten, das Seitenformat einzustellen: Zum einen kann man den linken Rand und die Textbreite als L„nge vorgeben, Text2DVI berechnet dann, wieviele Zeichen in eine Zeile passen (nachfolgend Modus A genannt). Zum anderen kann man die Zahl der Zeichen pro Zeile vorgeben, Text2DVI berechnet Rand und Textbreite, damit die Zeilen auf dem Blatt zentriert erscheinen (Modus B). Enstprechendes gilt fr den oberen Rand, die Texth”he und die Zahl der Zeilen pro Seite. Die Modi fr die horizontale und vertikale Richtung sind unabh„ngig voneinander. Im Modus A mssen L„ngenangaben gemacht werden: L„ngen bestehen aus Zahl und Einheit, es k”nnen die TeX-blichen Einheiten verwendet werden (cm, mm, in, pt, cc, dd und sp). Im Modus B muá die Papiergr”áe bekannt sein, die Formate A4 und A5 werden untersttzt. Die Grundeinstellung von Text2DVI ist Modus A mit 1 in Rand links und oben, Textbreite und -h”he sind so gew„hlt, daá sich auf Papier im Format A4 rechts und unten ebenfalls 1 in Rand ergibt. Das Programm geht davon aus, daá der DVI-Treiber ebenfalls links und oben einen Rand von 1 in einfgt (TeX-Standard). /w# Textbreite Option /w# ------------------------------------------------------------------------------- Die Option /w# stellt die Textbreite ein, # ist eine L„nge. Falls der Modus B aktiviert war, wird wieder Modus A fr die horizontale Richtung gew„hlt, der linke Rand erh„lt seinen alten Wert (vor Umschaltung in Modus B) zurck. /h# Texth”he Option /h# ------------------------------------------------------------------------------- Die Option /h# stellt die Texth”he ein, # ist eine L„nge. Falls der Modus B aktiviert war, wird wieder Modus A fr die vertikale Richtung gew„hlt, der obere Rand erh„lt seinen alten Wert (vor Umschaltung in Modus B) zurck. /l# Linker Rand Option /l# ------------------------------------------------------------------------------- Die Option /l# stellt den linken Rand ein, # ist eine L„nge. Falls der Modus B aktiviert war, wird wieder Modus A fr die horizontale Richtung gew„hlt, die Textbreite erh„lt ihren alten Wert (vor Umschaltung in Modus B) zurck. /t# Oberer Rand Option /t# ------------------------------------------------------------------------------- Die Option /t# stellt den oberen Rand ein, # ist eine L„nge. Falls der Modus B aktiviert war, wird wieder Modus A fr die vertikale Richtung gew„hlt, die Texth”he erh„lt ihren alten Wert (vor Umschaltung in Modus B) zurck. /x# Zeichen pro Zeile Option /x# ------------------------------------------------------------------------------- Die Option /x# stellt # Zeichen pro Zeile ein. Falls der Modus A aktiviert war, wird Modus B fr die horizontale Richtung gew„hlt. Linker Rand und Textbreite werden so eingestellt, daá die Zeilen auf dem Blatt zentriert erscheinen. /y# Zeilen pro Seite Option /y# ------------------------------------------------------------------------------- Die Option /y# stellt # Zeilen pro Seite ein. Falls der Modus A aktiviert war, wird Modus B fr die vertikale Richtung gew„hlt. Oberer Rand und Texth”he werden so eingestellt, daá die Zeilen auf dem Blatt zentriert erscheinen. /a Papierformat A5 Option /a ------------------------------------------------------------------------------- Diese Option arbeitet als Schalter. Um im Modus B die Zeilen auf dem Blatt zentrieren zu k”nnen, muá Text2DVI das Format des Papiers kennen. Normalerweise ist als Format A4 eingestellt. Wenn die Option /a gesetzt ist, wird als Format A5 angenommen. Diese Option schaltet den Modus nicht um, im Modus A bleibt sie ohne Wirkung. Beispiele zur Einstellung des Seitenformats: Beispiele ------------------------------------------------------------------------------- Text2DVI /i --> Format A4, auf jeder Seite 1 in Rand, Informationen anzeigen. Text2DVI /x80 /y66 /i --> Format A4, 80 Zeichen pro Zeile, 66 Zeilen pro Seite, zentriert, Info. Text2DVI /t20mm /h25.7cm /w170mm /l2cm /i --> Format A4, auf jeder Seite 2 cm Rand, Informationen anzeigen. Text2DVI /x80 /a /y60 /f8 /i --> Format A5, mit kleinem Zeichensatz, 80 Zeichen pro Zeile, 66 Zeilen pro Seite, zentriert, Informationen anzeigen. Text2DVI /x80 /i --> Format A4, horizontal Modus B mit 80 Zeichen pro Zeile zentriert, vertikal Modus A mit Grundeinstellung von 1 in oberen Rand, Info. Text2DVI /w170mm /x80 /y66 /l20mm /i --> Format A4, horizontal Modus A mit 20 mm linker Rand und 170 mm Textbreite, vertikal Modus B mit 66 Zeilen pro Seite zentriert, Informationen anzeigen. =============================================================================== 4. Arbeitsweise des Programms Im folgenden Abschnitt wird beschrieben, wie Text2DVI nach Auswertung der Optionen die zu bearbeitende Textdatei interpretiert und daraus eine DVI-Datei erzeugt. ------------------------------------------------------------------------------- 4.1. Interpretation der Textdatei Text2DVI verarbeitet Textdateien mit einem erweiterten 8-bit ASCII-Zeichensatz, die Belegung der Zeichen mit ASCII-Code > 127 entspricht dabei der Codepage 437 (manchmal auch als PC-8 Zeichensatz bezeichnet). Einige ASCII-Zeichen erfllen eine besondere Funktion: CR (Carriage Return, ASCII-Code 13), LF (Line Feed, ASCII-Code 10), FF (Form Feed, ASCII-Code 12), TAB (Tabulator, ASCII-Code 9) und EOF (End of File, ASCII-Code 26). Alle brigen werden als druckbare Zeichen behandelt und mehr oder weniger gut gelungen ausgegeben. Die Zeichen CR (13) und LF (10) bewirken einen Zeilenvorschub. Folgt auf CR ein LF bzw. auf LF ein CR, werden die Zeichen paarweise zusammengefaát, jedes Paar erzeugt nur eine neue Zeile. Folgende Kombinationen erzeugen also nur einen Zeilenvorschub: `CR', `LF', `CR LF' und `LF CR'. Zwei Zeilenvorschbe (d.h. eine Leerzeile) werden dagegen durch folgende Kombinationen erzeugt: `CR CR', `LF LF', `CR CR LF', `CR LF CR', `LF CR CR', `LF LF CR', `LF CR LF', `CR LF LF', `CR LF CR LF', `LF CR LF CR', `CR LF LF CR' und `LF CR CR LF'. Tabulatorzeichen TAB (9) werden zu Leerzeichen expandiert, Tabulatorstops sind in den Spalten (8 * i + 1) mit i = 1, 2, 3, usw. Leer- und Tabulatorzeichen am Ende einer Zeile werden ignoriert (d.h. Zeilen werden nicht gebrochen, wenn sie durch Leer- oder Tabulatorzeichen an ihrem Ende l„nger als die maximale Zeilenl„nge werden). Das Zeichen FF (12) bewirkt einen Seitenvorschub. Die aktuelle Zeile wird beendet und auf einer neuen Seite eine neue Zeile begonnen. Falls die Option /e gesetzt wurde, wird auf der neuen Seite eine Leerzeile ausgegeben, wenn auf FF noch ein Zeilenvorschub folgt! Das Zeichen EOF (26) wird als Ende der Textdatei interpretiert, nachfolgende Zeichen werden ignoriert. Eine Textdatei muá aber nicht unbedingt mit EOF beendet werden, Text2DVI liest dann bis zum physikalischen Ende der Datei. ------------------------------------------------------------------------------- 4.2. Erzeugung der DVI-Datei Jede Ausgabeseite wird mit einer gerahmten Kopfzeile versehen, es sei denn, die Option /n wurde gesetzt. In der Kopfzeile stehen der Name der Textdatei, die laufende Seitennummer und Datum und Uhrzeit der Textdatei (d.h. der Zeitpunkt der letzten Žnderung). Wurde die Option /c gesetzt, wird auáerdem noch die gesamte Seitenzahl angegeben, bei gesetzter Option /g erh„lt man eine Kopfzeile in deutscher Sprache. Die Kopfzeile hat ungef„hr folgendes Aussehen: ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿ ³ 28.06.1992 / 01:02:00 ³ Page: 1 ³ File: TEXT2DVI.PAS ³ ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ Bei Verwendung der Option /c erh„lt man: ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿ ³ 28.06.1992 / 01:02:00 ³ Page: 1 of 36 ³ File: TEXT2DVI.PAS ³ ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ Und bei Verwendung der Option /g (und /c) ergibt sich schlieálich: ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿ ³ 28.06.1992 / 01:02:00 ³ Seite: 1 von 36 ³ Datei: TEXT2DVI.PAS ³ ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ Bei Bedarf (groáe Zeichens„tze, starke Vergr”áerung, kleine Textbreite) wird die Kopfzeile in zwei Stufen verkrzt und sieht dann ungef„hr wie folgt aus: ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿ ÚÄÄÂÄÄÄÄÄÄÄÄÄÂÄÄ¿ ³ 28.06.1992 ³ 1 / 36 ³ TEXT2DVI.PAS ³ oder ³ ³ 12/36 ³ ³ ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ ÀÄÄÁÄÄÄÄÄÄÄÄÄÁÄÄÙ Wird die Bearbeitung einer Seite begonnen, wird „hnlich zu TeX auf dem Monitor eine eckige Klammer ge”ffnet und die Seitennummer angezeigt, am Seitenende wird die Klammer wieder geschlossen. Leerzeilen am Seiteanfang werden ignoriert, so daá die erste Zeile auf dem Blatt immer Text enth„lt. Ist die Option /e gesetzt, werden allerdings auch Leerzeilen am Seitenanfang ausgegeben. Zum Ende der Bearbeitung werden noch einige Daten wie Name und Gr”áe der DVI-Datei auf dem Bildschirm angezeigt. šberschreitet eine Zeile die maximale Zeilenl„nge, wird sie gebrochen. Die Fortsetzungszeile wird mit drei Punkten ... begonnen, um den den Umbruch anzuzeigen (die Punkte haben im Ausdruck die Breite von nur zwei Zeichen!). Zur Information des Benutzers werden bei jedem Umbruch auf dem Bildschirm ebenfalls drei Punkte ... angezeigt. Text2DVI kann beliebig lange Zeilen bearbeiten, es werden Fortsetzungszeilen in entsprechender Zahl erzeugt. Da nicht jedes Zeichen des erweiterten ASCII-Zeichensatzes in den TeX-Fonts vorhanden ist, mssen viele Zeichen aus anderen zusammengesetzt werden, was mehr oder weniger gut gelingt. Zeichen, die das Aussehen eines Textes wesentlich bestimmen, wurden m”glichst gut nachgebildet; andere wie z.B. die kleinen griechischen Buchstaben und einige mathematische Sonderzeichen sind lediglich `identifizierbar'. Die Grafik-Zeichen werden durch Linien erzeugt, in der gegenw„rtigen Version werden jedoch alle Zeichen nur mit einfachen Linien dargestellt. Control-Zeichen (ASCII-Codes 0 bis 31) werden durch berstrichene Groábuchstaben oder Ziffern dargestellt. Auf eine lange Beschreibung zur Umsetzung der einzelnen Zeichen wird hier verzichtet. Am Besten l„át man die nachfolgende Tabelle oder die Datei `Text2DVI.TBL' (die auch die Control-Zeichen enth„lt) einmal von Text2DVI bearbeiten und sieht sich das Ergebnis an. +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+-----------+ | | ! | " | # | $ | % | & | ' | ( | ) | * | + | , | - | . | / | 032 - 047 | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+-----------+ | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | : | ; | < | = | > | ? | 048 - 063 | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+-----------+ | @ | A | B | C | D | E | F | G | H | I | J | K | L | M | N | O | 064 - 079 | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+-----------+ | P | Q | R | S | T | U | V | W | X | Y | Z | [ | \ | ] | ^ | _ | 080 - 095 | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+-----------+ | ` | a | b | c | d | e | f | g | h | i | j | k | l | m | n | o | 096 - 111 | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+-----------+ | p | q | r | s | t | u | v | w | x | y | z | { | | | } | ~ |  | 112 - 127 | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+-----------+ | € | | ‚ | ƒ | „ | … | † | ‡ | ˆ | ‰ | Š | ‹ | Œ | | Ž | | 128 - 143 | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+-----------+ | | ‘ | ’ | “ | ” | • | – | — | ˜ | ™ | š | › | œ | | ž | Ÿ | 144 - 159 | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+-----------+ |   | ¡ | ¢ | £ | ¤ | ¥ | ¦ | § | ¨ | © | ª | « | ¬ | ­ | ® | ¯ | 160 - 175 | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+-----------+ | ° | ± | ² | ³ | ´ | µ | ¶ | · | ¸ | ¹ | º | » | ¼ | ½ | ¾ | ¿ | 176 - 191 | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+-----------+ | À | Á |  | à | Ä | Å | Æ | Ç | È | É | Ê | Ë | Ì | Í | Î | Ï | 192 - 207 | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+-----------+ | Ð | Ñ | Ò | Ó | Ô | Õ | Ö | × | Ø | Ù | Ú | Û | Ü | Ý | Þ | ß | 208 - 223 | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+-----------+ | à | á | â | ã | ä | å | æ | ç | è | é | ê | ë | ì | í | î | ï | 224 - 239 | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+-----------+ | ð | ñ | ò | ó | ô | õ | ö | ÷ | ø | ù | ú | û | ü | ý | þ | ÿ | 240 - 255 | +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+-----------+ =============================================================================== 5. Fehlermeldungen Im Folgenden sind alle Meldungen aufgefhrt, mit denen Text2DVI vorzeitig abbrechen kann. Laufzeitfehler, die vom Betriebssystem erkannt werden: ------------------------------------------------------ Error: File not found. Error: Directory not found. Error: Too many files opened. Error: Access denied. Error: Invalid drive. Error: Disk full. Error: I/O-Access failed. Error: Disk write protected. Error: Drive not ready. Error: Hardware failure. Error: Internal error. Fehler, die von Text2DVI erkannt werden: ---------------------------------------- Error: Invalid Option `#'. (Help: Text2DVI ?) Error: TFM file contains more than # bytes! Error: Characters don't have the same width! Error: Font contains less than 128 characters! Error: Font is not suitable for use with Text2DVI! Error: Internal character table corrupted! Sonstige Abbruchbedingunen (keine Fehler): ------------------------------------------ I can't find file `#'. I have nothing to do! (Help: Text2DVI ?) =============================================================================== 6. Verschiedenes Die Beschreibung des DVI- und TFM-Formats wurde den Dateien `dvi.tex' und `tfm.tex' entnommen, die sich auf dem FTP-Server rusinfo.rus.uni-stuttgart.de [129.69.1.12] im Verzeichnis /soft/tex/drivers/driv-standard/level-0 befinden. Neben der Beseitigung von hoffentlich nicht allzu zahlreich auftretenden Fehlern sind folgende Verbesserungen des Programms geplant (gleich nach Entwicklung des 48-Stunden-Tages!): - Zus„tzliche Verwendung mathematischer Schreibmaschinenschriften (wie z.B. cmtex10), falls vorhanden; damit k”nnen dann kleine griechische Buchstaben und viele mathematische Zeichen besser dargestellt werden. - Richtige Wiedergabe aller Grafik-Zeichen (ggf. mit doppelten Linien). Anregungen, Hinweise zu Fehlern und konstruktive Kritik bitte an die weiter unten genannte Adresse schicken, m”glichst per e-Mail. =============================================================================== 7. Autor, Nutzungsrechte Autor: Andreas Hitzke Buntenb”cker Straáe 37 W-3392 Clausthal-Zellerfeld InterNet-Adresse fr e-Mail: peah@ibm.rz.tu-clausthal.de Alle Rechte am Programm Text2DVI liegen beim zuvor genannten Autor. Das Programm und die Dokumentation wurden nach bestem Wissen erstellt und mit Sorgfalt getestet und geprft, dennoch sind Fehler nicht auszuschlieáen. Es wird keine Garantie, weder ausdrcklich noch angedeutet, fr bestimmte Eigenschaften oder fr eine fehlerfreie Funktion des Programms gegeben. Fr Folgen und Sch„den, die direkt oder indirekt durch Benutzung des Programms enstehen, wird vom Autor weder Verantwortung noch Haftung bernommen. Das Risiko tr„gt allein der Benutzer des Programms. Das Programm Text2DVI kann frei benutzt werden. Es darf kopiert und weitergegeben werden, wenn dies unentgeldlich oder h”chstens zum Selbstkostenpreis (fr Material und Versand) erfolgt und die drei Dateien Text2DVI.EXE, Text2DVI.DOC und Text2DVI.TBL zusammen und in unver„nderter Form weitergegeben werden (ggf. zusammengefaát in einer Archiv-Datei). Das Programm darf zusammen mit anderen Programmen oder Programm-Paketen vertrieben werden, solange die voranstehenden Bedingungen nicht verletzt werden. Die Verbreitung des Programms ber elektronische Netze, Mailboxen o.„. ist ausdrcklich erwnscht. =============================================================================== Ende der Dokumentation zum Programm `Text2DVI' - V 1.03 28.06.1992 ===============================================================================