www.wikidata.de-de.nina.az
Der Titel dieses Artikels ist mehrdeutig Zu weiteren Bedeutungen siehe Troff Begriffsklarung troff ˈtiːrɒf ist ein Textsatzsystem das von AT amp T fur das Betriebssystem Unix entwickelt wurde Es erlaubt professionellen und qualitativ hochwertigen Textsatz samt typographischen Merkmalen wie verschiedenen Schriftarten und Schriftschnitten Abstanden Absatzen Randern automatischer Worttrennung am Zeilenende Fussnoten und Inhaltsverzeichnis um nur einige zu nennen Es gibt Erweiterungen um Tabellen Diagramme und mathematische Formeln darzustellen troff ist eine Markupsprache wie z B HTML und wird daher als reiner Text mit einem Texteditor geschrieben troff wird in fast allen UNIX artigen Systemen zur Formatierung der Online Dokumentationen man Pages verwendet troff und TeX sind insofern miteinander verwandt als beide das Ziel verfolgen qualitativ hochwertigen Textsatz zu ermoglichen Allerdings sind die Ansatze sehr verschieden nicht nur in der Syntax sondern auch in der Handhabung der Programmpakete und Schriftarten Inhaltsverzeichnis 1 Geschichte 2 Interner Aufbau 2 1 Makros 2 2 Praprozessoren 3 Varianten 4 Troff heute 5 Literatur 6 WeblinksGeschichte BearbeitenTroff hat seinen Ursprung in einem Textverarbeitungsprogramm namens RUNOFF geschrieben von Jerome H Saltzer fur das CTSS Betriebssystem des MIT in der Mitte der 1960er Angeblich kam der Name von der damals gebrauchlichen Phrase I ll run off a document Fotobelichter funktionierten damals mit Schablonen der einzelnen Zeichen Eine Lichtquelle hat durch eine zweckmassige Anordnung von Linsen und Zeichenschablone einen Film belichtet Buchstabe fur Buchstabe Zeile fur Zeile Eine andere Schriftart konnte durch halbautomatisches Austauschen der Zeichenschablonen das Andern des Schriftschnittes ein internes Rotieren derselben erzielt werden Ein Schablonensatz bestand immer aus einer Schriftart mit verschiedenen Schriftschnitten Der Belichter konnte eine Anzahl dieser Schablonensatze verwalten aus dieser Einschrankung ruhrt auch die Notwendigkeit Schriftarten zu Beginn des Dokuments zu laden Bob Morris portierte RUNOFF auf die GE 635 Architektur und nannte das Programm roff eine Abkurzung von runoff Es wurde als rf fur die PDP 7 neu geschrieben und zur gleichen Zeit 1969 schrieb Douglas McIlroy eine erweiterte und vereinfachte Version von roff in der Programmiersprache BCPL Die erste Version fur Unix wurde auf einer PDP 7 entwickelt die bei den Bell Labs stand 1971 benotigten die Entwickler eine PDP 11 um weiter an dem Betriebssystem zu arbeiten Um die Kosten dieses Systems zu rechtfertigen schlugen sie vor ein Dokumentenformatierungssystem fur die AT amp T Patentdivision zu entwickeln Dieses erste Formatierungsprogramm war eine von Joe F Ossanna geschriebene Reimplementation von McIllroys roff nroff Newer roff wurde hinsichtlich der bisher eingeschrankten Befehle entwickelt Es hatte eine wesentlich kompliziertere Syntax war aber die Basis fur alle spateren Versionen Es konnte allerdings nur Ausgaben fur zeichenorientierte Gerate wie Zeilendrucker Typenraddrucker Computerterminals usw formatieren Als die Labs einen Graphic Systems C A T Phototypesetter bekamen schrieb Ossanna eine angepasste Version von nroff in PDP 11 Assemblersprache die ihn ansteuern konnte Diese Version wurde troff typesetter roff genannt obwohl viele spekulierten dass es eigentlich Times roff bedeute aufgrund der Benutzung der Schriftenfamilie Times Roman in troff als Standardschrift Die Festlegung auf die PDP 11 und den C A T erwies sich in Folge jedoch als Einschrankung Ossanna portierte troff nach C obwohl es inzwischen auf 7000 Zeilen vom C A T abhangigen unkommentierten Programmcode angewachsen war Als der C A T alter wurde und der Hersteller die Unterstutzung einstellte bekam die Notwendigkeit dass troff andere Gerate ansteuern kann Prioritat Ossanna starb jedoch an einem Herzinfarkt bevor dies realisiert werden konnte So kam Brian W Kernighan zu der Aufgabe troff in C zu programmieren Diese von Grund auf neu entwickelte Version produzierte gerateunabhangigen Code der sehr einfach von Treibern gelesen und in entsprechende druckerspezifische Ausgabesprachen ubersetzt werden konnte Diese neue Version von troff ditroff fur device independent troff genannt hatte ausserdem einige Erweiterungen wie z B Zeichenfunktionen troff wurde dann zur Documenter s WorkBench und wurde bei den Bell Labs die in Unix System Laboratories USL umbenannt wurden bis 1994 standig weiterentwickelt Danach ubernahm SoftQuad die Pflege Brian Kernighan entwickelte troff trotzdem alleine weiter Deshalb gibt es zurzeit drei Varianten des Bell Labs troff Der Quellcode von ditroff aus der Documenter s WorkBench wurde am 14 Juni 2005 zusammen mit Solaris von Sun veroffentlicht und unter die Open Source Lizenz CDDL gestellt Interner Aufbau BearbeitenTroff kann als Filter verstanden werden Mit einem Editor wird ein Textdokument erstellt welches mittels troff in ein anderes Format ubersetzt wird unter Beachtung der Anweisungen die im Dokumententext eingebettet sind Fruher wurde mit dem troff Ausgabekode direkt der Fotobelichter angesteuert Mit dem Aufkommen anderer hochauflosender Druckmethoden z B Laserdrucker wurde troff derart umgeschrieben dass eine Art Metakode generiert wurde sogenanntes device independent troff kurz ditroff Weitere Filterprogramme generierten dann aus diesem Zwischenformat den endgultigen geratespezifischen Kode zur Ansteuerung Makros Bearbeiten Da die troff Steuerbefehle teilweise komplex sind und innerhalb eines Dokumentes mehrfach vorkommen konnen wurde von Anfang an die Moglichkeit der Makroerstellung vorgesehen So konnen verschiedene troff Befehle z B zum Verkleinern des Fontgrosse bei gleichzeitigem Andern des linken und rechten Einzuges zu einem Makro zusammengefasst werden Das erhoht die Ubersichtlichkeit im Dokument enorm und ermoglicht ahnlich der CSS bei HTML oder Stilvorlagen in den bekannten grafischen Textverarbeitungen eine zentralisierte Formatstruktur die bei Anpassungen einmal geandert werden muss und so Anderungen an vielen Stellen im Dokument vermeidet Es wurden umfangreiche Makro Pakete fur unterschiedlichste Dokumentenstile entwickelt Eine typische troff Distribution enthalt z B die me Makros um wissenschaftliche Arbeiten zu formatieren man Makros um Unix man pages zu erstellen und die ms Makros fur Bucher technische Dokumentationen und Berichte Praprozessoren Bearbeiten Als sich troff zur DWB weiterentwickelte begann die Arbeit an diversen Praprozessor Programmen da sich in troff nicht alles einfach realisieren liess Diese Programme transformieren auch wieder als Filter bestimmte Teile eines Dokuments in troff Input Diese Filterprogramme haben ihre eigene Syntax und erkennen ihren Kode im troff Dokument anhand bestimmter Schlusselbefehle die genau eine Zeile umfassen und ubersetzen den Kode dazwischen in troff Steuerbefehle Requests Praprozessor Funktiontbl Tabellensatzeqn Formeln und mathematische Ausdruckepic Einfache Illustrationen und Flussdiagramme Bestandteil von Documenters Workbench ditroff ideal Zeichenfunktionen ahnlich picgrap Graphen wandelt aber diesen code in pic code nicht direkt troffrefer Bibliografische Verweise und Zitateverwaltungbib Siehe refer weiter obensoelim Externe Textdateien laden die von einem Praprozessor bearbeitet werden mussennroff erzeugt Ausgaben fur zeichenorientierte Gerate wie Zeilendrucker Typenraddrucker Computerterminals usw Kommandos die nicht anwendbar sind wie Schriftartanderungen werden ignoriert Varianten Bearbeitentroff von Bill Joy wurde bis SunOS 4 x Sun ausgeliefert seit SunOS 5 x liefert Sun ditroff Die Heirloom Documentation Tools sind eine Version von ditroff mit einigen Erweiterungen der frei verfugbare Quellcode basiert auf den gleichnamigen Programmen von OpenSolaris Die SoftQuad DWB die auf der USL DWB 2 0 von 1994 basiert Die DWB 3 4 von Lucent Software Solutions USL groff eine GNU Implementation fur troff und nroffTroff heute BearbeitenIn den 1990er Jahren liess die Popularitat der troff Familie nach aber sie wird dennoch recht intensiv benutzt Obwohl troff von anderen Programmen wie Interleaf FrameMaker und LaTeX ersetzt werden kann ist es immer noch das Standard Format der UNIX Dokumentation der sogenannten Manpages Die Moglichkeit formatierten Plain text auszugeben ist heutzutage die wohl wichtigste Funktion von troff Das Anzeigen einer Manpage auf vielen modernen unixoiden Systemen startet im Hintergrund einen nroff Prozess welcher die im troff Format vorliegenden Manpages formatiert und diese an ein Textbetrachtungsprogramm z B more oder less weiterreicht Literatur BearbeitenDale Dougherty Tim O Reilly Unix Text Processing Hayden Books 1987 sowie als Groff Quelltext unter CC by Lizenz Joseph F Ossanna Brian W Kernighan Troff User s Manual Postscript AT amp T Bell Laboratories New Jersey Revised November 1992 englisch the definitive guide to all troff commands lt Troff Resources Weblinks Bearbeitentroff org The Text Processor for Typesetters englisch Troff Resources englisch kommentierte Linksammlung zu troff groff Makros und Praprozessoren GNU troff groff a GNU project Homepage englisch The Heirloom Documentation Tools fur Opensolaris als Variante von ditroff englisch Eine Portierung der Documenter s Workbench DWB Release 3 3 von research att com auf moderne UNIX Systeme b troff 1 b the troff processor of the groff text formatting system FreeBSD General Commands Manual Mel Melchner This is a relation of what happened to DWB not a justification Antwort auf die Frage Where does one get the real troff and DWB system these days In Newsgroup comp text 22 April 1996 abgerufen am 12 Juni 2014 englisch Abgerufen von https de wikipedia org w index php title Troff amp oldid 216713973 Interner Aufbau