emacs-elpa-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[elpa] externals/hyperbole 71b8e73 08/20: 2016-08-05 Bob Weiner <address


From: Robert Weiner
Subject: [elpa] externals/hyperbole 71b8e73 08/20: 2016-08-05 Bob Weiner <address@hidden>
Date: Tue, 9 Aug 2016 19:17:07 +0000 (UTC)

branch: externals/hyperbole
commit 71b8e7368f9b1c78473943d6fd271df938f03aa7
Author: Bob Weiner <address@hidden>
Commit: Bob Weiner <address@hidden>

    2016-08-05  Bob Weiner  <address@hidden>
    
    * hib-social.el (social-reference): Disabled this implicit button type in 
html and related modes so
        in-file link references are not matched as social hash tags and made 
the list of modes a variable,
    
      hpath.el (hpath:to-html-anchor): Added.
               (hpath:find): Rewrote to follow HTML in-file anchor references.
    
    2016-08-04  Bob Weiner  <address@hidden>
    
    * hpath.el (hpath:html-suffix-regexp, hpath:html-anchor-id-pattern, 
hpath:html-link-anchor-regexp): Added.
    
    * README, README.md, README.md.html: Added a new testimonial.
    
    * Makefile (elpa, ftp): Added these targets to install Hyperbole releases 
for ELPA or ftp download.
        Changed so release target depends on package target so you can build a 
package prior to a release.
    
    * hpath.el (hpath:remote-available-p): Fixed tramp package check prior to 
loading by adding a test for
        tramp-autoload-file-name-handler.
    
    * README.md.html: Fixed bookmarks/in-file link ids.
    
    2016-08-03  Bob Weiner  <address@hidden>
    
    * hsettings.el (hyperbole-web-search-alist): Made any edit update all 
Hyperbole menus with the new value.
      DEMO (Hyperbole Menus): Added description and exercise using the new 
Find/Web menu.
      hui-mini.el (Cust/Web-Search): Added to allow setting of 
hyperbole-web-search-browser-function.
      hui-menu.el (infodock-hyperbole-menu): Added optional rebuild-flag to 
force rebuilding of the
        Hyperbole menubar menu.
    
    * man/hyperbole.texi (HyControl): Documented ESC as a way to quit from 
HyControl.
---
 Changes            |   32 +++++
 DEMO               |   12 +-
 HY-ANNOUNCE        |    2 +-
 INSTALL            |    2 +-
 Makefile           |   32 ++++-
 README             |   21 +++-
 README.md          |   22 +++-
 README.md.html     |  100 +++++++++-------
 hib-social.el      |    5 +-
 hpath.el           |   96 +++++++++------
 hsettings.el       |   53 +++++----
 hsys-w3.el         |    5 +-
 hui-menu.el        |  328 ++++++++++++++++++++++++++--------------------------
 hui-mini.el        |   26 ++++-
 man/hyperbole.html |  111 +++++++++++++-----
 man/hyperbole.info |  Bin 429310 -> 431672 bytes
 man/hyperbole.pdf  |  Bin 791819 -> 793823 bytes
 man/hyperbole.texi |   90 ++++++++------
 18 files changed, 597 insertions(+), 340 deletions(-)

diff --git a/Changes b/Changes
index 963b944..b02e77c 100644
--- a/Changes
+++ b/Changes
@@ -1,5 +1,37 @@
 -- Almost all changes listed herein are new as of 2016. --
 
+2016-08-05  Bob Weiner  <address@hidden>
+
+* hib-social.el (social-reference): Disabled this implicit button type in html 
and related modes so
+    in-file link references are not matched as social hash tags and made the 
list of modes a variable,
+
+  hpath.el (hpath:to-html-anchor): Added.
+           (hpath:find): Rewrote to follow HTML in-file anchor references.
+
+2016-08-04  Bob Weiner  <address@hidden>
+
+* hpath.el (hpath:html-suffix-regexp, hpath:html-anchor-id-pattern, 
hpath:html-link-anchor-regexp): Added.
+
+* README, README.md, README.md.html: Added a new testimonial.
+
+* Makefile (elpa, ftp): Added these targets to install Hyperbole releases for 
ELPA or ftp download.
+    Changed so release target depends on package target so you can build a 
package prior to a release.
+
+* hpath.el (hpath:remote-available-p): Fixed tramp package check prior to 
loading by adding a test for
+    tramp-autoload-file-name-handler.
+
+* README.md.html: Fixed bookmarks/in-file link ids.
+
+2016-08-03  Bob Weiner  <address@hidden>
+
+* hsettings.el (hyperbole-web-search-alist): Made any edit update all 
Hyperbole menus with the new value.
+  DEMO (Hyperbole Menus): Added description and exercise using the new 
Find/Web menu.
+  hui-mini.el (Cust/Web-Search): Added to allow setting of 
hyperbole-web-search-browser-function.
+  hui-menu.el (infodock-hyperbole-menu): Added optional rebuild-flag to force 
rebuilding of the
+    Hyperbole menubar menu.
+
+* man/hyperbole.texi (HyControl): Documented ESC as a way to quit from 
HyControl.
+
 2016-08-02  Bob Weiner  <address@hidden>
 
 * README.md.html - Added.
diff --git a/DEMO b/DEMO
index a3771d6..a679294 100644
--- a/DEMO
+++ b/DEMO
@@ -104,6 +104,16 @@ Let's try a menu item that displays the Hyperbole Glossary 
of terms.  Use
 glossary.  {C-h h d RET} would simply exit the menu and {C-h h d C-t} would
 redisplay the top Hyperbole menu.
 
+What if we want to do a web search for GNU Hyperbole?  Then we use the
+Find/Web menu, typically bound to {C-c /} or if not, then use {C-h h f w}.
+Then type {g} for Google and enter "GNU Hyperbole", including the quote marks
+so that it is searched for as a phrase.  Your standard web browser will be
+used to return the search results.
+
+You can change which browser is used with {C-h h c w}, the Cust/Web-Search
+menu.  Advanced users can change the search engines listed by editing the
+option, hyperbole-web-search-alist.
+
 ** Help Buffers
 
 Since the Smart Keys do so many things, it is helpful to see what they will
@@ -153,7 +163,7 @@ Hyperbole includes the fastest, easiest-to-use Emacs window 
and frame
 management system available, HyControl, found under the Hyperbole Screen
 menu.  If you use a lot of Emacs windows or frames (typically, window system
 windows) then this tool is for you.  A long video demonstrating most of
-HyControl's features is available at: https://youtu.be/M3-aMh1ccJk.
+HyControl's features is available at https://youtu.be/M3-aMh1ccJk.
 
 HyControl interactively adjusts the layout of your windows and frames
 down to the pixel-level if desired.  You adjust the location, size and
diff --git a/HY-ANNOUNCE b/HY-ANNOUNCE
index 17e857b..ef6baa4 100644
--- a/HY-ANNOUNCE
+++ b/HY-ANNOUNCE
@@ -159,7 +159,7 @@ control.  {t} switches between window and frame control 
once in one of
 them.  Hyperbole also binds {C-c \} for quick access to HyControl's
 window control menu if it was not already bound prior to Hyperbole's
 initialization.  A long video demonstrating most of HyControl's features
-is available at: https://youtu.be/M3-aMh1ccJk.
+is available at https://youtu.be/M3-aMh1ccJk.
 
 The above are the best interactive ways to learn about Hyperbole.  The
 Hyperbole Manual is a reference manual, not a simple introduction.  It is
diff --git a/INSTALL b/INSTALL
index 69680b2..3d316c9 100644
--- a/INSTALL
+++ b/INSTALL
@@ -82,7 +82,7 @@ control.  {t} switches between window and frame control once 
in one of
 them.  Hyperbole also binds {C-c \} for quick access to HyControl's
 window control menu if it was not already bound prior to Hyperbole's
 initialization.  A long video demonstrating most of HyControl's
-features is available at: https://youtu.be/M3-aMh1ccJk.
+features is available at https://youtu.be/M3-aMh1ccJk.
 
 The above are the best interactive ways to learn about Hyperbole.  The
 Hyperbole Manual is a reference manual, not a simple introduction.  It is
diff --git a/Makefile b/Makefile
index bcb13f4..fb97328 100644
--- a/Makefile
+++ b/Makefile
@@ -33,8 +33,10 @@
 #                   make help
 #
 #               For OO-Browser maintainers:
-#                 To assemble the Hyperbole Emacs package for release:
+#                 To assemble a Hyperbole Emacs package for testing:
 #                   make pkg
+#                 To release a Hyperbole Emacs package to ELPA and ftp.gnu.org:
+#                   make release
 #
 #               The Hyperbole Manual is included in the package in four forms:
 #
@@ -97,17 +99,20 @@ html_dir = $(id_dir)/id-html
 # Shell used to process this Makefile.  Bourne shell syntax is required.
 SHELL = /bin/sh
 
-# UNIX commands you may want to change for your particular system.
+# Shell commands you may want to change for your particular system.
 CP = \cp -p
 ETAGS = \etags
+GNUFTP = \gnupload --to ftp.gnu.org:hyperbole
+GPG = \gpg
+GZIP = \gzip -c
 INSTALL = \install -m 644 -c
 MKDIR = \mkdir -p
 MAKE = \make
 RM = \rm -f
 TAR = \tar
-GPG = \gpg
 ZIP = \zip -qry
 
+
 # Directory in which to create new package distributions of Hyperbole.
 pkg_dir = /tmp
 pkg_hyperbole = $(pkg_dir)/hyperbole-$(HYPB_VERSION)
@@ -250,15 +255,30 @@ $(man_dir)/hyperbole.pdf: $(man_dir)/hyperbole.texi 
$(man_dir)/version.texi $(ma
 
 # Generate a Hyperbole package suitable for distribution via the Emacs package 
manager.
 pkg: package
-package: release $(pkg_dir)/hyperbole-$(HYPB_VERSION).tar.sig
+package: doc kotl/kotl-loaddefs.el $(pkg_dir)/hyperbole-$(HYPB_VERSION).tar.sig
 
-# Generate a Hyperbole release suitable for distribution via GNU ELPA.
+# Generate and distribute a Hyperbole release to GNU ELPA and ftp.gnu.org.
 # One step in this is to generate an autoloads file for the Koutliner, 
kotl/kotl-loaddefs.el.
-release: doc kotl/kotl-loaddefs.el
+release: package $(pkg_dir)/hyperbole-$(hypb_version).tar.gz elpa ftp
+
+# Once the release version number is updated in hyperbole.el and the release 
is pushed to
+# git, ELPA will automatically check and build its Hyperbole archive, allowing 
users to
+# update their packages of Hyperbole.  ELPA does this twice a day now.
+elpa: package
+       git tag -s hyperbole-$(HYPB_VERSION) && git push
+
+# Send compressed tarball for uploading to GNU ftp site; this must be done 
from the directory
+# containing the tarball to upload.
+ftp: package
+       cd $(pkg_dir) && $(GNUFTP) hyperbole-$(HYPB_VERSION).tar.gz
 
 kotl/kotl-loaddefs.el: $(EL_KOTL)
        $(EMACS) $(BATCHFLAGS) -eval '(progn (let ((generated-autoload-file 
(expand-file-name "kotl/kotl-loaddefs.el"))) (update-directory-autoloads 
(expand-file-name "kotl/"))))' && sed -i '3 i ;; Copyright (C) 2016  Free 
Software Foundation, Inc.\n;;' $@ && $(RM) kotl/kotl-loaddefs.el~
 
+# Used for ftp.gnu.org tarball distributions.
+$(pkg_dir)/hyperbole-$(HYPB_VERSION).tar.gz:
+       cd $(pkg_dir) && $(GZIP) hyperbole-$(HYPB_VERSION).tar > 
hyperbole-$(HYPB_VERSION).tar.gz
+
 $(pkg_dir)/hyperbole-$(HYPB_VERSION).tar.sig: 
$(pkg_dir)/hyperbole-$(HYPB_VERSION).tar
        cd $(pkg_dir) && $(GPG) -ba -o hyperbole-$(HYPB_VERSION).tar.sig 
hyperbole-$(HYPB_VERSION).tar
        @ echo; echo "Hyperbole package built successfully:"
diff --git a/README b/README
index 240af9d..d8d1a31 100644
--- a/README
+++ b/README
@@ -36,7 +36,7 @@ installing it.
 screenshots of Hyperbole in action.
 
 HyControl is Hyperbole's frame and window manager; a long video
-demonstrating most of HyControl's features is available at:
+demonstrating most of HyControl's features is available at
 https://youtu.be/M3-aMh1ccJk.
 
 See the "HY-NEWS" file for a summary of new features in this release.
@@ -100,6 +100,25 @@ Hyperbole key bindings (Smart Keys).
 
 -------
 
+  One of the nicest things about Hyperbole is that it's available
+  everywhere. Org-mode is a mode and its features are only available in
+  *.org files. For instance if you dropped into `eshell' or `ansi-term' and
+  did `ls', you can move point to any of the directory's contents, do M-RET
+  (or Shift-Button2) and jump to that file.  And that's just one example.
+  Note that this means that all Hyperbole functionality is available in
+  *.org files as well.  To me, except for the Hyperbole outliner, that means
+  complementary not conflicting. It's Hyperbole *and* org-mode, not
+  Hyperbole vs. org-mode.
+
+  Additionally, off the bat, I found it very well documented and for me
+  that's a proxy for the quality of a package.  The maintainers are quite
+  responsive.  There's plenty more functionality that I haven't uncovered yet
+  but due to the ease of installation and the quality of the documentation,
+  digging into it is actually fun.
+
+                                       -- Aditya Siram
+-------
+
   For me, Emacs isn't Emacs without Hyperbole.  I have depended on Hyperbole
   daily since 1992, when I first started using it to manage my development
   environment.  It didn't take long before I could summon almost any
diff --git a/README.md b/README.md
index 60739b4..19076b2 100644
--- a/README.md
+++ b/README.md
@@ -111,7 +111,7 @@ control.  {t} switches between window and frame control 
once in one of
 them.  Hyperbole also binds {C-c \} for quick access to HyControl's
 window control menu if it was not already bound prior to Hyperbole's
 initialization.  A long video demonstrating most of HyControl's
-features is available at: https://youtu.be/M3-aMh1ccJk.
+features is available at https://youtu.be/M3-aMh1ccJk.
 
 The above are the best interactive ways to learn about Hyperbole.
 Hyperbole also includes the Hyperbole Manual, a full reference manual,
@@ -346,6 +346,26 @@ Keys).
 
 -------
 
+  One of the nicest things about Hyperbole is that it's available
+  everywhere. Org-mode is a mode and its features are only available in
+  *.org files. For instance if you dropped into `eshell' or `ansi-term' and
+  did `ls', you can move point to any of the directory's contents, do M-RET
+  (or Shift-Button2) and jump to that file.  And that's just one example.
+  Note that this means that all Hyperbole functionality is available in
+  *.org files as well.  To me, except for the Hyperbole outliner, that means
+  complementary not conflicting. It's Hyperbole *and* org-mode, not
+  Hyperbole vs. org-mode.
+
+  Additionally, off the bat, I found it very well documented and for me
+  that's a proxy for the quality of a package.  The maintainers are quite
+  responsive.  There's plenty more functionality that I haven't uncovered yet
+  but due to the ease of installation and the quality of the documentation,
+  digging into it is actually fun.
+
+                        -- Aditya Siram  
+
+-------
+
   For me, Emacs isn't Emacs without Hyperbole.  I have depended on Hyperbole
   daily since 1992, when I first started using it to manage my development
   environment.  It didn't take long before I could summon almost any
diff --git a/README.md.html b/README.md.html
index 8473eb8..65f8e48 100644
--- a/README.md.html
+++ b/README.md.html
@@ -462,7 +462,7 @@ pre[class*="language-"] {
 
 <!-- END doctoc generated TOC -->
 
-<h2 id="toc_1">Summary</h2>
+<h2 id="summary">Summary</h2>
 
 <p><code>GNU Hyperbole</code> (pronounced Ga-new Hi-per-bo-lee), or just
 <code>Hyperbole</code>, is an efficient and programmable hypertextual 
information
@@ -487,7 +487,7 @@ explains the many ways it differs from and is complementary 
to Org mode.</p>
 
 <p><img src="man/im/hyperbole-cv.png" alt="Hyperbole screenshot of the 
Koutliner, DEMO file and HyRolo"></p>
 
-<h2 id="toc_2">Installation</h2>
+<h2 id="installation">Installation</h2>
 
 <p>Once you have Emacs set up at your site, GNU Hyperbole may be
 installed by using the Emacs Package Manager.  If you are not
@@ -507,13 +507,13 @@ File</a>.</p>
 
 <p>Below are the lines to add:</p>
 
-<div><pre><code class="language-none">(require &#39;package)
+<div><pre><code class="language-none">(require 'package)
 (setq package-enable-at-startup nil) ;; Prevent double loading of libraries
 (package-initialize)
-(unless (package-installed-p &#39;hyperbole)
+(unless (package-installed-p 'hyperbole)
   (package-refresh-contents)
-  (package-install &#39;hyperbole))
-(require &#39;hyperbole)</code></pre></div>
+  (package-install 'hyperbole))
+(require 'hyperbole)</code></pre></div>
 
 <hr>
 
@@ -522,7 +522,7 @@ downloaded and compiled for use with your version of Emacs; 
give it a
 minute or two.  You may see a bunch of compilation warnings but these
 can be safely ignored.</p>
 
-<h2 id="toc_3">Invocation</h2>
+<h2 id="invocation">Invocation</h2>
 
 <p>Once Hyperbole has been installed for use at your site and loaded into your
 Emacs session, it is ready for use.  You will see a Hyperbole menu on your
@@ -537,7 +537,7 @@ quick keyboard-based selection.</p>
 
 <p>type {C-h h} or {M-x hyperbole RET} to bring up the Hyperbole main menu
    in the minibuffer window, for fast keyboard or mouse-based selection;
-   select an item from this menu by typing the item&#39;s first letter; use {q}
+   select an item from this menu by typing the item's first letter; use {q}
    to quit from the menu.</p>
 
 <p>use a specific Hyperbole command such as an Action Key click {M-RET} on
@@ -549,17 +549,17 @@ button capabilities.</p>
 <p><img src="man/im/demo.png" alt="Hyperbole screenshot of the DEMO"></p>
 
 <p>{C-h h k e} offers a interactive demonstration of the Koutliner,
-Hyperbole&#39;s multi-level autonumbered hypertextual outliner.</p>
+Hyperbole's multi-level autonumbered hypertextual outliner.</p>
 
 <p><img src="man/im/koutliner.png" alt="Hyperbole screenshot of the 
Koutliner"></p>
 
-<p>To try out HyControl, Hyperbole&#39;s interactive frame and window control
+<p>To try out HyControl, Hyperbole's interactive frame and window control
 system, use {C-h h s w} for window control or {C-h h s f} for frame
 control.  {t} switches between window and frame control once in one of
-them.  Hyperbole also binds {C-c } for quick access to HyControl&#39;s
-window control menu if it was not already bound prior to Hyperbole&#39;s
-initialization.  A long video demonstrating most of HyControl&#39;s
-features is available at: https://youtu.be/M3-aMh1ccJk.</p>
+them.  Hyperbole also binds {C-c } for quick access to HyControl's
+window control menu if it was not already bound prior to Hyperbole's
+initialization.  A long video demonstrating most of HyControl's
+features is available at https://youtu.be/M3-aMh1ccJk.</p>
 
 <p>The above are the best interactive ways to learn about Hyperbole.
 Hyperbole also includes the Hyperbole Manual, a full reference manual,
@@ -578,7 +578,7 @@ browsing, point your browser at 
&quot;${hyperb:dir}/man/hyperbole.html&quot;,
 wherever the Hyperbole package directory is on your system; often this is:
 &quot;~/.emacs.d/elpa/hyperbole-${hyperb:version}/&quot;.</p>
 
-<h2 id="toc_4">Details</h2>
+<h2 id="details">Details</h2>
 
 <p>Hyperbole consists of five parts:</p>
 
@@ -597,7 +597,7 @@ wherever the Hyperbole package directory is on your system; 
often this is:
    those familiar with Emacs Lisp can prototype and deliver new
    types quickly with just a few lines of code.</p>
 
-<p>Hyperbole includes two special `Smart Keys&#39;, the Action Key
+<p>Hyperbole includes two special `Smart Keys', the Action Key
    and the Assist Key, that perform an extensive array of
    context-sensitive operations across emacs usage, including
    activating and showing help for Hyperbole buttons.  In many
@@ -615,7 +615,7 @@ wherever the Hyperbole package directory is on your system; 
often this is:
 <p><img src="man/im/menu-rolo.png" alt="HyRolo Menubar Menu"></p></li>
 <li><p><strong>Screen Control</strong>: the fastest, easiest-to-use window and 
frame
    control available for GNU Emacs.  With just a few keystrokes,
-   you can shift from increasing a window&#39;s height by 5 lines
+   you can shift from increasing a window's height by 5 lines
    to moving a frame by 220 pixels or immediately moving it to a
    screen corner.  Text in each window or frame may be enlarged
    or shrunk (zoomed) for easy viewing, plus many other features;</p></li>
@@ -642,7 +642,7 @@ to a file or executing a shell command.</p>
 <li><p><em>Explicit Buttons</em>
       created by Hyperbole, accessible from within a single document; </p></li>
 <li><p><em>Global Buttons</em>
-      created by Hyperbole, accessible anywhere within a user&#39;s
+      created by Hyperbole, accessible anywhere within a user's
       network of documents;</p></li>
 <li><p><em>Implicit Buttons</em>
       buttons created and managed by other programs or embedded
@@ -664,7 +664,7 @@ large or small chunks as you see fit, organizing each bit 
as time allows.
 The Hyperbole Koutliner and HyRolo tools organize textual hierarchies and
 may also contain links to external information sources.</p>
 
-<p>Some of Hyperbole&#39;s most important features include:</p>
+<p>Some of Hyperbole's most important features include:</p>
 
 <ul>
 <li><p>Buttons may link to information or may execute commands, such as
@@ -719,7 +719,7 @@ link to the archive holdings.  Users can then search and 
create
 their own links to archive entries.</p></li>
 </ul>
 
-<h2 id="toc_5">Files</h2>
+<h2 id="files">Files</h2>
 
 <p>See the <a href="HY-ABOUT">HY-ABOUT</a> file for a description and overview 
of Hyperbole.</p>
 
@@ -737,7 +737,7 @@ installing it.</p>
 
 <p>Various forms of the Hyperbole are below the &quot;man/&quot; 
subdirectory.</p>
 
-<h2 id="toc_6">Programmer Quick Reference</h2>
+<h2 id="programmer-quick-reference">Programmer Quick Reference</h2>
 
 <p><a href="MANIFEST">MANIFEST</a> summarizes most of the files in the 
distribution.</p>
 
@@ -749,11 +749,11 @@ simple introduction.</p>
 <p>Naming conventions:</p>
 
 <ul>
-<li><p>All Hyperbole-specific code files begin with an &#39;h&#39;, aside from 
the
-Koutliner files which are in the kotl/ subdirectory and begin with a 
&#39;k&#39;.</p></li>
-<li><p>Hyperbole user-interface files begin with &#39;hui-&#39; or 
&#39;hmous&#39;.</p></li>
-<li><p>Files that define implicit button types begin with 
&#39;hib&#39;.</p></li>
-<li><p>Encapsulations of foreign systems begin with &#39;hsys-&#39;.</p></li>
+<li><p>All Hyperbole-specific code files begin with an `h', aside from the
+Koutliner files which are in the kotl/ subdirectory and begin with a 
`k'.</p></li>
+<li><p>Hyperbole user-interface files begin with `hui-' or `hmous'.</p></li>
+<li><p>Files that define implicit button types begin with `hib'.</p></li>
+<li><p>Encapsulations of foreign systems begin with `hsys-'.</p></li>
 </ul>
 
 <p>Most of the standard Emacs user interface for Hyperbole is located in
@@ -763,11 +763,11 @@ encapsulates the button attribute storage implemented by 
Hyperbole.
 <a href="hmail.el">hmail.el</a> provides a basic abstract interface for
 integrating mail readers other than Rmail into Hyperbole.</p>
 
-<p>See the <a href="man/hyperbole.html#Questions%0Aand%20Answers">Hyperbole 
Questions and Answers</a> appendix in the Hyperbole manual for information on 
how
+<p>See the <a href="man/hyperbole.html#Questions-and-Answers">Hyperbole 
Questions and Answers</a> appendix in the Hyperbole manual for information on 
how
 to alter the default context-sensitive Hyperbole key bindings (Smart
 Keys).</p>
 
-<h2 id="toc_7">User Quotes</h2>
+<h2 id="user-quotes">User Quotes</h2>
 
 <p>*** MAN I love Hyperbole!!!  Wow! ***</p>
 
@@ -783,9 +783,29 @@ Keys).</p>
 
 <hr>
 
-<p>For me, Emacs isn&#39;t Emacs without Hyperbole.  I have depended on 
Hyperbole
+<p>One of the nicest things about Hyperbole is that it's available
+   everywhere. Org-mode is a mode and its features are only available in
+   *.org files. For instance if you dropped into `eshell' or `ansi-term' and
+   did `ls', you can move point to any of the directory's contents, do M-RET
+   (or Shift-Button2) and jump to that file.  And that's just one example.
+   Note that this means that all Hyperbole functionality is available in
+   *.org files as well.  To me, except for the Hyperbole outliner, that means
+   complementary not conflicting. It's Hyperbole *and* org-mode, not
+   Hyperbole vs. org-mode.
+
+<p>Additionally, off the bat, I found it very well documented and for me
+   that's a proxy for the quality of a package.  The maintainers are quite
+   responsive.  There's plenty more functionality that I haven't uncovered yet
+   but due to the ease of installation and the quality of the documentation,
+   digging into it is actually fun.</p>
+
+<div><pre><code class="language-none">                    -- Aditya Siram  
+</code></pre></div>
+<hr>
+
+<p>For me, Emacs isn't Emacs without Hyperbole.  I have depended on Hyperbole
   daily since 1992, when I first started using it to manage my development
-  environment.  It didn&#39;t take long before I could summon almost any
+  environment.  It didn't take long before I could summon almost any
   information I needed directly from within my editing environment with an
   implicit button. Since I almost never have to slow down to look for
   things--one context-dependent button usually produces exactly what I need
@@ -801,13 +821,13 @@ Keys).</p>
 
 <hr>
 
-<p>I&#39;ve found Hyperbole (in conjunction with XEmacs) to be very useful
+<p>I've found Hyperbole (in conjunction with XEmacs) to be very useful
   for signal processing algorithm development.</p>
 
 <p>For me, it has almost completely obsoleted the engineering notebook:
   I keep a set of files with ideas, algorithms, and results, linked
-  together and to the implementation in C++ files.  Using XEmacs&#39;
-  support for embedding graphics, I&#39;ve written a mode that accepts
+  together and to the implementation in C++ files.  Using XEmacs'
+  support for embedding graphics, I've written a mode that accepts
   image tags (formatted like HTML), and reads in GIF files to display
   plots.  I have another program that converts the file to HTML (not
   perfect, but adequate), so I can put any aspect of development on
@@ -831,7 +851,7 @@ Keys).</p>
 <li><p>Explicit buttons as part of comments made about a structured document.
   Each button jumps to the document section referred to by the comment.
   This is very, very useful.</p></li>
-<li><p>The Hyperbole Koutliner, which I find a very useful tool.  I&#39;ve
+<li><p>The Hyperbole Koutliner, which I find a very useful tool.  I've
   implemented Emacspeak extensions to support it.</p>
 
 <div><pre><code class="language-none">                -- TV Raman  
@@ -840,7 +860,7 @@ Keys).</p>
 
 <hr>
 
-<p>I&#39;ve been a grateful Hyperbole user for a few years now.  
Hyperbole&#39;s
+<p>I've been a grateful Hyperbole user for a few years now.  Hyperbole's
   flexibility and ease of use is a marvel.</p>
 
 <p>Mainly, I write easy little implicit button types (and corresponding action
@@ -849,8 +869,8 @@ Keys).</p>
   a bug report record in various contexts and edits it, one that links pieces
   of test output in a log file to the corresponding test case source code
   (EXTREMELY helpful in interpreting test output), others that support our
-  homegrown test framework, one that handles tree dired mode the way I&#39;d
-  like, one that completely handles wico menus (I&#39;ve also overloaded the
+  homegrown test framework, one that handles tree dired mode the way I'd
+  like, one that completely handles wico menus (I've also overloaded the
   wconfig actions triggered by diagonal mouse drags with wicos actions), and
   a couple that support interaction with BBDB.</p>
 
@@ -898,7 +918,7 @@ emacs-command invocations, etc.</p>
 
 <hr>
 
-<p>Hyperbole is the first hyper-link system I&#39;ve run across that is
+<p>Hyperbole is the first hyper-link system I've run across that is
   actually part of the environment I use regularly, namely Emacs. The
   complete flexibility of the links is both impressive and expected -- the
   idea of making the link itself programmable is clever, and given that one
@@ -921,11 +941,11 @@ emacs-command invocations, etc.</p>
 <hr>
 
 <p>The Hyperbole system provides a nice interface to exploring corners of
-   Unix that I didn&#39;t know existed before.</p>
+   Unix that I didn't know existed before.</p>
 
 <div><pre><code class="language-none">                    -- Craig Smith  
</code></pre></div>
 
-<h2 id="toc_8">Why was Hyperbole developed?</h2>
+<h2 id="why-was-hyperbole-developed">Why was Hyperbole developed?</h2>
 
 <p>Hyperbole was originally designed to aid in research aimed at Personalized
 Information production/retrieval Environments (PIEs).  Hyperbole was a
diff --git a/hib-social.el b/hib-social.el
index acd0a9e..55d8fe3 100644
--- a/hib-social.el
+++ b/hib-social.el
@@ -64,6 +64,9 @@
   "Regular expression that matches a social media hashtag or username 
reference.
 See `ibtypes::social-reference' for format details.")
 
+(defvar hibtypes-social-inhibit-modes '(html-mode web-mode xml-mode sgml-mode 
texinfo-mode para-mode)
+  "*List of major modes in which to inhibit any possible social media tag 
matches.")
+
 ;;; ************************************************************************
 ;;; Public Button Types
 ;;; ************************************************************************
@@ -78,7 +81,7 @@ The first part of the label for a button of this type is the 
social
 media service name.  The service name defaults to the value of
 `hibtypes-social-default-service' (default value of \"twitter\")
 when not given, so #hashtag would be the same as twitter#hashtag."
-  (when (and (not (memq major-mode '(texinfo-mode para-mode)))
+  (when (and (not (memq major-mode hibtypes-social-inhibit-modes))
             (save-excursion
               (if (looking-at "address@hidden:alnum:]]")
                   (skip-chars-backward "address@hidden:alnum:]"))
diff --git a/hpath.el b/hpath.el
index edf7119..ea3a41b 100644
--- a/hpath.el
+++ b/hpath.el
@@ -278,6 +278,30 @@ See the documentation for `hpath:url-regexp' for match 
groupings to
 use with string-match.")
 
 ;;; ************************************************************************
+;;; Private variables
+;;; ************************************************************************
+
+(defconst hpath:html-suffix-regexp "\\.[a-z]*htm[a-z0-9]*"
+  "Regexp that matches to any common html file suffix.")
+
+(defconst hpath:html-anchor-id-pattern "\\(id\\|name\\)=['\"]%s['\"]?"
+  "Regexp matching an html anchor id definition and containing a %s for 
replacement of a specific anchor id.")
+
+(defconst hpath:html-link-anchor-regexp (concat "\\(" hpath:html-file-suffix 
"\\)\\(#\\)\\([^\]\[#^{}<>\"\\ \n\t\f\r]*\\)")
+  "Regexp that matches an html filename followed by a hash (#) and an optional 
in-file anchor name.")
+
+(defvar hpath:prefix-regexp "\\`[-!&][ ]*"
+  "Regexp matching command characters which may precede a pathname.
+These are used to indicate how to display or execute the pathname.
+  - means evaluate it as Emacs Lisp;
+  ! means execute it as a shell script
+  & means run it under the current window system.")
+
+(defvar hpath:remote-regexp
+  "\\`/[^/:]+:\\|\\`ftp[:.]\\|\\`www\\.\\|\\`https?:"
+  "Regexp matching remote pathnames and urls which invoke remote file 
handlers.")
+
+;;; ************************************************************************
 ;;; Public functions
 ;;; ************************************************************************
 
@@ -534,9 +558,8 @@ DISPLAY-WHERE (a symbol) or if that is nil, the value of
 Returns non-nil iff file is displayed within a buffer (not with an external
 program)."
   (interactive "FFind file: ")
-  (let (modifier
-       loc
-       dir)
+  (let ((case-fold-search t)
+       modifier loc dir anchor hash path)
     (if (string-match hpath:prefix-regexp filename)
        (setq modifier (aref filename 0)
              filename (substring filename (match-end 0))))
@@ -545,24 +568,31 @@ program)."
          dir (file-name-directory
               ;; Loc may be a buffer without a file
               (if (stringp loc) loc default-directory))
-         filename (hpath:absolute-to filename dir))
-    (let ((remote-filename (hpath:remote-p filename)))
+         filename (hpath:absolute-to filename dir)
+         path (if (string-match hpath:html-link-anchor-regexp filename)
+                  (progn (setq hash t
+                               anchor (match-string 3 filename))
+                         (substring filename 0 (match-end 1)))
+                filename))
+    (let ((remote-filename (hpath:remote-p path)))
       (or modifier remote-filename
-         (file-exists-p filename)
+         (file-exists-p path)
          (error "(hpath:find): \"%s\" does not exist"
                 (file-relative-name filename)))
       (or modifier remote-filename
-         (file-readable-p filename)
+         (file-readable-p path)
          (error "(hpath:find): \"%s\" is not readable"
                 (file-relative-name filename)))
       ;; If filename is a remote file (not a directory, we have to copy it to
       ;; a temporary local file and then display that.
-      (if (and remote-filename (not (file-directory-p remote-filename)))
-         (copy-file remote-filename
-                    (setq filename
-                          (concat hpath:tmp-prefix
-                                  (file-name-nondirectory remote-filename)))
-                    t t)))
+      (when (and remote-filename (not (file-directory-p remote-filename)))
+       (copy-file remote-filename
+                  (setq path (concat hpath:tmp-prefix
+                                     (file-name-nondirectory remote-filename)))
+                  t t)
+       (setq filename (cond (anchor (concat remote-filename "#" anchor))
+                            (hash   (concat remote-filename "#"))
+                            (t path)))))
     (cond (modifier (cond ((eq modifier ?!)
                           (hact 'exec-shell-cmd filename))
                          ((eq modifier ?&)
@@ -570,7 +600,7 @@ program)."
                          ((eq modifier ?-)
                           (load filename)))
                    nil)
-         (t (let ((display-executables (hpath:find-program filename))
+         (t (let ((display-executables (hpath:find-program path))
                   executable)
               (cond ((stringp display-executables)
                      (hact 'exec-window-cmd
@@ -589,7 +619,7 @@ program)."
                                                      filename))
                        (error "(hpath:find): No available executable from: %s"
                               display-executables)))
-                    (t (setq filename (hpath:validate filename))
+                    (t (setq path (hpath:validate path))
                        (if (null display-where)
                            (setq display-where hpath:display-where))
                        (funcall
@@ -597,9 +627,23 @@ program)."
                                             hpath:display-where-alist)
                                       (assq 'other-window
                                             hpath:display-where-alist))))
-                        filename)
+                        path)
+                       (if (or hash anchor) (hpath:to-html-anchor hash anchor))
                        t)))))))
 
+(defun hpath:to-html-anchor (hash anchor)
+  "Move point to the definition of ANCHOR if found or if only HASH is non-nil, 
move to the beginning of the buffer."
+  (cond ((and (stringp anchor) (not (string-empty-p anchor)))
+        (let ((point (point)))
+          (goto-char (point-min))
+          (if (re-search-forward (format hpath:html-anchor-id-pattern 
(regexp-quote anchor)) nil t)
+              (progn (forward-line 0)
+                     (recenter 0))
+            (goto-char point)
+            (error "(hpath:to-html-anchor): Anchor `%s' not found in the 
visible buffer portion"
+                   anchor))))
+       (hash (goto-char (point-min)))))
+
 (defun hpath:find-executable (executable-list)
   "Return the first executable string from EXECUTABLE-LIST found within 
`exec-path'."
   (catch 'found
@@ -712,7 +756,7 @@ nonexistent local paths are allowed."
                     (string-match "\\`#[^\'\"<>#]+\\'" path))
                (setq rtn-path (concat "file://" buffer-file-name rtn-path)
                      path buffer-file-name))
-              ((string-match "\\`[^#]+\\(#[^#]+\\)\\'" path)
+              ((string-match "\\`[^#]+\\(#[^#]*\\)\\'" path)
                ;; file and # reference
                (setq path (substring path 0 (match-beginning 1)))
                (if (memq (aref path 0) '(?/ ?~))
@@ -1113,7 +1157,8 @@ in which case, it is loaded here."
        ((featurep 'efs) 'efs)
        ((featurep 'ange-ftp) 'ange-ftp)
        ((boundp 'file-name-handler-alist) ; GNU Emacs
-        (cond ((rassq 'tramp-file-name-handler file-name-handler-alist)
+        (cond ((or (rassq 'tramp-file-name-handler file-name-handler-alist)
+                   (rassq 'tramp-autoload-file-name-handler 
file-name-handler-alist))
                (require 'tramp))
               ((rassq 'efs-file-handler-function file-name-handler-alist)
                (require 'efs))
@@ -1261,21 +1306,6 @@ If PATH is modified, returns PATH, otherwise returns 
nil."
        (if (equal new-path path) nil new-path))))
 
 
-;;; ************************************************************************
-;;; Private variables
-;;; ************************************************************************
-
-(defvar hpath:prefix-regexp "\\`[-!&][ ]*"
-  "Regexp matching command characters which may precede a pathname.
-These are used to indicate how to display or execute the pathname.
-  - means evaluate it as Emacs Lisp;
-  ! means execute it as a shell script
-  & means run it under the current window system.")
-
-(defvar hpath:remote-regexp
-  "\\`/[^/:]+:\\|\\`ftp[:.]\\|\\`www\\.\\|\\`https?:"
-  "Regexp matching remote pathnames and urls which invoke remote file 
handlers.")
-
 (provide 'hpath)
 
 ;;; hpath.el ends here
diff --git a/hsettings.el b/hsettings.el
index 9444e61..e5bfa79 100644
--- a/hsettings.el
+++ b/hsettings.el
@@ -102,6 +102,33 @@ down a windowful."
 ;; Web search setttings for Hyperbole Find/Web menu.
 (require 'browse-url)
 
+(defun hyperbole-update-menus ()
+  "Rebuild all Hyperbole menus with any updated settings."
+  (hyperbole-menubar-menu)
+  (hyperbole-minibuffer-menu))
+
+(defun hyperbole-web-search (&optional service-name search-term)
+  "Search web SERVICE-NAME for SEARCH-TERM.
+Both arguments are optional and are prompted for when not given or when null.
+Uses `hyperbole-web-search-alist' to match each service to its search url.
+Uses `hyperbole-web-search-browser-function' and the `browse-url'
+package to display search results."
+  (interactive)
+  (let ((completion-ignore-case t))
+    (while (or (not (stringp service-name)) (equal service-name ""))
+      (setq service-name (completing-read "Search service: " 
hyperbole-web-search-alist
+                                         nil t))))
+  (while (or (not (stringp search-term)) (equal search-term ""))
+    (setq search-term (read-string (format "Search %s for: " service-name))))
+  (if (assoc service-name hyperbole-web-search-alist)
+      (let ((browse-url-browser-function
+            hyperbole-web-search-browser-function))
+       (browse-url
+        (format (cdr (assoc service-name hyperbole-web-search-alist))
+                search-term)))
+    (user-error "(Hyperbole): Invalid web search service `%s' or search term 
`%s'"
+               service-name search-term)))
+
 (defcustom hyperbole-web-search-browser-function browse-url-browser-function
   "*Function of one url argument called by any Hyperbole Find/Web search."
   :type 'boolean
@@ -130,31 +157,13 @@ The first character of each web-service-name must be 
unique.
 This custom option is used in the Hyperbole Find/Web menu where
 the %s in the url-with-%s-parameter is replaced with an interactively
 obtained search string."
+  :initialize 'custom-initialize-default
+  :set (lambda (_option value)
+        (setq hyperbole-web-search-alist value)
+        (hyperbole-update-menus))
   :type '(alist :key-type string :value-type string)
   :group 'hyperbole-commands)
 
-(defun hyperbole-web-search (&optional service-name search-term)
-  "Search web SERVICE-NAME for SEARCH-TERM.
-Both arguments are optional and are prompted for when not given or when null.
-Uses `hyperbole-web-search-alist' to match each service to its search url.
-Uses `hyperbole-web-search-browser-function' and the `browse-url'
-package to display search results."
-  (interactive)
-  (let ((completion-ignore-case t))
-    (while (or (not (stringp service-name)) (equal service-name ""))
-      (setq service-name (completing-read "Search service: " 
hyperbole-web-search-alist
-                                         nil t))))
-  (while (or (not (stringp search-term)) (equal search-term ""))
-    (setq search-term (read-string (format "Search %s for: " service-name))))
-  (if (assoc service-name hyperbole-web-search-alist)
-      (let ((browse-url-browser-function
-            hyperbole-web-search-browser-function))
-       (browse-url
-        (format (cdr (assoc service-name hyperbole-web-search-alist))
-                search-term)))
-    (user-error "(Hyperbole): Invalid web search service `%s' or search term 
`%s'"
-               service-name search-term)))
-
 ;;; ************************************************************************
 ;;; GNU EMACS AND XEMACS CONFIGURATION
 ;;; ************************************************************************
diff --git a/hsys-w3.el b/hsys-w3.el
index 26dedc9..d67320a 100644
--- a/hsys-w3.el
+++ b/hsys-w3.el
@@ -51,9 +51,8 @@ Valid values of this variable include 
`browse-url-default-browser' and
 
 (defact www-url (url)
   "Follow a link given by URL.
-The variable, `browse-url-browser-function,' customizes the url browser that
-is used.
-Valid values of this variable include `browse-url-default-browser' and
+The variable, `browse-url-browser-function', customizes the url browser that
+is used.  Valid values of this variable include `browse-url-default-browser' 
and
 `browse-url-generic'."
   (interactive "sURL to follow: ")
   (or (stringp url)
diff --git a/hui-menu.el b/hui-menu.el
index 5f96c2b..930e4b8 100644
--- a/hui-menu.el
+++ b/hui-menu.el
@@ -281,7 +281,7 @@ Return t if cutoff, else nil."
                                    "Koutline")
                                   ((global-key-binding [menu-bar OO-Browser])
                                    "OO-Browser"))))
-            (add-submenu nil (infodock-hyperbole-menu) add-before))))
+            (add-submenu nil (infodock-hyperbole-menu t) add-before))))
   ;; Force a menu-bar update.
   (force-mode-line-update))
 
@@ -292,172 +292,174 @@ Return t if cutoff, else nil."
 
 ;;; Don't change this name; doing so will break the way InfoDock
 ;;; initializes the Hyperbole menu.
-(defun infodock-hyperbole-menu ()
-  "Hyperbole menu for the global InfoDock menubar"
-  (or infodock-hyperbole-menu
-      (setq infodock-hyperbole-menu
-           (delq nil
-                 (list
-                  (if (featurep 'xemacs) "%_Hyperbole" "Hyperbole")
-                  :config 'Hyperbole
-                  hui-menu-about
-                  ["Demonstration"  (hypb:display-file-with-logo
-                                      (expand-file-name "DEMO" hyperb:dir)) t]
-                  ;; Comment InfoDock manual reference out until
-                  ;; InfoDock is modernized for Emacs 25.
-                  ;; (if (and (boundp 'infodock-version) infodock-version)
-                  ;;     ["Manual"      (id-info "(infodock)Hyperbole Menu") t]
-                  ;;   ["Manual"      (id-info "(hyperbole)Top") t])
+(defun infodock-hyperbole-menu (&optional rebuild-flag)
+  "Return the Hyperbole menu for the global InfoDock menubar.
+Uses any non-nil existing value of the menu unless optional
+REBUILD-FLAG is non-nil, in which case the menu is rebuilt."
+  (when (or rebuild-flag (null infodock-hyperbole-menu))
+    (setq infodock-hyperbole-menu
+         (delq nil
+               (list
+                (if (featurep 'xemacs) "%_Hyperbole" "Hyperbole")
+                :config 'Hyperbole
+                hui-menu-about
+                ["Demonstration"  (hypb:display-file-with-logo
+                                   (expand-file-name "DEMO" hyperb:dir)) t]
+                ;; Comment InfoDock manual reference out until
+                ;; InfoDock is modernized for Emacs 25.
+                ;; (if (and (boundp 'infodock-version) infodock-version)
+                ;;     ["Manual"      (id-info "(infodock)Hyperbole Menu") t]
+                ;;   ["Manual"      (id-info "(hyperbole)Top") t])
+                ["Manual"      (id-info "(hyperbole)Top") t]
+                ["What-is-New?"  (hypb:display-file-with-logo
+                                  (expand-file-name "HY-NEWS" hyperb:dir)) t]
+                "----"
+                ["Remove-This-Menu"
+                 (progn
+                   ;; Delete Hyperbole menu from all menubars.
+                   (hui-menu-remove Hyperbole)
+                   ;;
+                   ;; Remove Hyperbole button comment from future
+                   ;; outgoing mail.
+                   (if (boundp 'smail:comment) (setq smail:comment nil)))
+                 t]
+                "----"
+                ["Activate-Button-at-Point" hui:hbut-current-act
+                 (hbut:is-p (hbut:at-p))]
+                ["Back-to-Prior-Location" (hhist:remove current-prefix-arg)
+                 (and (boundp '*hhist*) *hhist*)]
+                '("Button-File"
+                  ["Manual"  (id-info "(hyperbole)Button Files") t]
+                  "----"
+                  ["Edit-Per-Directory-File" (find-file hbmap:filename) t]
+                  ["Edit-Personal-File" (find-file
+                                         (expand-file-name
+                                          hbmap:filename hbmap:dir-user)) t]
+                  )
+                (cons "Customize" hui-menu-options)
+                '("Documentation"
                   ["Manual"      (id-info "(hyperbole)Top") t]
-                  ["What-is-New?"  (hypb:display-file-with-logo
-                                     (expand-file-name "HY-NEWS" hyperb:dir)) 
t]
                   "----"
-                  ["Remove-This-Menu"
-                    (progn
-                      ;; Delete Hyperbole menu from all menubars.
-                      (hui-menu-remove Hyperbole)
-                      ;;
-                      ;; Remove Hyperbole button comment from future
-                      ;; outgoing mail.
-                      (if (boundp 'smail:comment) (setq smail:comment nil)))
-                    t]
+                  ["Demonstration"  (hypb:display-file-with-logo
+                                     (expand-file-name "DEMO" hyperb:dir)) t]
+                  ["Glossary"    (id-info "(hyperbole)Glossary") t]
+                  ["Manifest"    (find-file-read-only
+                                  (expand-file-name "MANIFEST" hyperb:dir)) t]
+                  ["Smart-Key-Summary" (id-browse-file (hypb:hkey-help-file)) 
t]
+                  ("Types"
+                   ["Action-Types-Manual"
+                    (id-info "(hyperbole)Action Types") t]
+                   ["Implicit-Button-Types-Manual"
+                    (id-info "(hyperbole)Implicit Buttons") t]
+                   "----"
+                   ["Show-Action-Types"
+                    (hui:htype-help-current-window 'actypes) t]
+                   ["Show-Implicit-Button-Types"
+                    (hui:htype-help-current-window 'ibtypes 'no-sort) t]
+                   ))
+                '("Explicit-Button"
+                  :filter hui-menu-explicit-buttons
+                  ["Activate" hui:hbut-act t]
+                  ["Create" hui:ebut-create t]
+                  ["Delete" hui:ebut-delete t]
+                  ["Edit"   hui:ebut-modify t]
+                  ("Help"  
+                   ["Manual"   (id-info "(hyperbole)Location") t]
+                   "----"
+                   ["Buffer-Buttons"   (hui:hbut-report -1) t]
+                   ["Current-Button"   (hui:hbut-report)    t]
+                   ["Ordered-Buttons"  (hui:hbut-report 1)  t]
+                   )
+                  ["Modify" hui:ebut-modify t]
+                  ["Rename" hui:ebut-rename t]
+                  ["Search" hui:ebut-search t]
+                  ["Types"
+                   (hui:htype-help-current-window 'actypes) t]
+                  )
+                (nconc
+                 '("Find"
+                   ["Manual"   (id-info-item "menu, Find") t]
+                   "----"
+                   ;; Show numbered line matches in all specified files.
+                   ["Grep-Files"           hypb:rgrep t]
+                   ;; Show numbered line matches for regexp in all file-based 
buffers.
+                   ["Locate-Files"         locate t]
+                   ;; Show numbered line matches for regexp in all file-based 
buffers.
+                   ["Match-File-Buffers"   moccur t]
+                   ;; Show numbered line matches for regexp from this buffer.
+                   ["Occur-Here"           occur  t]
+                   ;; Following point, remove all lines that match regexp.
+                   ["Remove-Lines-Here"    hypb:remove-lines t]
+                   ;; Following point, keep only lines that match regexp.
+                   ["Save-Lines-Here"      hypb:save-lines t]
+                   "----"
+                   "Web-Search:")
+                 (hui-menu-web-search)
+                 )
+                '("Global-Button"
+                  :filter hui-menu-global-buttons
+                  ["Create" hui:gbut-create t]
+                  ["Edit"   hui:gbut-modify t]
+                  ["Help"   gbut:help t]
+                  ["Modify" hui:gbut-modify t]
+                  )
+                '("Implicit-Button"
+                  ["Manual"   (id-info "(hyperbole)Implicit Buttons") t]
                   "----"
-                  ["Activate-Button-at-Point" hui:hbut-current-act
-                    (hbut:is-p (hbut:at-p))]
-                  ["Back-to-Prior-Location" (hhist:remove current-prefix-arg)
-                    (and (boundp '*hhist*) *hhist*)]
-                  '("Button-File"
-                    ["Manual"  (id-info "(hyperbole)Button Files") t]
-                    "----"
-                    ["Edit-Per-Directory-File" (find-file hbmap:filename) t]
-                    ["Edit-Personal-File" (find-file
-                                           (expand-file-name
-                                            hbmap:filename hbmap:dir-user)) t]
-                    )
-                  (cons "Customize" hui-menu-options)
-                  '("Documentation"
-                    ["Manual"      (id-info "(hyperbole)Top") t]
-                    "----"
-                    ["Demonstration"  (hypb:display-file-with-logo
-                                       (expand-file-name "DEMO" hyperb:dir)) t]
-                    ["Glossary"    (id-info "(hyperbole)Glossary") t]
-                    ["Manifest"    (find-file-read-only
-                                    (expand-file-name "MANIFEST" hyperb:dir)) 
t]
-                    ["Smart-Key-Summary" (id-browse-file 
(hypb:hkey-help-file)) t]
-                    ("Types"
-                     ["Action-Types-Manual"
-                      (id-info "(hyperbole)Action Types") t]
-                     ["Implicit-Button-Types-Manual"
-                      (id-info "(hyperbole)Implicit Buttons") t]
-                     "----"
-                     ["Show-Action-Types"
-                      (hui:htype-help-current-window 'actypes) t]
-                     ["Show-Implicit-Button-Types"
-                      (hui:htype-help-current-window 'ibtypes 'no-sort) t]
-                     ))
-                  '("Explicit-Button"
-                    :filter hui-menu-explicit-buttons
-                    ["Activate" hui:hbut-act t]
-                    ["Create" hui:ebut-create t]
-                    ["Delete" hui:ebut-delete t]
-                    ["Edit"   hui:ebut-modify t]
-                    ("Help"  
-                     ["Manual"   (id-info "(hyperbole)Location") t]
-                     "----"
-                     ["Buffer-Buttons"   (hui:hbut-report -1) t]
-                     ["Current-Button"   (hui:hbut-report)    t]
-                     ["Ordered-Buttons"  (hui:hbut-report 1)  t]
-                     )
-                    ["Modify" hui:ebut-modify t]
-                    ["Rename" hui:ebut-rename t]
-                    ["Search" hui:ebut-search t]
-                    ["Types"
-                      (hui:htype-help-current-window 'actypes) t]
-                    )
-                  (nconc
-                   '("Find"
-                     ["Manual"   (id-info-item "menu, Find") t]
-                     "----"
-                     ;; Show numbered line matches in all specified files.
-                     ["Grep-Files"           hypb:rgrep t]
-                     ;; Show numbered line matches for regexp in all 
file-based buffers.
-                     ["Locate-Files"         locate t]
-                     ;; Show numbered line matches for regexp in all 
file-based buffers.
-                     ["Match-File-Buffers"   moccur t]
-                     ;; Show numbered line matches for regexp from this buffer.
-                     ["Occur-Here"           occur  t]
-                     ;; Following point, remove all lines that match regexp.
-                     ["Remove-Lines-Here"    hypb:remove-lines t]
-                     ;; Following point, keep only lines that match regexp.
-                     ["Save-Lines-Here"      hypb:save-lines t]
-                     "----"
-                     "Search-with:")
-                   (hui-menu-web-search)
-                     )
-                  '("Global-Button"
-                    :filter hui-menu-global-buttons
-                    ["Create" hui:gbut-create t]
-                    ["Edit"   hui:gbut-modify t]
-                    ["Help"   gbut:help t]
-                    ["Modify" hui:gbut-modify t]
-                    )
-                  '("Implicit-Button"
-                    ["Manual"   (id-info "(hyperbole)Implicit Buttons") t]
-                    "----"
-                    ["Activate-at-Point"    hui:hbut-current-act t]
-                    ["Delete-Type"         (hui:htype-delete 'ibtypes) t]
-                    ["Help"   hui:hbut-help t]
-                    ["Types"  (hui:htype-help 'ibtypes 'no-sort) t]
-                    )
-                  (if hyperb:kotl-p
-                      '("Koutliner"
-                        ["Manual" (id-info "(hyperbole)Koutliner") t]
-                        ["Example"   kotl-mode:example                 t]
-                        "----"
-                        ["Create-File"    kfile:find t]
-                        ["View-File"      kfile:view t]
-                        "----"
-                        ["Collapse-Tree" (progn (kotl-mode:is-p)
-                                                (kotl-mode:hide-tree
-                                                 (kcell-view:label)))
-                         (eq major-mode 'kotl-mode)]
-                        ["Create-Link" klink:create
-                         (eq major-mode 'kotl-mode)]
-                        ["Expand-All-Trees" kotl-mode:show-all
-                         (eq major-mode 'kotl-mode)]
-                        ["Expand-Tree" (progn (kotl-mode:is-p)
-                                              (kotl-mode:show-tree
+                  ["Activate-at-Point"    hui:hbut-current-act t]
+                  ["Delete-Type"         (hui:htype-delete 'ibtypes) t]
+                  ["Help"   hui:hbut-help t]
+                  ["Types"  (hui:htype-help 'ibtypes 'no-sort) t]
+                  )
+                (if hyperb:kotl-p
+                    '("Koutliner"
+                      ["Manual" (id-info "(hyperbole)Koutliner") t]
+                      ["Example"   kotl-mode:example                 t]
+                      "----"
+                      ["Create-File"    kfile:find t]
+                      ["View-File"      kfile:view t]
+                      "----"
+                      ["Collapse-Tree" (progn (kotl-mode:is-p)
+                                              (kotl-mode:hide-tree
                                                (kcell-view:label)))
-                         (eq major-mode 'kotl-mode)]
-                        ["Show-Top-Level-Only" kotl-mode:hide-body
-                         (eq major-mode 'kotl-mode)]
-                        ))
-                  '("Mail-Lists"
-                    ["Manual" (id-info "(hyperbole)Suggestion or Bug 
Reporting")
-                     t]
-                    "----"
-                    ["Mail-to-Hyperbole-Users-List"
-                     (hmail:compose "address@hidden" '(hact 'hyp-config)) t]
-                    ["Mail-to-Hyperbole-Bug-Report-List"
-                     (hmail:compose "address@hidden" '(hact 'hyp-config)) t]
-                    "----"
-                    ["Join-Hyperbole-Users-List"
-                     (hmail:compose "address@hidden" nil
-                                    "Just send the message; subject and body 
are ignored.") t]
-                    ["Join-Hyperbole-Bug-Report-List"
-                     (hmail:compose "address@hidden" nil
-                                    "Just send the message; subject and body 
are ignored.") t]
-                    "----"
-                    ["Leave-Hyperbole-Users-List"
-                     (hmail:compose "address@hidden" nil
-                                    "Just send the message; subject and body 
are ignored.") t]
-                    ["Leave-Hyperbole-Bug-Report-List"
-                     (hmail:compose "address@hidden" nil
-                                    "Just send the message; subject and body 
are ignored.") t]
-                    )
-                  infodock-hyrolo-menu
-                  '("Screen (HyControl)" :filter hui-menu-screen)
-                  hui-menu-hywconfig)))))
+                       (eq major-mode 'kotl-mode)]
+                      ["Create-Link" klink:create
+                       (eq major-mode 'kotl-mode)]
+                      ["Expand-All-Trees" kotl-mode:show-all
+                       (eq major-mode 'kotl-mode)]
+                      ["Expand-Tree" (progn (kotl-mode:is-p)
+                                            (kotl-mode:show-tree
+                                             (kcell-view:label)))
+                       (eq major-mode 'kotl-mode)]
+                      ["Show-Top-Level-Only" kotl-mode:hide-body
+                       (eq major-mode 'kotl-mode)]
+                      ))
+                '("Mail-Lists"
+                  ["Manual" (id-info "(hyperbole)Suggestion or Bug Reporting")
+                   t]
+                  "----"
+                  ["Mail-to-Hyperbole-Users-List"
+                   (hmail:compose "address@hidden" '(hact 'hyp-config)) t]
+                  ["Mail-to-Hyperbole-Bug-Report-List"
+                   (hmail:compose "address@hidden" '(hact 'hyp-config)) t]
+                  "----"
+                  ["Join-Hyperbole-Users-List"
+                   (hmail:compose "address@hidden" nil
+                                  "Just send the message; subject and body are 
ignored.") t]
+                  ["Join-Hyperbole-Bug-Report-List"
+                   (hmail:compose "address@hidden" nil
+                                  "Just send the message; subject and body are 
ignored.") t]
+                  "----"
+                  ["Leave-Hyperbole-Users-List"
+                   (hmail:compose "address@hidden" nil
+                                  "Just send the message; subject and body are 
ignored.") t]
+                  ["Leave-Hyperbole-Bug-Report-List"
+                   (hmail:compose "address@hidden" nil
+                                  "Just send the message; subject and body are 
ignored.") t]
+                  )
+                infodock-hyrolo-menu
+                '("Screen (HyControl)" :filter hui-menu-screen)
+                hui-menu-hywconfig)))))
 
 ;;; ************************************************************************
 ;;; Private variables
diff --git a/hui-mini.el b/hui-mini.el
index 898632c..7d2e120 100644
--- a/hui-mini.el
+++ b/hui-mini.el
@@ -392,6 +392,8 @@ constructs.  If not given, the top-level Hyperbole menu is 
used."
 ;;; Hyperbole Minibuffer Menus
 ;;; ************************************************************************
 
+(defun hyperbole-minibuffer-menu ()
+  "Rebuilds and returns the entire Hyperbole minibuffer menu structure."
 (setq
  hui:menus
  (delq nil
@@ -466,7 +468,8 @@ constructs.  If not given, the top-level Hyperbole menu is 
used."
           "Sets how scrolling via end of line presses works.")
          ("Toggle-Rolo-Dates" hyrolo-toggle-datestamps
           "Toggle whether date stamps are updated when rolo entries are 
edited.")
-         ("URL-Display/" (menu . cust-urls) "Sets where URLs are displayed.")))
+         ("URL-Display/" (menu . cust-urls) "Sets where URLs are displayed.")
+         ("Web-Search/" (menu . cust-web) "Sets where Web Searches are 
displayed.")))
        '(cust-eol .
          (("Smart Key press at eol scrolls>")
          ("Proportionally" (setq smart-scroll-proportional t))
@@ -482,7 +485,7 @@ constructs.  If not given, the top-level Hyperbole menu is 
used."
          ("WinControl"  (hui:bind-key #'hycontrol-windows))      ;; {C-c \}
          )) 
        '(cust-referents .
-         (("Ref display>")
+         (("Ref Display>")
          ("Any-Frame" (setq hpath:display-where 'other-frame))
          ("Current-Win" (setq hpath:display-where 'this-window))
          ("Diff-Frame-One-Win"
@@ -491,7 +494,7 @@ constructs.  If not given, the top-level Hyperbole menu is 
used."
          ("Other-Win" (setq hpath:display-where 'other-window))
          ("Single-Win" (setq hpath:display-where 'one-window))))
        '(cust-urls .
-         (("URL display>")
+         (("URL Display>")
          ("Chrome" (setq browse-url-browser-function #'browse-url-chrome))
          ("Default" (setq browse-url-browser-function
                           (if (and (boundp 'browse-url-generic-program) 
(stringp browse-url-generic-program))
@@ -502,6 +505,18 @@ constructs.  If not given, the top-level Hyperbole menu is 
used."
          ("KDE" (setq browse-url-browser-function #'browse-url-kde))
          ("XTerm" (setq browse-url-browser-function #'browse-url-text-xterm))
          ))
+       '(cust-web .
+         (("Web Search>")
+         ("Chrome" (setq hyperbole-web-search-browser-function 
#'browse-url-chrome))
+         ("Default" (setq hyperbole-web-search-browser-function
+                          (if (and (boundp 'browse-url-generic-program) 
(stringp browse-url-generic-program))
+                              #'browse-url-generic
+                            #'browse-url-default-browser)))
+         ("EWW" (setq hyperbole-web-search-browser-function #'eww-browse-url))
+         ("Firefox" (setq hyperbole-web-search-browser-function 
#'browse-url-firefox))
+         ("KDE" (setq hyperbole-web-search-browser-function #'browse-url-kde))
+         ("XTerm" (setq hyperbole-web-search-browser-function 
#'browse-url-text-xterm))
+         ))
        '(doc .
         (("Doc>")
          ("About"        (hypb:display-file-with-logo
@@ -688,7 +703,10 @@ constructs.  If not given, the top-level Hyperbole menu is 
used."
           "Restores next window configuration from ring.")
          ))
        (hui:menu-web-search)
-       )))
+       ))))
+
+;; Always rebuild the Hyperbole minibuffer menu when this file is loaded. 
+(hyperbole-minibuffer-menu)
 
 (provide 'hui-mini)
 
diff --git a/man/hyperbole.html b/man/hyperbole.html
index e24fd51..ea6cc5b 100644
--- a/man/hyperbole.html
+++ b/man/hyperbole.html
@@ -3208,11 +3208,12 @@ These are good places to begin experimenting with 
button creation.
 <a name="index-option-settings"></a>
 </dd>
 <dt><strong>Cust/</strong></dt>
-<dd><p>Hyperbole option customization.  This includes whether ftp and www URLs
-are recognized by the <code>find-file</code> commands, where Hyperbole link
-referents are displayed, where URLs are displayed, whether date stamps
-are added to rolo entries, and whether to use proportional or windowful
-scrolling when a Smart Key is pressed at the end of a line.
+<dd><p>Hyperbole option customization.  This includes whether ftp and www
+URLs are recognized by the <code>find-file</code> commands, where Hyperbole
+link referents are displayed, where URLs are displayed, where web
+search results are displayed, whether date stamps are added to rolo
+entries, and whether to use proportional or windowful scrolling when a
+Smart Key is pressed at the end of a line.
 See <a href="#Configuration">Configuration</a>.
 </p>
 <a name="index-menu_002c-KeyBindings"></a>
@@ -3250,12 +3251,12 @@ documentation on Hyperbole implicit button and action 
types.
 <a name="index-search"></a>
 </dd>
 <dt><strong>Find/</strong></dt>
-<dd><p>Buffer and file line finding commands.  This menu brings together many
-existing line finding commands that are difficult to recall quickly
-when needed, simplifying finding and then jumping to matching lines by
-using the Action Key.  It includes commands for filtering a buffer to
-just those lines that either match or do not match a regular
-expression.
+<dd><p>Buffer and file line finding commands and web searching.  This menu
+brings together many existing line finding commands that are difficult
+to recall quickly when needed, simplifying finding and then jumping to
+matching lines by using the Action Key.  It includes commands for
+filtering a buffer to just those lines that either match or do not
+match a regular expression.
 </p>
 <p>Below are each of the commands on the Find menu.
 </p>
@@ -3263,12 +3264,19 @@ expression.
 <a name="index-remove-lines"></a>
 <a name="index-save-lines"></a>
 <a name="index-locate-files"></a>
+<a name="index-grep-files"></a>
 <a name="index-menu-item_002c-GrepFile"></a>
 <a name="index-menu-item_002c-LocateFiles"></a>
 <a name="index-menu-item_002c-MatchFileBuffers"></a>
 <a name="index-menu-item_002c-OccurHere"></a>
 <a name="index-menu-item_002c-RemoveLines"></a>
 <a name="index-menu-item_002c-SaveLines"></a>
+<a name="index-menu_002c-Find_002fWeb"></a>
+<a name="index-menu_002c-Web"></a>
+<a name="index-searching-the-web"></a>
+<a name="index-web-search"></a>
+<a name="index-C_002dc-_002f"></a>
+<a name="index-hyperbole_002dweb_002dsearch_002dbrowser_002dfunction"></a>
 <a name="index-hypb_003argrep_002dcommand"></a>
 <a name="index-locate_002dcommand"></a>
 <ul>
@@ -3289,6 +3297,16 @@ expression.
 </li><li> OccurHere -        Show numbered line matches for regexp from this 
buffer.
 </li><li> RemoveLines -      Following point, remove all lines that match 
regexp.
 </li><li> SaveLines -        Following point, keep only lines that match 
regexp.
+</li><li> Web/ -             Select a search engine and term and search with 
them.
+                   The option, 
<code>hyperbole-web-search-browser-function</code>,
+                   determines whether results are displayed within Emacs or
+                   with an external web browser. Hyperbole typically binds
+                   the key <kbd>{C-c /}</kbd> for quick access to this menu.  
It
+                   looks like this:
+<div class="smallexample">
+<pre class="smallexample">Web&gt;  Amazon Bing Dictionary Elisp Facebook 
Google Hub(git) Images
+      Maps RFCs StackOverflow Twitter Wikipedia Youtube
+</pre></div>
 </li></ul>
 
 <a name="index-menu_002c-Global_002dButton-1"></a>
@@ -3375,17 +3393,18 @@ and then simply quit HyControl and go back to work.
 <a name="index-C_002dc-_005c"></a>
 <a name="index-screen_002c-C_002dc-_005c"></a>
 <a name="index-menu-item_002c-WindowsControl"></a>
-<p>Hyperbole typically binds the key <kbd>{C-c \}</kbd> to invoke HyControl
-window control; otherwise, the Screen/WindowsControl minibuffer menu
+<p>Hyperbole binds the key <kbd>{C-c \}</kbd> for quick access to 
HyControl&rsquo;s
+window control menu, if it was not already bound prior to Hyperbole&rsquo;s
+initialization; otherwise, the Screen/WindowsControl minibuffer menu
 item, <kbd>{C-h h s w}</kbd>, will do the same thing.
 </p>
 <a name="index-submodes"></a>
 <p>Once in HyControl, your minibuffer window at the bottom of the
 selected frame will display a summary of keys you may use to adjust
-your windows until you press <kbd>{q}</kbd> to quit from HyControl.  The
-key, <kbd>{t}</kbd>, will always toggle between controlling frames and
-windows, the <em>submodes</em> of HyControl, with the upper left of the
-minibuffer prompt showing which type of control is active.
+your windows until you press <kbd>{q}</kbd> or <kbd>{<span 
class="key">ESC</span>}</kbd> to quit from
+HyControl.  The key, <kbd>{t}</kbd>, will always toggle between controlling
+frames and windows, the <em>submodes</em> of HyControl, with the upper
+left of the minibuffer prompt showing which type of control is active.
 </p>
 <a name="index-numeric-argument"></a>
 <a name="index-multiplier"></a>
@@ -3652,9 +3671,10 @@ sizes by which to zoom.
 <dd><p>Toggle between WINDOW and FRAME submodes.
 </p>
 <a name="index-screen_002c-q"></a>
-<a name="index-q-1"></a>
+<a name="index-screen_002c-ESC"></a>
+<a name="index-q-or-ESC"></a>
 </dd>
-<dt><kbd>{q}</kbd></dt>
+<dt><kbd>{q or <span class="key">ESC</span>}</kbd></dt>
 <dd><p>Quit from HyControl mode and restore normal key bindings.
 </p></dd>
 </dl>
@@ -3662,7 +3682,7 @@ sizes by which to zoom.
 <br>
 <p>The rest of this section goes into some technicalities about HyControl
 settings.  You may ignore it if you are not familiar with Emacs
-variables and functions.
+variables and functions or with customized Emacs.
 </p>
 <a name="index-hycontrol_002dscreen_002doffset_002dalist"></a>
 <a name="index-hycontrol_002dset_002dscreen_002doffsets"></a>
@@ -6179,7 +6199,7 @@ considered the present Hyperbole API:
 <p><samp>hact.el</samp>, <samp>hargs.el</samp>, <samp>hbmap.el</samp>, 
<samp>hbut.el</samp>,
 <samp>hhist.el</samp>, <samp>hmail.el</samp>, <samp>hmoccur.el</samp>, 
<samp>hpath.el</samp>,
 <samp>htz.el</samp>, <samp>hypb.el</samp>, <samp>hyrolo.el</samp>, 
<samp>hyrolo-logic.el</samp>,
-<samp>hywconfig.el</samp> andn <samp>set.el</samp>.
+<samp>hywconfig.el</samp> and <samp>set.el</samp>.
 </p>
 
 <p>Note when looking at these files, that they are divided into sections
@@ -6187,7 +6207,7 @@ that separate one data abstraction (class) from another.  
A line of
 dashes within a class separates public parts of the class from the
 private parts that follow the line.
 </p>
-<p>This API does not include the Hyperbole outliner, as it has been
+<p>This API does not include the Hyperbole Koutliner, as it has been
 designed for interactive use, rather than programmatic extensibility.
 You are welcome, however, to study its code, below the
 <samp>hyperbole-${hyperb:version}/kotl/</samp> directory.
@@ -6804,7 +6824,11 @@ Hyperbole&rsquo;s multi-level autonumbered hypertextual 
outliner.
 <p>To try out HyControl, Hyperbole&rsquo;s interactive frame and window control
 system, use <kbd>{C-h h s w}</kbd> for window control or <kbd>{C-h h s f}</kbd>
 for frame control.  Pressing <kbd>{t}</kbd> switches between window and
-frame control once in HyControl.
+frame control once in HyControl.  Hyperbole also binds <kbd>{C-c \}</kbd>
+for quick access to HyControl&rsquo;s window control menu if it was not
+already bound prior to Hyperbole&rsquo;s initialization.  A long video
+demonstrating most of HyControl&rsquo;s features is available at:
+<a href="https://youtu.be/M3-aMh1ccJk";>https://youtu.be/M3-aMh1ccJk</a>.
 </p>
 <a name="index-Info_002ddirectory_002dlist"></a>
 <a name="index-hyperb_003adir"></a>
@@ -7167,6 +7191,22 @@ global Hyperbole keys.
 <dd><p>HyControl: Control windows, frames and buffer display.  This binding
 is made only if the key is not bound prior to loading Hyperbole.
 </p>
+<a name="index-C_002dc-_002f-1"></a>
+<a name="index-C_002dh-h-f-w"></a>
+<a name="index-menu_002c-Find_002fWeb-1"></a>
+<a name="index-menu_002c-Web-1"></a>
+<a name="index-searching-the-web-1"></a>
+<a name="index-web-search-menu"></a>
+<a name="index-C_002dc-_002f-2"></a>
+</dd>
+<dt><kbd>{C-c /}</kbd></dt>
+<dd><p>Search the Web: Display a minibuffer menu of web search engines.
+Once an engine is selected, prompt for a search term and
+perform the associated search.  Hyperbole typically binds the
+key <kbd>{C-c /}</kbd> for quick access to this list; otherwise, the
+Find/Web minibuffer menu item, <kbd>{C-h h f w}</kbd>, will do the same
+thing.
+</p>
 <a name="index-key-binding_002c-C_002dc-C_002dr"></a>
 <a name="index-C_002dc-C_002dr-1"></a>
 </dd>
@@ -7195,17 +7235,17 @@ access to many Hyperbole commands.
 <a name="index-C_002dh-A-1"></a>
 </dd>
 <dt><kbd>{C-h A}</kbd></dt>
-<dd><p>Action Key Help: Shows what the Action Key will do in the current 
context.
+<dd><p>Action Key Help: Show what the Action Key will do in the current 
context.
 <a name="index-C_002du-C_002dh-A-1"></a>
 </p></dd>
 <dt><kbd>{C-u C-h A}</kbd></dt>
-<dd><p>Assist Key Help: Shows what the Assist Key will do in the same context.
+<dd><p>Assist Key Help: Show what the Assist Key will do in the same context.
 </p>
 <a name="index-key-binding_002c-C_002dc-RET"></a>
 <a name="index-C_002dc-RET-1"></a>
 </dd>
 <dt><kbd>{C-c <span class="key">RET</span>}</kbd></dt>
-<dd><p>Mark Things: Marks larger and larger synctactical units in a buffer
+<dd><p>Mark Things: Mark larger and larger synctactical units in a buffer
 when invoked repeatedly, showing in the minibuffer the type of unit
 marked each time.  For example, if on an opening brace at the start of
 a C, Java or Javascript function, this marks the whole function.  This
@@ -7216,7 +7256,7 @@ Hyperbole.
 <a name="index-C_002dc-_002e-2"></a>
 </dd>
 <dt><kbd>{C-c .}</kbd></dt>
-<dd><p>Delimited Thing Jump: Jumps between the start and end of a delimited
+<dd><p>Delimited Thing Jump: Jump between the start and end of a delimited
 thing, which may be an HTML tag pair.  This binding is made only if
 the key is not bound prior to loading Hyperbole.  See <a 
href="#Smart-Key-Thing-Selection">Smart Key Thing Selection</a>, for more 
information.
 </p></dd>
@@ -10083,6 +10123,9 @@ Next: <a href="#Function" accesskey="n" 
rel="next">Function</a>, Previous: <a hr
 <tr><td></td><td valign="top"><a href="#index-C_002dc-_002e"><code>C-c 
.</code></a>:</td><td>&nbsp;</td><td valign="top"><a 
href="#Smart-Key-Thing-Selection">Smart Key Thing Selection</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-C_002dc-_002e-1"><code>C-c 
.</code></a>:</td><td>&nbsp;</td><td valign="top"><a 
href="#Moving-Around">Moving Around</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-C_002dc-_002e-2"><code>C-c 
.</code></a>:</td><td>&nbsp;</td><td valign="top"><a 
href="#Global-Key-Bindings">Global Key Bindings</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-C_002dc-_002f"><code>C-c 
/</code></a>:</td><td>&nbsp;</td><td valign="top"><a 
href="#Menus">Menus</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-C_002dc-_002f-1"><code>C-c 
/</code></a>:</td><td>&nbsp;</td><td valign="top"><a 
href="#Global-Key-Bindings">Global Key Bindings</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-C_002dc-_002f-2"><code>C-c 
/</code></a>:</td><td>&nbsp;</td><td valign="top"><a 
href="#Global-Key-Bindings">Global Key Bindings</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-C_002dc-_003c"><code>C-c 
&lt;</code></a>:</td><td>&nbsp;</td><td valign="top"><a 
href="#Moving-Around">Moving Around</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-C_002dc-_003e"><code>C-c 
&gt;</code></a>:</td><td>&nbsp;</td><td valign="top"><a 
href="#Moving-Around">Moving Around</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-C_002dc-_0040"><code>C-c 
@</code></a>:</td><td>&nbsp;</td><td valign="top"><a 
href="#Relocating-and-Copying">Relocating and Copying</a></td></tr>
@@ -10136,6 +10179,7 @@ Next: <a href="#Function" accesskey="n" 
rel="next">Function</a>, Previous: <a hr
 <tr><td></td><td valign="top"><a href="#index-C_002dh-h-1"><code>C-h 
h</code></a>:</td><td>&nbsp;</td><td valign="top"><a 
href="#Global-Key-Bindings">Global Key Bindings</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-C_002dh-h-c-d"><code>C-h h c 
d</code></a>:</td><td>&nbsp;</td><td valign="top"><a 
href="#Smart-Key-Debugging">Smart Key Debugging</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-C_002dh-h-d-d"><code>C-h h d 
d</code></a>:</td><td>&nbsp;</td><td valign="top"><a 
href="#Hyperbole-Overview">Hyperbole Overview</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-C_002dh-h-f-w"><code>C-h h f 
w</code></a>:</td><td>&nbsp;</td><td valign="top"><a 
href="#Global-Key-Bindings">Global Key Bindings</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-C_002dh-h-g"><code>C-h h 
g</code></a>:</td><td>&nbsp;</td><td valign="top"><a 
href="#Global-Buttons">Global Buttons</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-C_002dh-h-i-a"><code>C-h h i 
a</code></a>:</td><td>&nbsp;</td><td valign="top"><a 
href="#Implicit-Buttons">Implicit Buttons</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-C_002dh-h-m-c"><code>C-h h m 
c</code></a>:</td><td>&nbsp;</td><td valign="top"><a 
href="#Smart-Key-Debugging">Smart Key Debugging</a></td></tr>
@@ -10228,7 +10272,7 @@ Next: <a href="#Function" accesskey="n" 
rel="next">Function</a>, Previous: <a hr
 <tr><td colspan="4"> <hr></td></tr>
 <tr><th><a name="Key-Index_ky_letter-Q">Q</a></th><td></td><td></td></tr>
 <tr><td></td><td valign="top"><a 
href="#index-q"><code>q</code></a>:</td><td>&nbsp;</td><td valign="top"><a 
href="#Menus">Menus</a></td></tr>
-<tr><td></td><td valign="top"><a 
href="#index-q-1"><code>q</code></a>:</td><td>&nbsp;</td><td valign="top"><a 
href="#HyControl">HyControl</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-q-or-ESC"><code>q or <span 
class="key">ESC</span></code></a>:</td><td>&nbsp;</td><td valign="top"><a 
href="#HyControl">HyControl</a></td></tr>
 <tr><td colspan="4"> <hr></td></tr>
 <tr><th><a name="Key-Index_ky_letter-R">R</a></th><td></td><td></td></tr>
 <tr><td></td><td valign="top"><a 
href="#index-right"><code>right</code></a>:</td><td>&nbsp;</td><td 
valign="top"><a href="#HyControl">HyControl</a></td></tr>
@@ -10275,6 +10319,7 @@ Next: <a href="#Function" accesskey="n" 
rel="next">Function</a>, Previous: <a hr
 <tr><td></td><td valign="top"><a href="#index-screen_002c-d"><code>screen, 
d</code></a>:</td><td>&nbsp;</td><td valign="top"><a 
href="#HyControl">HyControl</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-screen_002c-D"><code>screen, 
D</code></a>:</td><td>&nbsp;</td><td valign="top"><a 
href="#HyControl">HyControl</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-screen_002c-down"><code>screen, 
down</code></a>:</td><td>&nbsp;</td><td valign="top"><a 
href="#HyControl">HyControl</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-screen_002c-ESC"><code>screen, 
<span class="key">ESC</span></code></a>:</td><td>&nbsp;</td><td valign="top"><a 
href="#HyControl">HyControl</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-screen_002c-f"><code>screen, 
f</code></a>:</td><td>&nbsp;</td><td valign="top"><a 
href="#HyControl">HyControl</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-screen_002c-h"><code>screen, 
h</code></a>:</td><td>&nbsp;</td><td valign="top"><a 
href="#HyControl">HyControl</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-screen_002c-H"><code>screen, 
H</code></a>:</td><td>&nbsp;</td><td valign="top"><a 
href="#HyControl">HyControl</a></td></tr>
@@ -10643,6 +10688,7 @@ Next: <a href="#Concept-Index" accesskey="n" 
rel="next">Concept Index</a>, Previ
 <tr><td></td><td valign="top"><a 
href="#index-hyperbole-1"><code>hyperbole</code></a>:</td><td>&nbsp;</td><td 
valign="top"><a href="#Smart-Key-_002d-Default-Context">Smart Key - Default 
Context</a></td></tr>
 <tr><td></td><td valign="top"><a 
href="#index-hyperbole_002dinit_002dhook">hyperbole-init-hook</a>:</td><td>&nbsp;</td><td
 valign="top"><a href="#Hook-Variables">Hook Variables</a></td></tr>
 <tr><td></td><td valign="top"><a 
href="#index-hyperbole_002dpopup_002dmenu"><code>hyperbole-popup-menu</code></a>:</td><td>&nbsp;</td><td
 valign="top"><a href="#Smart-Key-_002d-Default-Context">Smart Key - Default 
Context</a></td></tr>
+<tr><td></td><td valign="top"><a 
href="#index-hyperbole_002dweb_002dsearch_002dbrowser_002dfunction">hyperbole-web-search-browser-function</a>:</td><td>&nbsp;</td><td
 valign="top"><a href="#Menus">Menus</a></td></tr>
 <tr><td></td><td valign="top"><a 
href="#index-hyrolo_002dadd"><code>hyrolo-add</code></a>:</td><td>&nbsp;</td><td
 valign="top"><a href="#Rolo-Menu">Rolo Menu</a></td></tr>
 <tr><td></td><td valign="top"><a 
href="#index-hyrolo_002dadd_002dhook">hyrolo-add-hook</a>:</td><td>&nbsp;</td><td
 valign="top"><a href="#Rolo-Keys">Rolo Keys</a></td></tr>
 <tr><td></td><td valign="top"><a 
href="#index-hyrolo_002dadd_002dhook-1">hyrolo-add-hook</a>:</td><td>&nbsp;</td><td
 valign="top"><a href="#Hook-Variables">Hook Variables</a></td></tr>
@@ -11310,6 +11356,7 @@ Previous: <a href="#Function" accesskey="p" 
rel="prev">Function</a>, Up: <a href
 <tr><td></td><td valign="top"><a 
href="#index-gomoku">gomoku</a>:</td><td>&nbsp;</td><td valign="top"><a 
href="#Smart-Key-_002d-Gomoku-Game">Smart Key - Gomoku Game</a></td></tr>
 <tr><td></td><td valign="top"><a 
href="#index-grep">grep</a>:</td><td>&nbsp;</td><td valign="top"><a 
href="#Implicit-Buttons">Implicit Buttons</a></td></tr>
 <tr><td></td><td valign="top"><a 
href="#index-Grep">Grep</a>:</td><td>&nbsp;</td><td valign="top"><a 
href="#Menus">Menus</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-grep-files">grep 
files</a>:</td><td>&nbsp;</td><td valign="top"><a 
href="#Menus">Menus</a></td></tr>
 <tr><td></td><td valign="top"><a 
href="#index-groupware">groupware</a>:</td><td>&nbsp;</td><td valign="top"><a 
href="#Glossary">Glossary</a></td></tr>
 <tr><td colspan="4"> <hr></td></tr>
 <tr><th><a name="Concept-Index_cp_letter-H">H</a></th><td></td><td></td></tr>
@@ -11539,6 +11586,8 @@ Previous: <a href="#Function" accesskey="p" 
rel="prev">Function</a>, Up: <a href
 <tr><td></td><td valign="top"><a href="#index-menu_002c-EBut">menu, 
EBut</a>:</td><td>&nbsp;</td><td valign="top"><a 
href="#Menus">Menus</a></td></tr>
 <tr><td></td><td valign="top"><a 
href="#index-menu_002c-Explicit_002dButton">menu, 
Explicit-Button</a>:</td><td>&nbsp;</td><td valign="top"><a 
href="#Menus">Menus</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-menu_002c-Find">menu, 
Find</a>:</td><td>&nbsp;</td><td valign="top"><a 
href="#Menus">Menus</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-menu_002c-Find_002fWeb">menu, 
Find/Web</a>:</td><td>&nbsp;</td><td valign="top"><a 
href="#Menus">Menus</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-menu_002c-Find_002fWeb-1">menu, 
Find/Web</a>:</td><td>&nbsp;</td><td valign="top"><a 
href="#Global-Key-Bindings">Global Key Bindings</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-menu_002c-Gbut">menu, 
Gbut</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Global-Buttons">Global 
Buttons</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-menu_002c-Gbut-1">menu, 
Gbut</a>:</td><td>&nbsp;</td><td valign="top"><a 
href="#Menus">Menus</a></td></tr>
 <tr><td></td><td valign="top"><a 
href="#index-menu_002c-Global_002dButton">menu, 
Global-Button</a>:</td><td>&nbsp;</td><td valign="top"><a 
href="#Global-Buttons">Global Buttons</a></td></tr>
@@ -11560,6 +11609,8 @@ Previous: <a href="#Function" accesskey="p" 
rel="prev">Function</a>, Up: <a href
 <tr><td></td><td valign="top"><a href="#index-menu_002c-top_002dlevel">menu, 
top-level</a>:</td><td>&nbsp;</td><td valign="top"><a 
href="#Menus">Menus</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-menu_002c-top_002dlevel-1">menu, 
top-level</a>:</td><td>&nbsp;</td><td valign="top"><a 
href="#Minibuffer-Menu-Activation">Minibuffer Menu Activation</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-menu_002c-Types">menu, 
Types</a>:</td><td>&nbsp;</td><td valign="top"><a 
href="#Menus">Menus</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-menu_002c-Web">menu, 
Web</a>:</td><td>&nbsp;</td><td valign="top"><a 
href="#Menus">Menus</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-menu_002c-Web-1">menu, 
Web</a>:</td><td>&nbsp;</td><td valign="top"><a 
href="#Global-Key-Bindings">Global Key Bindings</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-menu_002c-WinConfig">menu, 
WinConfig</a>:</td><td>&nbsp;</td><td valign="top"><a 
href="#Menus">Menus</a></td></tr>
 <tr><td></td><td valign="top"><a 
href="#index-menu_002c-Window_002dConfigurations">menu, 
Window-Configurations</a>:</td><td>&nbsp;</td><td valign="top"><a 
href="#Menus">Menus</a></td></tr>
 <tr><td></td><td valign="top"><a 
href="#index-menubar_002c-Hyperbole-menu">menubar, Hyperbole 
menu</a>:</td><td>&nbsp;</td><td valign="top"><a 
href="#Menus">Menus</a></td></tr>
@@ -11721,6 +11772,8 @@ Previous: <a href="#Function" accesskey="p" 
rel="prev">Function</a>, Up: <a href
 <tr><td></td><td valign="top"><a 
href="#index-scrolling-1">scrolling</a>:</td><td>&nbsp;</td><td valign="top"><a 
href="#Smart-Key-_002d-Smart-Scrolling">Smart Key - Smart 
Scrolling</a></td></tr>
 <tr><td></td><td valign="top"><a 
href="#index-search">search</a>:</td><td>&nbsp;</td><td valign="top"><a 
href="#Menus">Menus</a></td></tr>
 <tr><td></td><td valign="top"><a 
href="#index-search-1">search</a>:</td><td>&nbsp;</td><td valign="top"><a 
href="#Invisible-Text-Searches">Invisible Text Searches</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-searching-the-web">searching the 
web</a>:</td><td>&nbsp;</td><td valign="top"><a 
href="#Menus">Menus</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-searching-the-web-1">searching 
the web</a>:</td><td>&nbsp;</td><td valign="top"><a 
href="#Global-Key-Bindings">Global Key Bindings</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-searching_002c-rolo">searching, 
rolo</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Rolo-Searching">Rolo 
Searching</a></td></tr>
 <tr><td></td><td valign="top"><a 
href="#index-selection">selection</a>:</td><td>&nbsp;</td><td valign="top"><a 
href="#Smart-Key-Thing-Selection">Smart Key Thing Selection</a></td></tr>
 <tr><td></td><td valign="top"><a 
href="#index-selection_002c-menu-items">selection, menu 
items</a>:</td><td>&nbsp;</td><td valign="top"><a 
href="#Menus">Menus</a></td></tr>
@@ -11854,6 +11907,8 @@ Previous: <a href="#Function" accesskey="p" 
rel="prev">Function</a>, Up: <a href
 <tr><td></td><td valign="top"><a 
href="#index-W3">W3</a>:</td><td>&nbsp;</td><td valign="top"><a 
href="#Smart-Key-_002d-WWW-URLs">Smart Key - WWW URLs</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-wconfig-commands">wconfig 
commands</a>:</td><td>&nbsp;</td><td valign="top"><a 
href="#Window-Configurations">Window Configurations</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-web-pages_002c-displaying">web 
pages, displaying</a>:</td><td>&nbsp;</td><td valign="top"><a 
href="#Using-URLs-with-Find_002dFile">Using URLs with Find-File</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-web-search">web 
search</a>:</td><td>&nbsp;</td><td valign="top"><a 
href="#Menus">Menus</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-web-search-menu">web search 
menu</a>:</td><td>&nbsp;</td><td valign="top"><a 
href="#Global-Key-Bindings">Global Key Bindings</a></td></tr>
 <tr><td></td><td valign="top"><a 
href="#index-window-configuration-commands">window configuration 
commands</a>:</td><td>&nbsp;</td><td valign="top"><a 
href="#Window-Configurations">Window Configurations</a></td></tr>
 <tr><td></td><td valign="top"><a 
href="#index-window-configuration-ring">window configuration 
ring</a>:</td><td>&nbsp;</td><td valign="top"><a 
href="#Window-Configurations">Window Configurations</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-window-configurations">window 
configurations</a>:</td><td>&nbsp;</td><td valign="top"><a 
href="#Window-Configurations">Window Configurations</a></td></tr>
diff --git a/man/hyperbole.info b/man/hyperbole.info
index f2ca177..00495f6 100644
Binary files a/man/hyperbole.info and b/man/hyperbole.info differ
diff --git a/man/hyperbole.pdf b/man/hyperbole.pdf
index 76f70a3..56ee0ab 100644
Binary files a/man/hyperbole.pdf and b/man/hyperbole.pdf differ
diff --git a/man/hyperbole.texi b/man/hyperbole.texi
index fe99d7d..98b014c 100644
--- a/man/hyperbole.texi
+++ b/man/hyperbole.texi
@@ -2588,11 +2588,12 @@ These are good places to begin experimenting with 
button creation.
 @cindex customize
 @cindex option settings
 @item Cust/
-Hyperbole option customization.  This includes whether ftp and www URLs
-are recognized by the @code{find-file} commands, where Hyperbole link
-referents are displayed, where URLs are displayed, whether date stamps
-are added to rolo entries, and whether to use proportional or windowful
-scrolling when a Smart Key is pressed at the end of a line.
+Hyperbole option customization.  This includes whether ftp and www
+URLs are recognized by the @code{find-file} commands, where Hyperbole
+link referents are displayed, where URLs are displayed, where web
+search results are displayed, whether date stamps are added to rolo
+entries, and whether to use proportional or windowful scrolling when a
+Smart Key is pressed at the end of a line.
 @xref{Configuration}.
 
 @cindex menu, KeyBindings
@@ -2627,12 +2628,13 @@ documentation on Hyperbole implicit button and action 
types.
 @cindex menu, Find
 @cindex search
 @item Find/
-Buffer and file line finding commands.  This menu brings together many
-existing line finding commands that are difficult to recall quickly
-when needed, simplifying finding and then jumping to matching lines by
-using the Action Key.  It includes commands for filtering a buffer to
-just those lines that either match or do not match a regular
-expression.
+Buffer and file line finding commands and web searching.  This menu
+brings together many existing line finding commands that are difficult
+to recall quickly when needed, simplifying finding and then jumping to
+matching lines by using the Action Key.  It includes commands for
+filtering a buffer to just those lines that either match or do not
+match a regular expression.  It also includes a submenu for quick
+access to popular web search engines.
 
 Below are each of the commands on the Find menu.
 
@@ -2648,9 +2650,12 @@ Below are each of the commands on the Find menu.
 @cindex menu item, RemoveLines
 @cindex menu item, SaveLines
 @cindex menu, Find/Web
address@hidden menu, Web
 @cindex searching the web
 @cindex web search
 @kindex C-c /
address@hidden hyperbole-web-search-browser-function
address@hidden hyperbole-web-search-alist
 @vindex hypb:rgrep-command
 @vindex locate-command
 @itemize @bullet
@@ -2679,8 +2684,19 @@ RemoveLines -      Following point, remove all lines 
that match regexp.
 SaveLines -        Following point, keep only lines that match regexp.
 @item
 Web/ -             Select a search engine and term and search with them.
-                   Hyperbole typically binds the key @bkbd{C-c /} for
-                   quick access to this menu.
+                   The option, @code{hyperbole-web-search-browser-function},
+                   determines whether results are displayed within Emacs or
+                   with an external web browser. Hyperbole binds
+                   the key @bkbd{C-c /} for quick access to this menu, if it
+                   is not already bound prior to Hyperbole's initialization.
+                   A short video introduction to the Find/Web menu may be found
+                   at @url{https://youtu.be/8lMlJed0-OM}. The Find/Web menu 
looks
+                   like this: 
address@hidden
address@hidden
+Web>  Amazon Bing Dictionary Elisp Facebook Google Hub(git) Images
+      Maps RFCs StackOverflow Twitter Wikipedia Youtube
address@hidden smallexample
 @end itemize
 
 @cindex menu, Global-Button
@@ -2760,10 +2776,10 @@ item, @bkbd{C-h h s w}, will do the same thing.
 @cindex submodes
 Once in HyControl, your minibuffer window at the bottom of the
 selected frame will display a summary of keys you may use to adjust
-your windows until you press @bkbd{q} to quit from HyControl.  The
-key, @bkbd{t}, will always toggle between controlling frames and
-windows, the @dfn{submodes} of HyControl, with the upper left of the
-minibuffer prompt showing which type of control is active.
+your windows until you press @bkbd{q} or @address@hidden to quit from
+HyControl.  The key, @bkbd{t}, will always toggle between controlling
+frames and windows, the @dfn{submodes} of HyControl, with the upper
+left of the minibuffer prompt showing which type of control is active.
 
 @cindex numeric argument
 @cindex multiplier
@@ -2957,7 +2973,8 @@ FRAME mode zooming requires the separately available
 Toggle between WINDOW and FRAME submodes.
 
 @kindex screen, q
address@hidden q
address@hidden screen, @key{ESC}
address@hidden q or @key{ESC}
 Quit from HyControl mode and restore normal key bindings.
 @end table
 
@@ -5077,7 +5094,7 @@ considered the present Hyperbole API:
 @file{hact.el}, @file{hargs.el}, @file{hbmap.el}, @file{hbut.el},
 @file{hhist.el}, @file{hmail.el}, @file{hmoccur.el}, @file{hpath.el},
 @file{htz.el}, @file{hypb.el}, @file{hyrolo.el}, @file{hyrolo-logic.el},
address@hidden andn @file{set.el}.
address@hidden and @file{set.el}.
 
 
 @noindent
@@ -5086,7 +5103,7 @@ that separate one data abstraction (class) from another.  
A line of
 dashes within a class separates public parts of the class from the
 private parts that follow the line.
 
-This API does not include the Hyperbole outliner, as it has been
+This API does not include the Hyperbole Koutliner, as it has been
 designed for interactive use, rather than programmatic extensibility.
 You are welcome, however, to study its code, below the
 @address@hidden:address@hidden/kotl/} directory.
@@ -5609,7 +5626,7 @@ for frame control.  Pressing @bkbd{t} switches between 
window and
 frame control once in HyControl.  Hyperbole also binds @bkbd{C-c \\}
 for quick access to HyControl's window control menu if it was not
 already bound prior to Hyperbole's initialization.  A long video
-demonstrating most of HyControl's features is available at:
+demonstrating most of HyControl's features is available at
 @url{https://youtu.be/M3-aMh1ccJk}.
 
 @vindex Info-directory-list
@@ -5916,6 +5933,19 @@ Assist Key: Invoke the Assist Key in the present context.
 HyControl: Control windows, frames and buffer display.  This binding
 is made only if the key is not bound prior to loading Hyperbole.
 
address@hidden C-c /
address@hidden C-h h f w
address@hidden menu, Find/Web
address@hidden menu, Web
address@hidden searching the web
address@hidden web search menu
address@hidden C-c /
+Search the Web: Display a minibuffer menu of web search engines.  Once
+an engine is selected, prompt for a search term and perform the
+associated search.  This binding is made only if the key is not bound
+prior to loading Hyperbole; otherwise, the Find/Web minibuffer menu
+item, @bkbd{C-h h f w}, will do the same thing.
+
 @cindex key binding, C-c C-r
 @kitem C-c C-r
 Button Rename: Rename an explicit button. This binding is made only if
@@ -5936,32 +5966,22 @@ access to many Hyperbole commands.
 @cindex key binding, C-h A
 @cindex key binding, C-u C-h A
 @kitem C-h A
-Action Key Help: Shows what the Action Key will do in the current context.
+Action Key Help: Show what the Action Key will do in the current context.
 @kitem C-u C-h A
-Assist Key Help: Shows what the Assist Key will do in the same context.
+Assist Key Help: Show what the Assist Key will do in the same context.
 
 @cindex key binding, C-c @key{RET}
 @kitem C-c @key{RET}
-Mark Things: Marks larger and larger synctactical units in a buffer
+Mark Things: Mark larger and larger synctactical units in a buffer
 when invoked repeatedly, showing in the minibuffer the type of unit
 marked each time.  For example, if on an opening brace at the start of
 a C, Java or Javascript function, this marks the whole function.  This
 binding is made only if the key is not bound prior to loading
 Hyperbole.
 
address@hidden C-c /
address@hidden menu, Find/Web
address@hidden searching the web
address@hidden web search
-Search the Web: Displays a selectable list of web search engines, then
-prompts for a search term and performs the associated search.
-Hyperbole typically binds the key @bkbd{C-c /} for quick access to
-this list; otherwise, the Find/Web minibuffer menu item, @bkbd{C-h h f
-w}, will do the same thing.
-
 @cindex key binding, C-c .
 @kitem C-c .
-Delimited Thing Jump: Jumps between the start and end of a delimited
+Delimited Thing Jump: Jump between the start and end of a delimited
 thing, which may be an HTML tag pair.  This binding is made only if
 the key is not bound prior to loading Hyperbole.  @xref{Smart Key
 Thing Selection}, for more information.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]