xtem — TEX-Menü für X Window System

G. Lamprecht, W. Lotz, R. Weibezahn^{∗} IWD, Universität Bremen^{†}

Version 7, Juni 1999

Wir haben eine Benutzeroberfläche realisiert, mit der man die Bearbeitung von Texten mittels TEX/L^{A}TEX vom Editieren bis hin zur Ausgabe auf dem Bildschirm oder dem Drucker vornehmen kann. Die vorgesehenen Möglichkeiten kann man in dem Hauptmenü in Abbildung 1 ablesen (siehe auch Tabelle 1). Das Programm wurde in Tcl geschrieben und auf einer SUN SPARC 10 unter Solaris 2.6/x86 entwickelt. Inzwischen wurde xtem auf einer Reihe von weiteren Rechnern/Betriebssystemen installiert: Linux, IBM RS6000/AIX, SGI Indigo, SGI Challenge, SGI Irix, Sun OS4, Sun SPARC10 Solaris 2.5, DEC 3000, DEC 5000/Ultrix, HP Apollo Domain/HP-UX, HP 9000/HP-UX. Zumindest eine der Installationen erfolgte auch unter OpenWindows 3.0 anstelle von X11R4/5. Es ist deshalb zu erwarten, daß Implementierungen auf anderen Rechnern unter Unix ebenfalls problemlos sein werden.

xtem ist auf Mehrsprachigkeit angelegt: Beim Aufruf kann der Benutzer festlegen, in welcher Sprache die Knöpfe beschriftet werden sollen; in der gewählten Sprache werden auch alle Hilfetexte etc. gegeben. Zur Zeit sind Deutsch und Englisch (siehe Abbildung 2) realisiert, weitere Sprachen können leicht (durch Bereitstellen reiner Text-Dateien) hinzugefügt werden.

Erfahrungen konnten wir auch mit Anwendern sammeln, die fast keine Kenntnisse von einem Betriebssystem und keine Kenntnisse von L^{A}TEX hatten. Nach einer kurzen Einweisung waren sie in der Lage, eine kleine Schrift (Protokoll einer Exkursion) mit Tabellen usw. zusammenzustellen. Hier waren die Erläuterungen mit Beispielen zu der L^{A}TEX-Syntax (siehe Abbildung 9) sehr hilfreich. Obwohl die Benutzerführung sehr übersichtlich und einfach ist, gibt es zu jedem einzelnen Feld interaktive Hilfen, die über dem jeweiligen Feld mit der rechten Maustaste abgerufen werden können. Mit der linken Maustaste aktiviert man die entsprechenden Programme mit den Optionen und Dateien, die man in den Voreinstellungs-Menüs ausgewählt hat. Diese Voreinstellungs-Menüs spricht man mit der mittleren Maustaste (über dem entsprechenden Feld) an. So hat beispielsweise das Feld TeX-Format das in Abbildung 3 dargestellte Voreinstellungs-Fenster. In diesem Fenster kann man die Einstellungen, die mit dem TEX-Lauf zusammenhängen, vornehmen:

• die Formatwahl,

• ggf. die Speichergröße, • die maximale Zahl der TeX-Läufe (damit alle Querreferenzen usw. korrekt sind; es ist

∗e-mail: weibezahn@iwd.uni-bremen.de, WWW: http://ftp.iwd.uni-bremen.de/xtem/xtem_texmenu.html

†Institut für wissenschaftliche Datenverarbeitung, Universität Bremen, Postfach 330 440, 28334 Bremen

sichergestellt, daß dabei kein unnötiger TEX-Lauf durchgeführt wird!),

• ob nach Abspeichern von Veränderungen in der Hauptdatei oder der Editierdatei automatisch ein TEX-Lauf gestartet werden soll,

• ob beim Auftreten eines Syntaxfehlers bei einem TEX-Lauf dieser anhält und dem Nutzer den üblichen Dialog-Modus anbietet, oder ob der TEX-Lauf im „Nonstop-Modus“ durchläuft,

• die Einstellung, ob nach dem TEX-Lauf die beim aktuellen Lauf erzeugten Silbentrennungen angezeigt werden sollen.

Durch Mausklick kann man diese angezeigten Silbentrennungen in eine Datei geprüfter Silbentrennungen übernehmen (diese Datei ist eine reine Text-Datei und kann vom Benutzer bei Bedarf auch editiert werden), bei weiteren TEX-Läufen werden dann nur die nicht bereits verifizierten Silbentrennungen angezeigt.

• Ferner kann hier eingestellt werden, ob nach dem TEX-Lauf automatisch eine Analyse der Protokoll-Datei durchgeführt werden soll.

Eine solche Analyse liefert eine knapp gehaltene Liste der Fehlermeldungen und Warnungen des TEX-Laufs (einschließlich „Overfull Boxes“ und „Underfull Boxes“). Ein Anklicken einer der Meldungen bewirkt, daß ein Editier-Fenster erscheint, in das die betreffende Datei geladen wird. Der von TEX als fehlerhaft erkannte Bereich wird dabei invertiert dargestellt, und der Cursor wird so genau wie möglich an die fehlerhafte Stelle (Zeile und Spalte!) positioniert (siehe Abbildung 4). Die Fehleranalyse kann auch zusätzlich bei geeigneter Einstellung durch Anklicken von „Protokoll-Datei tla … “ im Hauptmenü gestartet werden.

Das Index-Aufbereitungsprogramm (z.B. makeindex) wird bei Bedarf (d.h. wenn sich die .idx-Datei während des TEX-Laufs geändert hat) automatisch nach dem TEX-Lauf gestartet. Ob das Bibliographie-Aufbereitungsprogramm (z.B. bibtex) bei Bedarf (d.h. wenn nach dem TEX-Lauf „undefined references“ existieren) ebenfalls automatisch gestartet wird, kann vom Anwender im Bibliographie-Voreinstellungsmenü eingestellt werden.

Abbildung 6 zeigt das Menü zur Auswahl von Dateien und Dateiverzeichnissen, mit dessen Hilfe auch neue Dateiverzeichnisse angelegt werden können. xtem ist — soweit sinnvoll möglich und von uns vorhersehbar — so ausgelegt, daß „Konfliktsituationen“ möglichst vermieden werden. Z.B. wird vor dem Start eines Rechtschreib-Programms, das Korrekturen an der Datei ermöglicht, überprüft, ob eine innerhalb von xtem gestartete Editorsitzung noch aktiv ist. Wenn ja, wird der Anwender gewarnt und erst nach positiver Quittierung dieser Warnung startet das Rechtschreib-Prüfprogramm. (Ob das betreffende Rechtschreib-Programm Korrekturen an der zu prüfenden Datei zuläßt, muß der TEX-Administrator in der entsprechenden Liste markieren.) Als ein weiteres Voreinstellungs-Menü zeigen wir in Abbildung 7 das Menü zur Druckausgabe, in dem der Drucker durch Anklicken aus der Liste ausgewählt werden kann. Die vom TEX-Administrator jeweils zugeordneten und eingestellten Optionen für den Druckertreiber werden damit automatisch übernommen (z.B. korrekte Nullpunkt-Einstellung des Druckers). Der Anwender kann sie verändern, sollte es aber im allgemeinen nicht tun. Falls (z.B. in einem Campus-Netz) viele Drucker verfügbar sind und die Drucker-Auswahlliste dadurch unübersichtlich wird, kann die Drucker-Liste über Kriterien, wie z.B. Papierformat, Auflösung des Druckers, Zuordnung zu einem Fachbereich etc., reduziert werden (siehe Abbildung 8). Anzahl, Art und Inhalt dieser Kriterien legt der TEX-Administrator in einer Voreinstellungsdatei fest.

In einem Menü — das automatisch nach Anforderung des Druckens erscheint — können Seiten ausgewählt („absolute“ oder „relative“ Seitenzahlen, gerade oder ungerade Seiten), mehrere Seiten (verkleinert) auf einem Blatt zusammengefaßt oder „a5booklet“ etc. verlangt werden. Auch kann angegeben werden, ob die Druckdatei permanent oder temporär sein soll und wieviele Exemplare gedruckt werden sollen (bis zu einer vom TEX-Administrator festgelegten Obergrenze).

Als besonderes „Bonbon“ führen wir fast alle Syntax-Elemente zu L^{A}TEX mit Beispielen in einem separaten Fenster parallel zum Editor. Dadurch kann man sich beim Erfassen eines Textes der Syntax vergewissern oder die Syntax bzw. die Beispiele aus dem Hilfetext (mit den üblichen Mausbewegungen) in den zu bearbeitenden Text kopieren, um auf diese Weise deren Wirkung kennenzulernen oder für die eigenen Anforderungen abzuwandeln. Die durch L^{A}TEX erzeugte Ausgabe zu den Beispielen kann man sich auf Wunsch anzeigen lassen. Die Kommandos können aus einer alphabetischen und aus einer inhaltlich gegliederten Liste ausgewählt werden, diese Listen und alle Syntax-Beschreibungen sind in Hypertext dargestellt. Abbildung 9 zeigt eine typische Editierumgebung mit emacs-Fenster und der Syntax-Beschrei-bung für die Kommandos zur Erstellung von Fußnoten (mit Anzeige der L^{A}TEX-Ausgabe zu dem in der Syntax-Hilfe angegebenen Beispiel). Praktisch alle in Tabelle 1 erwähnten Auswahlmöglichkeiten erfolgen aus Voreinstellungsdateien, die als „offene Listen“ gestaltet sind. In ihnen spezifiziert der TEX-Administrator die vorliegende Konfiguration auf einfache und übersichtliche Weise (d.h. ohne Programmänderung). Um dem TEX-Administrator die Arbeit zu erleichtern, sind unsere Voreinstellungsdateien im Installationspaket enthalten.

Feld

linke Maustaste (Ausführung) mittlere Maustaste (Voreinstellungen)

Ende Beenden von xtem.

entfällt

Hilfen Allgemeiner Einstieg in xtem.

entfällt

Löschen Text-Feld Löschen des Inhalts im Ausgabe-Text-Feld im unteren Bereich.

entfällt

Grundstellung Zurücksetzen aller Einstellungen auf die vom TEX-Administrator vorgesehenen Werte.

entfällt

Entriegeln (optional)

Bewußtes Entriegeln der automatisch ver-

riegelten Knöpfe (für „Hacker “).

entfällt

Abbruch Abbruch des laufenden Programms (z.B. tex-Lauf, makeindex-Lauf).

entfällt

xtem-Einstellungen Programmaufruf-Form etc. verändern.

entfällt

eigene Einstellungen Die eigenen Einstellungen können gespeichert und in späteren Sitzungen erneut geladen werden.

entfällt

LaTeX-Syntax Die (LaTeX-)Syntaxhilfen werden bereitgestellt.

entfällt

Lokale Neuigkeiten Der TEX-Administrator kann Infos bereitstellen.

entfällt

Tabelle 1: Übersicht über die Möglichkeiten mit xtem.

Feld

linke Maustaste (Ausführung) mittlere Maustaste (Voreinstellungen)

Datei/Dateiverzeichnis-Auswahl Auswahl/Eingabe des Dateiverzeichnisses, Auswahl/Eingabe des Hauptdateinamens, Auswahl/Eingabe des Editierdateinamens.

entfällt

Editieren Aufruf des eingestellten Editors mit der eingestellten Editierdatei. (Bei L^{A}TEX gleichzeitig Bereitstellung der Syntax-Hilfen).

Auswahl des Editors (emacs, vi, …). Auswahl, ob Editor im Hintergrund oder Vordergrund gestartet werden soll.

Quick&Dirty Schneller TEX-Lauf des per “mouse-grab” übergebenen Textes und Darstellung des Ergebnisses des TEX-Laufs. Diese Maustaste kann durch “Shift” modifiziert werden: Dann wird beim schnellen TEX-Lauf der Inhalt der Editierdatei an Stelle des “mouse-grab” genommen. entfällt (wird gemeinsam mit den Voreinstellungen zum TEX-Format gesetzt).

TEX-Format etc.

Aufruf des Programms tex mit dem eingestellten TEX-Format und der eingestellten Hauptdatei.

Auswahl des Formats (tex, latex, slitex, …). Ggf. Auswahl der Speichergröße (normal/bigtex). Angabe der max. Durchlaufzahl (Querverweise!). Einstellung, ob TEX-Lauf automatisch gestartet wird bei Veränderungen in der Haupt- oder Editierdatei. Einstellung, ob Dialog- oder Nonstop-Modus bei TEX-Fehler. Einstellung zur Anzeige der im TEX-Lauf erzeugten Silbentrennungen. Einstellungen zur Analyse der Protokoll-Datei (nach dem TEX-Lauf).

Preview Aufruf des eingestellten Previewers mit der eingestellten Hauptdatei.

Auswahl des Previewers (ghostview, xdvi, …). Auswahl, ob Previewer im Hintergrund oder Vordergrund gestartet werden soll. Umstellung des Formats für Preview und Drucken. Ggfs. Verändern der mit der Auswahl verknüpften Optionen.

Druck Druckaufbereitung; Auswahlmenü erscheint: gerade/ungerade Seiten, Seiten von … bis …, 2/4 Seiten verkl. auf 1 Blatt, a5booklet, Anzahl der Kopien, …. Nach Erstellung der Druckdatei immer: Frage, ob → Drucker. Diese Maustaste kann durch “Shift” modifiziert werden: Dann wird direkt gedruckt ohne Aufruf des Druckaufbereitung-Auswahlmenüs.

Auswahl der Kombination:

Drucker - Druckertreiber - Papierformat etc. Umstellung des Formats für Preview und Drucken. Reduktion der Druckerliste über Auswahlkriterien. Ggfs. Verändern der mit der Auswahl verknüpften Optionen.

Aufräumen Auswahl der Dateisuffixe für die zu löschenden Dateien. Darauf basierend wird eine Liste der zu löschenden Dateien erstellt, aus der vor dem eigentlichen Löschen einzelne (nicht zu löschende) Dateien gestrichen werden können.

entfällt

Tabelle 1: Übersicht über die Möglichkeiten mit xtem (Fortsetzung).

Feld

linke Maustaste (Ausführung) mittlere Maustaste (Voreinstellungen)

Rechtschreib-Prüfung (optional)

Start der Rechtschreib-Prüfung mit der eingestellten Editierdatei.

Auswahl des Rechtschreib-Programms und des Wörterbuchs (Sprache). Ggfs. Verändern der mit der Auswahl verknüpften Optionen.

Syntax- Prüfung (optional)

Start der Syntax-Prüfung mit der eingestellten Editierdatei.

Auswahl des Syntaxprogramms bzw. der Menge an „Informationsflut“. Ggfs. Verändern der mit der Auswahl verknüpften Optionen.

Index-Aufbereitung (optional)

Start der Index-Aufbereitung mit der eingestellten Hauptdatei.

Auswahl des Programms zur Index-Aufbereitung. Einstellung, ob bei Bedarf nach einem TEX-Lauf automatisch das Programm zur Indexerstellung gestartet werden soll. Ggfs. Verändern der mit der Auswahl verknüpften Optionen.

Bibliographie (optional)

Start der Bibliographie-Aufbereitung mit der eingestellten Hauptdatei.

Auswahl des Programms zur Bibliograpie-Aufbe-reitung. Einstellung, ob bei Bedarf nach einem TEX-Lauf automatisch das Programm zur Bibliographie-Er-stellung gestartet werden soll. Ggfs. Verändern der mit der Auswahl verknüpften Optionen.

Sonstige Programme (optional)

Auswahl eines Programms aus einer Liste. Bei uns sind in dieser Liste i.w. Dateikonvertierungsprogramme enthalten: Umlautexpandierung → TEX-Konvention oder german-TEX-Konvention und Rückumwandlung, 8 Bit-ISO-Code ↔ IBM-PC-Code, Unix-Format ↔ DOS-Format, Tabulatorexpandierung, xfig, …

entfällt

Protokoll- Datei (optional)

Auflistung des aktuellen Inhalts der gewünschten Protokolldatei.

Auswahl, welche Protokolldatei gewünscht wird (….log, ….ilg, …). Auswahl der Darstellungsart (tla (= Protokolldatei-Analyse), cat, pg, emacs, vi, …).

Tabelle 1: Übersicht über die Möglichkeiten mit xtem (Fortsetzung).

Abbildung 1: Das Hauptmenü von xtem, nachdem „Hilfen“ angeklickt wurde 6 Abbildung 2: Das Hauptmenü von xtem in der englischen Version

7 Abbildung 3: Das TEX-Voreinstellungs-Menü, nachdem die Hilfe zur maximalen Zahl der TeX-Durchläufe angeklickt wurde (rechte Maustaste über „TeX-Durchläufe“). Bei Bedarf (d.h. wenn die Voreinstellungsdatei texsiz.vst mehr als einen Eintrag enthält) wird in diesem Voreinstellungs-Menü automatisch eine weitere Auswahlbox zur Einstellung des TEX-Speicherbedarfs erzeugt.

Abbildung 4: Nach dem L^{A}TEX-Lauf wurde hier eine Analyse der Protokolldatei durchgeführt (siehe TEX-Voreinstellungs-Menü, Abb. 3) und die zweite der daraufhin erzeugten Meldungen angeklickt. Dadurch wurde das Editier-Fenster eröffnet, wobei die fehlerhafte Zeile invertiert dargestellt wird und der Cursor automatisch an der fehlerhaften Spalte positioniert wird. Man beachte, daß im TEX-Voreinstellungs-Menü für die Berücksichtigung der „Underfull Boxes“ derzeit ein Wert von 200 eingestellt ist!

Abbildung 5: In diesem Fall wurden nach dem L^{A}TEX-Lauf die erzeugten Silbentrennungen ermittelt und angezeigt (siehe TEX-Voreinstellungs-Menü, Abb. 3), wobei hier von den 49 gefundenen Silbentrennungen nur 7 angezeigt werden, da die übrigen bereits in einer Datei mit „geprüften Silbentrennungen“ stehen. In diese Datei können die jetzt angezeigten Silbentrennungen durch Anklicken von „ja“ hinzugefügt werden. Ggfs. kann diese Datei vom Nutzer direkt editiert werden.

Abbildung 6: Das Menü zur Auswahl von Dateien und Dateiverzeichnissen, nachdem die Hilfe zur Eingabe eines Dateiverzeichnisnamens angeklickt wurde (rechte Maustaste über „neues Dateiverzeichnis“).

Abbildung 7: Das Drucker-Voreinstellungs-Menü, nachdem der Drucker lp1 mit Postscript-Ausgabe/Druckertreiber dvips und Querformat ausgewählt wurde (das Format wurde dabei auch für den Previewer automatisch umgestellt).

Abbildung 8: Das Drucker-Vorauswahl-Menü, nachdem Postscript, A4_Hochformat und 300dpi selektiert wurden.

Abbildung 9: Die Syntax-Hilfen. 14 Abbildung 10: Aufräumen.

15 Abbildung 11: Sonstige Programme ausführen

16

Danksagung

Wir danken den vielen Anwendern von xtem, die uns wertvolle Hinweise und Anregungen gaben. Ganz besonders möchten wir Thomas Feuerstack, Helmut Jarausch, Julien Maillard, Steve Pershing, Peter-Klaus Schilling, Torsten Schuetze, Oliver Stenzel, Joel D. Young, und Michael Zuther danken, die unsere Arbeit durch positive Kritik, Anregungen und Testen seit langem begleitet haben. Katherine Wipf danken wir ebenso für das sorgfältige Korrekturlesen der englischen Texte. (Da wir — auch seit diesem Korrekturlesen — xtem ständig weiterentwickeln, ist es möglich, daß wir zwischenzeitlich neue Fehler „eingebracht haben“. Der Benutzer möge uns diese verzeihen.)

Voraussetzungen für den Einsatz von xtem:

• Hardware am Arbeitsplatz: X11-fähiger (Schwarz/Weiß- oder Farb-)Bildschirm, Tastatur, Maus mit 3 (oder 2) Knöpfen.

• Software:

– Betriebssystem Unix

– Tcl Version 7.6, 8.0 oder 8.1 mit Tk von J. Ousterhout und TclX (extended Tcl) von Mark Diekhans und Karl Lehenbauer (public domain, erhältlich über aftp — Bezugsquellen in xtem/README).

• Anwendungssoftware:

– xtem kostenlos verfügbar unter den GNU-Lizenz-Bedingungen.

       – Quellen: aftp-Server des IWD: ftp.iwd.uni-bremen.de

(anmelden als anonymous mit RFC-konformer e-mail-Adresse als Paßwort).

– Dateien:

            /pub/tex/xtem/xtem_texmenu_7ger.ps.gz ((diese) deutsche Beschreibung)
            /pub/tex/xtem/xtem_texmenu_7eng.ps.gz (englische Beschreibung)
            /pub/tex/xtem/xtem_texmenu.7.00.tar.gz (oder neuere Version als 7.00)

       – oder über WWW: http://ftp.iwd.uni-bremen.de/xtem/xtem_texmenu.html

– Über den aftp-Server des IWD oder die angegebene WWW-Seite sind auch xtem-Versionen erhältlich, die mit früheren Tcl-Versionen laufen (Tcl 7.3 – Tcl 7.5).