Commit Graph
25 Commits
Author SHA1 Message Date
G. Branden Robinson 61a16e6983 doc/recover.6: Fix style and markup nits
* Identify NETHACKDIR and HACKDIR as environment variables.
* ...and set them italics, not roman.
* Set default playground directory name in italics, not roman.
* Set command names in italics.
* Refer to command operands as such, not as "options".
* Use man page cross reference on first occurrence of "nethack" when
  referring to the command executable as opposed to the overall game.
  Because some text is commented out (`ig`nored), meaning the "first"
  occurrence appears twice (what's lexically present vs. what's
  formatted) do this twice as future-proofing.
* Set file names in italics, not roman.  Set variable parts of file
  names in roman.
* Refer to "single-user systems" instead of "microcomputers"; the latter
  is becoming antiquated terminology.
* Favor present tense over future.
* Tighten wording.
* Spell "save files" consistently as two words.
2026-05-06 04:53:12 -05:00
G. Branden Robinson 2d3f9b8c21 doc/recover.6: Revise synopsis
Tighten formatting: set synopsis syntax characters adjacently to
operands.  Rename `-d` option argument from "directory" to
"playground-directory" for clarity.

Set operands more idiomatically.  They are not given in pairs; instead
"base" can be repeated arbitrarily.  See, for example, the POSIX
reference page for ls(1).
  https://pubs.opengroup.org/onlinepubs/9799919799/utilities/ls.html

Format ellipsis idiomatically.

groff_man_style(7):

Notes
       ... The idiomatic roff ellipsis is three dots (periods) with thin
       space escape sequences \| internally separating them.  Since dots
       both begin control lines and are candidate end‐of‐sentence
       characters, however, it is sometimes necessary to prefix and/or
       suffix an ellipsis with the dummy character escape sequence \&.
2026-05-06 04:53:12 -05:00
G. Branden Robinson 561d08e53b doc/*.6: Improve formatting of carets
...on typesetters and UTF-8 terminals.

groff_man_style(7):
   Portability
...
     Several special characters are also widely portable.  Except for
     \-, \[em], and \[ga], AT&T troff did not consistently define the
     characters listed below, but its descendants, like DWB, Plan 9, or
     Solaris troff, can be made to support them by defining them in font
     description files, making them aliases of existing glyphs if
     necessary; see groff_font(5).  groff’s extended notation for
     special characters, \[xx], is also supported by mandoc(1), Heirloom
     Doctools troff, and neatroff, but not DWB, Plan 9, or Solaris
     troffs.
...
     \[ha]  Basic Latin circumflex accent (“hat”).  Some output devices
            format “^” as U+02C6 (modifier letter circumflex accent).
Notes
     Some tips on composing and troubleshooting your man pages follow.
...
     • Escape sequences of the form \[xx] don’t format correctly.

       The \[xx] special character escape sequence is a GNU troff
       extension also supported by mandoc, Heirloom Doctools troff, and
       neatroff.  DWB, Plan 9, and Solaris troffs don’t implement it.
       If your man page requires portability to these formatters, spell
       such escape sequences as “\(xx”; no closing parenthesis is used.
       xx must be exactly two characters; groff_char(7) lists portable
       special character identifiers.
2026-05-06 04:53:12 -05:00
G. Branden Robinson 67e724cd75 doc/*.[67]: Set man page xrefs consistently
NetHack's man pages already preponderantly use man(7) `IR` macro for
this purpose.  Align outliers.

The "SEE ALSO" section of doc/mn.7 is a partial exception.  While the
rest of the document sets cross-referenced man page topics in italics,
this section of the page does not.  It seems likely that this decision
was made in deliberate imitation of Seventh Edition Unix manuals (1979)
or their descendants in USG/USL and BSD Unices.  That feature of the
Unix man pages, however, was not deliberate per Doug McIlroy, the author
of the man(7) macros and editor of Volume 1 of the Seventh Edition Unix
Programmer's Manual, per his communication on the groff mailing list.

But NetHack has a policy of not modifying Matt Bishop's "mn" macro
file or its man page, so I leave that exception in place.

References:

https://lists.gnu.org/archive/html/groff/2021-08/msg00023.html
https://lists.gnu.org/archive/html/groff/2021-08/msg00040.html
https://github.com/NetHack/NetHack/pull/977#issuecomment-1424996578
2026-05-06 04:39:57 -05:00
G. Branden Robinson bbcfc474d0 doc/*.[67]: Drop redundant calls and requests
Sectioning and paragraphing macros always break the output line.

(Sub)sectioning macros always set text after the heading as a paragraph.

Fixes:

$ mandoc -T lint doc/*.[67] # output edited
doc/makedefs.6:49:2: WARNING: skipping paragraph macro: PP after SH
doc/nethack.6:367:2: WARNING: skipping paragraph macro: br after PP
doc/nethack.6:365:2: WARNING: skipping paragraph macro: PP empty
doc/nethack.6:157:2: WARNING: skipping paragraph macro: PP after SH
doc/nethack.6:431:2: WARNING: skipping paragraph macro: PP after SH
doc/nethack.6:673:2: WARNING: skipping paragraph macro: PP after SH
doc/nethack.6:676:2: WARNING: skipping paragraph macro: PP after SH
doc/recover.6:29:2: WARNING: skipping paragraph macro: PP after SH
doc/recover.6:125:2: WARNING: skipping paragraph macro: PP after SH
doc/recover.6:141:2: WARNING: skipping paragraph macro: PP after SH
doc/mnh.7:23:2: WARNING: skipping paragraph macro: PP after SH
doc/mnh.7:46:2: WARNING: skipping paragraph macro: PP after SH
2026-05-06 04:39:57 -05:00
G. Branden Robinson 2566ddefdf doc/*.6: Break input lines at sentence endings
...pacifying a warning from the forthcoming groff 1.25.

Fixes:

troff:doc/dlb.6:159: warning: end of sentence detected before end of text line [-w style]
troff:doc/makedefs.6:53: warning: end of sentence detected before end of text line [-w style]
troff:doc/makedefs.6:55: warning: end of sentence detected before end of text line [-w style]
troff:doc/makedefs.6:58: warning: end of sentence detected before end of text line [-w style]
troff:doc/makedefs.6:153: warning: end of sentence detected before end of text line [-w style]
troff:doc/makedefs.6:159: warning: end of sentence detected before end of text line [-w style]
troff:doc/makedefs.6:166: warning: end of sentence detected before end of text line [-w style]
troff:doc/makedefs.6:222: warning: end of sentence detected before end of text line [-w style]
troff:doc/makedefs.6:245: warning: end of sentence detected before end of text line [-w style]
troff:doc/makedefs.6:279: warning: end of sentence detected before end of text line [-w style]
troff:doc/mnh.7:30: warning: end of sentence detected before end of text line [-w style]
troff:doc/nethack.6:225: warning: end of sentence detected before end of text line [-w style]
troff:doc/nethack.6:226: warning: end of sentence detected before end of text line [-w style]
troff:doc/nethack.6:230: warning: end of sentence detected before end of text line [-w style]
troff:doc/nethack.6:234: warning: end of sentence detected before end of text line [-w style]
troff:doc/nethack.6:236: warning: end of sentence detected before end of text line [-w style]
troff:doc/nethack.6:524: warning: end of sentence detected before end of text line [-w style]
troff:doc/nethack.6:577: warning: end of sentence detected before end of text line [-w style]
troff:doc/recover.6:155: warning: end of sentence detected before end of text line [-w style]
2026-05-06 04:39:57 -05:00
G. Branden Robinson a33da92029 doc/*.6: Tweak copyright notices in man pages
Use *roff special character `\(co` for copyright sign.  This special
character identifier is _almost_ universally portable, dating back to
Ossanna troff in 1976.[1]  The exception is Plan 9 nroff, which claims
to be thoroughly UTF-8 oriented and should be able to render a copyright
sign.[2]  If no glyph for the character is available, the output device
driver degrades it to "c" (which is technically correct[3]), except for
groff, which falls back to "(C)"[4] only on its "ascii" output device.
All of groff's other devices have a a proper copyright sign.[5]

References:
[1] https://archive.org/details/unix-programmers-manual-seventh-edition-vol-2-1983/
    (pp. 196ff., see esp. "Table II", p. 227)
[2] https://github.com/9fans/plan9port/pull/735#issuecomment-3391733330
[3] https://www.copyright.gov/circs/circ03.pdf
[4] https://github.com/GitMirroring/groff/blob/a4d6e619afc8042b12084527c3c11eae919533e2/tmac/tty.tmac#L123
[5] https://paste.c-net.org/ComradesCourage
2026-05-06 04:39:57 -05:00
nhmall a396ad1033 force new txt files in doc 2026-04-26 13:29:30 -04:00
G. Branden Robinson dc14fb131f doc/{dlb,recover}.6: Disable dead dynamic code
Portions of these man pages seem at one time to have been dynamically
selected, but the mechanism for doing so appears to be commented out in
the source tree: see "NHGREP" in sys/{unix,vms}/Makefile.doc.

Wrap them in *roff "ignore blocks" to keep their noise from cluttering
the man page actually seen by the users.
2024-12-31 06:52:27 -06:00
nhkeni 09693f618f Fix header spelling error "DATE" -> "Date"; force update dates. 2024-12-24 19:24:15 -05:00
nhkeni bdff809099 Update hyphenation for *.mn and *.6 files. 2024-12-24 12:37:20 -05:00
nhkeni 36e8d9e6fc nhgitset version 4
To update, run "perl DEVEL/nhgitset.pl"

Fixes:
- "nhcommit -a" has been fixed
- NHDT was hardwired in places
- no longer complain about a missing dat directory outside of the
    NetHack source tree
- make update of gitinfo atomic
- Replace some hardwired directory separators with OS-dependent constructs

Backwards Incompatibilities:
- NH_DATESUB's DATE() is now Date() to match the other variables
- MSYS2 requires an additional Perl package - the MSYS2 docs have
    been updated

New Help System:
- git nhhelp
   This command mirrors "git help" for nh* commands.
- See git nhhelp nhsub for general help on substitution variables

New Substitution Variables:
-Brev()
    An aBREViation of $PREFIX-Branch$:$PREFIX-Revision$ - this
    may help get line length under control in file headers.
-Assert(TYPE=VALUE)
    If TYPE does not match VALUE, do not substitute on this line.
    TYPE P checks VALUE against nethack.substprefix
-Project(arg)
    Returns nethack.projectname if there is no arg and an uppercase
    version if arg is uc.

Other New Features:
- Add nethack.projectname
- Documentation updates - see "git nhhelp nhsub"
- On checkout or merge of a branch, check for nhgitset version updates
  and provide an optional message to the user.
- Move NH_DATESUB substitutions here from cron job to keep dates in sync
- PREFIX-* keywords now available in NH_DATESUB templates
- Support use of nhgitset.pl from a different repo; note that update
  checks will be dependent on keeping the original source repo up-to-date
  and in the same location.
2024-11-11 09:15:49 -05:00
nhmall 108dc2d262 updates from cron job 2022-02-22 20:14:44 -05:00
nhkeni e10dff845f remove more leading zeroes 2022-02-08 11:35:44 -05:00
nhmall ac1a7ae378 updates from cron job 2022-02-06 15:14:38 -05:00
nhmall b9228bd284 Jan 28 cron daily updates 2022-01-28 10:57:08 -05:00
keni 0f58af6f37 add missing copyright info 2018-04-25 16:54:50 -04:00
PatR f3f2233122 revert doc/recover.{6,txt} to previous state
When I updated recover.6 last week, I was under the mis-impression that
the INSURANCE compile-time option had been made unconditional.  It has
not, and after undoing that, there was no substantive change, so put it
back to how it was at release.
2015-12-14 13:51:33 -08:00
PatR 7ac64532a9 man page updates
Update the man pages and generated text copies for nethack and recover.
I haven't looked at the other four (dlb, makedefs, dgn_comp, lev_comp).

recover's page referred to INSURANCE as being conditional, which is no
longer the case.  nethack's page was missing a bunch of files to be
found in the playground and also a couple of environment variables.
I haven't read through the text of the page to try to see whether other
updates are warranted.

The generated text is wider than the previous copy (one or two space
right margin instead of 5 or so).  I just used 'make nethack.txt' and
'make recover.txt' so don't know why that changed.  (The older, wider
margin looks better, so if anyone knows how to fix this, please do.
And there's got to be a better way to force a blank line inside a
table than my <space><tab> hack.)
2015-12-08 15:15:00 -08:00
Sean Hunt 1c081b1647 Remove stale version control lines. 2015-05-25 09:21:31 +09:00
karnov 2a907f894e Version number increment 2015-05-06 22:04:27 -04:00
keni 03140969ee Bulk recovery of file CVS headers and addition of NHDT- headers. 2015-02-26 09:19:03 -05:00
keni df20791e59 Add RCS version lines 2009-05-06 10:45:32 +00:00
keni bb43b56eac first conditionalized docs (TRUNK ONLY)
plus various related missing bits and tids
2008-06-26 15:08:54 +00:00
jwalz 9f53febfe3 *** empty log message *** 2002-01-05 21:05:47 +00:00