[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[elpa] externals/hyperbole 2be4dd0 48/53: Fixed a bunch of small issues
From: |
Robert Weiner |
Subject: |
[elpa] externals/hyperbole 2be4dd0 48/53: Fixed a bunch of small issues and released Hyperbole 7. |
Date: |
Wed, 15 Nov 2017 22:47:10 -0500 (EST) |
branch: externals/hyperbole
commit 2be4dd014ea12b63bcb4b9dc8d32a2f43d425459
Author: Bob Weiner <address@hidden>
Commit: Bob Weiner <address@hidden>
Fixed a bunch of small issues and released Hyperbole 7.
* hversion.el: Updated to 7.0.0 for major release.
* hui-window.el (hmouse-drag-window-side): Fixed coordinate error when drag
release is outside of Emacs.
* hui-mouse.el (smart-helm-assist): Fixed message formatting bugs in
hkey-debug message.
* hlvar.el (hack-local-variables): Changed from use of older
inhibit-local-variables variable to newer
(inhibit-local-variables-p) function call.
* Makefile (version): Removed HY-ANNOUNCE-SHORT from distribution.
* kotl/kexport.el (kexport:html): Changed to wrap cell contents in
<PRE></PRE> tags if soft-newline-flag is nil
rather than using <BR> hard newlines, so all cell formatting is
preserved. Also changed NAME attribute to
ID for HTML5.
2017-11-14 Bob Weiner <address@hidden>
* kotl/kimport.el (kimport:star-heading): Added and replaced use of
hard-coded regexps in star outline importation.
Also, stopped allowing leading whitespace before outline heading stars
so can use indented stars as list items
rather than outline headings.
* hibtypes.el (text-toc): Expanded file names to include DEMO and TUTORIAL.
DEMO: Added Table of Contents and a section on using it, Table of
Contents Browsing.
* hbut.el (ebut:label-p): Changed last parameter to limit search to two
lines rather than one, so Info node matches can
span two lines as they often do.
* HY-ABOUT: Added link to HY-WHY.kotl.
HY-WHY.kotl: Added links to relevant DEMO sections throughout.
DEMO (Koutliner): Updated this section.
hui-menu.el (infodock-hyperbole-menu): Added Why-Use? entry.
hui-mini.el (hui:menus): Added WhyUse entry to display HY-WHY.kotl, list
of Hyperbole use cases.
man/hyperbole.css (code, tt): Removed leading and trailing padding of 5px
from code samples so display inline better.
---
Changes | 36 +++++
DEMO | 160 ++++++++++--------
HY-ABOUT | 6 +-
HY-ANNOUNCE | 429 ++++++++-----------------------------------------
HY-ANNOUNCE-SHORT | 24 ---
HY-NEWS | 46 +++---
HY-WHY.kotl | 115 ++++++++-----
MANIFEST | 2 +-
Makefile | 16 +-
README.md | 2 +-
README.md.html | 2 +-
_hypb | Bin 1951 -> 2234 bytes
hact.el | 4 +-
hactypes.el | 5 +-
hbut.el | 12 +-
hib-kbd.el | 3 +-
hibtypes.el | 20 +--
hlvar.el | 2 +-
hmouse-drv.el | 30 ++--
hpath.el | 24 +--
hui-menu.el | 13 +-
hui-mini.el | 2 +
hui-mouse.el | 3 +-
hui-window.el | 11 +-
hui.el | 4 +-
hversion.el | 2 +-
hycontrol.el | 23 +--
hypb.el | 9 +-
hyperbole-pkg.el | 4 +-
hyperbole.el | 2 +-
hyrolo-demo.el | 10 +-
hyrolo.el | 2 +-
hywconfig.el | 10 +-
kotl/kexport.el | 33 ++--
kotl/kimport.el | 13 +-
kotl/kotl-autoloads.el | 10 +-
kotl/kotl-mode.el | 2 +-
kotl/kview.el | 2 +-
kotl/kvspec.el | 2 +-
man/hyperbole.css | 2 +-
man/hyperbole.html | 169 ++++++++++---------
man/hyperbole.info | Bin 482670 -> 483045 bytes
man/hyperbole.pdf | Bin 1254914 -> 1255114 bytes
man/hyperbole.texi | 96 ++++++-----
man/version.texi | 6 +-
45 files changed, 593 insertions(+), 775 deletions(-)
diff --git a/Changes b/Changes
index d998759..2aceba0 100644
--- a/Changes
+++ b/Changes
@@ -1,3 +1,39 @@
+2017-11-15 Bob Weiner <address@hidden>
+
+* hversion.el: Updated to 7.0.0 for major release.
+
+* hui-window.el (hmouse-drag-window-side): Fixed coordinate error when drag
release is outside of Emacs.
+
+* hui-mouse.el (smart-helm-assist): Fixed message formatting bugs in
hkey-debug message.
+
+* hlvar.el (hack-local-variables): Changed from use of older
inhibit-local-variables variable to newer
+ (inhibit-local-variables-p) function call.
+
+* Makefile (version): Removed HY-ANNOUNCE-SHORT from distribution.
+
+* kotl/kexport.el (kexport:html): Changed to wrap cell contents in <PRE></PRE>
tags if soft-newline-flag is nil
+ rather than using <BR> hard newlines, so all cell formatting is preserved.
Also changed NAME attribute to
+ ID for HTML5.
+
+2017-11-14 Bob Weiner <address@hidden>
+
+* kotl/kimport.el (kimport:star-heading): Added and replaced use of hard-coded
regexps in star outline importation.
+ Also, stopped allowing leading whitespace before outline heading stars so
can use indented stars as list items
+ rather than outline headings.
+
+* hibtypes.el (text-toc): Expanded file names to include DEMO and TUTORIAL.
+ DEMO: Added Table of Contents and a section on using it, Table of Contents
Browsing.
+
+* hbut.el (ebut:label-p): Changed last parameter to limit search to two lines
rather than one, so Info node matches can
+ span two lines as they often do.
+
+* HY-ABOUT: Added link to HY-WHY.kotl.
+ HY-WHY.kotl: Added links to relevant DEMO sections throughout.
+ DEMO (Koutliner): Updated this section.
+ hui-menu.el (infodock-hyperbole-menu): Added Why-Use? entry.
+ hui-mini.el (hui:menus): Added WhyUse entry to display HY-WHY.kotl, list of
Hyperbole use cases.
+ man/hyperbole.css (code, tt): Removed leading and trailing padding of 5px
from code samples so display inline better.
+
2017-11-13 Bob Weiner <address@hidden>
* hui-window.el (hmouse-drag-thing): Added error if drag ends within the
delimited thing region, so user knows
diff --git a/DEMO b/DEMO
index 6c3937c..1775c76 100644
--- a/DEMO
+++ b/DEMO
@@ -1,4 +1,20 @@
-* GNU Hyperbole Demonstration and Introduction by Bob Weiner
+* GNU Hyperbole Demonstration by Bob Weiner
+
+ Table of Contents
+ -----------------
+ * Introduction
+ * Smart Keys
+ * Koutliner
+ * HyControl
+ * HyRolo
+ * History
+ * Implicit Buttons
+ * Explicit Buttons
+ * Smart Mouse Keys
+ * Epilog
+ * References
+
+* Introduction
Welcome to GNU Hyperbole. Hyperbole will super-charge your GNU Emacs
experience, allowing you to work faster, utilize fewer key bindings, recall
@@ -36,21 +52,28 @@ the shift-right mouse button. Memorize these keys; you
will use them a lot.
To distinguish the mouse buttons from the keyboard keys, we will often refer
to the Action Mouse Key or Assist Mouse Key. (It is possible to rebind these
keys to the unshifted middle and right mouse buttons, if desired. See the
-Smart Key Bindings section of the Hyperbole Manual,
-"(hyperbole)Smart Key Bindings").
+Smart Key Bindings section of the Hyperbole Manual, "(hyperbole)Smart Key
+Bindings").
The Action Key selects entities, creates links and activates buttons. The
Assist Key provides help, such as reporting on a button's attributes, or
serves a complementary function to whatever the Action Key does within a
context. Press the Action Key within this <(button)> to see all of the
contexts and operations of the Smart Keys. SPACE scrolls forward and
-backwards DELETE scrolls backward within the Smart Key summary; {q} quits and
-returns here.
+backwards DELETE scrolls backward within the Smart Key summary; {q} quits
+and returns here.
See also the later section, <(Smart Mouse Keys)>.
Now let's look at many of the things you can do with the Smart Keys.
+** Table of Contents Browsing
+
+In DEMO, README and TUTORIAL files, Hyperbole recognizes table of contents
+entries and jumps to their associated sections (by default, in another
+window) with a press of the Action Key. Go back to the table of contents at
+the start of this file and try navigating to different sections.
+
** Smart Scrolling
By default, the variable `smart-scroll-proportional' is set to t (TRUE). This
@@ -59,8 +82,8 @@ the current line is placed at the top of the window; the
Assist Key does the
reverse when pressed at the end of line; it places the current line at the
bottom of the window. This is called proportional scrolling because the
amount of scrolling is relative to the point's position in the window. Try
-it with this DEMO buffer to see how you can precisely control what is displayed
-in a window and then come back here.
+it with this DEMO buffer to see how you can precisely control what is
+displayed in a window and then come back here.
Alternatively, if this variable is set to nil (FALSE), the Smart Keys scroll
forward or backward a windowful when at the end of a line, regardless of
@@ -152,19 +175,16 @@ A unique feature of Hyperbole is the Koutliner; it is for
outlining thoughts,
developing requirements or listing tasks and hyperlinking them to other
documents.
-The Hyperbole Koutliner should work under any modern version of GNU Emacs.
-Your Emacs supports the Koutliner if when you press {C-h h} to display the
-Hyperbole menu, you have a Kotl/ entry in the menu.
-
The Hyperbole Koutliner produces structured, autonumbered documents composed
of hierarchies of cells. Each cell has two identifiers, a relative
autonumber indicating its present position within the outline and a permanent
identifier suitable for use within hyperlink references to the cell.
-The Kotl/Example menu entry on {C-h h k e} gives you an editable copy of
-Hyperbole's example Koutliner file. This explains the Koutliner commands
-and lets you try them out as you learn. Additional documentation can be
-found in "(hyperbole)Koutliner". "(hyperbole)Koutliner Keys" summarizes in
+A demonstration of the Koutliner is found on the Hyperbole Kotl/Example menu
+entry. {C-h h k e}, gives you an editable copy of Hyperbole's example
+Koutliner file. This explains the Koutliner commands and lets you try them
+out as you learn. Additional documentation can be found in
+"(hyperbole)Koutliner". "(hyperbole)Koutliner Keys" summarizes in
alphabetical order the Koutliner commands which are bound to keys.
@@ -207,25 +227,25 @@ Let's try some of the more interesting commands. You can
either type the
following key sequences (ignoring the braces) for practice or simply press
the Action Key within them to see what they look like.
-{C-h h s f} - enter HyControl Frames mode
+ {C-h h s f} - enter HyControl Frames mode
-{.50 %} - make frame 50% of screen size
-{ c } - use this multiple times to move frame around screen edges
-{ a } - use this multiple times to adjust frame width
-{ A } - use this multiple times to adjust frame height
+ {.50 %} - make frame 50% of screen size
+ { c } - use this multiple times to move frame around screen edges
+ { a } - use this multiple times to adjust frame width
+ { A } - use this multiple times to adjust frame height
The following 4 commands use the prefix argument as a percentage of the
screen height, except that no argument or an argument of 1 mean 50% since
the argument is used to adjust one dimension of the frame.
-{ i } - move to top edge, next press cuts height by ARG %
-{ m } - move to bottom edge, next press cuts height by ARG %
-{ j } - move to left edge, next press cuts width by ARG %
-{ k } - move to right edge, next press cuts width by ARG %
+ { i } - move to top edge, next press cuts height by ARG %
+ { m } - move to bottom edge, next press cuts height by ARG %
+ { j } - move to left edge, next press cuts width by ARG %
+ { k } - move to right edge, next press cuts width by ARG %
-{ f } - clone the selected window to a new frame
-{ F } - tear off the selected window (if more than one window)
- into a new frame
+ { f } - clone the selected window to a new frame
+ { F } - tear off the selected window (if more than one window)
+ into a new frame
** Windows Grid
@@ -289,27 +309,27 @@ results buffer.
For demonstration purposes, we discuss only the most common searches and use
a global key binding for quick access to HyRolo searches of existing entries.
-Below is a sample rolo file that we will work with in this DEMO. The date at
-the end of each record is automatically added by HyRolo whenever a new record
-is added.
-
-==================================================================
- DEMO ROLO
-==================================================================
-* HiHo Industries
-** Strong, Hugo <address@hidden> W708-555-9821
- Manager
- 04/12/2017
-*** Smith, John <address@hidden> W708-555-2001
- Chief Ether Maintainer
- 05/24/2017
-* Work Industries
-** Hansen, Dan <address@hidden> W218-555-2311
- Manager
- 02/18/2017
-*** Dunn, John <address@hidden> W218-555-3233
- Media Maker
- 11/2/2017
+Below is a sample rolo file (indented 3 spaces) that we will work with in
+this DEMO. The date at the end of each record is automatically added by
+HyRolo whenever a new record is added.
+
+ ==================================================================
+ DEMO ROLO
+ ==================================================================
+ * HiHo Industries
+ ** Strong, Hugo <address@hidden> W708-555-9821
+ Manager
+ 04/12/2017
+ *** Smith, John <address@hidden> W708-555-2001
+ Chief Ether Maintainer
+ 05/24/2017
+ * Work Industries
+ ** Hansen, Dan <address@hidden> W218-555-2311
+ Manager
+ 02/18/2017
+ *** Dunn, John <address@hidden> W218-555-3233
+ Media Maker
+ 11/2/2017
** String Searches
@@ -529,18 +549,16 @@ the filename.
Refname can be an Info node name or any Info index item (an item listed in
any of a manual's indices). Index items let you jump to a specific,
-referenced point within an Info node. As an example, suppose you want
-quick access to a summary of Hyperbole's key bindings. Store
-"(hyperbole)key binding list" in your personal file of buttons (accessed with
-{C-h h b p}) and it will always be there. Press the Action Key on it and
-try it. Press the Action Key on the key binding of your personal button
-file and then store the implicit link there if you like.
-
-If you want to learn a rapid way to create explicit buttons, see "(hyperbole)By
-Dragging".
+referenced point within an Info node. As an example, suppose you want quick
+access to a summary of Hyperbole's key bindings. Store "(hyperbole)key
+binding list" in your personal file of buttons (accessed with {C-h h b p})
+and you will always have quick access to a list of Hyperbole's global key
+bindings. Press the Action Key on the Info reference and try it. Press the
+Action Key on the key binding of your personal button file and then store the
+implicit link there if you like.
Since Emacs and most GNU programs include Info manuals, you now a simple way to
-link to and jump to any marked item within any manual.
+link to and jump to any named item within a manual.
*** Remote Paths
@@ -623,11 +641,14 @@ includes your system information.
An Action Key press on a social media hashtag or username reference at point
displays the web page associated with the reference at the associated
service. References are of the form:
-[facebook|instagram|address@hidden<hashtag-or-username> or
-[fb|in|address@hidden<hashtag-or-username>. If the service is omitted and
there
-is no other usage of a hash reference without a prefix in the buffer, then
-the service defaults to the value of `hibtypes-social-default-service',
-which is initially "twitter".
+
+ [facebook|instagram|address@hidden<hashtag-or-username>
+ or
+ [fb|in|address@hidden<hashtag-or-username>.
+
+If the service is omitted and there is no other usage of a hash reference
+without a prefix in the buffer, then the service defaults to the value of
+`hibtypes-social-default-service', which is initially "twitter".
For example, these make the same hashtag reference: twitter#gnu or tw#gnu
and display the page for tweets with that hashtag. Similarly, address@hidden
or
@@ -646,11 +667,13 @@ Press the Action Key on address@hidden to go to RSW's
gihub home page.
address@hidden works too.
References to project home pages look like this (the / is required):
+
github#/hyperbole (uses user default setting)
github#/rswgnu/hyperbole
References to specific commits use the # hash symbol and short versions
of the git commit hash code:
+
gh#rswgnu/hyperbole/5ae3550 (if include user, must include project)
github#hyperbole/5ae3550 (project can be given with user default)
gh#5ae3550 (user and project defaults are used)
@@ -733,8 +756,8 @@ If you click the Action Key on the buffer name, the buffer
will be displayed
just as a file buffer would. This type of implicit button is called a
`hyp-source' button.
-You can also activate any explicit buttons shown in help buffers thanks to
-hyp-source buttons.
+You can also activate any explicit buttons (see "#Explicit Buttons") shown in
+help buffers thanks to hyp-source buttons.
** UNIX Man Apropos Buttons
@@ -1229,11 +1252,10 @@ behavior.
* Epilog
We hope you have enjoyed this introduction to Hyperbole. It can be your
-every-ready sidekick in your daily knowledge work. Explore the Hyperbole
+ever-ready sidekick in your daily knowledge work. Explore the Hyperbole
menus to learn more interactively. For reference, the Hyperbole Manual, has
-more detail about the many things that Hyperbole does when you are ready to
-dive deeper. Read it online with the GNU Info reader at "(hyperbole)Top".
-
+extensive detail about the many things that Hyperbole does when you are ready
+to dive deeper. Read it online with the GNU Info reader at "(hyperbole)Top".
* References
diff --git a/HY-ABOUT b/HY-ABOUT
index 8812ff6..b8f0a59 100644
--- a/HY-ABOUT
+++ b/HY-ABOUT
@@ -3,14 +3,14 @@
Designed and Written by Bob Weiner
Maintained by Mats Lidell and Bob Weiner
https://www.gnu.org/software/hyperbole/
- Version 6.0.2g
+ Version 7.0.0
GNU Hyperbole (pronounced Ga-new Hi-per-bo-lee), or just Hyperbole, is
an efficient and programmable hypertextual information management
system implemented as a GNU Emacs package. It works well on GNU Emacs
-24.4 or above.
+24.4 or above. (See also: "HY-WHY.kotl" for Hyperbole uses).
-It includes easy-to-use, powerful hypertextual button types without
+Hyperbole includes easy-to-use, powerful hypertextual buttons without
the need to learn a markup language; a hierarchical, record-based
contact manager; a rapid window and frame control system; and a
powerful multi-level auto-numbered outliner. All features are aimed
diff --git a/HY-ANNOUNCE b/HY-ANNOUNCE
index 33eae11..58e3b03 100644
--- a/HY-ANNOUNCE
+++ b/HY-ANNOUNCE
@@ -1,395 +1,96 @@
To: address@hidden, address@hidden, address@hidden
-ANNOUNCE: GNU Hyperbole 6.0.2g is released for Emacs 24.4 and above
+ANNOUNCE: GNU Hyperbole 7, a.k.a the Git Ready for Action Release
-The GNU Hyperbole home page, https://www.gnu.org/software/hyperbole,
-contains a number of screenshots of Hyperbole and its menus and links to
-useful resources.
+This is the main public release of GNU Hyperbole for 2017. It offers many
+new productivity-enhancing features including Git and Github object links
+as summarized here:
-GNU Hyperbole (pronounced Ga-new Hi-per-bo-lee), or just Hyperbole, is an
-amazing, programmable hypertextual information management system
-implemented as a GNU Emacs package. This is the main public release of
-2017. Hyperbole has been greatly expanded and updated for use with the
-latest Emacs 26 releases; it supports GNU Emacs 24.4 or above. It contains
-an extensive set of improvements that can greatly boost your day-to-day
-productivity with Emacs and your ability to manage information stored
-across many different machines on the internet. People who get used to
-Hyperbole find it helps them so much that they prefer never to use Emacs
-without it.
-
-Hyperbole includes easy-to-use, powerful hypertextual button types and
-links that can be made without the need to learn a markup language. It
-also includes a hierarchical, record-based contact manager, a rapid window
-and frame control system and a powerful multi-level auto-numbered outliner.
-All features are aimed at making textual information management and display
-fast and easy.
-
-Hyperbole embeds hypertext buttons within unstructured and structured
-files, mail messages and news articles. It offers intuitive keyboard and
-mouse-based control of information display within multiple windows. It
-also provides point-and-click access to World-Wide Web URLs, Info manuals,
-ftp archives, etc.
-
-The Hyperbole wiki page, "https://www.emacswiki.org/emacs/Hyperbole",
-explains the many ways it differs from and is complementary to Org mode.
-
-Instructions follow on how to download, install and utilize GNU Hyperbole
-as an Emacs package. These are followed by What's New with Hyperbole in
-2017.
-
-Bob Weiner designed and programmed GNU Hyperbole. He and Mats Lidell
-maintain it for the Free Software Foundation. It includes an interactive
-demo to introduce you to its features and a detailed reference manual.
-
-===========================================================================
-* What's New in GNU Hyperbole V6.0.2g
-===========================================================================
-
-See "https://git.savannah.gnu.org/cgit/hyperbole.git/tree/HY-NEWS".
-
-===========================================================================
-* About
-===========================================================================
-
-GNU Hyperbole consists of five parts:
-
-* Buttons and Smart Keys
- a set of hyperbutton types which supply core hypertext and other
- behaviors. Buttons may be added to documents (explicit buttons)
- with a simple drag between windows, no markup language needed.
- Implicit buttons are patterns automatically recognized within text
- that perform actions, e.g. bug#24568 displays the bug status
- information for that bug number.
-
- Buttons are accessed by clicking on them or referenced by name
- (global buttons), so they can be activated regardless of what is on
- screen. Users can make simple changes to button types. Emacs Lisp
- programmers can prototype and deliver new types quickly.
-
- 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 popular Emacs modes, they
- allow you to perform common, sometimes complex operations without
- having to use a different key for each operation. Just press a Smart
- Key and the right thing happens;
-
-* Contact and Text Finder
- an interactive, textual information management interface,
- including fast, flexible file and text finding commands. A
- powerful, hierarchical contact manager, HyRolo, which anyone can
- use, is also included. It is easy to learn since it introduces
- only a few new mechanisms and has a menu interface, which may be
- operated from the keyboard or the mouse;
-
-* Screen Control
- the fastest, easiest-to-use window and frame control available for
- GNU Emacs, called HyControl. With just a few keystrokes, 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;
-
-* Hypertextual Outliner
- an advanced outliner, the Koutliner, with multi-level
- autonumbering and permanent identifiers attached to each outline
- node for use as hypertext link anchors, per node properties and
- flexible view specifications that can be embedded within links or
- used interactively;
+ https://git.savannah.gnu.org/cgit/hyperbole.git/plain/HY-NEWS
-* Programming Library
- a set of programming libraries, for system developers who want to
- integrate Hyperbole with another user interface or as a back-end
- to a distinct system. (All of Hyperbole is written in Emacs Lisp
- for ease of modification. It has been engineered for real-world
- usage and is well structured).
+A short explanation of Hyperbole is included below. For more detail
+or how to obtain and install it, see:
-The GNU Hyperbole project home page gives a more extensive description:
-"https://www.gnu.org/software/hyperbole/".
+ https://www.gnu.org/software/hyperbole
-===========================================================================
-* Package Installation
-===========================================================================
+For a list of use cases, see:
-Once you have Emacs set up at your site, GNU Hyperbole may be
-installed simply by using the Emacs Package Manager. If you are not
-familiar with it, see the Packages section of the GNU Emacs Manual,
-"(emacs)Packages", or:
-"https://www.gnu.org/software/emacs/manual/html_node/emacs/Packages.html".
+ https://www.gnu.org/software/hyperbole/HY-WHY.html
-If you have Hyperbole 5.10 or higher already installed and simply want to
-upgrade it, invoke the Emacs Package Manager with {M-x list-packages RET},
-then use the {U} followed by the {x} key to upgrade all out-of-date
-packages, Hyperbole among them. Then skip the text below and move on to
-the next section, Invocation.
+For what users think about Hyperbole, see:
-Otherwise, to download and install the Hyperbole package, add the following
-lines to your personal Emacs initialization file, typically "~/.emacs".
+ https://www.gnu.org/software/hyperbole/hyperbole.html#user-quotes
-(require 'package)
-(setq package-enable-at-startup nil) ;; Prevent double loading of libraries
-(package-initialize)
-(unless (package-installed-p 'hyperbole)
- (package-refresh-contents)
- (package-install 'hyperbole))
-(require 'hyperbole)
+----
-Now restart Emacs and Hyperbole will be downloaded and compiled for use
-with your version of Emacs. You may see a bunch of compilation warnings
-but these can be safely ignored.
-
-===========================================================================
-* Invocation
-===========================================================================
-
-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
-menubar and {C-h h} will display a Hyperbole menu in the minibuffer for
-quick keyboard-based selection.
-
-You can invoke Hyperbole commands in one of three ways:
-
- use the Hyperbole menu on your menubar;
+GNU Hyperbole (pronounced Ga-new Hi-per-bo-lee), or just Hyperbole, is an
+amazing, programmable hypertextual information management system
+implemented as a GNU Emacs package and extensively documented. Hyperbole
+has been greatly expanded and updated for use with the latest Emacs 26
+releases; it supports GNU Emacs 24.4 or above.
- 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's first letter; use {q}
- to quit from the menu.
+Hyperbole can boost your day-to-day productivity with Emacs and your
+ability to manage information stored across many different machines on the
+internet. People who get used to Hyperbole often find they prefer never to
+use Emacs without it.
- use a specific Hyperbole command such as an Action Key click {M-RET} on
- a pathname to display the associated file or directory.
+Hyperbole includes its own easy-to-use hypertextual buttons and links that
+can be created without the need for any markup language.
-Use {C-h h d d} for an interactive demonstration of standard Hyperbole
-button capabilities.
+It also comes out-of-the-box with:
-{C-h h k e} offers an interactive demonstration of the Koutliner,
-Hyperbole's multi-level autonumbered hypertextual outliner.
+ - a hierarchical, record-based contact manager
-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'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.
+ - a rapid window and frame control system
-The above are the best interactive ways to learn about Hyperbole. The
-Hyperbole Manual is a reference manual, not a simple introduction. It is
-included in the "man/" subdirectory of the Hyperbole package directory in
-four forms:
+ - a powerful multi-level auto-numbered outliner
-"man/hyperbole.info" - online Info browser version
-"man/hyperbole.html" - web HTML version
-"man/hyperbole.pdf" - printable version
-"man/hyperbole.texi" - source form
+ - and two very smart context-dependent mouse and keyboard keys that
+ simplify operations in many editing and browsing modes. All features
+ are aimed at making textual information management and display fast and
+ easy.
-The Hyperbole package installation places the Info version of this manual
-where needed and adds an entry for Hyperbole into the Info directory under
-the Emacs category. {C-h h d i} will let you browse the manual. For web
-browsing, point your browser at "${hyperb:dir}/man/hyperbole.html",
-wherever the Hyperbole package directory is on your system; often this is:
-"~/.emacs.d/elpa/hyperbole-${hyperb:version}/".
+Bob Weiner designed and programmed GNU Hyperbole. He and Mats Lidell
+maintain it with the Free Software Foundation. It includes an interactive
+demo to introduce you to its features as well as a detailed reference manual,
+as explained here:
-===========================================================================
-* Ftp and Git Repository Downloads
-===========================================================================
+ https://www.gnu.org/software/hyperbole/hyperbole.html#invocation-and-doc
-To inspect the Hyperbole source code online rather than installing it for
-use (which will also give you the source code), open a web page to:
+----
- https://git.savannah.gnu.org/cgit/hyperbole.git/tree/
+Please give Hyperbole a try. It's free, man. It adapts to your needs.
+It connects everything. It rewires your brain. It speeds your web
+searches for `carpal tunnel syndrome'. It makes you feel like the
+sun is out on a gray winter day :-)
-Alternatively, you may download a tar.gz source archive from either:
+But wait, there's more and this part is serious. For a limited time,
+to encourage use and feedback, the first 30 people who try out the
+Hyperbole DEMO or read the Hyperbole Manual and send a few thoughtful
+sentences to <rsw at gnu dot org> will receive either of their choice of
+the following as yet unpublished single file Emacs Lisp libraries:
- ftp://ftp.gnu.org/gnu/hyperbole/
+;; rsw-linecol.el: User-editable mode-line column and line number display
formats
+;;
+;; GNU Emacs buries the formatting of mode-line line and column
+;; numbers in a way that makes it virtually impossible for a user
+;; to change this formatting. This library fixes that with a new
+;; variable which may be modified to instantly alter the mode-line
+;; column and line number display.
or
- http://ftpmirror.gnu.org/hyperbole/
-
-which will find the closest mirror of the GNU ftp site and show it to you.
-
-If you want to follow along with Hyperbole development and maintain a
-copy/clone of the current version-controlled git tree, use a
-command listed here: "https://savannah.gnu.org/git/?group=hyperbole"
-to clone the Hyperbole project tree.
-
-===========================================================================
-* User Quotes
-===========================================================================
-
-
- *** MAN I love Hyperbole!!! Wow! ***
-
- -- Ken Olstad
- Cheyenne Software, Inc.
-
--------
-
- I *love* koutlines.
-
- -- Bob Glickstein
- Z-Code Software Corporation
-
--------
-
- 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
- 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
- --I am able to maintain focus on the task I am working on and complete it
- more quickly. With its gestural interface, seamless integration with other
- Emacs packages and incredibly useful set of core features. I think that
- Hyperbole is one of the best designed and most easily extensible software
- products I have ever come across. It is certainly the one which has made
- the biggest improvement in my personal productivity.
-
- -- Chris Nuzum
- Co-founder, Traction Software, Inc.
-
--------
-
- I've found Hyperbole (in conjunction with XEmacs) to be very useful
- for signal processing algorithm development.
-
- 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'
- 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
- our internal web for others to see.
-
- -- Farzin Guilak
- Protocol Systems, Inc., Engineer
-
--------
-
- I am blind and have been using Hyperbole since 1992. I used to use a PC as
- a talking terminal attached to a UNIX system, but then I developed
- Emacspeak which lets me use Emacs and Hyperbole from standard UNIX
- workstations with an attached voice synthesizer.
-
- My main uses are:
- 1) Global and implicit buttons for jumping to ftp sites.
- 2) The contact manager with Emacspeak support.
- 3) 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.
- 4) The Hyperbole Koutliner, which I find a very useful tool. I've
- implemented Emacspeak extensions to support it.
-
- -- TV Raman
- Google Inc.
-
--------
-
- I've been a grateful Hyperbole user for a few years now. Hyperbole's
- flexibility and ease of use is a marvel.
-
- Mainly, I write easy little implicit button types (and corresponding action
- types) to make my life easier. For example, I have an implicit button type
- to bury certain buffers when I click at their bottoms, one that recognizes
- 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'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.
-
- Other than that, I keep a global button file with 30 or so explicit buttons
- that do various little things, and I index saved mail messages by putting
- explicit link-to-mail buttons in an outline file.
-
- -- Ken Olstad
- Cheyenne Software, Inc.
-
--------
-
- In general, Hyperbole is an embeddable, highly extensible hypertext
- tool. As such, I find it very useful. As it stands now, Hyperbole is
- particularly helpful for organizing ill-structured or loosely coupled
- information, in part because there are few tools geared for this purpose.
- Hyperbole also possesses a lot of potential in supporting a wider
- spectrum of structuredness, ranging from unstructured to highly
- structured environments, as well as structural changes over time.
-
- Major Uses:
-
- * Menu interface to our own collaborative support environment called
- CoReView: This interface brings together all top-level user commands
- into a single partitioned screen, and allows the end user to interact
- with the system using simple mouse-clicking instead of the meta-x key.
-
- * Gateway to internet resources: this includes links to major Internet
- archive sites of various types of information. Links are made at both
- directory and file levels.
-
- * Alternative directory organizer: The hierarchical nature of the Unix
- file system sometimes makes it difficult to find things quickly and
- easily using directory navigational tools such as dired. Hyperbole
- enables me to create various "profile" views of my directory tree, with
- entries in these views referring to files anywhere in the hierarchy.
-
- * Organizing and viewing online documentation: using Hyperbole along with
- Hyper-man and Info makes it truly easy to look up online documentation.
-
- * Other desktop organization tasks: including links to various mail
- folders, saved newsgroup conversation threads, online note-taker,
- emacs-command invocations, etc.
-
- -- Dadong Wan
- University of Hawaii
-
--------
-
- 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
- assumes the full power of Emacs. Being able to send email with buttons
- in it is a very powerful capability. Using ange-ftp mode, one can make
- file references "across the world" as easily as normal file references.
-
- -- Mark Eichin
- Cygnus Support
--------
-
- I just wanted to say how much I enjoy using the Hyperbole Koutliner.
- It is a great way to quickly construct very readable technical documents
- that I can pass around to others. Thanks for the great work.
-
- -- Jeff Fried
- Informix
+;; rsw-chrome-macos.el: Open a URL or file in Google Chrome and reuse an
existing
+;; tab/window if already displayed.
+;;
+;; This library resolves the many problems of sending URLs to Google Chrome
+;; on MacOS. It properly sends # hash in-file links (these are
+;; typically stripped when Chrome is called as a MacOS application).
+;; It reuses any tab already displaying any matching URL that is sent
+;; and it does this even if the ultimately displayed URL goes through
+;; several redirects before display.
--------
+Enjoy,
- The Hyperbole system provides a nice interface to exploring corners of
- Unix that I didn't know existed before.
+Bob and Mats
- -- Craig Smith
--- The End --
diff --git a/HY-ANNOUNCE-SHORT b/HY-ANNOUNCE-SHORT
deleted file mode 100644
index 878c83d..0000000
--- a/HY-ANNOUNCE-SHORT
+++ /dev/null
@@ -1,24 +0,0 @@
-To: address@hidden, address@hidden, address@hidden
-ANNOUNCE: GNU Hyperbole 6.0.2g is released for Emacs 24.4 and above
-
-For information on what GNU Hyperbole is, screenshots, download and
-installation instructions, see the GNU Hyperbole home page:
-
- https://www.gnu.org/software/hyperbole
-
-The Hyperbole wiki page:
-
- https://www.emacswiki.org/emacs/Hyperbole
-
-explains the many ways it differs from and is complementary to Org mode.
-
-Hyperbole includes an interactive demo to introduce you to its features and a
-detailed reference manual.
-
-===========================================================================
-* What's New in GNU Hyperbole V6.0.2g
-===========================================================================
-
-See "https://git.savannah.gnu.org/cgit/hyperbole.git/tree/HY-NEWS".
-
--- The End --
diff --git a/HY-NEWS b/HY-NEWS
index 1524f30..44b430b 100644
--- a/HY-NEWS
+++ b/HY-NEWS
@@ -2,13 +2,29 @@
by Bob Weiner
===========================================================================
-* V6.0.2g
+* V7.0.0
===========================================================================
(See the "Changes" file for even more details of changes).
BUTTONS AND SMART (ACTION AND ASSIST) KEYS
+ - Git References: New implicit button and action type with a compact syntax
+ that displays many types of git entities, e.g. git#commit/55a1f0. Such
+ references work across all git repositories on your local disks.
+
+ See "DEMO#Git (Local) References" or the commentary at the top of the
+ "hib-social.el" file for extensive examples of these references. {C-h
+ f git-reference RET} explains its syntax.
+
+ - Github References: New implicit button and action type with a compact
+ syntax that displays many types of github entities,
+ e.g. gh#emacs-helm/helm/1878, displays issue #1878 for user emacs-helm
+ and project helm. See "DEMO#Github (Remote) References" or the
+ commentary at the top of the "hib-social.el" file for extensive
+ examples of these references. {C-h f github-reference RET} explains
+ its syntax.
+
- Extensive new support for cross-window and cross-frame drags of the
Action and Assist Mouse Keys. See "DEMO#Smart Mouse Keys" and the Info
manual section, "(hyperbole)Smart Mouse Key Drags" for details. These
@@ -45,7 +61,7 @@
Smart Key action handling at least 1/3 of a second in a number of
cases.
- {}-delimited Key Sequence Implicit Buttons have been greatly expanded.
- An Action Key press on the following, all execute the associated
commands:
+ An Action Key press on any of the following execute the associated
commands:
{M-x occur RET} - M-x extended commands
{M-x apropos RET hyperbole RET} - commands with arguments
{C-x 2 C-x 3} - sequences of commands
@@ -53,7 +69,7 @@
- Pathname Environment Variables: Implicit Buttons may contain environment
variables such as "${PATH}/python" and Hyperbole resolves them to the
- first matching directory with an Action Key press.
+ first matching directory when activated.
- Compressed Elisp: Quoted, compressed Emacs Lisp source file names without
any path now work as implicit buttons that display the source file, with
@@ -95,22 +111,6 @@
explicit buttons are highlighted with a special colored face or not. By
default, they are.
- - Git References: New implicit button and action type with a compact syntax
- that displays many types of git entities, e.g. git#commit/55a1f0. Such
- references work across all git repositories on your local disks.
-
- See "DEMO#Git (Local) References" or the commentary at the top of the
- "hib-social.el" file for extensive examples of these references. {C-h
- f git-reference RET} explains its syntax.
-
- - Github References: New implicit button and action type with a compact
- syntax that displays many types of github entities,
- e.g. gh#emacs-helm/helm/1878, displays issue #1878 for user emacs-helm
- and project helm. See "DEMO#Github (Remote) References" or the
- commentary at the top of the "hib-social.el" file for extensive
- examples of these references. {C-h f github-reference RET} explains
- its syntax.
-
- Python PDB Backtraces: Action Key presses jump to the associated source
line.
@@ -155,8 +155,13 @@
DOCUMENTATION
+ - Why Use Hyperbole: "HY-WHY.kotl" lists use cases for Hyperbole with
+ hyperlinks to associated "DEMO" sections for each. View this via
+ the minibuffer menu with {C-h h d w} or via the `Why-Use?' Hyperbole
+ menubar menu entry.
+
- Hyperbole HTML Manual: The HTML version of the Hyperbole Manual now uses
- css stylesheet similar to that used for the Hyperbole Home page, making
+ the same css stylesheet as used for the Hyperbole Home page, making
it look much better and easier to navigate.
- Drags: Updated Hyperbole Manual with all new Smart Mouse Key drag
actions.
@@ -194,6 +199,7 @@
* Using URLs with Find-File: Added URL browser customization menu
reference and image.
- New DEMO File Sections:
+ * Table of Contents Browsing
* Dragging Buffers, Windows and Items
* HyControl Frame Commands and Windows Grid subsections
* HyRolo
diff --git a/HY-WHY.kotl b/HY-WHY.kotl
index ad71656..4ba7036 100644
--- a/HY-WHY.kotl
+++ b/HY-WHY.kotl
@@ -2,80 +2,107 @@
"Kotl-4.0" ;; file-format
1. Create a library of documents, link them on-the-fly and retrieve
- any one at the touch of a button containing its short id.
+ any one at the touch of a button containing its short id. See
+ "hib-doc-id.el". (Use the Action Key to activate any
+ cross-reference herein).
- 2. Utilize a single key to follow URLs with section links, Markdown
+ 2. Action Key click to follow URLs with section links, Markdown
links, Emacs outline heading links, Org mode links, file and
directory links and program identifier references.
+ See "DEMO#HTML Markdown and Emacs Outline Hash Links".
- 3. Display and edit local or remote files and directories simply by
+ 3. Random access to sections of a Table of Contents in DEMO, README
+ and TUTORIAL files as well as Internet RFCs. Entries in a
+ code library MANIFEST file work the same way. See "DEMO#Table
+ of Contents Browsing".
+
+ 4. Display and edit local or remote files and directories simply by
pressing on their names. Hyperbole will automatically embed
certain key variables in link pathnames so that as these links
are moved from site to site and the variable values change at
- each site, the links automatically maintain proper linkages.
+ each site, the links maintained properly. See "DEMO#Path
+ Suffixes and Variables" and "DEMO#Path Prefixes".
+
+ 5. Quickly search the web for targeted types of information such as
+ programming questions, code libraries, images, videos,
+ locations, word definitions, wikipedia entries or even tweets.
+ See "DEMO#Hyperbole Menus".
+
+ 6. Embed social media hashtags and user names in any text files.
+ Then jump to the associated web page in your favorite web
+ browser with an Action Key press. See "DEMO#Social Media
+ Hashtags and Usernames".
+
+ 7. Similarly, you can embed github and git object links in any
+ files with a simple syntax and Hyperbole will display the
+ associated objects with an Action Key press. See "DEMO#Github
+ (Remote) References" and "DEMO#Git (Local) References".
- 4. Full-text search for any contact-related information across
+ 8. Full-text search for any contact-related information across
thousands of contacts in under a second. The fastest contact
manager you have ever used, with hierarchical entries so you can
easily find everyone on a particular team or within an
organization. Then collapse all matches to a single line each
while still seeing name, phone number and email information.
- Edit entries with a single key press.
+ Edit entries with a single key press. See "DEMO#HyRolo".
- 5. Hyperbole has some radically cool ways to select regions of
- structured text or source code and to copy or move them between
- buffers with a single mouse drag or two key presses. These
- selectable things include: delimited pairs of (), @address@hidden, <>, []
- and quote marks, source code functions, source code comments and
- matching tag pairs in HTML and SGML modes.
+ 9. Select regions of structured text or source code and to copy or
+ move them between buffers with a single mouse drag or two key
+ presses. These selectable things include: delimited pairs of
+ (), @address@hidden, <>, [] and quote marks, source code functions,
source
+ code comments and matching tag pairs in HTML and SGML modes.
+ See "DEMO#Thing Selection".
- 6. Use the fantastic, auto-numbered Koutliner with per-item links
- and rapidly changeable views.
+ 10. Use the fantastic, auto-numbered Koutliner with per-item links
+ and rapidly changeable views. See "DEMO#Koutliner".
- 7. Rapid control over what is displayed where in multiple windows
+ 11. Rapid control over what is displayed where in multiple windows
and frames with mouse drags and the Hyperbole HyControl system.
+ See "DEMO#HyControl".
- 7a. Drag Buffer Menu or Dired items to other windows to display
+ 11a. Drag Buffer Menu or Dired items to other windows to display
them wherever you want. Drag-and-drop text regions across
- Emacs frames.
+ Emacs frames. See "DEMO#Displaying File and Buffer Items".
- 7b. Swap buffers in windows across frames with a mouse drag.
+ 11b. Swap buffers in windows across frames with a mouse drag.
+ See "DEMO#Swapping Buffers".
- 7c. With one command, rapidly create a grid of tiled windows
+ 11c. With one command, rapidly create a grid of tiled windows
displaying either selected buffers, buffers with a specific
major mode or the most recently used buffer list, e.g.
{63 C-c @} creates 6 rows, each with 3 columns of windows (18
total) and displays the first 18 buffers in them when in a
HyControl mode. You can mark buffers, files and directories
in the Buffer menu, iBuffer and Dired modes and then use the
- same above command to display them in a grid of windows.
-
- 7c. Use a quick mouse key press to scroll any window line to the
+ same above command to display them in a grid of windows. See
+ "DEMO#Windows Grid".
+
+ 11d. Use a quick mouse key press to scroll any window line to the
top or bottom of a window, to see exactly what you want on
- screen.
+ screen. See "DEMO#Smart Scrolling".
- 7d. Clone or tear off a window into its own frame with a quick
- mouse drag.
+ 11e. Clone or tear off a window into its own frame with a quick
+ mouse drag. See "DEMO#Cloning Windows".
- 7e. Each frame can store a series of window configurations
+ 11f. Each frame can store a series of window configurations
(layouts) which support working with sets of buffers and
- rapidly moving among them.
-
- 7f. Easily adjust the height and width of windows as needed.
+ rapidly moving among them. See "DEMO#Window Configuration
+ Drags".
+
+ 11g. Easily adjust the height and width of windows and frames as
+ needed. See "DEMO#Frame Commands".
- 7f. Quick clicks on different areas of a buffer's modeline will
+ 11h. Quick clicks on different areas of a buffer's modeline will
rotate through your working list of buffers, changing what
each window displays. A popup menu gives you quick access to
Hyperbole commands plus frame, window and buffer selection
and management commands. GNU documentation manuals may be
- shown and navigated with a single mouse key.
-
- 7g. A single mouse drag swaps what is displayed in each of two
- windows, even across frames.
+ shown and navigated with a single mouse key. See
+ "DEMO#Buffer Menu and Screen Control".
"ben" ;; kvspec:current
-23 ;; id-counter
+36 ;; id-counter
alpha ;; label-type
4 ;; label-min-width
". " ;; label-separator
@@ -83,13 +110,21 @@ alpha ;; label-type
;; depth-first kcell attributes
[[0
- (creator "address@hidden" create-time "20171108:01:14:52" id-counter 23 file
"/Users/bk/Dropbox/emacs/hyperbole/HY-WHY.kotl")]
+ (creator "address@hidden" create-time "20171114:17:51:59" id-counter 36 file
"/Users/bk/sw-dev/emacs/hyperbole/HY-WHY.kotl")]
[1
(creator "address@hidden" create-time "20160524:15:04:17" no-fill t)]
[17
(creator "address@hidden" create-time "20160809:03:31:21" no-fill t)]
+ [36
+ (creator "address@hidden" create-time "20171114:23:37:20" no-fill t)]
[2
(creator "address@hidden" create-time "20160524:15:04:24" no-fill t)]
+ [31
+ (creator "address@hidden" create-time "20171114:23:18:01" no-fill t)]
+ [33
+ (creator "address@hidden" create-time "20171114:23:24:51" no-fill t)]
+ [34
+ (creator "address@hidden" create-time "20171114:23:24:57" no-fill t)]
[9
(creator "address@hidden" create-time "20160530:15:05:18" no-fill t)]
[16
@@ -104,12 +139,14 @@ alpha ;; label-type
(creator "address@hidden" create-time "20171108:01:15:39" no-fill t)]
[22
(creator "address@hidden" create-time "20171024:13:41:50" no-fill t)]
+ [32
+ (idstamp 22 creator "address@hidden" create-time "20171024:13:41:50" no-fill
t)]
[15
(creator "address@hidden" create-time "20160613:15:05:40" no-fill t)]
[21
(creator "address@hidden" create-time "20171019:22:09:06" no-fill t)]
+ [30
+ (creator "address@hidden" create-time "20171114:21:36:09" no-fill t)]
[8
(creator "address@hidden" create-time "20160526:02:56:59" no-fill t)]
- [10
- (creator "address@hidden" create-time "20160530:15:10:18" no-fill t)]
- nil nil nil nil nil nil nil nil nil]
+ nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil]
diff --git a/MANIFEST b/MANIFEST
index 438bca8..aed31f7 100644
--- a/MANIFEST
+++ b/MANIFEST
@@ -29,7 +29,7 @@ man/hkey-help.txt - Summarizes Smart Key behaviors in
different contexts
hmouse-info.el - Walks through Info networks using one key
hmouse-drv.el - Smart Key/Mouse driver functions
hmouse-key.el - Setup Smart Key mouse bindings
-hmouse-mod.el - Action Key acts as CONTROL modifier and Assist Key as
META modifier (Optional)
+hmouse-mod.el - Action Key acts as CONTROL modifier and Assist Key as
META modifier (Unused)
hmouse-sh.el - System-dependent Smart Mouse Key bindings
hmouse-tag.el - Smart Key support of programming language tags location
hycontrol.el - Interactive sizing, moving, replicating and deleting of
windows and frames
diff --git a/Makefile b/Makefile
index 8324b99..7a95c1a 100644
--- a/Makefile
+++ b/Makefile
@@ -32,7 +32,7 @@
# USAGE: For those installing GNU Hyperbole, use:
# make help
#
-# To build only the output formats of the Hyperbole manual:
+# To build only the output formats of the Hyperbole MANUAL:
# make doc
#
# To assemble a Hyperbole Emacs package for testing:
@@ -54,7 +54,7 @@
# This ver setup won't work under any make except GNU make, so set it manually.
#HYPB_VERSION = "`head -3 hversion.el | tail -1 | sed -e 's/.*|\(.*\)|.*/\1/'`"
-HYPB_VERSION = 6.0.2g
+HYPB_VERSION = 7.0.0
# Emacs executable used to byte-compile .el files into .elc's.
# Possibilities include: emacs, infodock, xemacs, etc.
@@ -250,7 +250,7 @@ TAGS: $(EL_TAGS)
version: doc
@ echo ""
@ echo "Any fgrep output means the version number has not been updated
in that file."
- fgrep -L $(HYPB_VERSION) Makefile HY-ABOUT HY-ANNOUNCE
HY-ANNOUNCE-SHORT HY-NEWS README.md hversion.el hyperbole.el hyperbole-pkg.el
man/hyperbole.texi man/version.texi
+ fgrep -L $(HYPB_VERSION) Makefile HY-ABOUT HY-NEWS README.md
hversion.el hyperbole.el hyperbole-pkg.el man/hyperbole.texi man/version.texi
@ echo ""
# Build the Info, HTML and Postscript versions of the user manual and
README.md.html.
@@ -318,19 +318,21 @@ $(pkg_dir)/hyperbole-$(HYPB_VERSION).tar.sig:
$(pkg_dir)/hyperbole-$(HYPB_VERSIO
$(pkg_dir)/hyperbole-$(HYPB_VERSION).tar: $(HYPERBOLE_FILES)
make version
- $(RM) -r $(pkg_hyperbole)
+ cd $(pkg_dir) && $(RM) -fr $(pkg_hyperbole)
$(pkg_hyperbole)-$(HYPB_VERSION)
cd .. && COPYFILE_DISABLE=1 $(TAR) -clf $(pkg_dir)/h.tar hyperbole
cd $(pkg_dir) && COPYFILE_DISABLE=1 $(TAR) xf h.tar && cd
$(pkg_hyperbole) && $(MAKE) packageclean
cd $(pkg_hyperbole) && make kotl/kotl-autoloads.el && chmod 755
topwin.py && \
cd $(pkg_dir) && $(RM) h.tar; \
- COPYFILE_DISABLE=1 $(TAR) -clf
$(pkg_dir)/hyperbole-$(HYPB_VERSION).tar hyperbole
+ mv $(pkg_hyperbole) $(pkg_hyperbole)-$(HYPB_VERSION) && \
+ COPYFILE_DISABLE=1 $(TAR) -clf
$(pkg_dir)/hyperbole-$(HYPB_VERSION).tar hyperbole-$(HYPB_VERSION)
$(INSTALL) HY-ABOUT HY-ANNOUNCE HY-NEWS HY-WHY.kotl INSTALL README
$(pkg_dir)/; chmod 644 $(pkg_dir)/*.tar
pkgclean: packageclean
packageclean:
if [ -d $(pkg_hyperbole) ]; then \
- cd $(pkg_hyperbole) && $(RM) -r .git* videos ChangeLog.* *autoloads.*
*.elc TAGS TODO* .DS_Store \
- core .place* ._* .*~ *~ *\# *- *.orig *.rej .nfs* CVS .cvsignore
GNUmakefile.id; fi
+ cd $(pkg_hyperbole) && $(RM) -r .git* videos ChangeLog.* *autoloads.*
*.elc TAGS TODO* HY-ANNOUNCE-* .DS_Store \
+ core .place* ._* .*~ *~ *\# *- *.orig *.rej .nfs* CVS .cvsignore
GNUmakefile.id \
+ && gsed '/\f/,/\f/{/\f/!d}' .hypb | tail +2 > .hypb2 && rm -f .hypb
&& mv .hypb2 .hypb; fi # Filter out unneeded TODO file hbut data from .hypb
if [ -d $(pkg_hyperbole)/kotl ]; then \
cd $(pkg_hyperbole)/kotl && $(RM) -r *autoloads.* *.elc TAGS TODO*
.DS_Store \
core .place* ._* .*~ *~ *\# *- *.orig *.rej .nfs* CVS .cvsignore; fi
diff --git a/README.md b/README.md
index 7cd42b1..b424475 100644
--- a/README.md
+++ b/README.md
@@ -1,4 +1,4 @@
-# GNU Hyperbole 6.0.2g - The Everyday Hypertextual Information Manager
+# GNU Hyperbole 7.0.0 - The Everyday Hypertextual Information Manager
<!-- START doctoc generated TOC -->
**Table of Contents**
diff --git a/README.md.html b/README.md.html
index e1cfbbf..edec72a 100644
--- a/README.md.html
+++ b/README.md.html
@@ -1,5 +1,5 @@
<h1>
-<a
id="user-content-gnu-hyperbole-602g---the-everyday-hypertextual-information-manager"
class="anchor"
href="#gnu-hyperbole-602g---the-everyday-hypertextual-information-manager"
aria-hidden="true"><span aria-hidden="true" class="octicon
octicon-link"></span></a>GNU Hyperbole 6.0.2g - The Everyday Hypertextual
Information Manager</h1>
+<a
id="user-content-gnu-hyperbole-700---the-everyday-hypertextual-information-manager"
class="anchor"
href="#gnu-hyperbole-700---the-everyday-hypertextual-information-manager"
aria-hidden="true"><span aria-hidden="true" class="octicon
octicon-link"></span></a>GNU Hyperbole 7.0.0 - The Everyday Hypertextual
Information Manager</h1>
<p><strong>Table of Contents</strong></p>
<ul>
diff --git a/_hypb b/_hypb
index 58ad652..a3c7217 100644
Binary files a/_hypb and b/_hypb differ
diff --git a/hact.el b/hact.el
index 93b82a6..67e79da 100644
--- a/hact.el
+++ b/hact.el
@@ -212,8 +212,8 @@ When optional SYM is given, returns the name for that
symbol only, if any."
((and (autoloadp def) (not (eq (nth 4 def) 'keymap)))
;; Force autoload to get function signature.
(setq def (autoload-do-load def))
- (if (not autoloadp def)
- (action:params-emacs def)))))
+ (unless (autoloadp def)
+ (action:params-emacs def)))))
(defun action:params (action)
"Returns unmodified ACTION parameter list.
diff --git a/hactypes.el b/hactypes.el
index fc007b8..7145949 100644
--- a/hactypes.el
+++ b/hactypes.el
@@ -498,10 +498,11 @@ Optional OPOINT is point to return to in BUF-NAME after
displaying summary."
(t (if opoint (goto-char opoint))
(hypb:error "(rfc-toc): Invalid buffer name: %s" buf-name))))
(let ((sect-regexp "^[ \t]*[1-9][0-9]*\\.[0-9.]*[ \t]+[^ \t\n\r]")
- (temp-buffer-show-function 'switch-to-buffer))
+ (temp-buffer-show-function 'switch-to-buffer)
+ occur-buffer)
(hpath:display-buffer (current-buffer))
(occur sect-regexp)
- (set-buffer "*Occur*")
+ (setq occur-buffer (set-buffer "*Occur*"))
(rename-buffer (format "*%s toc*" buf-name))
(re-search-forward "^[ ]*[0-9]+:" nil t)
(beginning-of-line)
diff --git a/hbut.el b/hbut.el
index bc07b95..8198af7 100644
--- a/hbut.el
+++ b/hbut.el
@@ -255,7 +255,7 @@ represent the output of particular document formatters."
pos (1+ pos)))
lbl)))
-(defun ebut:label-p (&optional as-label start-delim end-delim pos-flag
one-line-flag)
+(defun ebut:label-p (&optional as-label start-delim end-delim pos-flag
two-lines-flag)
"Returns key for Hyperbole button label that point is within.
Returns nil if not within a label. Assumes point is within first line
of button label, if at all.
@@ -264,7 +264,7 @@ is returned rather than the key derived from the label.
START-DELIM
and END-DELIM are strings that override default button delimiters.
With POS-FLAG non-nil, returns list of label-or-key,
but-start-position, but-end-position. Positions include delimiters.
-With ONE-LINE-FLAG non-nil, constrains label search to a single line."
+With TWO-LINES-FLAG non-nil, constrains label search to two lines."
(let ((opoint (point))
(npoint)
(quoted "\\(^\\|[^\\{]\\)")
@@ -297,10 +297,10 @@ With ONE-LINE-FLAG non-nil, constrains label search to a
single line."
(forward-char -2))
(error (goto-char (1- opoint))))
(goto-char (1- opoint)))
- (if one-line-flag
- (save-excursion
- (end-of-line)
- (setq ebut:max-len (- (point) start))))
+ (when two-lines-flag
+ (save-excursion
+ (forward-line 2)
+ (setq ebut:max-len (- (point) start))))
(and (< (point) (+ start ebut:max-len))
(re-search-forward (concat quoted (regexp-quote end-delim))
(+ start ebut:max-len) t)
diff --git a/hib-kbd.el b/hib-kbd.el
index 2b19913..339930a 100644
--- a/hib-kbd.el
+++ b/hib-kbd.el
@@ -239,7 +239,8 @@ Allows for multiple key sequences strung together."
(let ((regexp (format "\\(%s\\S-*\\)\\s-\\(.*%s\\)"
start-delim end-delim))
(start 0)
- (end))
+ (end)
+ (substring))
(while (string-match regexp string start)
(setq start (match-beginning 0)
end (match-end 0)
diff --git a/hibtypes.el b/hibtypes.el
index f5e0974..c908cc5 100644
--- a/hibtypes.el
+++ b/hibtypes.el
@@ -311,7 +311,7 @@ must have an attached file."
(cond ((markdown-link-p)
(condition-case ()
;; Follows a reference link to its referent.
- (progn (markdown-jump)
+ (progn (markdown-do)
(when (/= opoint (point))
(setq npoint (point))
(goto-char opoint)
@@ -498,14 +498,14 @@ http://cscope.sf.net. Otherwise, does nothing."
(defib text-toc ()
"Jumps to the text file section referenced by a table of contents entry at
point.
-File name must contain README and there must be a `Table of Contents' or
-`Contents' label on a line by itself (it may begin with an asterisk),
-preceding the table of contents. Each toc entry must begin with some
-whitespace followed by one or more asterisk characters. Each file section
-name line must start with one or more asterisk characters at the very
-beginning of the line."
+File name must contain DEMO, README or TUTORIAL and there must be a `Table
+of Contents' or `Contents' label on a line by itself (it may begin with
+an asterisk), preceding the table of contents. Each toc entry must begin
+with some whitespace followed by one or more asterisk characters. Each
+file section name line must start with one or more asterisk characters at
+the very beginning of the line."
(let (section)
- (if (and (string-match "README" (buffer-name))
+ (if (and (string-match "DEMO\\|README\\|TUTORIAL" (buffer-name))
(save-excursion
(beginning-of-line)
;; Entry line within a TOC
@@ -932,7 +932,9 @@ GNUS is a news and mail reader."
(defib Info-node ()
"Makes a \"(filename)nodename\" button display the associated Info node.
Also makes a \"(filename)itemname\" button display the associated Info index
item.
-Examples are \"(hyperbole)Implicit Buttons\" and ``(hyperbole)C-c /''."
+Examples are \"(hyperbole)Implicit Buttons\" and ``(hyperbole)C-c /''.
+
+Activates only if point is within the first line of the Info-node name."
(let* ((node-ref-and-pos (or (hbut:label-p t "\"" "\"" t t)
;; Typical GNU Info references; note
;; these are special quote marks, not the
diff --git a/hlvar.el b/hlvar.el
index 7d07754..a6d2eed 100644
--- a/hlvar.el
+++ b/hlvar.el
@@ -44,7 +44,7 @@ for current buffer."
(and (search-forward "Local Variables:" nil t)
(setq local-start (match-beginning 0))
(or (and (not (string-match "^19\\." emacs-version))
- (not inhibit-local-variables))
+ (not (inhibit-local-variables-p)))
force
(if (string-match "^19\\." emacs-version)
(cond ((eq enable-local-variables t) t)
diff --git a/hmouse-drv.el b/hmouse-drv.el
index 902d4fe..cccc888 100644
--- a/hmouse-drv.el
+++ b/hmouse-drv.el
@@ -398,20 +398,20 @@ Return non-nil iff associated help documentation is
found."
"there is no matching context"))
(terpri)
- (mapcar (lambda (c)
- (if (> (length calls) 1)
- ;; Is an 'or' set of calls
- (princ "'OR' "))
- (princ "CALLS ") (princ (if (consp c) c (list c)))
- (when (and (fboundp (setq call (if (consp c) (car
c) c)))
- (setq doc (documentation call)))
- (princ " WHICH")
- (princ (if (string-match
"\\`[a-zA-Z]*[a-rt-zA-RT-Z]+s[ [:punct:]]" doc)
- ":" " WILL:"))
- (terpri) (terpri)
- (princ (replace-regexp-in-string "^" " " doc
nil t))
- (terpri) (terpri)))
- calls)
+ (mapc (lambda (c)
+ (if (> (length calls) 1)
+ ;; Is an 'or' set of calls
+ (princ "'OR' "))
+ (princ "CALLS ") (princ (if (consp c) c (list c)))
+ (when (and (fboundp (setq call (if (consp c) (car
c) c)))
+ (setq doc (documentation call)))
+ (princ " WHICH")
+ (princ (if (string-match
"\\`[a-zA-Z]*[a-rt-zA-RT-Z]+s[ [:punct:]]" doc)
+ ":" " WILL:"))
+ (terpri) (terpri)
+ (princ (replace-regexp-in-string "^" " " doc nil
t))
+ (terpri) (terpri)))
+ calls)
(when (memq cmd-sym '(hui:hbut-act hui:hbut-help))
(princ (format "BUTTON SPECIFICS:\n\n%s\n"
@@ -776,7 +776,7 @@ compute the actual release location and include that."
(not (= (length event) 3)))
event
(let ((pos (event-end event))
- coords window-and-char-coords)
+ coords window window-and-char-coords)
(when (and ev-type-str (string-match "drag-mouse" ev-type-str)
;; end of drag event; If drag crossed frames, the location
;; will contain the frame of the depress point and
diff --git a/hpath.el b/hpath.el
index a67413e..d26678d 100644
--- a/hpath.el
+++ b/hpath.el
@@ -945,6 +945,7 @@ See the documentation of the `hpath:rfc' variable."
(defun hpath:substitute-value (path)
"Substitutes matching value for Emacs Lisp variables and environment
variables in PATH and returns PATH."
+ ;; Uses free variables `match' and `start' from `hypb:replace-match-string'.
(substitute-in-file-name
(hypb:replace-match-string
"\\$\{[^\}]+}"
@@ -1072,21 +1073,20 @@ to it."
;; available.
(defun hpath:handle-urls ()
(let ((remote-fs-package (hpath:remote-available-p)))
- (progn
- ;; www-url functions are defined in "hsys-www.el".
- (put 'expand-file-name remote-fs-package 'www-url-expand-file-name)
- (put 'find-file-noselect remote-fs-package
'www-url-find-file-noselect)
- ;; Necessary since Dired overrides other file-name-handler-alist
- ;; settings.
- (put 'expand-file-name 'dired 'www-url-expand-file-name)
- (put 'find-file-noselect 'dired 'www-url-find-file-noselect)
+ ;; www-url functions are defined in "hsys-www.el".
+ (put 'expand-file-name remote-fs-package 'www-url-expand-file-name)
+ (put 'find-file-noselect remote-fs-package 'www-url-find-file-noselect)
+ ;; Necessary since Dired overrides other file-name-handler-alist
+ ;; settings.
+ (put 'expand-file-name 'dired 'www-url-expand-file-name)
+ (put 'find-file-noselect 'dired 'www-url-find-file-noselect)
- (if (not (fboundp 'hyperb:substitute-in-file-name))
- (progn
+ (unless (fboundp 'hyperb:substitute-in-file-name)
+ (progn
;; Overload `substitute-in-file-name' to eliminate truncation of URL prefixes
;; such as http://.
-(or (fboundp 'hyperb:substitute-in-file-name)
+(unless (fboundp 'hyperb:substitute-in-file-name)
(defalias 'hyperb:substitute-in-file-name
(symbol-function 'substitute-in-file-name)))
@@ -1102,7 +1102,7 @@ If `/~' appears, all of FILENAME through that `/' is
discarded."
filename)
(substring filename (match-beginning 2))
(hyperb:substitute-in-file-name filename)))
-)))))
+))))
(defun hpath:enable-find-file-urls ()
"Enable the use of ftp and www Urls as arguments to `find-file' commands."
diff --git a/hui-menu.el b/hui-menu.el
index 4948c24..bf179b4 100644
--- a/hui-menu.el
+++ b/hui-menu.el
@@ -166,11 +166,6 @@ Return t if cutoff, else nil."
;;; Public variables
;;; ************************************************************************
-;; Ensure that this variable is defined to avert any error within
-;; the Customize menu.
-;; (defvar highlight-headers-follow-url-netscape-new-window nil
-;; "*Whether to make Netscape create a new window when a URL is sent to it.")
-
(defconst hui-menu-about
(vector (concat "About-Hyperbole-"
(if (= (aref hyperb:version 0) ?0)
@@ -317,9 +312,11 @@ REBUILD-FLAG is non-nil, in which case the menu is
rebuilt."
;; (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]
+ ["Manual" (id-info "(hyperbole)Top") t]
+ ["What-is-New?" (hypb:display-file-with-logo
+ (expand-file-name "HY-NEWS" hyperb:dir)) t]
+ ["Why-Use?" (find-file
+ (expand-file-name "HY-WHY.kotl"
hyperb:dir)) t]
"----"
["Remove-This-Menu"
(progn
diff --git a/hui-mini.el b/hui-mini.el
index fb93b05..fb6734e 100644
--- a/hui-mini.el
+++ b/hui-mini.el
@@ -548,6 +548,8 @@ constructs. If not given, the top-level Hyperbole menu is
used."
"Summarizes Smart Key mouse or keyboard handling.")
("Types/" (menu . types)
"Provides documentation on Hyperbole types.")
+ ("WhyUse" (find-file (expand-file-name "HY-WHY.kotl"
hyperb:dir))
+ "Lists use cases for Hyperbole Hyperbole.")
))
'(ebut .
(("EButton>")
diff --git a/hui-mouse.el b/hui-mouse.el
index 0a22855..123ca16 100644
--- a/hui-mouse.el
+++ b/hui-mouse.el
@@ -1012,7 +1012,8 @@ Assumes Hyperbole has already checked that helm is
active."
nil)))))
(if hkey-debug
(message "(HyDebug): In smart-helm-assist, key to execute is:
{%s}; binding is: %s"
- (if key (key-description key) "Help" (if key binding
"None"))))))
+ (if key (key-description key) "Help")
+ (if key (key-binding key) "None")))))
(smart-helm-to-minibuffer))
(if key (call-interactively (key-binding (kbd key))))))
diff --git a/hui-window.el b/hui-window.el
index 627e13c..d8dd4ad 100644
--- a/hui-window.el
+++ b/hui-window.el
@@ -607,7 +607,7 @@ Value returned is nil if not a vertical line drag, 'up if
drag moved up or
(hmouse-drag-vertically-within-emacs)))
(defun hmouse-drag-window-side ()
- "Returns non-nil if Action Key was dragged from a window side divider.
+ "Returns non-nil if Action Key was dragged from a window side divider and
released in the same window.
If free variable `assist-flag' is non-nil, uses Assist Key."
(cond ((featurep 'xemacs)
;; Depress events in scrollbars or in non-text area of buffer are
@@ -619,10 +619,11 @@ If free variable `assist-flag' is non-nil, uses Assist
Key."
action-key-depress-args))
(release-args (if assist-flag assist-key-release-args
action-key-release-args))
- (w (smart-window-of-coords depress-args))
- (right-side-ln (and w (1- (nth 2 (window-edges w)))))
- (last-press-x (and depress-args (hmouse-x-coord
depress-args)))
- (last-release-x (and release-args (hmouse-x-coord
release-args))))
+ (wd (smart-window-of-coords depress-args))
+ (wr (smart-window-of-coords release-args))
+ (right-side-ln (and wd (1- (nth 2 (window-edges wd)))))
+ (last-press-x (and wd depress-args (hmouse-x-coord
depress-args)))
+ (last-release-x (and wr release-args (hmouse-x-coord
release-args))))
(and last-press-x last-release-x right-side-ln
(/= last-press-x last-release-x)
(not (<= (abs (- right-side-ln (frame-width))) 5))
diff --git a/hui.el b/hui.el
index fe33f5d..d1e9368 100644
--- a/hui.el
+++ b/hui.el
@@ -91,7 +91,7 @@ label."
(hattr:set 'hbut:current 'action
(and hui:ebut-prompt-for-action (hui:action actype))))
(ebut:operate lbl nil)
- (when (called-interactively-p)
+ (when (called-interactively-p 'interactive)
(hui:ebut-message nil))))
(defun hui:ebut-delete (but-key &optional key-src)
@@ -178,7 +178,7 @@ Signals an error when no such button is found in the
current buffer."
(hattr:set 'hbut:current 'action
(and hui:ebut-prompt-for-action (hui:action actype))))
(ebut:operate lbl new-lbl)
- (if (called-interactively-p)
+ (when (called-interactively-p 'interactive)
(hui:ebut-message t))))
(defun hui:ebut-rename (curr-label new-label)
diff --git a/hversion.el b/hversion.el
index b933e1a..2e0b217 100644
--- a/hversion.el
+++ b/hversion.el
@@ -23,7 +23,7 @@
;;; Public variables
;;; ************************************************************************
-(defconst hyperb:version "6.0.2g" "GNU Hyperbole revision number.")
+(defconst hyperb:version "7.0.0" "GNU Hyperbole revision number.")
;;;###autoload
(defvar hyperb:microcruft-os-p
diff --git a/hycontrol.el b/hycontrol.el
index 0af4097..f4e72dd 100644
--- a/hycontrol.el
+++ b/hycontrol.el
@@ -475,6 +475,8 @@ associated key: quit {q}, abort {C-g}, or toggle {t}.")
(defvar hycontrol--frame-widths-pointer nil)
(defvar hycontrol--frame-heights-pointer nil)
+(defvar hycontrol--buffer-list-pointer nil)
+
(defvar hycontrol--initial-which-key-inhibit nil
"Stores value of `which-key-inhibit' flag from \"which-key\" package upon
entry to HyControl, if any.")
@@ -948,11 +950,12 @@ nothing and return nil."
(defun hycontrol-virtual-numeric-keypad (arg)
(catch 'quit
- (while (and (setq e (read-char hycontrol--vnk-string))
- (not (when (memq e '(?q ?\C-g)) (throw 'quit nil)))
- (or (not (numberp e)) (< e ?0) (> e ?9)))
- (beep))
- (hycontrol-numeric-keypad (- e ?0) arg)))
+ (let (e)
+ (while (and (setq e (read-char hycontrol--vnk-string))
+ (not (when (memq e '(?q ?\C-g)) (throw 'quit nil)))
+ (or (not (numberp e)) (< e ?0) (> e ?9)))
+ (beep))
+ (hycontrol-numeric-keypad (- e ?0) arg))))
(defun hycontrol-frame-to-screen-edges (&optional arg)
"Cycle the selected frame's position clockwise through the middle of edges
and corners of the screen; once per call.
@@ -1002,12 +1005,12 @@ Accepts optional arguments FRAME, X-ORIGIN, and
Y-ORIGIN (in pixels) to use when
(when (> (hycontrol-frame-width frame) max-width)
;; Adjust frame size to fit within screen
(set-frame-width frame (min (hycontrol-frame-width frame) max-width) nil
t)
- (if hycontrol-debug (hycontrol-message hycontrol-debug "(HyDebug):
"Screen (X,Y): %d, %d; Frame Edges (L,T,R,B): %s"
+ (if hycontrol-debug (hycontrol-message hycontrol-debug "(HyDebug):
Screen (X,Y): %d, %d; Frame Edges (L,T,R,B): %s"
(display-pixel-width)
(display-pixel-height) (hycontrol-frame-edges frame))))
(when (> (hycontrol-frame-height frame) max-height)
;; Adjust frame size to fit within screen
(set-frame-height frame (min (hycontrol-frame-height frame) max-height)
nil t)
- (if hycontrol-debug (hycontrol-message hycontrol-debug "(HyDebug):
"Screen (X,Y): %d, %d; Frame Edges (L,T,R,B): %s"
+ (if hycontrol-debug (hycontrol-message hycontrol-debug "(HyDebug):
Screen (X,Y): %d, %d; Frame Edges (L,T,R,B): %s"
(display-pixel-width) (display-pixel-height)
(hycontrol-frame-edges frame))))
;; Ensure entire frame is positioned onscreen, keeping the
;; original frame origin coordinates if possible.
@@ -1016,7 +1019,7 @@ Accepts optional arguments FRAME, X-ORIGIN, and Y-ORIGIN
(in pixels) to use when
(- (display-pixel-width) (hycontrol-frame-width
frame) hycontrol-screen-right-offset))
(min (max 0 y-origin)
(- (display-pixel-height) (hycontrol-frame-height
frame) hycontrol-screen-bottom-offset)))
- (if hycontrol-debug (hycontrol-message hycontrol-debug "(HyDebug): "Screen
(X,Y): %d, %d; Frame Edges (L,T,R,B): %s"
+ (if hycontrol-debug (hycontrol-message hycontrol-debug "(HyDebug): Screen
(X,Y): %d, %d; Frame Edges (L,T,R,B): %s"
(display-pixel-width)
(display-pixel-height) (hycontrol-frame-edges frame)))))
@@ -1369,7 +1372,7 @@ Heights are given in screen percentages by the list
(fg (face-foreground 'mode-line)))
(set-face-foreground 'mode-line bg)
(set-face-background 'mode-line fg))
- (redraw-modeline t)))
+ (force-mode-line-update t)))
(defun hycontrol-windows-grid-buffer-list ()
"Return the existing frame's buffer list with any marked items prepended.
@@ -1700,7 +1703,7 @@ See its documentation for more information."
"Toggle whether HyControl displays key binding help in the minibuffer."
(interactive)
(setq hycontrol-help-flag (not hycontrol-help-flag))
- (unless (and hycontrol-help-flag (called-interactively-p))
+ (unless (and hycontrol-help-flag (called-interactively-p 'interactive))
(message "(HyControl): Minibuffer help is off; use {%s} to turn it on"
(hycontrol-help-key-description))))
diff --git a/hypb.el b/hypb.el
index 16739f7..673bed9 100644
--- a/hypb.el
+++ b/hypb.el
@@ -229,7 +229,7 @@ Global keymap is used unless optional KEYMAP is given."
FILE is temporarily read into a buffer to determine the major mode if
necessary."
(let ((existing-flag (get-file-buffer file))
(buf (find-file-noselect file)))
- (prog1 (if buf (save-excursion (set-buffer buf) major-mode))
+ (prog1 (when buf (save-excursion (set-buffer buf) major-mode))
(unless (or existing-flag (null buf))
(kill-buffer buf)))))
@@ -518,10 +518,9 @@ Otherwise treat \\ in NEWTEXT string as special:
\\\\ means insert one \\.
NEWTEXT may instead be a function of one argument (the string to replace in)
that returns a replacement string."
- (if (not (stringp str))
- (error "(hypb:replace-match-string): 2nd arg must be a string: %s" str))
- (if (or (stringp newtext) (hypb:functionp newtext))
- nil
+ (unless (stringp str)
+ (error "(hypb:replace-match-string): 2nd arg must be a string: %s" str))
+ (unless (or (stringp newtext) (hypb:functionp newtext))
(error "(hypb:replace-match-string): 3rd arg must be a string or function:
%s"
newtext))
(let ((rtn-str "")
diff --git a/hyperbole-pkg.el b/hyperbole-pkg.el
index 77b1daa..8aa4b58 100644
--- a/hyperbole-pkg.el
+++ b/hyperbole-pkg.el
@@ -1,8 +1,8 @@
;; -*- no-byte-compile: t -*-
-(define-package "hyperbole" "6.0.2g" "GNU Hyperbole: The Everyday Hypertextual
Information Manager"
+(define-package "hyperbole" "7.0.0" "GNU Hyperbole: The Everyday Hypertextual
Information Manager"
'((emacs "24.4"))
:url "http://www.gnu.org/software/hyperbole"
:keywords '("comm" "convenience" "files" "frames" "hypermedia" "languages"
"mail" "matching" "mouse" "multimedia" "outlines" "tools" "wp"))
-(setq byte-compile-warnings '(not interactive-p find-tag))
+(setq byte-compile-warnings '(not interactive-only find-tag free-vars
unresolved))
diff --git a/hyperbole.el b/hyperbole.el
index 29cb67d..1a617e2 100644
--- a/hyperbole.el
+++ b/hyperbole.el
@@ -6,7 +6,7 @@
;; Maintainer: Bob Weiner <address@hidden> and Mats Lidell
<address@hidden>
;; Created: 06-Oct-92 at 11:52:51
;; Released: 24-Oct-17
-;; Version: 6.0.2g
+;; Version: 7.0.0
;; Keywords: comm, convenience, files, frames, hypermedia, languages,
mail, matching, mouse, multimedia, outlines, tools, wp
;; Package: hyperbole
;; Package-Requires: ((emacs "24.4"))
diff --git a/hyrolo-demo.el b/hyrolo-demo.el
index 2b218cd..626f372 100644
--- a/hyrolo-demo.el
+++ b/hyrolo-demo.el
@@ -18,6 +18,12 @@
(require 'hyrolo-logic)
;;; ************************************************************************
+;;; Public variables
+;;; ************************************************************************
+
+(defvar hyrolo-demo-save-key nil)
+
+;;; ************************************************************************
;;; Public functions
;;; ************************************************************************
@@ -75,8 +81,8 @@ single argument."
;;; Key Bindings
;;; ************************************************************************
-(defconst hyrolo-demo-save-key (unless (eq (key-binding "\C-x4r")
#'hyrolo-demo-fgrep)
- (key-binding "\C-x4r")))
+(unless (eq (key-binding "\C-x4r") #'hyrolo-demo-fgrep)
+ (setq hyrolo-demo-save-key (key-binding "\C-x4r")))
(global-set-key "\C-x4r" 'hyrolo-demo-fgrep)
diff --git a/hyrolo.el b/hyrolo.el
index 6116271..f8b6fc3 100644
--- a/hyrolo.el
+++ b/hyrolo.el
@@ -876,7 +876,7 @@ Output looks like so:
(hyrolo-kill-buffers-after-use (not (get-buffer
google-contacts-buffer-name))))
(call-interactively (if arg 'hyrolo-fgrep 'hyrolo-grep))
(read-only-mode 0)
- (re-search-forward rolo-entry-regexp nil t)
+ (re-search-forward hyrolo-entry-regexp nil t)
(beginning-of-line)
(set-buffer-modified-p nil)
(read-only-mode 1)))
diff --git a/hywconfig.el b/hywconfig.el
index b05f710..271ed4b 100644
--- a/hywconfig.el
+++ b/hywconfig.el
@@ -82,13 +82,13 @@ NAME, confirms whether or not to replace it."
(error "(hywconfig-add-by-name): `name' argument is not a string: %s"
name))
(let ((set:equal-op (lambda (key elt) (equal key (car elt))))
(wconfig-names (hywconfig-get-names)))
- (if (or (not (called-interactively-p))
+ (if (or (not (called-interactively-p 'interactive))
(not (set:member name wconfig-names))
(y-or-n-p
(format "Replace existing `%s' window configuration: " name)))
(progn (hywconfig-set-names (set:replace name
(current-window-configuration)
wconfig-names))
- (if (called-interactively-p)
+ (if (called-interactively-p 'interactive)
(message
(substitute-command-keys
(format "Window configuration `%s' saved. Use
{\\[hywconfig-restore-by-name]} to restore." name))))))))
@@ -104,7 +104,7 @@ NAME, confirms whether or not to replace it."
(error "(hywconfig-delete-by-name): `name' argument is not a string:
%s" name))
(t (let ((set:equal-op (lambda (key elt) (equal key (car elt)))))
(hywconfig-set-names (set:remove name (hywconfig-get-names)))
- (if (called-interactively-p)
+ (if (called-interactively-p 'interactive)
(message "Window configuration `%s' has been deleted."
name))))))
;;;###autoload
@@ -119,7 +119,7 @@ NAME, confirms whether or not to replace it."
(t (let ((wconfig (set:get name (hywconfig-get-names))))
(if wconfig
(progn (hywconfig-set-window-configuration wconfig)
- (if (called-interactively-p)
+ (if (called-interactively-p 'interactive)
(message "Window configuration `%s' is now active."
name)))
(error "(hywconfig-restore-by-name): No window configuration for
this frame named `%s'" name))))))
@@ -148,7 +148,7 @@ Then deletes this new configuration from the ring."
Use {\\[hywconfig-yank-pop]} to restore it at a later time."
(interactive)
(ring-insert (hywconfig-get-ring) (current-window-configuration))
- (if (called-interactively-p)
+ (if (called-interactively-p 'interactive)
(message
(substitute-command-keys
"Window configuration saved. Use {\\[hywconfig-yank-pop]} to
restore."))))
diff --git a/kotl/kexport.el b/kotl/kexport.el
index dd793e3..1e9dc09 100644
--- a/kotl/kexport.el
+++ b/kotl/kexport.el
@@ -4,7 +4,7 @@
;;
;; Orig-Date: 26-Feb-98
;;
-;; Copyright (C) 1998-2016 Free Software Foundation, Inc.
+;; Copyright (C) 1998-2017 Free Software Foundation, Inc.
;; See the "../HY-COPY" file for license information.
;;
;; This file is part of GNU Hyperbole.
@@ -113,9 +113,9 @@ pattern may be:
;;; ************************************************************************
;;;###autoload
-(defun kexport:html (export-from output-to &optional soft-newlines-p)
+(defun kexport:html (export-from output-to &optional soft-newlines-flag)
"Export a koutline buffer or file in EXPORT-FROM to html format in OUTPUT-TO.
-By default, this retains newlines within cells as they are. With optional
prefix arg, SOFT-NEWLINES-P,
+By default, this retains newlines within cells as they are. With optional
prefix arg, SOFT-NEWLINES-FLAG,
hard newlines are not used. Also converts Urls and Klinks into Html
hyperlinks.
STILL TODO:
Make delimited pathnames into file links (but not if within klinks).
@@ -170,13 +170,13 @@ STILL TODO:
title)))
(princ "<HTML><HEAD>\n\n")
- (princ "<A NAME=\"top\"></A><A NAME=\"0\"></A>\n")
+ (princ "<A ID=\"top\"></A><A ID=\"0\"></A>\n")
(princ (format "<TITLE>%s</TITLE>\n" title))
(if kexport:html-description
- (princ (format "<META NAME=\"description\" CONTENT=\"%s\">\n"
+ (princ (format "<META ID=\"description\" CONTENT=\"%s\">\n"
kexport:html-description)))
(if kexport:html-keywords
- (princ (format "<META NAME=\"keywords\" CONTENT=\"%s\">\n"
+ (princ (format "<META ID=\"keywords\" CONTENT=\"%s\">\n"
kexport:html-keywords)))
(princ "</HEAD>\n\n")
(princ (format "<BODY %s>\n\n" kexport:html-body-attributes))
@@ -196,24 +196,23 @@ STILL TODO:
(setq i (1- i)))
(princ "<TABLE><TR>\n")
(setq label (kcell-view:label))
- (princ (format "<A NAME=\"%s\"></A>" label))
- (princ (format "<A NAME=\"%s\"></A>\n" (kcell-view:idstamp)))
- (princ "<TD WIDTH=2% VALIGN=top>\n")
+ (princ (format "<A ID=\"%s\"></A>" label))
+ (princ (format "<A ID=\"%s\"></A>\n" (kcell-view:idstamp)))
+ (princ "<TD WIDTH=2% VALIGN=top><PRE>\n")
(princ (format
- "<FONT %s>%s%s</FONT></TD>\n"
+ "<FONT %s>%s%s</FONT></PRE></TD>\n"
kexport:label-html-font-attributes
label separator))
(princ "<TD>")
(setq contents (kcell-view:contents))
(if (string-match "\\`\\(address@hidden&*=+|/A-Za-z0-9 ]+\\):.*\\S-"
contents)
- (princ (format "<A NAME=\"%s\"></A>"
+ (princ (format "<A ID=\"%s\"></A>"
(substring contents 0 (match-end 1)))))
(setq contents (kexport:html-markup contents))
- (or soft-newlines-p
- (setq contents (hypb:replace-match-string
- "\n" contents "<BR>\n")))
- (princ contents)
+ (if soft-newlines-flag
+ (princ contents)
+ (princ "<PRE>") (princ contents) (princ "</PRE>"))
(princ "</TD>\n")
(princ "</TR></TABLE>")
(setq i level)
@@ -260,10 +259,10 @@ Works exclusively within a call to
`hypb:replace-match-string'."
(last-str-char (length string))
(last-url-char (length url)))
(while (memq (aref url (1- last-url-char))
- '(?. ?, ?? ?# ?! ?* ?( ?)))
+ '(?. ?, ?? ?# ?! ?* ?\( ?\)))
(setq last-url-char (1- last-url-char)))
(while (memq (aref string (1- last-str-char))
- '(?. ?, ?? ?# ?! ?* ?( ?)))
+ '(?. ?, ?? ?# ?! ?* ?\( ?\)))
(setq last-str-char (1- last-str-char)))
(format "<A HREF=\"%s\">%s</A>%s"
(substring url 0 last-url-char)
diff --git a/kotl/kimport.el b/kotl/kimport.el
index de483b3..702a19c 100644
--- a/kotl/kimport.el
+++ b/kotl/kimport.el
@@ -4,7 +4,7 @@
;;
;; Orig-Date: 15-Nov-93 at 11:57:05
;;
-;; Copyright (C) 1993-2016 Free Software Foundation, Inc.
+;; Copyright (C) 1993-2017 Free Software Foundation, Inc.
;; See the "../HY-COPY" file for license information.
;;
;; This file is part of GNU Hyperbole.
@@ -62,6 +62,9 @@ cells as the initial set of children of the current cell, if
any.
.kotl - imported as a structured koutline
.aug - imported as an Augment post-numbered outline.")
+(defconst kimport:star-heading "^\\(\\*+\\)"
+ "Regular expression matching a star outline heading with the number of stars
given by groupoing 1.")
+
;;; ************************************************************************
;;; Public functions
;;; ************************************************************************
@@ -260,13 +263,13 @@ an explanation of where imported cells are placed.
(outline-show-all)
(save-excursion
(goto-char (point-min))
- ;; If initial text in buffer is not an star outline node, add a star to
+ ;; If initial text in buffer is not a star outline node, add a star to
;; make it one, so it is not deleted from the import.
- (if (not (looking-at "[ \t]*\\*"))
+ (unless (looking-at kimport:star-heading)
(insert "* "))
(goto-char (point-min))
;; Total number of top-level cells.
- (setq total (count-matches "^[ \t]*\\*[ \t\n\r]"))
+ (setq total (count-matches (concat kimport:star-heading "[ \t\n\r]")))
(if initially-empty-output
nil
;; Insert first cell as sibling of current cell.
@@ -612,7 +615,7 @@ COUNT of inserted entries starts at 0. TOTAL is the total
number of entries
in IMPORT-FROM, used to show a running tally of the imported entries."
(set-buffer import-from)
(let ((start (point))
- (hyrolo-entry-regexp "^[ \t]*\\(\\*+\\)")
+ (hyrolo-entry-regexp kimport:star-heading)
subtree-p end contents node-level child-label)
;; While find cells at import-level or deeper ...
(while (and (re-search-forward hyrolo-entry-regexp nil t)
diff --git a/kotl/kotl-autoloads.el b/kotl/kotl-autoloads.el
index e5b0b75..3b33e73 100644
--- a/kotl/kotl-autoloads.el
+++ b/kotl/kotl-autoloads.el
@@ -1,22 +1,22 @@
;;; kotl-autoloads.el --- automatically extracted autoloads
;;
-;; Copyright (C) 2016 Free Software Foundation, Inc.
+;; Copyright (C) 2017 Free Software Foundation, Inc.
;;
;;; Code:
-;;;### (autoloads nil "kexport" "kexport.el" (22452 42110 0 0))
+;;;### (autoloads nil "kexport" "kexport.el" (23052 37373 0 0))
;;; Generated autoloads from kexport.el
(autoload 'kexport:html "kexport" "\
Export a koutline buffer or file in EXPORT-FROM to html format in OUTPUT-TO.
-By default, this retains newlines within cells as they are. With optional
prefix arg, SOFT-NEWLINES-P,
+By default, this retains newlines within cells as they are. With optional
prefix arg, SOFT-NEWLINES-FLAG,
hard newlines are not used. Also converts Urls and Klinks into Html
hyperlinks.
STILL TODO:
Make delimited pathnames into file links (but not if within klinks).
Copy attributes stored in cell 0 and attributes from each cell.
-\(fn EXPORT-FROM OUTPUT-TO &optional SOFT-NEWLINES-P)" t nil)
+\(fn EXPORT-FROM OUTPUT-TO &optional SOFT-NEWLINES-FLAG)" t nil)
;;;***
@@ -41,7 +41,7 @@ View an existing kotl version-2 file FILE-NAME in a read-only
mode.
;;;***
-;;;### (autoloads nil "kimport" "kimport.el" (22415 50714 79447 574000))
+;;;### (autoloads nil "kimport" "kimport.el" (23051 38597 0 0))
;;; Generated autoloads from kimport.el
(defvar kimport:mode-alist '((t . kimport:text) (outline-mode .
kimport:star-outline)) "\
diff --git a/kotl/kotl-mode.el b/kotl/kotl-mode.el
index 878ecec..7f1b766 100644
--- a/kotl/kotl-mode.el
+++ b/kotl/kotl-mode.el
@@ -4,7 +4,7 @@
;;
;; Orig-Date: 6/30/93
;;
-;; Copyright (C) 1993-2016 Free Software Foundation, Inc.
+;; Copyright (C) 1993-2017 Free Software Foundation, Inc.
;; See the "../HY-COPY" file for license information.
;;
;; This file is part of GNU Hyperbole.
diff --git a/kotl/kview.el b/kotl/kview.el
index 6be5616..d5e7164 100644
--- a/kotl/kview.el
+++ b/kotl/kview.el
@@ -4,7 +4,7 @@
;;
;; Orig-Date: 6/30/93
;;
-;; Copyright (C) 1993-2016 Free Software Foundation, Inc.
+;; Copyright (C) 1993-2017 Free Software Foundation, Inc.
;; See the "../HY-COPY" file for license information.
;;
;; This file is part of GNU Hyperbole.
diff --git a/kotl/kvspec.el b/kotl/kvspec.el
index e670d24..98dfc5f 100644
--- a/kotl/kvspec.el
+++ b/kotl/kvspec.el
@@ -4,7 +4,7 @@
;;
;; Orig-Date: 21-Oct-95 at 15:17:07
;;
-;; Copyright (C) 1995-2016 Free Software Foundation, Inc.
+;; Copyright (C) 1995-2017 Free Software Foundation, Inc.
;; See the "../HY-COPY" file for license information.
;;
;; This file is part of GNU Hyperbole.
diff --git a/man/hyperbole.css b/man/hyperbole.css
index 25c7519..fc36761 100644
--- a/man/hyperbole.css
+++ b/man/hyperbole.css
@@ -259,7 +259,7 @@ span.float-right > span {
code, tt {
margin: 0 2px;
- padding: 0 5px;
+ padding: 0 0px;
white-space: nowrap;
border: 1px solid #eaeaea;
background-color: #f8f8f8;
diff --git a/man/hyperbole.html b/man/hyperbole.html
index 105e50b..a774f55 100644
--- a/man/hyperbole.html
+++ b/man/hyperbole.html
@@ -1,7 +1,7 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<!-- This manual is for GNU Hyperbole
-(Edition 6.0.2g, Published November 6, 2017).
+(Edition 7.0.0, Published November 15, 2017).
Copyright (C) 1989-2017 Free Software Foundation, Inc.
@@ -338,8 +338,8 @@ WITHOUT ANY WARRANTY, without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.</P>
<PRE>
-Edition 6.0.2g
-Printed November 6, 2017.
+Edition 7.0.0
+Printed November 15, 2017.
Published by the Free Software Foundation, Inc.
Author: Bob Weiner
@@ -782,7 +782,7 @@ Next: <a href="#Smart-Keys" accesskey="n" rel="next">Smart
Keys</a>, Previous: <
<h2 class="chapter">1 Introduction</h2>
<p>This edition of the GNU Hyperbole Manual is for use with any version
-6.0.2g or greater of GNU Hyperbole. Hyperbole runs atop GNU Emacs 24.3
+7.0.0 or greater of GNU Hyperbole. Hyperbole runs atop GNU Emacs 24.3
or higher. It will trigger an error if your Emacs is older.
</p>
<p>This chapter summarizes the structure of the rest of the manual,
@@ -1246,6 +1246,7 @@ Next: <a href="#Smart-Key-Argument-Selection"
accesskey="n" rel="next">Smart Key
<a name="index-button-activation"></a>
<a name="index-activation"></a>
<a name="index-button-help"></a>
+<a name="index-help_002c-button"></a>
<p>The Action Key generally selects entities, creates links and
activates buttons. The Assist Key generally provides help,
such as reporting on a button’s attributes, or serves a complementary
@@ -2074,6 +2075,8 @@ Next: <a href="#Global-Buttons" accesskey="n"
rel="next">Global Buttons</a>, Pre
<a name="index-button_002c-explicit-1"></a>
<a name="index-button-label"></a>
<a name="index-button-name"></a>
+<a name="index-label_002c-button"></a>
+<a name="index-name_002c-button"></a>
<p>Hyperbole creates and manages <em>explicit buttons</em> which perform
specific actions when activated (typically through a button press).
They look like this ‘<samp><(fake button)></samp>’. They
are quickly
@@ -2142,6 +2145,7 @@ Next: <a href="#Implicit-Buttons" accesskey="n"
rel="next">Implicit Buttons</a>,
<a name="index-global-button-1"></a>
<a name="index-button_002c-global-1"></a>
<a name="index-button-label-1"></a>
+<a name="index-label_002c-button-1"></a>
<p>Access to explicit buttons depends upon the information on your screen
since they are embedded within particular buffers. Sometimes it is
useful to activate buttons without regard to the information with which
@@ -3057,6 +3061,7 @@ Next: <a href="#Utilizing-Explicit-Buttons" accesskey="n"
rel="next">Utilizing E
<h3 class="section">3.6 Button Type Precedence</h3>
<a name="index-button-precedence"></a>
+<a name="index-precedence_002c-buttons"></a>
<a name="index-button-label-overlap"></a>
<p>Explicit buttons always take precedence over implicit buttons. Thus, if
a button selection is made which falls within both an explicit and
@@ -3146,14 +3151,15 @@ Next: <a href="#By-Menu" accesskey="n" rel="next">By
Menu</a>, Previous: <a href
<a name="Creation-Via-Action-Key-Drags"></a>
<h4 class="subsubsection">3.7.1.1 Creation Via Action Key Drags</h4>
-<a name="index-explicit-button_002c-creation"></a>
-<a name="index-button_002c-creation"></a>
-<a name="index-link_002c-creation"></a>
+<a name="index-explicit-button-creation"></a>
+<a name="index-button-creation"></a>
+<a name="index-creating-buttons"></a>
+<a name="index-link-creation"></a>
+<a name="index-creating-links"></a>
+<a name="index-direct-link-creation"></a>
+<a name="index-mouse-drag_002c-link-creation"></a>
<a name="index-drag"></a>
<a name="index-Action-Key-drag"></a>
-<a name="index-creating-a-link"></a>
-<a name="index-mouse-drag_002c-link-creation"></a>
-<a name="index-direct-link-creation"></a>
<p>The most efficient way to create an explicit link button interactively
is to use the Action Mouse Key to drag from a non-read-only button
source window to a window showing its desired link referent. More
@@ -3204,7 +3210,7 @@ Buffer without File link-to-buffer-tmp
<a name="index-C_002du-M_002do"></a>
<a name="index-C_002dx-o"></a>
<a name="index-hkey_002doperate"></a>
-<a name="index-Action-Key-drag-emulation"></a>
+<a name="index-emulation_002c-Action-Key-drag"></a>
<a name="index-keyboard-drag-emulation"></a>
<p>If you run Emacs under a window system and there is no prior key
binding on <kbd>{M-o}</kbd> when you load Hyperbole, then you can emulate
@@ -3255,7 +3261,7 @@ label again and delimit it yourself or copy and paste the
button with
its delimiters. Hyperbole will interpret all occurrences of the same
delimited label within a buffer as the same button.
</p>
-<a name="index-link_002c-creation-1"></a>
+<a name="index-link_002c-creation"></a>
<p>If you create link buttons using the Hyperbole menus, the best
technique is to place on screen both the source buffer for the button
and the buffer to which it will link. Mark the region of text to use
@@ -3273,8 +3279,8 @@ Next: <a href="#Deletion" accesskey="n"
rel="next">Deletion</a>, Previous: <a hr
<a name="Renaming-1"></a>
<h4 class="subsection">3.7.2 Renaming</h4>
-<a name="index-explicit-button_002c-renaming"></a>
-<a name="index-button_002c-renaming"></a>
+<a name="index-explicit-button-renaming"></a>
+<a name="index-button-renaming"></a>
<p>Once an explicit button has been created, its label text must be
treated specially. Any inter-word spacing within the label may be
freely changed, as may happen when a paragraph is refilled, but a
@@ -3311,8 +3317,8 @@ Next: <a href="#Modification" accesskey="n"
rel="next">Modification</a>, Previou
<a name="Deletion-1"></a>
<h4 class="subsection">3.7.3 Deletion</h4>
-<a name="index-explicit-button_002c-deleting"></a>
-<a name="index-button_002c-deleting"></a>
+<a name="index-explicit-button-deletion"></a>
+<a name="index-button-deletion"></a>
<p>Ebut/Delete works similarly to the Rename command but deletes the
selected button. The button’s delimiters are removed to confirm the
deletion. If the delete command is invoked with a prefix argument, then
@@ -3334,10 +3340,10 @@ Next: <a href="#Searching-and-Summarizing"
accesskey="n" rel="next">Searching an
<a name="Modification-1"></a>
<h4 class="subsection">3.7.4 Modification</h4>
-<a name="index-explicit-button_002c-modifying"></a>
-<a name="index-button_002c-modifying"></a>
+<a name="index-explicit-button-modification"></a>
+<a name="index-button-modification"></a>
<a name="index-Smart-Mouse-Key-drag"></a>
-<a name="index-button_002c-attributes"></a>
+<a name="index-button-attributes"></a>
<p>Ebut/Modify prompts you with each of the elements from the button’s
attributes list and allows you to modify each in turn. Ebut/Edit does
the exact same thing and is there for people who prefer that term.
@@ -3357,9 +3363,9 @@ Next: <a href="#Buttons-in-Mail" accesskey="n"
rel="next">Buttons in Mail</a>, P
<a name="Searching-and-Summarizing-1"></a>
<h4 class="subsection">3.7.5 Searching and Summarizing</h4>
-<a name="index-explicit-button_002c-summarizing"></a>
-<a name="index-button_002c-summarizing"></a>
-<a name="index-button_002c-help"></a>
+<a name="index-explicit-button-summary"></a>
+<a name="index-button-summary"></a>
+<a name="index-button-help-1"></a>
<p>The Ebut/Help menu may be used to summarize either a single explicit
button or all such buttons within a buffer. The buttons summarized may
then be activated directly from the summary.
@@ -3370,8 +3376,8 @@ the button at point. Ebut/Help/OrderedButs summarizes
the buttons in
alphabetical order. All of these summary commands eliminate duplicate
occurrences of buttons from their help displays.
</p>
-<a name="index-explicit-button_002c-searching"></a>
-<a name="index-button_002c-searching"></a>
+<a name="index-explicit-button-searching"></a>
+<a name="index-button-searching"></a>
<p>Ebut/Search prompts for a search pattern and searches across all the
locations in which you have previously created explicit buttons. It
asks you whether to match to any part of a button label or to whole
@@ -3405,8 +3411,8 @@ Because this involves complex changes to mail support
functions, this
feature is disabled by default. Use the Cust/Msg-Toggle-Ebuts
minibuffer menu item to enable it.
</p>
-<a name="index-button_002c-mailing"></a>
-<a name="index-button_002c-posting"></a>
+<a name="index-button-mailing"></a>
+<a name="index-button-posting"></a>
<a name="index-mailing-buttons"></a>
<a name="index-posting-buttons"></a>
<a name="index-mail-reader"></a>
@@ -3502,7 +3508,7 @@ Previous: <a href="#Buttons-in-Mail" accesskey="p"
rel="prev">Buttons in Mail</a
<a name="Buttons-in-News-1"></a>
<h4 class="subsection">3.7.7 Buttons in News</h4>
-<a name="index-button_002c-posting-1"></a>
+<a name="index-button-posting-1"></a>
<a name="index-news-reader_002fposter"></a>
<a name="index-posting-news"></a>
<a name="index-Gnus-1"></a>
@@ -3742,6 +3748,7 @@ access to popular web search engines.
is given, limit search to only .el and .el.gz
files. Set <code>hypb:rgrep-command</code> to change the
grep command or options.
+
</li><li> LocateFiles - Prompt for a pattern and display a list of all
matching pathnames found throughout the file
system. On Mac OS X, this uses Spotlight
@@ -3749,17 +3756,22 @@ access to popular web search engines.
the <code>locate</code> command. Within the resulting
*Locate* buffer, Find/Grep-Files will find matching lines
within only these paths (files and directories).
+
</li><li> MatchFileBuffers - Show numbered line matches for regexp in all
file-based buffers.
+
</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> <a name="index-menu_002c-Find_002fWeb"></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>
-Web/ - Select a search engine and term and search with them.
+
+</li><li> Web/ - Select a search engine and term and search with
them.
Hyperbole binds the key <kbd>{C-c /}</kbd> for quick
access to this menu, if it is not already bound
prior to Hyperbole’s initialization. The
Cust/Web-Search
@@ -3767,11 +3779,13 @@ Web/ - Select a search engine and term and
search with them.
which determines whether web search results are displayed
within Emacs or with an external web browser. A short
video introduction to the Find/Web menu may be
- found at <a
href="https://youtu.be/8lMlJed0-OM">https://youtu.be/8lMlJed0-OM</a>. The
- Find/Web menu looks like this:
+ found at <a
href="https://youtu.be/8lMlJed0-OM">https://youtu.be/8lMlJed0-OM</a>.
+
+<p>The Find/Web menu looks like this:
+</p>
<div class="smallexample">
-<pre class="smallexample">Web> Amazon Bing Dictionary Elisp Facebook
Google Hub(git) Images
- Maps RFCs StackOverflow Twitter Wikipedia Youtube
+<pre class="smallexample">Web> Amazon Bing Dictionary Elisp Facebook
Google Hub(git)
+ Images Maps RFCs StackOverflow Twitter Wikipedia Youtube
</pre></div>
</li></ul>
@@ -3780,13 +3794,12 @@ Web/ - Select a search engine and term and
search with them.
</dd>
<dt><strong>Gbut/</strong></dt>
<dd><p>All global button commands. Global buttons are accessed by name
-rather than by direct selection. The window-system-based Hyperbole
-menu also includes an activation menu item for each global button.
-</p>
+rather than by direct selection. The Hyperbole menubar menu also
+includes an activation menu item for each global button.
<a name="index-menu-item_002c-Back_002dto_002dPrior_002dLocation"></a>
<a name="index-menu-item_002c-Hist"></a>
<a name="index-history"></a>
-</dd>
+</p></dd>
<dt><strong>Hist</strong></dt>
<dd><p>Return to previous positions in the button traversal history.
</p>
@@ -3808,13 +3821,13 @@ a Hyperbole discussion mailing list.
<a name="index-menu_002c-Kotl"></a>
</dd>
<dt><strong>Kotl/</strong></dt>
-<dd><p>Autonumbered, structured outliner and hyper-node manager commands.
+<dd><p>Autonumbered, structured outliner commands with per-node hyperlink
anchors.
See <a href="#Koutliner">Koutliner</a>.
</p>
<a name="index-menu_002c-Rolo"></a>
</dd>
<dt><strong>Rolo/</strong></dt>
-<dd><p>Hierarchical, multi-file rolo lookup and edit commands.
+<dd><p>Hierarchical, multi-file contact manager lookup and edit commands.
See <a href="#HyRolo">HyRolo</a>.
</p>
<a name="index-menu_002c-Screen"></a>
@@ -3826,8 +3839,8 @@ See <a href="#HyRolo">HyRolo</a>.
<a name="index-menu_002c-WinConfig"></a>
</dd>
<dt><strong>Win/</strong></dt>
-<dd><p>Window configuration management, such as adding and restoring window
-configurations by name. See <a href="#Window-Configurations">Window
Configurations</a>.
+<dd><p>Window configuration management commands, such as adding and restoring
+window configurations by name. See <a href="#Window-Configurations">Window
Configurations</a>.
</p>
</dd>
</dl>
@@ -4256,7 +4269,7 @@ buffer.
selected window.
</p>
<a name="index-swapping"></a>
-<a name="index-buffer_002c-swapping"></a>
+<a name="index-buffer_002c-swap-1"></a>
<a name="index-screen_002c-_007e"></a>
<a name="index-_007e"></a>
</dd>
@@ -4267,9 +4280,7 @@ frame. In FRAMES mode, the second frame must have a
single window.
</p>
<a name="index-zooming"></a>
<a name="index-window_002c-zoom"></a>
-<a name="index-zoom-window"></a>
<a name="index-frame_002c-zoom"></a>
-<a name="index-zoom-frame"></a>
<a name="index-zoom_002dfrm_002eel"></a>
<a name="index-screen_002c-Z"></a>
<a name="index-Z"></a>
@@ -6765,10 +6776,10 @@ Next: <a href="#Programmatic-Button-Creation"
accesskey="n" rel="next">Programma
<a name="Operational-and-Storage-Formats-1"></a>
<h4 class="subsection">9.3.2 Operational and Storage Formats</h4>
-<a name="index-explicit-button_002c-formats"></a>
-<a name="index-explicit-button_002c-storage"></a>
+<a name="index-explicit-button-formats"></a>
+<a name="index-explicit-button-storage"></a>
<a name="index-storage-manager"></a>
-<a name="index-button-attributes"></a>
+<a name="index-button-attributes-1"></a>
<a name="index-hbut_003acurrent-1"></a>
<p>Hyperbole uses a terse format to store explicit buttons and a more
meaningful one to show users and to manipulate during editing. The
@@ -6799,7 +6810,7 @@ Previous: <a href="#Operational-and-Storage-Formats"
accesskey="p" rel="prev">Op
<a name="Programmatic-Button-Creation-1"></a>
<h4 class="subsection">9.3.3 Programmatic Button Creation</h4>
-<a name="index-explicit-button_002c-creation-1"></a>
+<a name="index-explicit-button_002c-creation"></a>
<p>A common need when developing with Hyperbole is to create or to modify
explicit buttons without user interaction. For example, an application
might require the addition of an explicit summary button to a file for
@@ -7951,7 +7962,6 @@ To disable highlighting, change this setting in
<samp>hsettings.el</samp> or
use Hyperbole menu item, Cust/All-Options, and select the Hyperbole
Buttons group to edit its options.
</p>
-<a name="index-button-highlighting_002c-forcing"></a>
<a name="index-hproperty_003abut_002dcreate"></a>
<p>If you read in a file with explicit buttons before you load Hyperbole,
these buttons won’t be highlighted. Load Hyperbole and then use
@@ -12153,7 +12163,6 @@ Previous: <a href="#Function" accesskey="p"
rel="prev">Function</a>, Up: <a href
<tr><td></td><td valign="top"><a
href="#index-action-1">action</a>:</td><td> </td><td valign="top"><a
href="#Action-Types">Action Types</a></td></tr>
<tr><td></td><td valign="top"><a href="#index-Action-Key">Action
Key</a>:</td><td> </td><td valign="top"><a href="#Smart-Keys">Smart
Keys</a></td></tr>
<tr><td></td><td valign="top"><a href="#index-Action-Key-drag">Action Key
drag</a>:</td><td> </td><td valign="top"><a href="#By-Dragging">By
Dragging</a></td></tr>
-<tr><td></td><td valign="top"><a
href="#index-Action-Key-drag-emulation">Action Key drag
emulation</a>:</td><td> </td><td valign="top"><a href="#By-Dragging">By
Dragging</a></td></tr>
<tr><td></td><td valign="top"><a
href="#index-Action-Key_002c-cell-argument">Action Key, cell
argument</a>:</td><td> </td><td valign="top"><a
href="#Relocating-and-Copying">Relocating and Copying</a></td></tr>
<tr><td></td><td valign="top"><a
href="#index-Action-Key_002c-hide-or-show-cell">Action Key, hide or show
cell</a>:</td><td> </td><td valign="top"><a
href="#Hiding-and-Showing">Hiding and Showing</a></td></tr>
<tr><td></td><td valign="top"><a href="#index-Action-Key_002c-klink">Action
Key, klink</a>:</td><td> </td><td valign="top"><a
href="#Links">Links</a></td></tr>
@@ -12223,7 +12232,7 @@ Previous: <a href="#Function" accesskey="p"
rel="prev">Function</a>, Up: <a href
<tr><td></td><td valign="top"><a href="#index-buffer_002c-bury">buffer,
bury</a>:</td><td> </td><td valign="top"><a
href="#HyControl">HyControl</a></td></tr>
<tr><td></td><td valign="top"><a href="#index-buffer_002c-copy">buffer,
copy</a>:</td><td> </td><td valign="top"><a
href="#Displaying-Buffers">Displaying Buffers</a></td></tr>
<tr><td></td><td valign="top"><a href="#index-buffer_002c-swap">buffer,
swap</a>:</td><td> </td><td valign="top"><a
href="#Swapping-Buffers">Swapping Buffers</a></td></tr>
-<tr><td></td><td valign="top"><a href="#index-buffer_002c-swapping">buffer,
swapping</a>:</td><td> </td><td valign="top"><a
href="#HyControl">HyControl</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-buffer_002c-swap-1">buffer,
swap</a>:</td><td> </td><td valign="top"><a
href="#HyControl">HyControl</a></td></tr>
<tr><td></td><td valign="top"><a href="#index-buffer_002c-unbury">buffer,
unbury</a>:</td><td> </td><td valign="top"><a
href="#HyControl">HyControl</a></td></tr>
<tr><td></td><td valign="top"><a href="#index-bug-tracking">bug
tracking</a>:</td><td> </td><td valign="top"><a
href="#Implicit-Buttons">Implicit Buttons</a></td></tr>
<tr><td></td><td valign="top"><a href="#index-bury-buffer">bury
buffer</a>:</td><td> </td><td valign="top"><a
href="#Smart-Mouse-Key-Modeline-Clicks">Smart Mouse Key Modeline
Clicks</a></td></tr>
@@ -12232,11 +12241,14 @@ Previous: <a href="#Function" accesskey="p"
rel="prev">Function</a>, Up: <a href
<tr><td></td><td valign="top"><a href="#index-button-action">button
action</a>:</td><td> </td><td valign="top"><a href="#Action-Types">Action
Types</a></td></tr>
<tr><td></td><td valign="top"><a href="#index-button-activation">button
activation</a>:</td><td> </td><td valign="top"><a
href="#Smart-Key-Operations">Smart Key Operations</a></td></tr>
<tr><td></td><td valign="top"><a href="#index-button-attribute">button
attribute</a>:</td><td> </td><td valign="top"><a
href="#Explicit-Buttons">Explicit Buttons</a></td></tr>
-<tr><td></td><td valign="top"><a href="#index-button-attributes">button
attributes</a>:</td><td> </td><td valign="top"><a
href="#Operational-and-Storage-Formats">Operational and Storage
Formats</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-button-attributes">button
attributes</a>:</td><td> </td><td valign="top"><a
href="#Modification">Modification</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-button-attributes-1">button
attributes</a>:</td><td> </td><td valign="top"><a
href="#Operational-and-Storage-Formats">Operational and Storage
Formats</a></td></tr>
<tr><td></td><td valign="top"><a href="#index-button-category">button
category</a>:</td><td> </td><td valign="top"><a
href="#Buttons">Buttons</a></td></tr>
<tr><td></td><td valign="top"><a href="#index-button-click">button
click</a>:</td><td> </td><td valign="top"><a
href="#Smart-Key-_002d-Hyperbole-Buttons">Smart Key - Hyperbole
Buttons</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-button-creation">button
creation</a>:</td><td> </td><td valign="top"><a href="#By-Dragging">By
Dragging</a></td></tr>
<tr><td></td><td valign="top"><a href="#index-button-data">button
data</a>:</td><td> </td><td valign="top"><a
href="#Explicit-Buttons">Explicit Buttons</a></td></tr>
<tr><td></td><td valign="top"><a href="#index-button-data-saving">button data
saving</a>:</td><td> </td><td valign="top"><a href="#Hook-Variables">Hook
Variables</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-button-deletion">button
deletion</a>:</td><td> </td><td valign="top"><a
href="#Deletion">Deletion</a></td></tr>
<tr><td></td><td valign="top"><a href="#index-button-demo">button
demo</a>:</td><td> </td><td valign="top"><a
href="#Hyperbole-Overview">Hyperbole Overview</a></td></tr>
<tr><td></td><td valign="top"><a href="#index-button-emphasis">button
emphasis</a>:</td><td> </td><td valign="top"><a
href="#Button-Colors">Button Colors</a></td></tr>
<tr><td></td><td valign="top"><a
href="#index-button-file_002c-directory">button file,
directory</a>:</td><td> </td><td valign="top"><a
href="#Button-Files">Button Files</a></td></tr>
@@ -12245,37 +12257,33 @@ Previous: <a href="#Function" accesskey="p"
rel="prev">Function</a>, Up: <a href
<tr><td></td><td valign="top"><a href="#index-button-files">button
files</a>:</td><td> </td><td valign="top"><a href="#Button-Files">Button
Files</a></td></tr>
<tr><td></td><td valign="top"><a href="#index-button-flashing">button
flashing</a>:</td><td> </td><td valign="top"><a
href="#Button-Colors">Button Colors</a></td></tr>
<tr><td></td><td valign="top"><a href="#index-button-help">button
help</a>:</td><td> </td><td valign="top"><a
href="#Smart-Key-Operations">Smart Key Operations</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-button-help-1">button
help</a>:</td><td> </td><td valign="top"><a
href="#Searching-and-Summarizing">Searching and Summarizing</a></td></tr>
<tr><td></td><td valign="top"><a href="#index-button-highlighting">button
highlighting</a>:</td><td> </td><td valign="top"><a
href="#Hook-Variables">Hook Variables</a></td></tr>
<tr><td></td><td valign="top"><a href="#index-button-highlighting-1">button
highlighting</a>:</td><td> </td><td valign="top"><a
href="#Button-Colors">Button Colors</a></td></tr>
-<tr><td></td><td valign="top"><a
href="#index-button-highlighting_002c-forcing">button highlighting,
forcing</a>:</td><td> </td><td valign="top"><a
href="#Button-Colors">Button Colors</a></td></tr>
<tr><td></td><td valign="top"><a href="#index-button-instance">button
instance</a>:</td><td> </td><td valign="top"><a href="#By-Menu">By
Menu</a></td></tr>
<tr><td></td><td valign="top"><a href="#index-button-key">button
key</a>:</td><td> </td><td valign="top"><a
href="#Button-Label-Normalization">Button Label Normalization</a></td></tr>
<tr><td></td><td valign="top"><a href="#index-button-label">button
label</a>:</td><td> </td><td valign="top"><a
href="#Explicit-Buttons">Explicit Buttons</a></td></tr>
<tr><td></td><td valign="top"><a href="#index-button-label-1">button
label</a>:</td><td> </td><td valign="top"><a href="#Global-Buttons">Global
Buttons</a></td></tr>
<tr><td></td><td valign="top"><a href="#index-button-label-2">button
label</a>:</td><td> </td><td valign="top"><a
href="#Button-Label-Normalization">Button Label Normalization</a></td></tr>
<tr><td></td><td valign="top"><a href="#index-button-label-overlap">button
label overlap</a>:</td><td> </td><td valign="top"><a
href="#Button-Type-Precedence">Button Type Precedence</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-button-mailing">button
mailing</a>:</td><td> </td><td valign="top"><a
href="#Buttons-in-Mail">Buttons in Mail</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-button-modification">button
modification</a>:</td><td> </td><td valign="top"><a
href="#Modification">Modification</a></td></tr>
<tr><td></td><td valign="top"><a href="#index-button-name">button
name</a>:</td><td> </td><td valign="top"><a
href="#Explicit-Buttons">Explicit Buttons</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-button-posting">button
posting</a>:</td><td> </td><td valign="top"><a
href="#Buttons-in-Mail">Buttons in Mail</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-button-posting-1">button
posting</a>:</td><td> </td><td valign="top"><a
href="#Buttons-in-News">Buttons in News</a></td></tr>
<tr><td></td><td valign="top"><a href="#index-button-precedence">button
precedence</a>:</td><td> </td><td valign="top"><a
href="#Button-Type-Precedence">Button Type Precedence</a></td></tr>
-<tr><td></td><td valign="top"><a href="#index-button_002c-attributes">button,
attributes</a>:</td><td> </td><td valign="top"><a
href="#Modification">Modification</a></td></tr>
-<tr><td></td><td valign="top"><a href="#index-button_002c-creation">button,
creation</a>:</td><td> </td><td valign="top"><a href="#By-Dragging">By
Dragging</a></td></tr>
-<tr><td></td><td valign="top"><a href="#index-button_002c-deleting">button,
deleting</a>:</td><td> </td><td valign="top"><a
href="#Deletion">Deletion</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-button-renaming">button
renaming</a>:</td><td> </td><td valign="top"><a
href="#Renaming">Renaming</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-button-searching">button
searching</a>:</td><td> </td><td valign="top"><a
href="#Searching-and-Summarizing">Searching and Summarizing</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-button-summary">button
summary</a>:</td><td> </td><td valign="top"><a
href="#Searching-and-Summarizing">Searching and Summarizing</a></td></tr>
<tr><td></td><td valign="top"><a href="#index-button_002c-explicit">button,
explicit</a>:</td><td> </td><td valign="top"><a
href="#Buttons">Buttons</a></td></tr>
<tr><td></td><td valign="top"><a href="#index-button_002c-explicit-1">button,
explicit</a>:</td><td> </td><td valign="top"><a
href="#Explicit-Buttons">Explicit Buttons</a></td></tr>
<tr><td></td><td valign="top"><a href="#index-button_002c-global">button,
global</a>:</td><td> </td><td valign="top"><a
href="#Buttons">Buttons</a></td></tr>
<tr><td></td><td valign="top"><a href="#index-button_002c-global-1">button,
global</a>:</td><td> </td><td valign="top"><a
href="#Global-Buttons">Global Buttons</a></td></tr>
-<tr><td></td><td valign="top"><a href="#index-button_002c-help">button,
help</a>:</td><td> </td><td valign="top"><a
href="#Searching-and-Summarizing">Searching and Summarizing</a></td></tr>
<tr><td></td><td valign="top"><a href="#index-button_002c-implicit">button,
implicit</a>:</td><td> </td><td valign="top"><a
href="#Buttons">Buttons</a></td></tr>
<tr><td></td><td valign="top"><a href="#index-button_002c-implicit-1">button,
implicit</a>:</td><td> </td><td valign="top"><a
href="#Implicit-Buttons">Implicit Buttons</a></td></tr>
-<tr><td></td><td valign="top"><a href="#index-button_002c-mailing">button,
mailing</a>:</td><td> </td><td valign="top"><a
href="#Buttons-in-Mail">Buttons in Mail</a></td></tr>
-<tr><td></td><td valign="top"><a href="#index-button_002c-modifying">button,
modifying</a>:</td><td> </td><td valign="top"><a
href="#Modification">Modification</a></td></tr>
<tr><td></td><td valign="top"><a href="#index-button_002c-moving">button,
moving</a>:</td><td> </td><td valign="top"><a
href="#Explicit-Buttons">Explicit Buttons</a></td></tr>
<tr><td></td><td valign="top"><a
href="#index-button_002c-multiple-lines">button, multiple
lines</a>:</td><td> </td><td valign="top"><a
href="#Button-Label-Normalization">Button Label Normalization</a></td></tr>
-<tr><td></td><td valign="top"><a href="#index-button_002c-posting">button,
posting</a>:</td><td> </td><td valign="top"><a
href="#Buttons-in-Mail">Buttons in Mail</a></td></tr>
-<tr><td></td><td valign="top"><a href="#index-button_002c-posting-1">button,
posting</a>:</td><td> </td><td valign="top"><a
href="#Buttons-in-News">Buttons in News</a></td></tr>
-<tr><td></td><td valign="top"><a href="#index-button_002c-renaming">button,
renaming</a>:</td><td> </td><td valign="top"><a
href="#Renaming">Renaming</a></td></tr>
-<tr><td></td><td valign="top"><a href="#index-button_002c-searching">button,
searching</a>:</td><td> </td><td valign="top"><a
href="#Searching-and-Summarizing">Searching and Summarizing</a></td></tr>
<tr><td></td><td valign="top"><a
href="#index-button_002c-split-across-lines">button, split across
lines</a>:</td><td> </td><td valign="top"><a
href="#Button-Label-Normalization">Button Label Normalization</a></td></tr>
-<tr><td></td><td valign="top"><a href="#index-button_002c-summarizing">button,
summarizing</a>:</td><td> </td><td valign="top"><a
href="#Searching-and-Summarizing">Searching and Summarizing</a></td></tr>
<tr><td></td><td valign="top"><a href="#index-byte-compiler-error">byte
compiler error</a>:</td><td> </td><td valign="top"><a
href="#Implicit-Buttons">Implicit Buttons</a></td></tr>
<tr><td colspan="4"> <hr></td></tr>
<tr><th><a name="Concept-Index_cp_letter-C">C</a></th><td></td><td></td></tr>
@@ -12349,7 +12357,8 @@ Previous: <a href="#Function" accesskey="p"
rel="prev">Function</a>, Up: <a href
<tr><td></td><td valign="top"><a href="#index-copy-region">copy
region</a>:</td><td> </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-copying">copying</a>:</td><td> </td><td valign="top"><a
href="#Relocating-and-Copying">Relocating and Copying</a></td></tr>
<tr><td></td><td valign="top"><a
href="#index-create_002dtime-attribute">create-time
attribute</a>:</td><td> </td><td valign="top"><a
href="#Cell-Attributes">Cell Attributes</a></td></tr>
-<tr><td></td><td valign="top"><a href="#index-creating-a-link">creating a
link</a>:</td><td> </td><td valign="top"><a href="#By-Dragging">By
Dragging</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-creating-buttons">creating
buttons</a>:</td><td> </td><td valign="top"><a href="#By-Dragging">By
Dragging</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-creating-links">creating
links</a>:</td><td> </td><td valign="top"><a href="#By-Dragging">By
Dragging</a></td></tr>
<tr><td></td><td valign="top"><a href="#index-creator-attribute">creator
attribute</a>:</td><td> </td><td valign="top"><a
href="#Cell-Attributes">Cell Attributes</a></td></tr>
<tr><td></td><td valign="top"><a
href="#index-credits">credits</a>:</td><td> </td><td valign="top"><a
href="#Top">Top</a></td></tr>
<tr><td></td><td valign="top"><a href="#index-cross-referencing">cross
referencing</a>:</td><td> </td><td valign="top"><a
href="#Koutliner-History">Koutliner History</a></td></tr>
@@ -12439,6 +12448,7 @@ Previous: <a href="#Function" accesskey="p"
rel="prev">Function</a>, Up: <a href
<tr><td></td><td valign="top"><a href="#index-Emacs-Lisp-variables">Emacs Lisp
variables</a>:</td><td> </td><td valign="top"><a
href="#Link-Variable-Substitution">Link Variable Substitution</a></td></tr>
<tr><td></td><td valign="top"><a href="#index-emacs-outline">emacs
outline</a>:</td><td> </td><td valign="top"><a
href="#Inserting-and-Importing">Inserting and Importing</a></td></tr>
<tr><td></td><td valign="top"><a href="#index-Emacs-support">Emacs
support</a>:</td><td> </td><td valign="top"><a
href="#Button-Colors">Button Colors</a></td></tr>
+<tr><td></td><td valign="top"><a
href="#index-emulation_002c-Action-Key-drag">emulation, Action Key
drag</a>:</td><td> </td><td valign="top"><a href="#By-Dragging">By
Dragging</a></td></tr>
<tr><td></td><td valign="top"><a
href="#index-enabling-URLs-in-find_002dfile">enabling URLs in
find-file</a>:</td><td> </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-end-of-line-click">end of line
click</a>:</td><td> </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-Engelbart">Engelbart</a>:</td><td> </td><td valign="top"><a
href="#Koutliner-History">Koutliner History</a></td></tr>
@@ -12451,15 +12461,15 @@ Previous: <a href="#Function" accesskey="p"
rel="prev">Function</a>, Up: <a href
<tr><td></td><td valign="top"><a
href="#index-expanding">expanding</a>:</td><td> </td><td valign="top"><a
href="#Hiding-and-Showing">Hiding and Showing</a></td></tr>
<tr><td></td><td valign="top"><a href="#index-explicit-button">explicit
button</a>:</td><td> </td><td valign="top"><a
href="#Buttons">Buttons</a></td></tr>
<tr><td></td><td valign="top"><a href="#index-explicit-button-1">explicit
button</a>:</td><td> </td><td valign="top"><a
href="#Explicit-Buttons">Explicit Buttons</a></td></tr>
-<tr><td></td><td valign="top"><a
href="#index-explicit-button_002c-creation">explicit button,
creation</a>:</td><td> </td><td valign="top"><a href="#By-Dragging">By
Dragging</a></td></tr>
-<tr><td></td><td valign="top"><a
href="#index-explicit-button_002c-creation-1">explicit button,
creation</a>:</td><td> </td><td valign="top"><a
href="#Programmatic-Button-Creation">Programmatic Button Creation</a></td></tr>
-<tr><td></td><td valign="top"><a
href="#index-explicit-button_002c-deleting">explicit button,
deleting</a>:</td><td> </td><td valign="top"><a
href="#Deletion">Deletion</a></td></tr>
-<tr><td></td><td valign="top"><a
href="#index-explicit-button_002c-formats">explicit button,
formats</a>:</td><td> </td><td valign="top"><a
href="#Operational-and-Storage-Formats">Operational and Storage
Formats</a></td></tr>
-<tr><td></td><td valign="top"><a
href="#index-explicit-button_002c-modifying">explicit button,
modifying</a>:</td><td> </td><td valign="top"><a
href="#Modification">Modification</a></td></tr>
-<tr><td></td><td valign="top"><a
href="#index-explicit-button_002c-renaming">explicit button,
renaming</a>:</td><td> </td><td valign="top"><a
href="#Renaming">Renaming</a></td></tr>
-<tr><td></td><td valign="top"><a
href="#index-explicit-button_002c-searching">explicit button,
searching</a>:</td><td> </td><td valign="top"><a
href="#Searching-and-Summarizing">Searching and Summarizing</a></td></tr>
-<tr><td></td><td valign="top"><a
href="#index-explicit-button_002c-storage">explicit button,
storage</a>:</td><td> </td><td valign="top"><a
href="#Operational-and-Storage-Formats">Operational and Storage
Formats</a></td></tr>
-<tr><td></td><td valign="top"><a
href="#index-explicit-button_002c-summarizing">explicit button,
summarizing</a>:</td><td> </td><td valign="top"><a
href="#Searching-and-Summarizing">Searching and Summarizing</a></td></tr>
+<tr><td></td><td valign="top"><a
href="#index-explicit-button-creation">explicit button
creation</a>:</td><td> </td><td valign="top"><a href="#By-Dragging">By
Dragging</a></td></tr>
+<tr><td></td><td valign="top"><a
href="#index-explicit-button-deletion">explicit button
deletion</a>:</td><td> </td><td valign="top"><a
href="#Deletion">Deletion</a></td></tr>
+<tr><td></td><td valign="top"><a
href="#index-explicit-button-formats">explicit button
formats</a>:</td><td> </td><td valign="top"><a
href="#Operational-and-Storage-Formats">Operational and Storage
Formats</a></td></tr>
+<tr><td></td><td valign="top"><a
href="#index-explicit-button-modification">explicit button
modification</a>:</td><td> </td><td valign="top"><a
href="#Modification">Modification</a></td></tr>
+<tr><td></td><td valign="top"><a
href="#index-explicit-button-renaming">explicit button
renaming</a>:</td><td> </td><td valign="top"><a
href="#Renaming">Renaming</a></td></tr>
+<tr><td></td><td valign="top"><a
href="#index-explicit-button-searching">explicit button
searching</a>:</td><td> </td><td valign="top"><a
href="#Searching-and-Summarizing">Searching and Summarizing</a></td></tr>
+<tr><td></td><td valign="top"><a
href="#index-explicit-button-storage">explicit button
storage</a>:</td><td> </td><td valign="top"><a
href="#Operational-and-Storage-Formats">Operational and Storage
Formats</a></td></tr>
+<tr><td></td><td valign="top"><a
href="#index-explicit-button-summary">explicit button
summary</a>:</td><td> </td><td valign="top"><a
href="#Searching-and-Summarizing">Searching and Summarizing</a></td></tr>
+<tr><td></td><td valign="top"><a
href="#index-explicit-button_002c-creation">explicit button,
creation</a>:</td><td> </td><td valign="top"><a
href="#Programmatic-Button-Creation">Programmatic Button Creation</a></td></tr>
<tr><td></td><td valign="top"><a
href="#index-exporting">exporting</a>:</td><td> </td><td valign="top"><a
href="#Exporting">Exporting</a></td></tr>
<tr><td></td><td valign="top"><a href="#index-exporting-an-outline">exporting
an outline</a>:</td><td> </td><td valign="top"><a
href="#Relocating-and-Copying">Relocating and Copying</a></td></tr>
<tr><td></td><td valign="top"><a href="#index-external-klink">external
klink</a>:</td><td> </td><td valign="top"><a
href="#Links">Links</a></td></tr>
@@ -12531,6 +12541,7 @@ Previous: <a href="#Function" accesskey="p"
rel="prev">Function</a>, Up: <a href
<tr><th><a name="Concept-Index_cp_letter-H">H</a></th><td></td><td></td></tr>
<tr><td></td><td valign="top"><a
href="#index-hashtag">hashtag</a>:</td><td> </td><td valign="top"><a
href="#Implicit-Buttons">Implicit Buttons</a></td></tr>
<tr><td></td><td valign="top"><a href="#index-help-buffer">help
buffer</a>:</td><td> </td><td valign="top"><a
href="#Smart-Key-_002d-Help-Buffers">Smart Key - Help Buffers</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-help_002c-button">help,
button</a>:</td><td> </td><td valign="top"><a
href="#Smart-Key-Operations">Smart Key Operations</a></td></tr>
<tr><td></td><td valign="top"><a href="#index-help_002c-menu-items">help, menu
items</a>:</td><td> </td><td valign="top"><a
href="#Menus">Menus</a></td></tr>
<tr><td></td><td valign="top"><a href="#index-help_002c-Smart-Key">help, Smart
Key</a>:</td><td> </td><td valign="top"><a
href="#Smart-Key-Operations">Smart Key Operations</a></td></tr>
<tr><td></td><td valign="top"><a href="#index-hide-levels">hide
levels</a>:</td><td> </td><td valign="top"><a href="#View-Specs">View
Specs</a></td></tr>
@@ -12694,6 +12705,8 @@ Previous: <a href="#Function" accesskey="p"
rel="prev">Function</a>, Up: <a href
<tr><td></td><td valign="top"><a href="#index-label-type_002c-idstamps">label
type, idstamps</a>:</td><td> </td><td valign="top"><a
href="#View-Specs">View Specs</a></td></tr>
<tr><td></td><td valign="top"><a href="#index-label-type_002c-legal">label
type, legal</a>:</td><td> </td><td valign="top"><a
href="#Autonumbering">Autonumbering</a></td></tr>
<tr><td></td><td valign="top"><a href="#index-label-type_002c-legal-1">label
type, legal</a>:</td><td> </td><td valign="top"><a href="#View-Specs">View
Specs</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-label_002c-button">label,
button</a>:</td><td> </td><td valign="top"><a
href="#Explicit-Buttons">Explicit Buttons</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-label_002c-button-1">label,
button</a>:</td><td> </td><td valign="top"><a
href="#Global-Buttons">Global Buttons</a></td></tr>
<tr><td></td><td valign="top"><a href="#index-legal-labels">legal
labels</a>:</td><td> </td><td valign="top"><a
href="#Autonumbering">Autonumbering</a></td></tr>
<tr><td></td><td valign="top"><a
href="#index-level">level</a>:</td><td> </td><td valign="top"><a
href="#Hiding-and-Showing">Hiding and Showing</a></td></tr>
<tr><td></td><td valign="top"><a
href="#index-level-1">level</a>:</td><td> </td><td valign="top"><a
href="#View-Specs">View Specs</a></td></tr>
@@ -12701,9 +12714,9 @@ Previous: <a href="#Function" accesskey="p"
rel="prev">Function</a>, Up: <a href
<tr><td></td><td valign="top"><a
href="#index-link">link</a>:</td><td> </td><td valign="top"><a
href="#Links">Links</a></td></tr>
<tr><td></td><td valign="top"><a href="#index-link-action-types">link action
types</a>:</td><td> </td><td valign="top"><a href="#Action-Types">Action
Types</a></td></tr>
<tr><td></td><td valign="top"><a href="#index-link-button">link
button</a>:</td><td> </td><td valign="top"><a
href="#Explicit-Buttons">Explicit Buttons</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-link-creation">link
creation</a>:</td><td> </td><td valign="top"><a href="#By-Dragging">By
Dragging</a></td></tr>
<tr><td></td><td valign="top"><a href="#index-link-display">link
display</a>:</td><td> </td><td valign="top"><a
href="#Referent-Display">Referent Display</a></td></tr>
-<tr><td></td><td valign="top"><a href="#index-link_002c-creation">link,
creation</a>:</td><td> </td><td valign="top"><a href="#By-Dragging">By
Dragging</a></td></tr>
-<tr><td></td><td valign="top"><a href="#index-link_002c-creation-1">link,
creation</a>:</td><td> </td><td valign="top"><a href="#By-Menu">By
Menu</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-link_002c-creation">link,
creation</a>:</td><td> </td><td valign="top"><a href="#By-Menu">By
Menu</a></td></tr>
<tr><td></td><td valign="top"><a
href="#index-link_002c-display-function">link, display
function</a>:</td><td> </td><td valign="top"><a
href="#Internal-Viewers">Internal Viewers</a></td></tr>
<tr><td></td><td valign="top"><a href="#index-link_002c-pathname">link,
pathname</a>:</td><td> </td><td valign="top"><a
href="#Implicit-Buttons">Implicit Buttons</a></td></tr>
<tr><td></td><td valign="top"><a
href="#index-link_002c-pathname-line-and-column">link, pathname line and
column</a>:</td><td> </td><td valign="top"><a
href="#Implicit-Buttons">Implicit Buttons</a></td></tr>
@@ -12852,6 +12865,7 @@ Previous: <a href="#Function" accesskey="p"
rel="prev">Function</a>, Up: <a href
<tr><td></td><td valign="top"><a
href="#index-multiplier">multiplier</a>:</td><td> </td><td valign="top"><a
href="#HyControl">HyControl</a></td></tr>
<tr><td colspan="4"> <hr></td></tr>
<tr><th><a name="Concept-Index_cp_letter-N">N</a></th><td></td><td></td></tr>
+<tr><td></td><td valign="top"><a href="#index-name_002c-button">name,
button</a>:</td><td> </td><td valign="top"><a
href="#Explicit-Buttons">Explicit Buttons</a></td></tr>
<tr><td></td><td valign="top"><a
href="#index-named-window-configuration">named window
configuration</a>:</td><td> </td><td valign="top"><a
href="#Window-Configurations">Window Configurations</a></td></tr>
<tr><td></td><td valign="top"><a
href="#index-news">news</a>:</td><td> </td><td valign="top"><a
href="#Buttons-in-Mail">Buttons in Mail</a></td></tr>
<tr><td></td><td valign="top"><a href="#index-news-comment">news
comment</a>:</td><td> </td><td valign="top"><a
href="#Buttons-in-News">Buttons in News</a></td></tr>
@@ -12923,6 +12937,7 @@ Previous: <a href="#Function" accesskey="p"
rel="prev">Function</a>, Up: <a href
<tr><td></td><td valign="top"><a href="#index-popup-menu">popup
menu</a>:</td><td> </td><td valign="top"><a
href="#Menus">Menus</a></td></tr>
<tr><td></td><td valign="top"><a href="#index-posting-buttons">posting
buttons</a>:</td><td> </td><td valign="top"><a
href="#Buttons-in-Mail">Buttons in Mail</a></td></tr>
<tr><td></td><td valign="top"><a href="#index-posting-news">posting
news</a>:</td><td> </td><td valign="top"><a
href="#Buttons-in-News">Buttons in News</a></td></tr>
+<tr><td></td><td valign="top"><a
href="#index-precedence_002c-buttons">precedence,
buttons</a>:</td><td> </td><td valign="top"><a
href="#Button-Type-Precedence">Button Type Precedence</a></td></tr>
<tr><td></td><td valign="top"><a
href="#index-programming-interface">programming
interface</a>:</td><td> </td><td valign="top"><a
href="#Embedding-Hyperbole">Embedding Hyperbole</a></td></tr>
<tr><td></td><td valign="top"><a
href="#index-promotion">promotion</a>:</td><td> </td><td valign="top"><a
href="#Relocating-and-Copying">Relocating and Copying</a></td></tr>
<tr><td></td><td valign="top"><a
href="#index-proportional-scrolling">proportional
scrolling</a>:</td><td> </td><td valign="top"><a
href="#Glossary">Glossary</a></td></tr>
@@ -13193,8 +13208,6 @@ Previous: <a href="#Function" accesskey="p"
rel="prev">Function</a>, Up: <a href
<tr><td></td><td valign="top"><a
href="#index-yanking-2">yanking</a>:</td><td> </td><td valign="top"><a
href="#Smart-Key-_002d-Delimited-Things">Smart Key - Delimited
Things</a></td></tr>
<tr><td colspan="4"> <hr></td></tr>
<tr><th><a name="Concept-Index_cp_letter-Z">Z</a></th><td></td><td></td></tr>
-<tr><td></td><td valign="top"><a href="#index-zoom-frame">zoom
frame</a>:</td><td> </td><td valign="top"><a
href="#HyControl">HyControl</a></td></tr>
-<tr><td></td><td valign="top"><a href="#index-zoom-window">zoom
window</a>:</td><td> </td><td valign="top"><a
href="#HyControl">HyControl</a></td></tr>
<tr><td></td><td valign="top"><a
href="#index-zooming">zooming</a>:</td><td> </td><td valign="top"><a
href="#HyControl">HyControl</a></td></tr>
<tr><td colspan="4"> <hr></td></tr>
</table>
diff --git a/man/hyperbole.info b/man/hyperbole.info
index fb7f152..3682d9d 100644
Binary files a/man/hyperbole.info and b/man/hyperbole.info differ
diff --git a/man/hyperbole.pdf b/man/hyperbole.pdf
index cd5c288..d74d0e4 100644
Binary files a/man/hyperbole.pdf and b/man/hyperbole.pdf differ
diff --git a/man/hyperbole.texi b/man/hyperbole.texi
index 877f757..5c5e513 100644
--- a/man/hyperbole.texi
+++ b/man/hyperbole.texi
@@ -151,8 +151,8 @@ WITHOUT ANY WARRANTY, without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.</P>
<PRE>
-Edition 6.0.2g
-Printed November 6, 2017.
+Edition 7.0.0
+Printed November 15, 2017.
Published by the Free Software Foundation, Inc.
Author: Bob Weiner
@@ -176,7 +176,7 @@ Printed November 6, 2017.
@center The Everyday Hypertextual Information Manager
address@hidden Edition 6.0.2g, November 6, 2017.
address@hidden Edition 7.0.0, November 15, 2017.
@sp 2
@noindent
@@ -460,7 +460,7 @@ Smart Keyboard Keys
@chapter Introduction
This edition of the GNU Hyperbole Manual is for use with any version
-6.0.2g or greater of GNU Hyperbole. Hyperbole runs atop GNU Emacs 24.3
+7.0.0 or greater of GNU Hyperbole. Hyperbole runs atop GNU Emacs 24.3
or higher. It will trigger an error if your Emacs is older.
This chapter summarizes the structure of the rest of the manual,
@@ -891,6 +891,7 @@ file. For example, @code{(add-hook 'hyperbole-init-hook
(lambda ()
@cindex button activation
@cindex activation
@cindex button help
address@hidden help, button
The Action Key generally selects entities, creates links and
activates buttons. The Assist Key generally provides help,
such as reporting on a button's attributes, or serves a complementary
@@ -1535,6 +1536,8 @@ it, @pxref{Smart Key Operations}.
@cindex button, explicit
@cindex button label
@cindex button name
address@hidden label, button
address@hidden name, button
Hyperbole creates and manages @dfn{explicit buttons} which perform
specific actions when activated (typically through a button press).
They look like this @samp{<(fake button)>}. They are quickly
@@ -1597,6 +1600,7 @@ asking for help on a button.
@cindex global button
@cindex button, global
@cindex button label
address@hidden label, button
Access to explicit buttons depends upon the information on your screen
since they are embedded within particular buffers. Sometimes it is
useful to activate buttons without regard to the information with which
@@ -2424,6 +2428,7 @@ Lisp can evaluate.
@section Button Type Precedence
@cindex button precedence
address@hidden precedence, buttons
@cindex button label overlap
Explicit buttons always take precedence over implicit buttons. Thus, if
a button selection is made which falls within both an explicit and
@@ -2486,14 +2491,15 @@ Hyperbole menus.
@node By Dragging, By Menu, Creation, Creation
@subsubsection Creation Via Action Key Drags
address@hidden explicit button, creation
address@hidden button, creation
address@hidden link, creation
address@hidden explicit button creation
address@hidden button creation
address@hidden creating buttons
address@hidden link creation
address@hidden creating links
address@hidden direct link creation
address@hidden mouse drag, link creation
@cindex drag
@cindex Action Key drag
address@hidden creating a link
address@hidden mouse drag, link creation
address@hidden direct link creation
The most efficient way to create an explicit link button interactively
is to use the Action Mouse Key to drag from a non-read-only button
source window to a window showing its desired link referent. More
@@ -2544,7 +2550,7 @@ Buffer without File link-to-buffer-tmp
@kindex C-u M-o
@kindex C-x o
@findex hkey-operate
address@hidden Action Key drag emulation
address@hidden emulation, Action Key drag
@cindex keyboard drag emulation
If you run Emacs under a window system and there is no prior key
binding on @bkbd{M-o} when you load Hyperbole, then you can emulate
@@ -2602,8 +2608,8 @@ Selection}, to select the link referent.
@node Renaming, Deletion, Creation, Utilizing Explicit Buttons
@subsection Renaming
address@hidden explicit button, renaming
address@hidden button, renaming
address@hidden explicit button renaming
address@hidden button renaming
Once an explicit button has been created, its label text must be
treated specially. Any inter-word spacing within the label may be
freely changed, as may happen when a paragraph is refilled, but a
@@ -2634,8 +2640,8 @@ file: @code{(global-set-key "\C-c\C-r" 'hui:ebut-rename)}.
@node Deletion, Modification, Renaming, Utilizing Explicit Buttons
@subsection Deletion
address@hidden explicit button, deleting
address@hidden button, deleting
address@hidden explicit button deletion
address@hidden button deletion
Ebut/Delete works similarly to the Rename command but deletes the
selected button. The button's delimiters are removed to confirm the
deletion. If the delete command is invoked with a prefix argument, then
@@ -2651,10 +2657,10 @@ prefer no confirmation.
@node Modification, Searching and Summarizing, Deletion, Utilizing Explicit
Buttons
@subsection Modification
address@hidden explicit button, modifying
address@hidden button, modifying
address@hidden explicit button modification
address@hidden button modification
@cindex Smart Mouse Key drag
address@hidden button, attributes
address@hidden button attributes
Ebut/Modify prompts you with each of the elements from the button's
attributes list and allows you to modify each in turn. Ebut/Edit does
the exact same thing and is there for people who prefer that term.
@@ -2668,9 +2674,9 @@ the keyboard. @xref{Creation}.
@node Searching and Summarizing, Buttons in Mail, Modification, Utilizing
Explicit Buttons
@subsection Searching and Summarizing
address@hidden explicit button, summarizing
address@hidden button, summarizing
address@hidden button, help
address@hidden explicit button summary
address@hidden button summary
address@hidden button help
The Ebut/Help menu may be used to summarize either a single explicit
button or all such buttons within a buffer. The buttons summarized may
then be activated directly from the summary.
@@ -2681,8 +2687,8 @@ the button at point. Ebut/Help/OrderedButs summarizes
the buttons in
alphabetical order. All of these summary commands eliminate duplicate
occurrences of buttons from their help displays.
address@hidden explicit button, searching
address@hidden button, searching
address@hidden explicit button searching
address@hidden button searching
Ebut/Search prompts for a search pattern and searches across all the
locations in which you have previously created explicit buttons. It
asks you whether to match to any part of a button label or to whole
@@ -2710,8 +2716,8 @@ Because this involves complex changes to mail support
functions, this
feature is disabled by default. Use the Cust/Msg-Toggle-Ebuts
minibuffer menu item to enable it.
address@hidden button, mailing
address@hidden button, posting
address@hidden button mailing
address@hidden button posting
@cindex mailing buttons
@cindex posting buttons
@cindex mail reader
@@ -2804,7 +2810,7 @@ described in @ref{Smart Key Argument Selection}.
@node Buttons in News, , Buttons in Mail, Utilizing Explicit Buttons
@subsection Buttons in News
address@hidden button, posting
address@hidden button posting
@cindex news reader/poster
@cindex posting news
@cindex Gnus
@@ -3038,6 +3044,7 @@ GrepFiles - Show numbered line matches for a
regexp in all
is given, limit search to only .el and .el.gz
files. Set @code{hypb:rgrep-command} to change the
grep command or options.
+
@item
LocateFiles - Prompt for a pattern and display a list of all
matching pathnames found throughout the file
@@ -3046,12 +3053,16 @@ LocateFiles - Prompt for a pattern and display a
list of all
the @code{locate} command. Within the resulting
*Locate* buffer, Find/Grep-Files will find matching lines
within only these paths (files and directories).
+
@item
MatchFileBuffers - Show numbered line matches for regexp in all file-based
buffers.
+
@item
OccurHere - Show numbered line matches for regexp from this buffer.
+
@item
RemoveLines - Following point, remove all lines that match regexp.
+
@item
SaveLines - Following point, keep only lines that match regexp.
@cindex menu, Find/Web
@@ -3060,6 +3071,7 @@ SaveLines - Following point, keep only lines that
match regexp.
@cindex web search
@kindex C-c /
@vindex hyperbole-web-search-browser-function
+
@item
Web/ - Select a search engine and term and search with them.
Hyperbole binds the key @bkbd{C-c /} for quick
@@ -3069,12 +3081,14 @@ Web/ - Select a search engine and term and
search with them.
which determines whether web search results are displayed
within Emacs or with an external web browser. 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:
+ found at @url{https://youtu.be/8lMlJed0-OM}.
+
+ The Find/Web menu looks like this:
+
@smallexample
@noindent
-Web> Amazon Bing Dictionary Elisp Facebook Google Hub(git) Images
- Maps RFCs StackOverflow Twitter Wikipedia Youtube
+Web> Amazon Bing Dictionary Elisp Facebook Google Hub(git)
+ Images Maps RFCs StackOverflow Twitter Wikipedia Youtube
@end smallexample
@end itemize
@@ -3082,9 +3096,8 @@ Web> Amazon Bing Dictionary Elisp Facebook Google
Hub(git) Images
@cindex menu, Gbut
@item Gbut/
All global button commands. Global buttons are accessed by name
-rather than by direct selection. The window-system-based Hyperbole
-menu also includes an activation menu item for each global button.
-
+rather than by direct selection. The Hyperbole menubar menu also
+includes an activation menu item for each global button.
@cindex menu item, Back-to-Prior-Location
@cindex menu item, Hist
@cindex history
@@ -3106,12 +3119,12 @@ a Hyperbole discussion mailing list.
@cindex menu, Koutline
@cindex menu, Kotl
@item Kotl/
-Autonumbered, structured outliner and hyper-node manager commands.
+Autonumbered, structured outliner commands with per-node hyperlink anchors.
@xref{Koutliner}.
@cindex menu, Rolo
@item Rolo/
-Hierarchical, multi-file rolo lookup and edit commands.
+Hierarchical, multi-file contact manager lookup and edit commands.
@xref{HyRolo}.
@cindex menu, Screen
@@ -3121,8 +3134,8 @@ Window, frame and buffer display control commands.
@xref{HyControl}.
@cindex menu, Window-Configurations
@cindex menu, WinConfig
@item Win/
-Window configuration management, such as adding and restoring window
-configurations by name. @xref{Window Configurations}.
+Window configuration management commands, such as adding and restoring
+window configurations by name. @xref{Window Configurations}.
@end table
@@ -3464,7 +3477,7 @@ Unbury the bottom buffer in the buffer list and display
it in the
selected window.
@cindex swapping
address@hidden buffer, swapping
address@hidden buffer, swap
@kindex screen, ~
@kitem ~
Swap two buffers between the selected window or frame and one other.
@@ -3473,9 +3486,7 @@ frame. In FRAMES mode, the second frame must have a
single window.
@cindex zooming
@cindex window, zoom
address@hidden zoom window
@cindex frame, zoom
address@hidden zoom frame
@findex zoom-frm.el
@kindex screen, Z
@kitem Z
@@ -5580,8 +5591,8 @@ intervention is required.
@node Operational and Storage Formats, Programmatic Button Creation, Button
Label Normalization, Explicit Button Technicalities
@subsection Operational and Storage Formats
address@hidden explicit button, formats
address@hidden explicit button, storage
address@hidden explicit button formats
address@hidden explicit button storage
@cindex storage manager
@cindex button attributes
@vindex hbut:current
@@ -6612,7 +6623,6 @@ To disable highlighting, change this setting in
@file{hsettings.el} or
use Hyperbole menu item, Cust/All-Options, and select the Hyperbole
Buttons group to edit its options.
address@hidden button highlighting, forcing
@findex hproperty:but-create
If you read in a file with explicit buttons before you load Hyperbole,
these buttons won't be highlighted. Load Hyperbole and then use
diff --git a/man/version.texi b/man/version.texi
index d0caa08..f9a2794 100644
--- a/man/version.texi
+++ b/man/version.texi
@@ -1,4 +1,4 @@
address@hidden UPDATED November 6, 2017
address@hidden UPDATED November 15, 2017
@set UPDATED-MONTH Nov 2017
address@hidden EDITION 6.0.2g
address@hidden VERSION 6.0.2g
address@hidden EDITION 7.0.0
address@hidden VERSION 7.0.0
- [elpa] externals/hyperbole 55a1f04 06/53: 2017-09-18 Bob Weiner <address@hidden>, (continued)
- [elpa] externals/hyperbole 55a1f04 06/53: 2017-09-18 Bob Weiner <address@hidden>, Robert Weiner, 2017/11/15
- [elpa] externals/hyperbole ff2c292 20/53: Minor bug fixes for Koutlines; updated Hyperbole manual version, Robert Weiner, 2017/11/15
- [elpa] externals/hyperbole 5d6b9cd 05/53: 2017-09-10 Bob Weiner <address@hidden>, Robert Weiner, 2017/11/15
- [elpa] externals/hyperbole ce6fa24 41/53: Updated HY-NEWS with all new features for next major release., Robert Weiner, 2017/11/15
- [elpa] externals/hyperbole 152e2be 47/53: Highlighted explicit buttons when yanked; fixed region location bugs with hmouse-drag-thing and region kill, copy and yank, Robert Weiner, 2017/11/15
- [elpa] externals/hyperbole 8fbfc1b 35/53: Renamed @ command functions to hycontrol-windows-grid. Updated manual and DEMO with newest commands., Robert Weiner, 2017/11/15
- [elpa] externals/hyperbole aba412a 32/53: HyControl changes: now a global minor mode; added @ window grid creation command; inverted selected mode-line for emphasis, Robert Weiner, 2017/11/15
- [elpa] externals/hyperbole bab59c8 25/53: V6.0.2d - Improved README and added git#=branch:file implicit button syntax., Robert Weiner, 2017/11/15
- [elpa] externals/hyperbole 7503a3d 37/53: Action Mouse Key drag to modeline splits destination window before displaying the target item/buffer; added css to format Hyperbole HTML manual, Robert Weiner, 2017/11/15
- [elpa] externals/hyperbole 1aec56c 27/53: Added drags between frames and outside Emacs, new mode-line drags, dired item drags,, Robert Weiner, 2017/11/15
- [elpa] externals/hyperbole 2be4dd0 48/53: Fixed a bunch of small issues and released Hyperbole 7.,
Robert Weiner <=
- [elpa] externals/hyperbole 9792af9 36/53: Added global {C-c @} binding. Fixed some mouse handling bugs. Mostly finalized DEMO and manual., Robert Weiner, 2017/11/15
- [elpa] externals/hyperbole 671408e 38/53: Prep and bug fixes for next major release; fixed Smart Mouse Key point location issue; renamed to kotl/kotl-autoloads.el, Robert Weiner, 2017/11/15
- [elpa] externals/hyperbole 705d254 43/53: Many bug fixes; added HyRolo DEMO section; many Hyperbole Manual updates including images, Robert Weiner, 2017/11/15
- [elpa] externals/hyperbole 6e80e7a 30/53: V6.0.2e: Rewrote HyControl for improved generality, event handling and to support key bindings., Robert Weiner, 2017/11/15
- [elpa] externals/hyperbole caf91d4 50/53: Merge branch 'master' of http://git.savannah.gnu.org/r/hyperbole into externals/hyperbole, Robert Weiner, 2017/11/15