Commit Graph

10428 Commits

Author SHA1 Message Date
PatR
0942c1c3c8 more 'roff Guidebook tweaks
Fix the alignment of three short tables which use 'key dash meaning'
so that the dashes line up using Keni's .PS/.PL/.PE macros.  (There
might be others that need this.)

Center the "- - - -" separator which precedes the list of dungeoneers
at the end.  (Thinking about it now, possibly it should be forced to
have zero paragraph indentation prior to centering rather than tacking
on some trailing spaces to shift the non-blank part to the left.  The
title for the table of display symbols might be in the same boat here.
But I'm roff'd out for the time being.)

Try to explain object filtering for commands that can take multiple
object classes combined with multiple BUCX states (and/or 'unpaid').
At the moment it is attached to the 'D' command where it is most
likely to be used, but probably ought to have its own subsection in
the Objects chapter so that it doesn't bog down the command list.

The filtering paragraph ought to be duplicated in Guidebook.tex, but
there's enough quoting going on that I didn't trust myself to attempt
an untested change.
2018-04-16 01:24:23 -07:00
PatR
be8313cc5f doc/Guidebook.mn: UNIX trademark, other tweaks
Instead of modifying tmac.n's '.ux' macro, replace usage of it with
clone '.UX' (inline in Guidebook.mn in order to avoid modifying tmac.n
according to the author's wishes).  '.ux' was used in several places
and neglected in a few others.  Now all "UNIX" references use '.UX'
(unless I missed some...).  Only the first generates a trademark
footnote.  Also only the first adds the (r) superscript for registered
trademark; it would be better if that macro always showed (r) while
continued to show the footnote only once.

I made the mistake of making a bunch of small revisions all at once
and am not going to try to separate them out for separate commit.
I'm not sure they all got reviewed closely; I didn't spot any glaring
errors while scrolling through the formatted file.

The table of display symbols wasn't quoting the backslash used for
thrones so that symbol showed erroneously as blank.  hbeam, vbeam,
lslant, and rslant (used for zap animations) were mislabeled as
"wall".  (drawing.c used to have the same bug but it got fixed about
two years ago.  Guidebook.tex still needs to have this fixed.)

In the section 'using a configuration file', the file name ".nethackrc"
ended up as a hyphenated split across two lines.  That needs to be
fixed; the presence of a dash makes the spelling of the name become
ambiguous.

Several small tables that use <something><space+dash+space><something>
don't line up their dashes correctly.

I replaced most blank lines and also lines which begin with whitespace.
One notable exception is the sample map excerpt.  It seems to format
as intended so I didn't try to tinker with it.
2018-04-15 18:33:41 -07:00
PatR
2b818949b0 Revert "doc/tmac.n: UNIX trademark"
This reverts commit 206f9e43e9.

tmac.n contains a comment asking that modified versions not be
distributed.  So back out the change which updated '.ux' with
the current trademark owner for "UNIX" so that we can continue
distributing with Guidebook.mn.  We'll handle the out of date
trademark issue in another fashion.
2018-04-15 16:41:42 -07:00
keni
662380bf8c fix makedefs.6 formatting errors 2018-04-15 16:12:19 -04:00
keni
ce38567aeb fix makedefs.6 formatting errors 2018-04-15 13:56:55 -04:00
keni
6cf611cbc7 Merge remote-tracking branch 'origin/NetHack-3.6.0'
(required manual merge in include/config.h)
2018-04-15 13:50:59 -04:00
PatR
206f9e43e9 doc/tmac.n: UNIX trademark
The 'roff Guidebook's first reference to UNIX includes a footnote with
the trademark notice.  Several subsequent ones do not.  I think that's
ok; I think the '.ux' macro even keeps track and only issues it once.
But the extra ones aren't currently using '.ux' and probably should in
order to get the '(tm)' character.  I'll leave that for someone else....

The history section mentions quite a few trademarked names.  I hope
that the blanket "brand and product names are trademarks or registered
trademarks of their respective holders" is sufficient for them.
2018-04-14 19:21:04 -07:00
nhmall
68b1d0c7ba doc update 2018-04-14 19:01:15 -04:00
nhmall
a972554d7e more Guidebook symbols 2018-04-14 18:46:14 -04:00
nhmall
97a2995c28 spotted a typo in Guidebook.tex 2018-04-14 17:53:37 -04:00
nhmall
7945d517f4 more Guidebook 2018-04-14 17:34:05 -04:00
nhmall
fbb7aaaa63 bump the Guidebook date 2018-04-14 17:30:45 -04:00
nhmall
8acfd6dbef Three apparently didn't require it
Even though they appeared in a document as being "special"
food, fountain, and lava symbol didn't require the quote sequence
2018-04-14 17:08:51 -04:00
nhmall
1c180fd09c TeX characters with special meaning 2018-04-14 17:06:16 -04:00
nhmall
b8ea930e46 fix a heading and table column misalignment in doc/Guidebook.tex 2018-04-14 16:57:48 -04:00
PatR
5086c89658 doc formatting
Remove trailing spaces from doc/fixes36.1 (only a couple),
doc/Guidebook.mn (several), and doc/Guidebook.tex (many).  I re-split
some lines made wider by embedded formatting directives, but tried to
avoid getting carried away with that.

I think I added one missing period to Guidebook.mn and one missing
comma to Guidebook.tex.  Aside from that, they should format the same
as they did before this patch.
2018-04-14 13:13:42 -07:00
PatR
5054e7154b dat/history formatting
A bunch of trailing spaces crept in with the most recent udpate;
remove them.  Also, most sentences are separated from each other by
two spaces, but 2 or 3 had only one space.  Also, rewrap a couple of
the widest lines although none of them were too wide for displaying
within 80 columns.
2018-04-14 12:19:23 -07:00
PatR
77da2fdc65 tty EDIT_GETLIN fix for wrapped prompt
When a getlin() response is being typed, it wraps to second line if
the cursor tries to go past COLNO-1, but if a previous response is
treated as part of the prompt, using pline() to write prompt+space+text
wraps at a whole word boundary.  tty's getlin() assumes that the screen
position can be derived from that prompt+space+text_so_far but that
doesn't match if wrapping at a word boundary leaves blank space at end
of the top line.

When a prompt is accompanied by default answer, output the answer
separately instead of pretending it is part of the prompt.  Line-wrap
should occur at same point as when it was originally typed and avoid
the confusion about how far to back up when deleting characters.

This hasn't been exhaustively tested but it seems to work correctly
for ordinary input, input erased one character at a time, and input
killed all at once.  One thing which definitely hasn't been tested is
having the prompt itself be so long that it needs to wrap.
2018-04-13 04:32:05 -07:00
Pasi Kallinen
22cc37ed61 How to create single-page Guidebook.txt 2018-04-10 18:19:45 +03:00
PatR
f9f7eb9633 portal feedback from #wizwhere
The #wizwhere command (formerly ^O) has given the location of the
invocation position when on the relevant level for ages.  It was
extended in 3.6.0 to give magic portal location when on the any
of the four elemental plane levels.  Extend it again to show the
location of any magic portal when on a level which has one (so an
extra line of feedback at end of ^O output for quest entry, quest
home, Ft.Ludios entry once that's been assigned, and Ft.Ludios).
2018-04-09 14:12:43 -07:00
PatR
44eed82d41 'm ^V' (aka 'm C-v')
Allow the 'm' prefix for wizard mode level teleport command.  Using
it skips the initial prompt for level destination and goes directly
to the menu of special level locations that you get when answering
'?' to that prompt.
2018-04-09 13:48:43 -07:00
PatR
8710c2c29a minor fix for #annotate
Some github feedback pointed out that getting annotation input from
the player behaved differently from similar input for naming of
monsters and objects.  The complaint stated that hitting <return>
without supplying any input removed the old annotation, where other
naming would leave the old name intact.  3.6.0 did misbehave that
way; current code does too if EDIT_GETLIN is disabled but behaves
as desired when it's enabled.  (There's nothing that I can spot in
donamelevel() to explain why.  I'm confused.  Is tty_getlin()
returning the default answer instead of empty if that default text
is deleted at the prompt and no new text entered prior to <return>?)

Make donamelevel() work like mon/obj naming.  Empty input leaves
existing annotation, if any, intact.
2018-04-08 17:04:24 -07:00
PatR
38df5360e0 fix #H7039 - autodescribe of hallucinated statue
Having the autodescribe feature enabled and moving the cursor onto
a statue yields "statue of a <mon>" under normal circumtances, but
when done while hallucinating the feedback was just blank (because
the lookat() code couldn't find any monster at statue's location).
Now it will be "<random mon>" (not "statue of a <random mon>")
instead, same as when moving cursor over glyphs of actual monsters.
2018-04-07 16:08:10 -07:00
nhmall
297fb5522e updated 2018-04-07 08:58:35 -04:00
nhmall
c24d13f391 another guidebook typo 2018-04-07 08:38:17 -04:00
Pasi Kallinen
056a544f5a Missing word 2018-04-06 17:58:11 +03:00
Pasi Kallinen
b87dfdbecd Guidebook: Just list the extended command
... the same way the extra key binds are listed just above.
2018-04-06 08:50:35 +03:00
Pasi Kallinen
095a00e0fc Guidebook: Move ladders into stairs section 2018-04-06 08:46:08 +03:00
Pasi Kallinen
57cadfd387 Capitalize NetHack correctly 2018-04-06 08:00:50 +03:00
nhmall
e820f3561d cleanup 2018-04-05 21:10:28 -04:00
nhmall
b0817ee88a gb typo fix 2018-04-05 20:49:12 -04:00
nhmall
00fbff1f2c Merge branch 'NetHack-3.6.0' of https://rodney.nethack.org:20040/git/NHsource into NetHack-3.6.0 2018-04-05 18:53:08 -04:00
nhmall
4357f644b0 gb sync 2018-04-05 18:51:50 -04:00
PatR
a6b7438c51 fix an out of date fire/auto-quiver comment
When the fire command prompts for missile, it autoquivers the chosen
item.  Originally that was only done when the chosen item was a stack
but that got changed (back in 2007...) and the relevant comment was
not updated at the time.
2018-04-05 15:28:50 -07:00
nhmall
c9acbf8d14 more Guidebook updates 2018-04-05 17:59:52 -04:00
nhmall
b7d07e0d91 guidebook updates today's date and dungeoneers columns 2018-04-05 07:50:49 -04:00
PatR
e1552679e2 DUMPLOG map fix
I once changed dump_map() to suppress blank lines as it processed the
known portion of current dungeon level so that no blank lines would
be shown above the mapped area and at most one would be shown below.
Any blank lines within were put back.  But the count of the current
block of suppressed lines wasn't being zeroed when an internal gap
did get put back, so after that every line got spurious blank lines
inserted in front of it.  I'm surprised that no one seems to have
discovered this problem.

This fix also changes the dumped map to suppress trailing spaces.  In
the process, I noticed that the original DUMPLOG code was clobbering
column COLNO-1 if that was ever part of known map.  buf[x - 2] = '\0'
overwrote the final map character in buf[] with the terminator.
2018-04-04 18:27:13 -07:00
PatR
ac2634b603 EDIT_GETLIN fix for tty
After about the third time typing '#' and getting a prompt of "# K", I
decided that it wasn't clumsy typing.  The call chain for get_ext_cmd()
was passing an uninitialized output buffer to [hooked_tty_]getlin()
which treated random junk as the previous result to be used as current
default.  Other interfaces may need a similar fix.
2018-04-03 16:05:08 -07:00
Pasi Kallinen
4318aa8c04 Guidebook fix, 4 column dungeoneers 2018-04-03 20:41:53 +03:00
Pasi Kallinen
c15546585a Update opthelp 2018-04-03 18:42:04 +03:00
PatR
6faff71a17 fix another 'wonky secret door'
The cavemen quest description includes an 'S' in the lower right
corner of the MAP...ENDMAP section of the locate level.  It produced
a secret door as intended but did not have horizontal vs vertical set
because the latter was only being done for DOOR directives.  Instead
of adding an explicit directive, make the loading code set horizontal
vs vertical for all doors.

This fixes the orientation of that secret door in the Cav locate
level, but I noticed that it showed up an a visible horizontal wall
when the spots on either side were still blank.  It's behaving as
if the door is on a lit spot and the adjacent walls are unlit (this
misbehavior was already present before the current change; it was
just shown incorrectly as a visible vertical wall before).
2018-04-02 13:35:41 -07:00
PatR
f8e64b296c steed sanity check
Wizard mode sanity checking gave spurious "mon not on map" warnings
for steed when hero is mounted.  Steed is in the fmon list but not
expected to be present on the map.
2018-03-31 16:55:29 -07:00
Pasi Kallinen
98b0c8d4f0 More and more enums 2018-03-31 12:34:41 +03:00
Pasi Kallinen
ebde14a6f9 Still more enums 2018-03-31 11:43:38 +03:00
Pasi Kallinen
9b7e146807 Use more enums 2018-03-31 08:57:22 +03:00
Pasi Kallinen
fa89d84fa3 Silence yet another warning 2018-03-31 07:47:41 +03:00
PatR
c058826995 fix #H7015 - explosion chain reaction bug
The fix to prevent "crushed by a gas spore's explosion" set killer.name
to an empty string after a gas spore explosion finished, but that made
nested explosions end up with empty killer.name after the innermost
call completed.  explode() shouldn't have been hanging on to a pointer
to a global value that is subject to change while it executes.  Making
a local copy of the current value at the time explode() is called will
solve that (I hope...).

Simply reverting the reset of killer.name wouldn't have been correct.
The innermost explosion would still be clobbering killer.name for any
outer MON_EXPLODE explosions in progress.  When the only exploding
monster is gas spore, that wouldn't be noticeable.  But having other
types of exploding monsters and a chain reaction which affected more
than one type would have exposed that bug.  I think this fixes both
aspects of this problem but don't have a second type of exploding
monster to verify the second part.
2018-03-30 17:05:23 -07:00
Pasi Kallinen
4eab7b140c Don't store int into unsigned 2018-03-30 20:34:19 +03:00
Pasi Kallinen
2548d68dd3 Fix some warnings
Remove an unused variable, add missing FALLTHRUs, and use the same
FALLTHRU wording where it wasn't recognized by gcc
2018-03-30 19:42:50 +03:00
PatR
a365dc3450 {dgn,lev}_lex.c - suppress yyunput() complaint
When dgn_comp.l and lev_comp.l are processed by older versions of
flex, 'gcc -Wunused' complains when compiling dgn_lex.c and lev_lex.c
because flex creates 'static void yyunput()' and nethack doesn't use
it.  Newer versions honor macro YY_NO_UNPUT to hide the offending
code, but that doesn't help with older versions (like the one
masquerading as 'lex' on OSX).  Adding a dummy usage would probably
cause problems with other lexers, so change it from static to
'void yyunput()' as a 'sed' fixup in util/Makefile after flex has
finished.  That will be a no-op when yyunput doesn't exist or isn't
static.

In addition to the sys/unix/Makefile.utl change, this checks in new
sys/share/{dgn,lev}_lex.c with the fixup in place.
2018-03-27 16:34:47 -07:00