[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Groff-commit] groff ChangeLog doc/groff.texinfo man/roff.man ...
From: |
Werner LEMBERG |
Subject: |
[Groff-commit] groff ChangeLog doc/groff.texinfo man/roff.man ... |
Date: |
Fri, 10 Oct 2008 17:03:28 +0000 |
CVSROOT: /cvsroot/groff
Module name: groff
Changes by: Werner LEMBERG <wl> 08/10/10 17:03:28
Modified files:
. : ChangeLog
doc : groff.texinfo
man : roff.man
src/preproc/eqn: sqrt.cpp
Log message:
* man/roff.man, doc/groff.texinfo: Improve the history part. This
is based on input from Tom Van Vleck <address@hidden>.
* src/preproc/eqn/sqrt.cpp (sqrt_box::compute_metrics): Assure that
value of `rst' register is not zero, as can happen for the HTML
output device. Otherwise, there are too many loops, and we get a
stack overflow because of recursion.
CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/groff/ChangeLog?cvsroot=groff&r1=1.1154&r2=1.1155
http://cvs.savannah.gnu.org/viewcvs/groff/doc/groff.texinfo?cvsroot=groff&r1=1.274&r2=1.275
http://cvs.savannah.gnu.org/viewcvs/groff/man/roff.man?cvsroot=groff&r1=1.39&r2=1.40
http://cvs.savannah.gnu.org/viewcvs/groff/src/preproc/eqn/sqrt.cpp?cvsroot=groff&r1=1.4&r2=1.5
Patches:
Index: ChangeLog
===================================================================
RCS file: /cvsroot/groff/groff/ChangeLog,v
retrieving revision 1.1154
retrieving revision 1.1155
diff -u -b -r1.1154 -r1.1155
--- ChangeLog 9 Oct 2008 05:35:44 -0000 1.1154
+++ ChangeLog 10 Oct 2008 17:03:27 -0000 1.1155
@@ -1,3 +1,14 @@
+2008-10-10 Werner LEMBERG <address@hidden>
+
+ * man/roff.man, doc/groff.texinfo: Improve the history part. This
+ is based on input from Tom Van Vleck <address@hidden>.
+
+
+ * src/preproc/eqn/sqrt.cpp (sqrt_box::compute_metrics): Assure that
+ value of `rst' register is not zero, as can happen for the HTML
+ output device. Otherwise, there are too many loops, and we get a
+ stack overflow because of recursion.
+
2008-10-05 Stephen Gildea <http://www.gildea.com/stephen/>
* src/preproc/ref/ref.cpp (reference::compute_sort_key): Do
Index: doc/groff.texinfo
===================================================================
RCS file: /cvsroot/groff/groff/doc/groff.texinfo,v
retrieving revision 1.274
retrieving revision 1.275
diff -u -b -r1.274 -r1.275
--- doc/groff.texinfo 4 Oct 2008 18:56:49 -0000 1.274
+++ doc/groff.texinfo 10 Oct 2008 17:03:27 -0000 1.275
@@ -600,24 +600,36 @@
@cindex @code{RUNOFF}, the program
@cindex @code{rf}, the program
@code{troff} can trace its origins back to a formatting program called
address@hidden, written by Jerry E.@: Saltzer, which ran on MIT's
address@hidden (@emph{Compatible Time Sharing System}) operating system
-in the mid-sixties. The name came from the use of the phrase ``run off
-a document'', meaning to print it out. Bob Morris ported it to the 635
-architecture and called the program @code{roff} (an abbreviation of
address@hidden). It was rewritten as @code{rf} for the @w{PDP-7} (before
-having @acronym{UNIX}), and at the same time (1969), Doug McIllroy
-rewrote an extended and simplified version of @code{roff} in the
address@hidden programming language.
address@hidden, written by Jerry Saltzer, which ran on the @acronym{CTSS}
+(@emph{Compatible Time Sharing System}, a project of MIT, the
+Massachusetts Institute of Technology) in the
address@hidden H.@: Saltzer, a grad student then, later a
+Professor of Electrical Engineering, now retired. Saltzer's PhD thesis
+was the first application for @code{RUNOFF} and is available from the
+MIT Libraries.} The name came from the use of the phrase ``run off a
+document'', meaning to print it out.
address@hidden
address@hidden Tom Van Vleck <address@hidden> writes about the following:
address@hidden
address@hidden I am not sure about this.. I think the BCPL runoff was the port
to
address@hidden the 635 architecture, and that the order of events is
address@hidden 1. CTSS runoff
address@hidden 2. BCPL runoff on Multics
address@hidden 3. BCPL runoff on 635
address@hidden 4. rf on PDP-7
address@hidden
+Bob Morris ported it to the 635 architecture and called the program
address@hidden (an abbreviation of @code{runoff}). It was rewritten as
address@hidden for the @w{PDP-7} (before having @acronym{UNIX}), and at the
+same time (1969), Doug McIllroy rewrote an extended and simplified
+version of @code{roff} in the @acronym{BCPL} programming language.
@cindex @code{roff}, the program
-The first version of @acronym{UNIX} was developed on a @w{PDP-7} which
-was sitting around Bell Labs. In 1971, the developers wanted to get a
address@hidden for further work on the operating system, and to justify the
-cost, proposed the development of a document formatting system for the
address@hidden&T} patents division. This first formatting program was a
-reimplementation of McIllroy's @code{roff}, written by
address@hidden@tie{}Ossanna.
+In 1971, the UNIX developers wanted to get a @w{PDP-11}, and to justify
+the cost, proposed the development of a document formatting system for
+the @acronym{AT&T} patents division. This first formatting program was
+a reimplementation of McIllroy's @code{roff}, written by address@hidden@:
+Ossanna.
@cindex @code{nroff}, the program
When they needed a more flexible language, a new version of @code{roff}
Index: man/roff.man
===================================================================
RCS file: /cvsroot/groff/groff/man/roff.man,v
retrieving revision 1.39
retrieving revision 1.40
diff -u -b -r1.39 -r1.40
--- man/roff.man 19 Jan 2008 20:50:33 -0000 1.39
+++ man/roff.man 10 Oct 2008 17:03:27 -0000 1.40
@@ -53,7 +53,7 @@
.\" --------------------------------------------------------------------
.
.I roff
-is the general name for a set of type-setting programs, known under
+is the general name for a set of text formatting programs, known under
names like
.BR troff ,
.BR nroff ,
@@ -63,12 +63,10 @@
.
A
.I roff
-type-setting system consists of an extensible text formatting language
-and a set of programs for printing and converting to other text
-formats.
+system consists of an extensible text formatting language and a set of
+programs for printing and converting to other text formats.
.
-Traditionally, it is the main text processing system of Unix; every
-Unix-like operating system still distributes a
+Unix-like operating systems distribute a
.I roff
system as a core package.
.
@@ -76,41 +74,24 @@
The most common
.I roff
system today is the free software implementation \f[CR]GNU\f[]
-.IR roff ",
+.IR roff ,
.BR groff (@MAN1EXT@).
.
-The
-.RI pre- groff
-implementations are referred to as
-.I classical
-(dating back as long as 1973).
-.
.I groff
-implements the look-and-feel and functionality of its classical
-ancestors, but has many extensions.
+implements the look-and-feel and functionality of its ancestors, with many
+extensions.
.
.P
-In some ancient Unix systems, there was a binary called
-.B roff
-that implemented the even more ancient
-.B runoff
-of the
-.I Multics
-operating system, cf.\& section
+The ancestry of
+.I roff
+is described in section
.BR HISTORY .
.
-The functionality of this program was very restricted even in
-comparison to ancient
-.IR troff ;
-it is not supported any longer.
-.
-Consequently, in this document, the term
+In this document, the term
.I roff
-always refers to the general meaning of
-.IR "roff system" ,
-not to the ancient
+always refers to the general class of roff programs, not to the
.B roff
-binary.
+command provided in early UNIX systems.
.
.P
In spite of its age,
@@ -127,17 +108,15 @@
than some of the commercial systems.
.
.P
-The most popular application of
.I roff
-is the concept of
+is used to format UNIX
.IR "manual pages" ,
-or shortly
-.IR "man pages" ;
-this is the standard documentation system on many operating systems.
+(or
+.IR "man pages" ),
+the standard documentation system on many UNIX-derived operating systems.
.
.P
-This document describes the historical facts around the development
-of the
+This document describes the history of the development of the
.IR "roff system" ;
some usage aspects common to all
.I roff
@@ -154,125 +133,87 @@
.SH "HISTORY"
.\" --------------------------------------------------------------------
.
-The
-.I roff
-text processing system has a very long history, dating back to the
-1960s.
+Document formatting by computer dates back to the 1960s.
.
The
.I roff
-system itself is intimately connected to the Unix operating system,
-but its roots go back to the earlier operating systems CTSS and
-Multics.
+system itself is intimately connected to the Unix operating system, but its
+roots go back to the earlier operating systems CTSS and Multics.
.
.
.\" --------------------------------------------------------------------
.SS "The Predecessor RUNOFF"
.\" --------------------------------------------------------------------
.
-.P
-The evolution of
-.I roff
-is intimately related to the history of the operating systems.
-.
-Its predecessor
+.BR roff 's
+ancestor
.B RUNOFF
-was written by
+was written in the MAD language by
.I Jerry Saltzer
for the
-.I CTSS
-operating system
-.RI ( "Compatible Time Sharing System" )
-as early as 1964 \[en] note that CTSS commands were all uppercase.
+.IR "Compatible Time Sharing System (CTSS)" ,
+a project of the Massachusetts Institute of Technology (MIT), in 1963 and
+1964 \[en] note that CTSS commands were all uppercase.
.
-When CTSS was further developed into the operating system
+.P
+In 1965, MIT's Project MAC teamed with Bell Telephone Laboratories (BTL)
+and General Electric to begin the
.UR http://\:www.multicians.org
-Multics
-.UE ,
-the famous predecessor of Unix from 1963,
-.I runoff
-has been improved further by people from the Massachusetts Institute of
-Technology (MIT) and the Bell Technical Laboratory (BTL), including Dennis
-Ritchie and Joe Ossanna.
-.
-.BR "Multics runoff" ,
-for example, was now able to do two-pass operations; it became the main
-format for documentation and text processing.
+.I Multics
+system
+.UE .
.
-Both operating systems could only be run on very expensive computers
-at that time, so they were mostly used in research and for official
-and military tasks.
+A command called
+.B runoff
+was written for Multics in the late 60s in the BCPL language, by
+.IR "Bob Morris" ,
+.IR "Doug McIlroy" ,
+and other members of the Multics team.
.
.P
-The possibilities of the
-.I runoff
-language were quite limited as compared to modern
-.IR roff .
-.
-Only text output was possible in the 1960s.
-.
-This could be implemented by a set of requests of length\~2, many of
-which are still identically used in
-.IR roff .
+Like its CTSS ancestor, Multics
+.B runoff
+formatted an input file consisting of text and command lines; commands began
+with a period and were two letters.
.
-The language was modelled according to the habits of typesetting in
-the pre-computer age, where lines starting with a dot were used in
-manuscripts to denote formatting requests to the person who would
-perform the typesetting manually later on.
-.
-.P
-The runoff program was written in the
-.I MAD
-language first, later on in
-.I BCPL
-(by
-.IR "Doug McIlroy" ),
-the grandmother of the
-.IR C \~\c
-programming language.
-.
-In the Multics operating system, the help system was handled by
-runoff, similar to
-.IR roff 's
-task to manage the Unix manual pages.
+Output from these commands was to terminal devices such as IBM Selectric
+terminals.
.
-On the other hand, BCPL and runoff were ported to the GCOS system
-at Bell Labs since BTL left the development of Multics.
+Multics
+.B runoff
+had additional features added, such as the ability to do two-pass
+formatting; it became the main format for Multics documentation and text
+processing.
.
.P
-There are still documents written in the RUNOFF language; for examples
-see Saltzer's home page, cf.\& section
-.BR "SEE ALSO" .
+BCPL and
+.B runoff
+were ported to the GCOS system at Bell Labs when BTL left the development of
+Multics.
.
.
.\" --------------------------------------------------------------------
.SS "The Classical nroff/troff System"
.\" --------------------------------------------------------------------
.
-At the Bell Labs, there was a need to
-drive the Wang
+At BTL, there was a need to drive the
.I Graphic Systems CAT
-typesetter, a graphical output device from a PDP-11 computer running
-Unix.
-.I Ken Thompson
-rewrote runoff for the PDP-11; however, as runoff was too limited for
-the CAT it was further developed into the more powerful
-.I nroff and
-.I troff
-programs by
+typesetter, a graphical output device from a PDP-11 computer running Unix.
+.
+As
+.B runoff
+was too limited for this task it was further developed into a more
+powerful text formatting system by
.IR "Joseph F.\& Ossanna" ,
who already programmed several runoff ports.
.
-On the hardware side, Ossanna wired the nominal paper-tape reader of
-the CAT straight into the PDP-11.
-.
.P
The name
.I runoff
was shortened to
.IR roff .
.
-The greatly enlarged language of Ossanna's concept included already all
+The greatly enlarged language of Ossanna's version already included all
elements of a full
.IR "roff system" .
.
@@ -326,7 +267,7 @@
.
.P
The syntax of the formatting language of the
-.BR nroff / troff
+.BR nroff /\: troff
programs was documented in the famous
.IR "Troff User's Manual [CSTR\~#54]" ,
first published in 1976, with further revisions up to 1992 by Brian
@@ -340,14 +281,13 @@
systems tried to establish compatibility with this specification.
.
.P
-After Ossanna had died in 1977 by a heart-attack at the age of about\~50,
-Kernighan went on with developing
+After Ossanna's death in 1977, Kernighan went on with developing
.IR troff .
.
-The next milestone was to equip
+In the late 1970s, Kernighan equipped
.I troff
with a general interface to support more devices, the intermediate
-output format and the postprocessor system.
+output format, and the postprocessor system.
.
This completed the structure of a
.I "roff system"
@@ -359,9 +299,7 @@
.
This new
.I troff
-version is the basis for all existing newer
-.I troff
-systems, including
+version is the basis for all existing newer troff systems, including
.IR groff .
.
On some systems, this
@@ -377,28 +315,12 @@
.
.
.\" --------------------------------------------------------------------
-.SS "Commercialization"
+.SS "Availability"
.\" --------------------------------------------------------------------
.
-A major degradation occurred when the easily available Unix\~7
-operating system was commercialized.
-.
-A whole bunch of divergent operating systems emerged, fighting each
-other with incompatibilities in their extensions.
-.
-Luckily, the incompatibilities did not fight the original
-.IR troff .
-.
-All of the different commercial
-.I roff
-systems made heavy use of Ossanna/\:Kernighan's open source code and
-documentation, but sold them as \[lq]their\[rq] system \[en] with only
-minor additions.
-.
-.P
The source code of both the ancient Unix and classical
.I troff
-wasn't available for two decades.
+weren't available for two decades.
.
Meanwhile, it is accessible again (on-line) for non-commercial use,
cf.\& section
@@ -413,7 +335,9 @@
.I roff
project was the \f[CR]GNU\f[] implementation of
.IR troff ,
-written from scratch by James Clark and put under the
+written from scratch by
+.I James Clark
+and put under the
.UR http://\:www.gnu.org/\:copyleft
GNU Public License
.UE .
@@ -438,8 +362,8 @@
.
It is the first
.I roff
-system that is available on almost all operating systems \[en] and it
-is free.
+system that is available on almost all operating systems \[en] and it is
+free.
.
This makes
.I groff
@@ -448,7 +372,8 @@
standard today.
.
.P
-An alternative is Gunnar Ritter's
+An alternative is
+.IR "Gunnar Ritter" 's
.UR http://\:heirloom.sf.net
Heirloom Documentation Tools
.UE
Index: src/preproc/eqn/sqrt.cpp
===================================================================
RCS file: /cvsroot/groff/groff/src/preproc/eqn/sqrt.cpp,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -b -r1.4 -r1.5
--- src/preproc/eqn/sqrt.cpp 5 Feb 2007 15:24:56 -0000 1.4
+++ src/preproc/eqn/sqrt.cpp 10 Oct 2008 17:03:28 -0000 1.5
@@ -1,5 +1,5 @@
// -*- C++ -*-
-/* Copyright (C) 1989, 1990, 1991, 1992, 2002, 2003, 2007
+/* Copyright (C) 1989, 1990, 1991, 1992, 2002, 2003, 2007, 2008
Free Software Foundation, Inc.
Written by James Clark (address@hidden)
@@ -93,7 +93,8 @@
printf(".de " TEMP_MACRO "\n"
".nr " SQRT_WIDTH_FORMAT
" 0\\w" DELIMITER_CHAR "\\*[" SQRT_STRING_FORMAT "]" DELIMITER_CHAR
"\n"
- ".if \\\\n[rst]-\\\\n[rsb]-%dM<\\n[" TEMP_REG "]"
+ ".if \\\\n[rst]"
+ "&(\\\\n[rst]-\\\\n[rsb]-%dM<\\n[" TEMP_REG "])"
"&(\\\\n[.ps]<\\n[" MAX_SIZE_REG "]) \\{"
".ps +1\n"
"." TEMP_MACRO "\n"
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Groff-commit] groff ChangeLog doc/groff.texinfo man/roff.man ...,
Werner LEMBERG <=