Re: the Courier font family and nroff history

2024-03-22 Thread Dan Plassche
On Fri, Mar 22, 2024 at 7:07 PM Russ Allbery  wrote:

>
> The stated reason was that the output was device-independent, unlike
> output that embeds formatting codes derived from device-specific termcap
> entries, and they really liked the bold and underlining rather than the
> plain text or *ad hoc* markup produced by Pod::Text.

Overstrikes are more easily filtered and transformed for other output
formats than levels of nested escape codes that are terminal specific.

Enscript from Adobe, and the more featureful GNU replacement, are good
examples of tools designed to work with nroff or other daisywheel/line
printer output using overstrikes.   The preformatted line and page
layout are fully retained with all overstrikes rendered properly and
the ability to use any font (converted) in the postscript output,
which is awesome for printing historical documents designed for nroff.
You can also easily pass custom roff overstrikes to simulate combined
typewriter characters beyond bold and underline.

I have no major objection to using escape sequences and agree they
open some additional possibilities for functionality in modern
terminal emulators.  However, I think that most people using
overstrikes  have less as the pager in raw mode where underlines and
bold display correctly for manual pages.  It's a shame that early pc
vga consoles did not display underlines or italics properly!  Most
other *nix platforms did, and that's really not a problem in X or
modern graphical consoles like wscons on NetBSD that display
overstrikes correclty.

Best,

Dan

-- 
Dan Plassche



Re: [Groff] "Bib" preprocessor?

2016-07-27 Thread Dan Plassche
On Jul 27, 2016 12:02 PM, "John Gardner"  wrote:
>
> A program called *bib* appears to exist (or have once existed) that was
> supposedly similar or identical to *refer*. However, aside from a few
> fleeting references to its existence on Wikipedia
> <https://en.wikipedia.org/wiki/Troff#Preprocessors> and Troff.org
> <http://www.troff.org/prog.html>, I'm finding very little info on the
> program.
>
> Does anybody know how it differed from the more familiar *refer* program
> that's bundled with the GNU suite?
>

Timothy Budd wrote bib, which is more flexible than refer in letting you
setup styles for citations and adding multiple references inline under a
single note.

The program was distributed with BSD; you can get a copy from the CSRG
archives and there's documentation in the User's Supplementary Documents
number 28.  MirBSD has an html version of the doc at
https://www.mirbsd.org/htman/i386/manUSD/28.bib.htm.

I tried and liked bib, but found it was easier in my case to manually
format references.  I used Chicago style exclusively abd just setup a sed
script to handle first references, while leaving others as the author's
last name and page number.

Best regards,

Dan Plassche


Re: [Groff] OT: Fork of the Heirloom Documentation Tools for fixing bugs

2014-08-25 Thread Dan Plassche
Glad to hear that the heirloom doctools are still being supported with
bugfixes.  Thanks for this Carsten!

I like being able to use groff pretty much everywhere to produce good
looking documents and appreciate that the program is still being developed
by an active community.   However, all my systems also have heirloom's
ditroff installed, so I thought I would give a few use cases and reasons
below.

>From a design standpoint I like that almost all of the doctools are coded
in C and use separate standalone binaries for different commands.  You can
tune them fairly easily, such as in setting the tmp file location for troff.

The heirloom refer implementation with lookbib and sortbib is more robust
than the groff version, but groff's tbl seems more reliable on long tables.

I personally find that the Unicode support and the otf font handling are
the clear wins in using the heirloom doctools.  The paragraph at once
adjustment also noticeably improves page layout on nroff and troff.

Additionally, the output with the traditional macro packages and without
paragraph at once formatting is close to CAT troff (including the enhanced
BSD versions), which makes sense and proves useful with historical
documents like old man pages.

Thanks,

Dan Plassche
 On Aug 19, 2014 5:29 PM, "Carsten Kunze"  wrote:

> Hello,
>
> Since I know this list has some members who also use the Heirloom
> Documentation Tools ...
>
> There are some bugs in this troff implementaion which made them nearly
> unusable at least for me. Since there seems to be no chance that Gunnar
> Ritter (the former maintainer) will work again on this tools I have forked
> the repository
>
> from http://heirloom.cvs.sourceforge.net/heirloom/heirloom-doctools/
>
> to https://github.com/carsten-kunze/heirloom-doctools
>
> with the purpose to fix bugs.  There are already some bugs fixed (see
> CHANGES):
>
> * Crashes on OpenBSD reported in 2009
> (
> http://openbsd.7691.n7.nabble.com/Heirloom-troff-on-OpenBSD-4-4-libc-i386-td82865.html
> )
> but never got fixed (AFAIK)
>
> * eqn(1) crashes on 64 bit
>
> * Bugs regarding:
> - ! operator of .if
> - \fP after \fS
> - 'bp followed by ..
> (The last one is also in DWB and Plan9.)
>
> Something not so OT: I did many test with groff, DWB, Heirloom and Plan9
> (only the ditroff functionality).  For any of these groff had equal or
> better results and is the only implementation without bugs (regarding these
> tests).
>
> --Carsten
>
>


Viewing C/A/T Troff Output (Re: groff man(7) `B` macro behavior with `\c`, and input traps)

2022-06-18 Thread Dan Plassche


Hey Branden and Group,

On Sat, 18 Jun 2022, G. Branden Robinson wrote:

> I sure wish someone would leak the Unix 4.0 (1981) troff sources.

The ditroff conversion before the releases of Documenter's Workbench?

> Maybe a shorter pole would be to write a cat2dit(1) for V7-era C.

For reviewing C/A/T troff output it might be easiest to use Adobe 
transcript, which included ptroff to convert from otroff to postscript.

Transcript is on disc 4 of Kirk McKusick's CSRG set under 
local/transcript in source and binary form for the Vax.  There's a 
version of public domain ditroff from 1981 in local/ditroff on that disc 
as well.  Running 4.3 Reno from disc 2 or TUHS on a Vax in simh and 
pulling the software off disc 4 would cover your bases pretty well.

Alternatively, you can also find an earlier version of transcript in 
binary form on Apple AU/X and a later version from 1987 on 
Nextstep/Openstep if you already run either of those in emulation.

The open source psroff from Chris Lewis is another option, but takes a 
lot more work to compile.


Best,

Dan Plassche

-- 

Dan Plassche



Re: Underlining

2023-01-30 Thread Dan Plassche
Copying the list as I replied to Branden only by accident a few minutes ago.

This should be the latest version of Werner's underlining macro:

https://lists.gnu.org/archive/html/groff/2010-08/msg00017.html

IIRC it still has problems when output goes across multiple lines (becomes
continuous underline including margin and spacing from second line going
forward) and with underlining punctuation after the argument (workarounds
force an extra space).  I can confirm tomorrow.

I ended up preferring using the basic drawing method in the Groff manual
due to the punctuation issue.


Best,

Dan


Underlining

2023-02-01 Thread Dan Plassche
> IIRC it still has problems when output goes across multiple lines
> (becomes continuous underline including margin and spacing from
> second line going forward) and with underlining punctuation after the
> argument (workarounds force an extra space).  I can confirm tomorrow.


The underlining from the continuation line left margin actually occurred
with the basic line drawing macro from the manual that was mentioned
here by Branden as ".Underline."  Seems like a reasonable limitation of
that approach being anchored to the start of the string and handling
punctuation properly.

The underlining of trailing punctuation was an issue with Werner's
macro.  Adding the punctuation as a second argument after the quoted
underlined text produces an extra underlined space and punctuation
mark.

So

.Underline "intended underline" !

produces

_intended underline !_

rather than _intended underline_!



Re: [TUHS] v6 Unix Documents

2024-10-19 Thread Dan Plassche


On Fri, 18 Oct 2024, G. Branden Robinson wrote:

> I do observe that this web page credits the publisher of the document as
> "Western Digital Corporation".  Shouldn't that be "Western Electric
> Company"?

Yeah, Western Electric is the issuer on the licenses and printed 
documentation packs for Research Unix in the 1970s.

I completely looked past the typo amidst the thrill of obtaining 
the document!  

I've let an archivist at the CHM know of the correction.  It was 
striking to me when searching that most catalog entries for Unix 
material through v6 combine the documents as a single serial from 
1971-76 with Thompson and/or Ritchie as authors, which made the 
locating specific items difficult.

> > The [nt]roff user manual,
> 
> Noteworthy but frustrating here is that at this point, the forerunner of
> CSTR #54 was still titled simply "NROFF Users' Manual" (PDF pp. 173ff.).
> References to troff are present, but the typesetting program is not
> fully documented.  Frustrating!

I hope we can get closer to filling in the gaps and nroff will 
provide a starting point.

Nroff appears in v2 in 1972.  The roff program that appeared in 
v1 stays static afterwards through v7.

The first reference to the "NROFF Users' Manual" (MM-73-1271-2) 
is in the manpage for v3 (dated January 1973).  The manpage also 
now includes a full request summary of commands and continues to 
do so with dated changes for each release through v5.  

The v6 user's manual header is listed as the second edition of 
the nroff manual from an update in September 1974 (v5).

If the changes for each manpage align with the manuals and the 
source code for v4-6, then it should be possible to trace the 
evolution.  I'll follow-up with an effort to summarize the change 
history in a subsequent email to the groff list in the coming 
weeks.

The troff history is a lot less clear to me at this point for the 
time before the rewrite to c between v6 and v7.

The "Troff User's Manual" appears in v4 and is listed as 
preliminary alongside the "TROFF Made Trivial" document that 
likely provided a basis for the later troff tutorial.  The v6 
nroff user's manual was clearly typeset in troff (like the 
programmer's manuals in general from v4 onwards), but the troff 
user's manual is listed as a separate document on the manpage 
through v6.

> Also we have here the (unnumbered) first edition of the eqn User's
> Guide (PDF pp. 269ff.).

It would be nice to have a drop-in special font with traces 
traces of the non-alphanumeric special characters that rendered 
uniquely on the C/A/T: primarily some of the braces and lower 
case slanted Greek letters.  I am thinking the font would be in 
addition to possible code points for troff-specific drawing 
characters like the underrule and box corners that were recently 
mentioned for addition to unicode coverage.

> The biggest nroff change that leaps out at me right now is that in V6
> _special character escape sequences did not yet exist_.  Given that the
> C/A/T typesetter had already been in use for years by 1975 (with eqn
> giving it strenuous exercise from early on), I find this fascinating.

This omission makes me wonder if the special characters were part 
of short, separate troff-specific manual that remained completely 
separate until v7 (particularly given the eqn style characters 
and other symbols already in use as you noted).

> Evidence of the close relationship with the Teletype Model 37 is
> present, with the `\x` and `\y` escape sequences mapping to "ASCII
> Shift-out" and "ASCII Shift-in", respectively (PDF p. 177).

You would think shift-in and out would have stuck around as a 
shorthand for nroff device type element changes, given the common 
tendency to use Selectrics and later daisy wheel printers.

> .xh   Extra half-line mode on.

Usage of half-lines appears surprisingly often in general and is 
perhaps the major case for outputting troff to look like an nroff 
device.

> I see that the `ad` request did not accept arguments "l" or "b", just
> "c" and "n".  Since "b" and "l" were redundant, my imaginations conjures
> 
> No worries, I'll be there soon!  

The v6 approach certainly seems clearer and supports your 
suggested cleanup of .ad.

> > tmg compiler-compiler, and m6 macro processor memos were previously
> > missing from the distributions in TUHS and later efforts to re-create
> > the documentation.
> 
> I'm intensely interested in both of these from a personal perspective.
> 
> I observe that the TMG and  m6 documents appear may have been prepared
> by vintage 1972 and 1971 nroff, making them worthwhile exhibits on that
> basis alone (PDF pp. 211ff., 239ff., respectively).  I wonder why they
> were never typeset.  Would the document sources have required too much
> "porting" to troff?

Very interesting to locate these papers that are frequently 
referenced.  Based on the appearance and layout, I suspect they 
were formatted early with runof

Re: [TUHS] v6 Unix Documents

2024-10-20 Thread Dan Plassche
Hey Branden,

On Fri, 18 Oct 2024, G. Branden Robinson wrote:

> I do observe that this web page credits the publisher of the document as
> "Western Digital Corporation".  Shouldn't that be "Western Electric
> Company"?

Yeah, Western Electric issued licenses and official printed 
documentation externally for Research Unix in the 1970s.

I completely looked past that typo in the catalog amidst the 
thrill of obtaining the document!

I've let an archivist at the CHM know of the correction.  I found 
in the course of researching that most other catalogs list the 
documentation as a single serial item from 1971 onwards with 
Thompson and/or Ritchie as authors, so finding any specific item 
can be difficult.

> > The [nt]roff user manual,
> 
> Noteworthy but frustrating here is that at this point, the forerunner of
> CSTR #54 was still titled simply "NROFF Users' Manual" (PDF pp. 173ff.).
> References to troff are present, but the typesetting program is not
> fully documented.  Frustrating!

We can trace the evolution using nroff as a starting point.

Nroff appeared in v2 Unix in 1972 and the preceeding roff 
formatter did not change afterwards.

The v3 manpage for nroff includes the first reference to the 
"NROFF User's Manual" (MM-73-1271-2) and a summary of all 
commands.  The summary is available with each dated and revised 
manpage for nroff through v5.

The v6 manual from 1975 is identified as the second edition of 
the "NROFF User's Manual" as revised in Sept. 1974.

If the documentation and changes to the extant source code from 
v4 to v6 are in alignment, we should have a baseline history with 
a clear indication of differences across versions.  I will send a 
summary with further details to the groff mailing list in the 
coming weeks.

The development of troff before the rewrite to C between v6 and 
v7 is a lot less clear.  Troff appears in v4 with a mention of a 
preliminary user's manual, but I suspect the manual is a summary 
of unique troff features that were not documented elsewhere until 
v7.  The manpages only cover troff invocation.

> Also we have here the (unnumbered) first edition of the eqn User's
> Guide (PDF pp. 269ff.).
... 
> The biggest nroff change that leaps out at me right now is that in V6
> _special character escape sequences did not yet exist_.  Given that the
> C/A/T typesetter had already been in use for years by 1975 (with eqn
> giving it strenuous exercise from early on), I find this fascinating.

Perhaps special characters did exist for troff but were not 
documented in this v6 manual.  It's not clear without seeing an 
earlier troff manual, but I'm staring to think that the v6 manual 
may be a continuation of the nroff manual alone.  In that case, 
general users would have fallen back on overstrikes for most 
special characters.  The greek characters in eqn and the various 
copyright symbols on earlier programmer's manuals seem to support 
the assumption that special characters were in use with troff.  
The documents and programmer's manuals were all printed with 
troff from v4 onwards.


> Evidence of the close relationship with the Teletype Model 37 is
> present, with the `\x` and `\y` escape sequences mapping to "ASCII
> Shift-out" and "ASCII Shift-in", respectively (PDF p. 177).

I was surprised to see the ribbon shift-in/out feature existed 
and then got removed, since it would seem that the command could 
have been reused for changing the typing element on Selectric 
consoles and daisywheel printers that were fairly widespread.

> .xh   Extra half-line mode on.

Half line motions are surprisingly common on older documents and 
probably a major reason for using troff output that's setup to 
look like an nroff device.

> I see that the `ad` request did not accept arguments "l" or "b", just
> "c" and "n".  Since "b" and "l" were redundant, my imaginations conjures
> office arguments over the meaning of the word "adjustment".  With the
> design in such flux, too bad I wasn't there to lobby for the separation
> of "alignment" and "adjustment".  ;-)
> 
> No worries, I'll be there soon!  
> (Fifty years late but moving fast, as Douglas Adams might have said.)

The v6 design certainly seems clearer and in support of your 
cleanup.

> > tmg compiler-compiler, and m6 macro processor memos were previously
> > missing from the distributions in TUHS and later efforts to re-create
> > the documentation.
> 
> I'm intensely interested in both of these from a personal perspective.
> 
> I observe that the TMG and  m6 documents appear may have been prepared
> by vintage 1972 and 1971 nroff, making them worthwhile exhibits on that
> basis alone (PDF pp. 211ff., 239ff., respectively).  I wonder why they
> were never typeset.  Would the document sources have required too much
> "porting" to troff?

I was very interested to find the papers as well.  The output 
seems to be roff formatted like the v1 manual on TUHS and frozen 
from around 1972.

Re: [TUHS] v6 Unix Documents

2024-10-20 Thread Dan Plassche
Hey Branden,

Apologies for the duplicate message.  My last mail did not reach 
TUHS with the proper sender address.


On Fri, 18 Oct 2024, G. Branden Robinson wrote:

> I do observe that this web page credits the publisher of the document as
> "Western Digital Corporation".  Shouldn't that be "Western Electric
> Company"?

Yeah, Western Electric issued licenses and official printed 
documentation externally for Research Unix in the 1970s.

I completely looked past that typo in the catalog amidst the 
thrill of obtaining the document!

I've let an archivist at the CHM know of the correction.  I found 
in the course of researching that most other catalogs list the 
documentation as a single serial item from 1971 onwards with 
Thompson and/or Ritchie as authors, so finding any specific item 
can be difficult.

> > The [nt]roff user manual,
> 
> Noteworthy but frustrating here is that at this point, the forerunner of
> CSTR #54 was still titled simply "NROFF Users' Manual" (PDF pp. 173ff.).
> References to troff are present, but the typesetting program is not
> fully documented.  Frustrating!

We can trace the evolution using nroff as a starting point.

Nroff appeared in v2 Unix in 1972 and the preceeding roff 
formatter did not change afterwards.

The v3 manpage for nroff includes the first reference to the 
"NROFF User's Manual" (MM-73-1271-2) and a summary of all 
commands.  The summary is available with each dated and revised 
manpage for nroff through v5.

The v6 manual from 1975 is identified as the second edition of 
the "NROFF User's Manual" as revised in Sept. 1974.

If the documentation and changes to the extant source code from 
v4 to v6 are in alignment, we should have a baseline history with 
a clear indication of differences across versions.  I will send a 
summary with further details to the groff mailing list in the 
coming weeks.

The development of troff before the rewrite to C between v6 and 
v7 is a lot less clear.  Troff appears in v4 with a mention of a 
preliminary user's manual, but I suspect the manual is a summary 
of unique troff features that were not documented elsewhere until 
v7.  The manpages only cover troff invocation.

> Also we have here the (unnumbered) first edition of the eqn User's
> Guide (PDF pp. 269ff.).
... 
> The biggest nroff change that leaps out at me right now is that in V6
> _special character escape sequences did not yet exist_.  Given that the
> C/A/T typesetter had already been in use for years by 1975 (with eqn
> giving it strenuous exercise from early on), I find this fascinating.

Perhaps special characters did exist for troff but were not 
documented in this v6 manual.  It's not clear without seeing an 
earlier troff manual, but I'm staring to think that the v6 manual 
may be a continuation of the nroff manual alone.  In that case, 
general users would have fallen back on overstrikes for most 
special characters.  The greek characters in eqn and the various 
copyright symbols on earlier programmer's manuals seem to support 
the assumption that special characters were in use with troff.  
The documents and programmer's manuals were all printed with 
troff from v4 onwards.


> Evidence of the close relationship with the Teletype Model 37 is
> present, with the `\x` and `\y` escape sequences mapping to "ASCII
> Shift-out" and "ASCII Shift-in", respectively (PDF p. 177).

I was surprised to see the ribbon shift-in/out feature existed 
and then got removed, since it would seem that the command could 
have been reused for changing the typing element on Selectric 
consoles and daisywheel printers that were fairly widespread.

> .xh   Extra half-line mode on.

Half line motions are surprisingly common on older documents and 
probably a major reason for using troff output that's setup to 
look like an nroff device.

> I see that the `ad` request did not accept arguments "l" or "b", just
> "c" and "n".  Since "b" and "l" were redundant, my imaginations conjures
> office arguments over the meaning of the word "adjustment".  With the
> design in such flux, too bad I wasn't there to lobby for the separation
> of "alignment" and "adjustment".  ;-)
> 
> No worries, I'll be there soon!  
> (Fifty years late but moving fast, as Douglas Adams might have said.)

The v6 design certainly seems clearer and in support of your 
cleanup.

> > tmg compiler-compiler, and m6 macro processor memos were previously
> > missing from the distributions in TUHS and later efforts to re-create
> > the documentation.
> 
> I'm intensely interested in both of these from a personal perspective.
> 
> I observe that the TMG and  m6 documents appear may have been prepared
> by vintage 1972 and 1971 nroff, making them worthwhile exhibits on that
> basis alone (PDF pp. 211ff., 239ff., respectively).  I wonder why they
> were never typeset.  Would the document sources have required too much
> "porting" to troff?

I was very interested to find the papers 

Typesetter C Compiler and Troff (Re: [TUHS] Re: v6 Unix Documents)

2024-10-20 Thread Dan Plassche


On Sun, 20 Oct 2024, Jonathan Gray wrote:

> I've seen references to
> "Documents for Use with the Phototypesetter (Version 7)"
> which was likely distributed with the licensed phototypesetter tape in 1977.
> 
> What may have been the manual distributed with that tape is also close to v7.
> 
> https://www.tuhs.org/cgi-bin/utree.pl?file=Interdata732/usr/source/troff/doc
> https://www.tuhs.org/Archive/Distributions/Other/Interdata/
> 
> tuhs Applications/Spencer_Tapes/unsw3.tar.gz
> usr/source/formatters/troff/doc/

Looks we have the files from 1977!

There are 3 distributions on TUHS that have the same general name 
and number of source files for the "typesetter c" compiler and 
the "new" troff in C:

https://www.tuhs.org/Archive/Applications/Spencer_Tapes/unsw3.tar.gz
./usr/source/c_compiler
./usr/source/formatters/

https://www.tuhs.org/Archive/Distributions/USDL/spencer_pwb.tar.gz
./sys/c/c
./type/croff
./sys/source/s7/croff

https://www.tuhs.org/Archive/Distributions/Other/Interdata/interdata_v6.tar.gz
./usr/source/c
./usr/source/troff

The Spencer PWB tape appears to be 1.0.  Dates on files from 
sccsid comments on nroff/troff and throughout the system are from 
early to mid-1977 making this the earliest set.[1]  The files 
under the ./type/croff directory and ./sys/source/s7/croff are 
the same.

The UNSW AUSAM tape has the same files as PWB.  An initial check 
shows some feature flags and structs from PWB are missing for 
[nt]roff here.  However, there are extra notes on the c changes 
and the October 1976 NROFF/TROFF manual source for content 
published in the PWB documentation.  The latest dates on other 
files are from early to mid-1978.[2]

The Interdata files have lots of added comments and changes with 
a late 1978 date listed in some files[3].  It does have extra 
READ_ME files confirming that this was pre-release v7 c compiler 
for v6, which helps validate the PWB and UNSW content.

I'll work from the PWB and UNSW files with the plan to send troff 
details to the groff list and rebuild the compiler in the 
process.  Glad to confirm if the build succeeds and I find out 
any further details about the compiler if relevant for TUHS.

 1. Examples: ./usr/man/man0/introduction: May 1977 and 
./usr/man/man0/documents: August 1977

 2. As printed in the copy available at: 

 
http://www.bitsavers.org/pdf/att/unix/PWB_UNIX/Documents_for_the_PWB_UNIX_Time-Sharing_System_Edition_1.0_197710.pdf

Updates like the January 1978 changes to the dz serial code 
provided by Dennis at ./usr/sys/dmr/dz.c.

 3. Such as ./usr/doc/cman/cman1: June 1978.


Best,

Dan



Re: [TUHS] v6 Unix Documents

2024-10-20 Thread Dan Plassche
Hey Branden,

Apologies for the duplicate message.  I had a mailer issue this 
evening where the message did not reach TUHS.

On Fri, 18 Oct 2024, G. Branden Robinson wrote:

> I do observe that this web page credits the publisher of the document as
> "Western Digital Corporation".  Shouldn't that be "Western Electric
> Company"?

Yeah, Western Electric issued licenses and official printed 
documentation externally for Research Unix in the 1970s.

I completely looked past that typo in the catalog amidst the 
thrill of obtaining the document!

I've let an archivist at the CHM know of the correction.  I found 
in the course of researching that most other catalogs list the 
documentation as a single serial item from 1971 onwards with 
Thompson and/or Ritchie as authors, so finding any specific item 
can be difficult.

> > The [nt]roff user manual,
> 
> Noteworthy but frustrating here is that at this point, the forerunner of
> CSTR #54 was still titled simply "NROFF Users' Manual" (PDF pp. 173ff.).
> References to troff are present, but the typesetting program is not
> fully documented.  Frustrating!

We can trace the evolution using nroff as a starting point.

Nroff appeared in v2 Unix in 1972 and the preceeding roff 
formatter did not change afterwards.

The v3 manpage for nroff includes the first reference to the 
"NROFF User's Manual" (MM-73-1271-2) and a summary of all 
commands.  The summary is available with each dated and revised 
manpage for nroff through v5.

The v6 manual from 1975 is identified as the second edition of 
the "NROFF User's Manual" as revised in Sept. 1974.

If the documentation and changes to the extant source code from 
v4 to v6 are in alignment, we should have a baseline history with 
a clear indication of differences across versions.  I will send a 
summary with further details to the groff mailing list in the 
coming weeks.

The development of troff before the rewrite to C between v6 and 
v7 is a lot less clear.  Troff appears in v4 with a mention of a 
preliminary user's manual, but I suspect the manual is a summary 
of unique troff features that were not documented elsewhere until 
v7.  The manpages only cover troff invocation.

> Also we have here the (unnumbered) first edition of the eqn User's
> Guide (PDF pp. 269ff.).
... 
> The biggest nroff change that leaps out at me right now is that in V6
> _special character escape sequences did not yet exist_.  Given that the
> C/A/T typesetter had already been in use for years by 1975 (with eqn
> giving it strenuous exercise from early on), I find this fascinating.

Perhaps special characters did exist for troff but were not 
documented in this v6 manual.  It's not clear without seeing an 
earlier troff manual, but I'm staring to think that the v6 manual 
may be a continuation of the nroff manual alone.  In that case, 
general users would have fallen back on overstrikes for most 
special characters.  The greek characters in eqn and the various 
copyright symbols on earlier programmer's manuals seem to support 
the assumption that special characters were in use with troff.  
The documents and programmer's manuals were all printed with 
troff from v4 onwards.


> Evidence of the close relationship with the Teletype Model 37 is
> present, with the `\x` and `\y` escape sequences mapping to "ASCII
> Shift-out" and "ASCII Shift-in", respectively (PDF p. 177).

I was surprised to see the ribbon shift-in/out feature existed 
and then got removed, since it would seem that the command could 
have been reused for changing the typing element on Selectric 
consoles and daisywheel printers that were fairly widespread.

> .xh   Extra half-line mode on.

Half line motions are surprisingly common on older documents and 
probably a major reason for using troff output that's setup to 
look like an nroff device.

> I see that the `ad` request did not accept arguments "l" or "b", just
> "c" and "n".  Since "b" and "l" were redundant, my imaginations conjures
> office arguments over the meaning of the word "adjustment".  With the
> design in such flux, too bad I wasn't there to lobby for the separation
> of "alignment" and "adjustment".  ;-)
> 
> No worries, I'll be there soon!  
> (Fifty years late but moving fast, as Douglas Adams might have said.)

The v6 design certainly seems clearer and in support of your 
cleanup.

> > tmg compiler-compiler, and m6 macro processor memos were previously
> > missing from the distributions in TUHS and later efforts to re-create
> > the documentation.
> 
> I'm intensely interested in both of these from a personal perspective.
> 
> I observe that the TMG and  m6 documents appear may have been prepared
> by vintage 1972 and 1971 nroff, making them worthwhile exhibits on that
> basis alone (PDF pp. 211ff., 239ff., respectively).  I wonder why they
> were never typeset.  Would the document sources have required too much
> "porting" to troff?

I was very interested to find the 

v6 Unix Documents

2024-10-17 Thread Dan Plassche
Hi,

A scan of the printed UNIX Version 6 documents set is now online
at the link below since last week.  The set consists of documents
accompanying the manual pages in the programmer's manual (similar
to volume 2 in v7).

https://www.computerhistory.org/collections/catalog/102659317

The [nt]roff user manual, tmg compiler-compiler, and m6 macro
processor memos were previously missing from the distributions
in TUHS and later efforts to re-create the documentation.

I have been working on finding this documentation as part of
researching roff history.  Still interested in earlier copies of
the internal memoranda from Ossanna that served as the NROFF
User's Manual since v3, the TROFF User's Manual after v5, and
TROFF Made Trivial starting around v4. Based on the manpage
histories, the documentation was revised for v4, 5, and 6.


Best,

Dan Plassche



Re: [TUHS] Typesetter C Compiler and Troff (Re: Re: v6 Unix Documents)

2024-11-30 Thread Dan Plassche


> Date: Sun, 20 Oct 2024 22:47:43
> From: Jonathan Gray 
> 
> 
> I adapted Tim Newsham's v6 install scripts for PWB if you'd
> like to run it on simh.
> 
> https://github.com/jonathangray/pwb/

Thanks, very helpful and worked well.  Since I was able to 
follow the setup script and rebuild the c versions of nroff/troff 
on PWB 1.0, I took a look at the new c compiler for differences 
with the UNSW copy.

It turns out that the UNSW copy of the c compiler was definitely 
a earlier version than in PWB.  The most noticeable difference in 
the UNSW stdio library was calloc.c not using malloc.  The most 
major omission in the c compiler was casts and there were also 
some local changes to cc.c.  Based on those differences, I'm 
thinking that the UNSW copy appears to be from late 1976 to early 
1977.

I was able to rebuild both the UNSW and the native PWB compiler 
on PWB 1.0, but not to backport either to vanilla v6.


Best,

Dan