Commit Graph

252 Commits

Author SHA1 Message Date
nhmall
3b86b29ce8 extraneous braces 2018-04-16 20:44:45 -04:00
nhmall
b5a623a6d7 fix Guidebook.tex creation
The Guidebook.tex band in it breaks the creation of Guidebook.tex.

    ! Not a letter.
    l.2701 \hyphenation{.
                     nethackrc}
    ?

For these simple one-time situations, just use \mbox{} to prevent
them from hyphenation instead.
2018-04-16 20:35:53 -04:00
nhmall
123dddebb6 Guidebook date bump 2018-04-16 19:55:04 -04:00
PatR
24c62868c4 more Guidebook.mn tweaks
The sample map was being rendered in a proportional-width font for
Guidebook.mn -> Guidebook.ps -> Guidebook.pdf so looked awful.  It
is quite hard to believe that no one ever noticed this.  I wasn't
sure how to force tty font, but it is straightforward to pick
constant-width variant of Roman which seems to be 'roff's universal
font.

Prevent ".nethackrc" from being hyphenated and split across lines.
Ditto for other file names in the same section even though they
hadn't been positioned in spots where they got split.  I put same
thing into Guidebook.tex but I don't know whether their embedded
dots will become a problem there.

Loads of unmatched double quotes were confusing Emacs' nroff-mode
(which unlike tex-mode for Guidebook.tex, wasn't being activated
by default for Guidebook.mn).  Supply missing closing quote for a
bunch of things, convert literal '"' to '\(dq' for ones that aren't
intended to have matching close quote.  And change a bunch of
instances of "text" to ``text'' for rendering as quoted strings.
(There are a lot of single-quoted characters 'c' which should
probably be `c' instead, but I haven't touched those.)

There were several '\e' to render the 'escape' character, but that
is something which can be changed at will.  Use '\\' to explicitly
show backslash instead.  Change several ' - ' and '--' to '\(em'
for M-sized dash.  Right now they all have <space>\(em<space> but
the spaces probably shouldn't be there.

Change instances of 'number_pad' to '.op number_pad' to have it
rendered as an option name.

Remove the obsolete sentence which said that "Elbereth" might be
conditionally excluded.  (This change also made in Guidebook.tex.)

Split some wide lines (wide in the source, not after rendering),
although this wasn't done exhaustively.  For the re-split lines,
put each sentence on its own line as suggested by 'roff' man page.
2018-04-16 16:29:01 -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
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
nhmall
b0817ee88a gb typo fix 2018-04-05 20:49:12 -04: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
nhmall
4029e2580a interim dungeoneer, README update 2018-03-03 10:19:47 -05:00
PatR
d7f26afba8 more #adjust (#H6571)
Make the suggested change that only adjusting something into its own
slot be the way to collect/merge compatible stacks with it, instead
of any #adjust without a split count.  This removes the previous
special case for a count that matches the stack size.  Having to
know the exact count was not a burden on the player, but being able
to move things around without merging with other stacks makes more
sense than the original behavior or the hack to work-around that
behavior.
2017-12-05 03:38:23 -08:00
PatR
90405235e5 address #H6552 - #adjust behavior
The report stated that '#adjust a c' after '#adjust 1a b' moved all
the original 'a' to 'c' instead of leaving the one in 'b' alone.
That's true, but it is also the intended behavior.  Splitting off
with a count explicitly avoids gathering compatible stacks (but
does merge into the destination if compatible, instead of swapping).
Moving a whole stack gathers compatible ones and puts the whole
merged group into the destination.

But that leaves a gap in functionality:  there's no way to get the
don't-collect-other-stacks without splitting; there ought to be.
So, allow the player to specify full count to move a stack from one
slot to another without collecting compatible stacks (the behavior
when no count is given) or splitting (the behavior when count is
less than full amount).  In the example above, if 'a' started with
5 doodads and had 4 left after splitting one to 'b', '#adjust 4a c'
will move those 4 (all of 'a') to 'c' without merging 'b' into them.
The method is a bit obscure but it's also something which doesn't
come up very often.
2017-11-30 19:15:45 -08:00
Pasi Kallinen
a3d713d98b Tiny Guidebook fixes 2017-11-24 11:09:16 +02:00
Pasi Kallinen
f2765c573f Document therecmdmenu 2017-11-01 16:13:51 +02:00
Pasi Kallinen
99c6b7f4da Add context menu for current location
Add a new boolean option herecmd_menu. If this is on, and using
a windowport that supports mouse, clicking on your character pops
up a menu of actions doable in that location. Basically this is
nothing new, as almost all of the same actions were done before
on the mouse click.

You can also pop up the context menu with the #herecmdmenu
extended command
2017-10-10 15:35:33 +03:00
Pasi Kallinen
e2e7e6464d hitpointbar is also available on Windows GUI 2017-09-26 17:45:25 +03:00
Pasi Kallinen
69f7a78dba Hilite Status: Improved
Allow defining multiple stops per field. Add hitpointbar.
2017-09-26 10:04:25 +03:00
Pasi Kallinen
596bc64341 Add option to make commands ask an inventory item via menu
Turning the boolean option force_invmenu makes all the commands
that ask for an inventory item pop up a menu instead of asking
a text query.  This should be much more friendlier to new
players, and is very useful for window ports on systems
with touch screens and no physical keyboard, such as cell phones.
2017-09-23 22:47:14 +03:00
PatR
5710944258 address #H5590 - paranoid_confirm vs lycanthropy
Polymorph control gives the player a chance to accept or reject a form
change due to lycanthropy, but if it occurs during combat or movement
the player might type 'y' before realizing that the prompt is pending.
Provide a paranoid_confirmation setting for 'Were-change' to allow a
player to require "yes" instead of 'y' for that.

The existing setting 'wand' is renamed to 'wand-break' and now requires
at least two letters in the config file options instead of just 1.  The
spelling of its synonym is changed from 'breakwand' to 'break-wand';
it can be shorted to as few as 2 letters (same as before) but if more
than 5 are present, the new dash is required.

Both 'wand-break' and 'Were-change' are placed before 'pray' in the 'O'
menu for paranoid_confirmation so that all the "yes" vs 'y' settings
are grouped together.

Bonus fixes:
Reverting from were-critter form to human (due to timeout) did not give
a player with polymorph control the option of remaining in creature
form; now it does.
The 'O' command's menu would not show "wand" (now "wand-break") in the
current value of paranoid_confirmation.  (A post 3.6.0 issue, so no
fixes entry included.)

The revised Guidebook.mn has been tested; Guidebook.tex has not.
2017-09-12 04:14:44 -07:00
Pasi Kallinen
bfad877fba Add optional config file sections, selected with CHOOSE
Allows the user to define arbitrarily named optional sections
in the config file, and select which of those sections are used.

For example:

  OPTIONS=color
  CHOOSE=char A,char B

  [char A]
  OPTIONS=role:arc,race:dwa,align:law,gender:fem

  [char B]
  OPTIONS=role:wiz,race:elf,align:cha,gender:mal
2017-09-02 12:21:51 +03:00
Pasi Kallinen
30aea05f47 Minor Guidebook tweakage 2017-08-24 22:59:46 +03:00
Pasi Kallinen
23be1b81d2 Typofix in Guidebook.tex 2017-08-24 10:34:37 +03:00
Pasi Kallinen
ef9d198d53 Explain "no travel path" in Guidebook 2017-08-24 10:33:23 +03:00
Pasi Kallinen
bbc3cee759 Fix minor diffs between Guidebook.mn and .tex 2017-08-17 23:30:36 +03:00
Pasi Kallinen
4e05de9bff Add whatis_moveskip option to change fast-moving cursor
Previously the "fast-moving" when getting a target location
was always by 8 units. If this option is on, fast-moving
will instead skip the same map glyphs. This should be much more
useful for blind players.
2017-08-06 15:41:31 +03:00
Pasi Kallinen
b13bae91dc Add way to cycle through valid locations for polearm or jump target 2017-07-31 19:10:26 +03:00
Pasi Kallinen
439028dcae Add whatis_filter option to filter eligible map locations for travel
Compound option whatis_filter, filters the eligible map locations
when getting a cursor location for targeting. Accepts 'n' (none),
'v' (map locations in view), or 'a' (map locations in the same area,
eg. room or corridor).
2017-07-31 16:58:23 +03:00
PatR
6a84840971 address #H5426 - inventory category selections
Report #5426 was classified as not-a-bug, but the underlying issue
can be improved.

For item selection where BUCX (bless/curse state) filtering is
supported (mostly for menustyle:Full, but there are a few actions
where Traditional and Combination handle BUCX too), 3.4.3 took the
union of object class and bless/curse state (so ?!B gave all scrolls
and all potions and every blessed item from other classes) but 3.6.0
changed that to the intersection (so ?!B gives blessed scrolls and
blessed potions, period).  Since gold is inherently not blessed or
cursed it has been getting excluded during intersection handling
when that includes BUCX filtering.  Report #5426 was from a player
who was used to choosing $X when putting newly acquired loot into a
container asking to have the old behavior reinstated.

The ideal fix would be to support both union ($ | X) and intersection
(?! & B), but implementation would be bug prone and the interface,
especially when done for menus, would be cumbersome.  Instead, this
adds new boolean option, goldX, to allow the player to decide whether
gold is classified as uncursed--even though it is never described as
such--or unknown.  The new-loot-into-container issued can be solved
either via $abcX, where abc lists all classes that have any X items
(when gold is included as one of the classes, its BUCX state is now
ignored for the current selection), or by setting the goldX option
and then just picking X for the types of items to put into the
container (or drop or whatever other action supports BUCX filtering).

The situations where menustyle:Full allows BUCX filtering during
object class specification and styles Traditional and Combination
don't should to be fixed (by extending BUCX support to Traditional
and Combination rather than removing it from Full, obviously).
2017-06-21 14:02:13 -07:00
Pasi Kallinen
f9438f6e53 Document explicitly what m-prefix does to each command 2017-03-13 17:17:58 +02:00
Pasi Kallinen
7d8b4d4f97 Add end-of-game dumplogs
This is based on the "new" dumplog patch for 3.6.0, by Maxime Bacoux.

Define DUMPLOG to enable. By default only enabled for the TTY linux.
2017-02-19 15:33:27 +02:00
Pasi Kallinen
569a14488c Document paranoid_confirm:all 2017-01-23 17:14:04 +02:00
Pasi Kallinen
c6f26c05d7 Accessibility: option to prevent status line updates
Apparently some screen readers keep reading the status lines
at the bottom of the screen when parts of those change.
Add an option to prevent updates to those lines.
2017-01-10 22:19:03 +02:00
Pasi Kallinen
daff7653f8 Add missing symbols to Blank symset and Guidebook 2016-12-04 21:38:59 +02:00
Pasi Kallinen
abb4f0fab2 Allow toggling menu for any travel target list 2016-10-13 20:16:21 +03:00
Pasi Kallinen
efd7526194 Accessibility: Pick travel/cursor targets from a menu
Adds two new configurable keys to the cursor targeting: 'A' (getpos.menu)
and 'a' (getpos.menu.cansee). First one shows a menu of all interesting
glyphs on the map, second one shows only those in sight.

Travel command also now obeys the "request menu" -prefix, showing
the menu with interesting targets in sight, and then traveling there.

Idea via the NetHack accessibility research by Alexei Pepers.
2016-10-06 13:10:13 +03:00
Pasi Kallinen
680c8a542c Add key rebinding
This is a modified version of Jason Dorje Short's key rebinding
patch, and allows also binding special keys, such as the ones
used in getloc and getpos.

One of the ways to play NetHack on nethack.alt.org is via a HTML
terminal in browser. Unfortunately this means several ctrl-key
combinations cannot be entered, because the browser intercepts
those. Similar thing applies to some international keyboard layouts
on Windows. With this patch, the user can just rebind the command
to a key that works best for them.

I've tested this on Linux TTY, X11, and Windows TTY and GUI.
2016-10-05 20:04:56 +03:00
Pasi Kallinen
f07c5570ca Add configurable symbol entry for strange object 2016-10-03 09:36:28 +03:00
Pasi Kallinen
b30a4d86c4 Add missing dark room symbol to the Guidebook 2016-09-24 19:51:43 +03:00
Pasi Kallinen
28e36b3136 Add full compass coordinate mode for screen readers 2016-09-20 18:36:06 +03:00