have <del> run #terrain

Having recently noticed that using <del> aka <delete> aka <rubout>
could work as a command, assign it to #terrain.  #terrain was the
only command in the "game" subset of commands as shown by '? i'
that didn't have any key assignment.

Since <delete> might be swapped with <backspace> on some terminals
and is a keypad key on the typical PC keyboard, it might not work
reliably depending on nethack's number_pad mode or the hardware
Num-Lock setting.  Players in either of those situations haven't
lost anything; they can still use extended command #terrain.
This commit is contained in:
PatR
2020-12-14 01:00:19 -08:00
parent fcd74aedf4
commit 788e21ac43
5 changed files with 62 additions and 9 deletions

View File

@@ -1,4 +1,4 @@
&# cmdhelp
&# cmdhelp - became obsolete when 'BINDINGS=key:command' got added
& Tell what command a keystroke invokes
^ Show the type of an adjacent trap
^[ Cancel command (same as ESCape key)
@@ -145,6 +145,7 @@ _ Travel via a shortest-path algorithm to a point on the map
* Show all equipment in use (combination of the ),[,=,",( commands)
$ Count your gold
+ List known spells
Del Display map without monsters or objects obstructing the view.
# Perform an extended command (use '#?' to list choices)
&# number_pad:
&# -1 = numpad off, swap y with z (including Y with Z, ^Y with ^Z, M-y &c)

View File

@@ -1,4 +1,4 @@
.\" $NHDT-Branch: NetHack-3.7 $:$NHDT-Revision: 1.405 $ $NHDT-Date: 1607693152 2020/12/11 13:25:52 $
.\" $NHDT-Branch: NetHack-3.7 $:$NHDT-Revision: 1.407 $ $NHDT-Date: 1607936398 2020/12/14 08:59:58 $
.\"
.\" This is an excerpt from the 'roff' man page from the 'groff' package.
.\" Guidebook.mn currently does *not* fully adhere to these guidelines.
@@ -35,7 +35,7 @@
.ds vr "NetHack 3.7
.ds f0 "\*(vr
.ds f1
.ds f2 "December 11, 2020
.ds f2 "December 13, 2020
.
.\" A note on some special characters:
.\" \(lq = left double quote
@@ -1060,6 +1060,20 @@ Show discovered types for one class of objects.
.lp !
Escape to a shell.
See \(lq#shell\(rq below for more details.
.lp Del
Show map without obstructions.
You can view the explored portion of the current level's map without
monsters; without monsters and objects; or without monsters, objects,
and traps.
.lp ""
The <del> key is also shown as <delete> on some keyboards or <rubout>
on others.
It is sometimes displayed as \(ha? even though that is not an actual
control character.
.lp ""
Many terminals have an option to swap the <delete> and <backspace> keys,
so typing the <del> key might not execute this command.
If that happens, you can use the extended command \(lq#terrain\(rq instead.
.lp #
Perform an extended command.
.lp ""
@@ -1447,8 +1461,17 @@ Default key is \(oqA\(cq.
Teleport around the level.
Default key is \(oq\(haT\(cq.
.lp "#terrain "
Show bare map without displaying monsters, objects, or traps.
Show map without obstructions.
In normal play you can view the explored portion of the current level's
map without monsters; without monsters and objects; or without monsters,
objects, and traps.
.lp ""
In explore mode, you can choose to view the full map rather than just
its explored portion.
In debug mode there are additional choices.
.lp ""
Autocompletes.
Default key is \(oq<del>\(cq or \(oq<delete>\(cq (see \fIDel\fP above).
.lp #therecmdmenu
Show a menu of possible actions in a location next to you.
.lp "#throw "

View File

@@ -45,7 +45,7 @@
%.au
\author{Original version - Eric S. Raymond\\
(Edited and expanded for 3.7 by Mike Stephenson and others)}
\date{December 11, 2020}
\date{December 13, 2020}
\maketitle
@@ -1162,6 +1162,21 @@ Show discovered types for one class of objects.
Escape to a shell.
See ``\#shell'' below for more details.
%.lp
\item[\tb{Del}]
Show map without obstructions.
You can view the explored portion of the current level's map without
monsters; without monsters and objects; or without monsters, objects,
and traps.\\
%.lp ""
The <del> key is also shown as <delete> on some keyboards or <rubout>
on others.
It is sometimes displayed as \^{}? even though that is not an actual
control character.\\
%.lp ""
Many terminals have an option to swap the <delete> and <backspace> keys,
so typing the <del> key might not execute this command.
If that happens, you can use the extended command ``\#terrain'' instead.
%.lp
\item[\tb{\#}]
Perform an extended command.\\
%.lp ""
@@ -1537,8 +1552,17 @@ Remove all armor. Default key is `{\tt A}'.
Teleport around the level. Default key is `{\tt \^{}T}'.
%.lp
\item[\tb{\#terrain}]
Show bare map without displaying monsters, objects, or traps.
Show map without obstructions.
In normal play you can view the explored portion of the current level's
map without monsters; without monsters and objects; or without monsters,
objects, and traps.\\
%.lp ""
In explore mode, you can choose to view the full map rather than just
its explored portion.
In debug mode there are additional choices.\\
%.lp ""
Autocompletes.
Default key is `<del>' or `<delete>' (see {\it Del\/} above).
%.lp
\item[\tb{\#therecmdmenu}]
Show a menu of possible actions in a location next to you.

View File

@@ -1,4 +1,4 @@
NHDT-Branch: NetHack-3.7 $:$NHDT-Revision: 1.391 $ $NHDT-Date: 1607901923 2020/12/13 23:25:23 $
NHDT-Branch: NetHack-3.7 $:$NHDT-Revision: 1.392 $ $NHDT-Date: 1607936398 2020/12/14 08:59:58 $
General Fixes and Modified Features
-----------------------------------
@@ -670,6 +670,7 @@ let tourists read conical hats
when "?i" (show key bindings) displays commands and their keys, also show
commands without any key (so useable via '#', or possibly menu, only;
the majority are debugging commands)
assign default key binding for <del> or <delete> to execute #terrain
Platform- and/or Interface-Specific New Features

View File

@@ -1,4 +1,4 @@
/* NetHack 3.7 cmd.c $NHDT-Date: 1607641581 2020/12/10 23:06:21 $ $NHDT-Branch: NetHack-3.7 $:$NHDT-Revision: 1.432 $ */
/* NetHack 3.7 cmd.c $NHDT-Date: 1607936399 2020/12/14 08:59:59 $ $NHDT-Branch: NetHack-3.7 $:$NHDT-Revision: 1.433 $ */
/* Copyright (c) Stichting Mathematisch Centrum, Amsterdam, 1985. */
/*-Copyright (c) Robert Patrick Rankin, 2013. */
/* NetHack may be freely redistributed. See license for details. */
@@ -1913,7 +1913,11 @@ struct ext_func_tab extcmdlist[] = {
{ 'T', "takeoff", "take off one piece of armor", dotakeoff },
{ 'A', "takeoffall", "remove all armor", doddoremarm },
{ C('t'), "teleport", "teleport around the level", dotelecmd, IFBURIED },
{ '\0', "terrain", "show map without obstructions",
/* \177 == <del> aka <delete> aka <rubout>; some terminals have an
option to swap it with <backspace> so if there's a key labeled
<delete> it may or may not actually invoke the #terrain command */
{ '\177', "terrain",
"view map without monsters or objects obstructing it",
doterrain, IFBURIED | AUTOCOMPLETE },
{ '\0', "therecmdmenu",
"menu of commands you can do from here to adjacent spot",