troff is a document processing system developed by AT&T for the Unix operating system. Before proposing a merge request please see Talk and see if the merger you propose has recently been made and Unix (officially trademarked as UNIX, sometimes also written as Unix with Small caps) is a computer
Contents |
troff can trace its origins back to a text formatting program called RUNOFF, written by Jerome H. Saltzer for MIT's CTSS operating system in the mid-1960s. Typesetting involves the presentation of textual material in graphic form on Paper or some other medium. Computer programs (also software programs, or just programs) are instructions for a Computer. RUNOFF was the first Computer Text formatting program to see significant use Jerome H Saltzer (born October 9, 1939 Nampa, Idaho) is a Computer scientist who has made many notable contributions An operating system (commonly abbreviated OS and O/S) is the software component of a Computer system that is responsible for the management and coordination (The name allegedly came from the phrase at the time, I'll run off a document. )
Bob Morris ported it to the GE 635 architecture and called the program roff (an abbreviation of runoff). Robert "Bob" H Morris is an American Cryptographer. He received a Bachelor's degree in Mathematics from Harvard University The GE-600 series was a family of 36-bit mainframe Computers originating in the 1960s built by General Electric (GE roff was the first Unix Text-formatting Computer program, also the most important application run on the first machine specifically purchased to run It was rewritten as rf for the PDP-7, and at the same time (1969), Doug McIlroy rewrote an extended and simplified version of roff in the BCPL programming language. The DEC PDP-7 is a Minicomputer produced by Digital Equipment Corporation. Malcolm Douglas McIlroy (born 1932 is a Mathematician, Engineer, and Programmer. A programming language is an Artificial language that can be used to write programs which control the behavior of a machine particularly a Computer.
The first version of Unix was developed on a PDP-7 which was sitting around Bell Labs. Unix (officially trademarked as UNIX, sometimes also written as Unix with Small caps) is a computer The DEC PDP-7 is a Minicomputer produced by Digital Equipment Corporation. Bell Laboratories (also known as Bell Labs and formerly known as AT&T Bell Laboratories and Bell Telephone Laboratories) is the Research organization In 1971 the developers wanted to get a PDP-11 for further work on the operating system. The PDP-11 was a series of 16-bit Minicomputers sold by Digital Equipment Corp In order to justify the cost for this system, they proposed that they would implement a document formatting system for the AT&T patents division. This first formatting program was a reimplementation of McIllroy's roff, written by Joe F. Ossanna. Joseph F Ossanna ( December 10 1928 - November 28 1977) received his BSEE from Wayne State University, Detroit
When they needed a more flexible language, a new version of roff called nroff (Newer 'roff' ) was written. nroff (short for "new Roff " is a Unix Text-formatting program; it produces output suitable for simple fixed-width printers It had a much more complicated syntax, but provided the basis for all future versions. When they got a Graphic Systems CAT Phototypesetter, Ossanna wrote a version of nroff that would drive it. Phototypesetting is a method of setting type, rendered obsolete with the popularity of the Personal computer and Desktop publishing software that It was dubbed troff, for typesetter 'roff'. As such, the name troff is pronounced t-roff rather than trough.
With troff came nroff (they were actually almost the same program), which was for producing output for line printers and character terminals. The line printer is a form of high speed impact printer in which one line of type is printed at a time A computer terminal is an electronic or electromechanical hardware device that is used for entering data into and displaying data from a Computer or a Computing It understood everything troff did, and ignored the commands which were not applicable (e. g. font changes). In Typography, a typeface is a set of one or more Fonts designed with stylistic unity each comprising a coordinated set of Glyphs A typeface usually comprises
Unfortunately, Ossanna's troff was written in PDP-11 assembly language and produced output specifically for the CAT phototypesetter. The PDP-11 was a series of 16-bit Minicomputers sold by Digital Equipment Corp See the terminology section below for information regarding inconsistent use of the terms assembly and assembler Phototypesetting is a method of setting type, rendered obsolete with the popularity of the Personal computer and Desktop publishing software that He rewrote it in C, although it was now 7000 lines of uncommented code and still dependent on the CAT. tags please moot on the talk page first! --> In Computing, C is a general-purpose cross-platform block structured As the CAT became less common, and was no longer supported by the manufacturer, the need to make it support other devices became a priority. However, before this could be done, Ossanna died.
So, Brian Kernighan took on the task of rewriting troff. Brian Wilson Kernighan (ˈkɛrnɪhæn the 'g' is silent (born 1942 Toronto, Ontario, Canada) is a Computer scientist who worked at The newly rewritten version produced a device independent code which was very easy for postprocessors to read and translate to the appropriate printer codes. Also, this new version of troff (called ditroff for device independent troff) had several extensions, which included drawing functions. It was described in a Bell Labs Computing Science Technical Report entitled "A Typesetter-independent TROFF"; it is available from the Computing Science Technology website in gzipped PostScript here. gzip is a Software application used for File compression. gzip is short for GNU zip; the program is a Free software replacement for the PostScript ( PS) is a dynamically typed concatenative Programming language created by John Warnock and Charles Geschke in 1982 The document defines the output format of ditroff, which is used by many modern troff clones like GNU groff. groff is the GNU replacement for the Troff and Nroff Text formatters It is an original implementation written primarily in C++
The troff collection of tools was eventually called Documenter's WorkBench (DWB), and was under continuous development in Bell Labs and later at the spin-off Unix System Laboratories (USL) through 1994. Unix System Laboratories or USL was originally organized as part of Bell Labs in 1989 At that time, SoftQuad took over the maintenance, although Brian Kernighan continued to improve troff on his own. SoftQuad Software is best known for its HoTMetaL HTML editing software There are thus currently four variants of the original Bell Labs troff:
Use of troff and family was reduced somewhat in the 1990s, but it is still being used quite extensively. Lucent Technologies was a technology company composed of what was formerly AT&T Technologies, which included Western Electric and Bell Labs. Plan 9 from Bell Labs is a Distributed operating system, primarily used for research While troff has been supplanted by other programs such as Interleaf, FrameMaker and LaTeX, it is still the default format of the UNIX documentation. Founded in 1981 Interleaf was a company that produced a technical publishing software product with the same name Adobe FrameMaker is a Desktop publishing (DTP and Word processing application that is popular for large documents LaTeX (ˈleɪtɛ Almost all substantial UNIX and Unix-like Operating systems have extensive documentation known as man pages (short for "manual pages"
The software was reimplemented as groff for the GNU system beginning in 1990. groff is the GNU replacement for the Troff and Nroff Text formatters It is an original implementation written primarily in C++ GNU ( pronounced) is a computer Operating system composed entirely of Free software. In addition, due to the open sourcing of Ancient UNIX Systems, as well as modern successors such as OpenSolaris and Plan 9 from Bell Labs, several versions of AT&T troff are available under various open source licenses. Open source is a development methodology which offers practical accessibility to a product's source (goods and knowledge Ancient UNIX is a term coined by Santa Cruz Operation (now SCO) to describe early releases of the Unix code base released prior to Unix System III OpenSolaris is an Open source project created by Sun Microsystems to build a developer community around Solaris Operating System technology Plan 9 from Bell Labs is a Distributed operating system, primarily used for research
troff features commands to designate fonts, spacing, paragraphs, margins, footnotes and more. Unlike many other text formatters, troff can position characters arbitrarily on a page, even overlapping them, and has a fully programmable input language. Separate preprocessors are used for more convenient production of tables, diagrams, and mathematics. Inputs to troff are plain text files that can be created by any text editor.
Extensive macro packages have been created for various document styles. The Troff typesetting system includes sets of commands called macros that are run before starting to process the document A typical distribution of troff includes the me macros for formatting research papers, man macros for creating Unix man pages, and the ms and mm macros for letters, books, technical memoranda, and reports. Almost all substantial UNIX and Unix-like Operating systems have extensive documentation known as man pages (short for "manual pages"
As troff evolved, since there are several things which cannot be done easily in troff, several preprocessors were developed. In Computer science, a preprocessor is a program that processes its input data to produce output that is used as input to another program These programs transform certain parts of a document into troff input, fitting naturally into the use of "pipelines" in Unix — sending the output of one program as the input to another (see pipes and filters). In Software engineering, a pipeline consists of a chain of processing elements ( processes, threads, Coroutines etc.
The eqn preprocessor allows mathematical formulae to be specified in a much simpler and more intuitive manner. Part of the Troff suite of Unix document layout tools eqn is a Preprocessor that formats equations for printing tbl is a preprocessor for formatting tables. Part of the Troff suite of Unix document layout tools tbl is a preprocessor that formats tables. The refer preprocessor (and the similar program bib) processes citations in a document according to a bibliographic database. refer is a program for managing bibliographic referencesand citing them in Troff documents Bibliography (from Greek grc βιβλιογραφία bibliographia, literally "book writing" as a practice is the academic study of Books
Later, several other preprocessors appeared. The pic preprocessor provides a domain-specific programming language with a wide range of drawing functions. Pic is a Domain-specific language by Brian Kernighan for specifying Diagrams in terms of objects such as boxes with arrows between them The ideal preprocessor does much the same thing, although via a much different paradigm. The word paradigm ( Greek:παράδειγμα (paradigmacomposite from para- and the verb δείχνυμι "to show" as a whole -roughly- meaning "example" The grap preprocessor takes specifications for graphs, but, unlike other preprocessors, produces pic code.