[Top] [Contents] [Index] [ ? ]

Hyperbole User Manual



Hyperbole was designed and written by Bob Weiner. Motorola, Inc. funded and donated this work for free redistribution as part of the InfoDock integrated software engineering and productivity toolset. For information on how to obtain Hyperbole, 2.1 Obtaining.

This manual explains user operation and summarizes basic developer facilities of Hyperbole. This major release of Hyperbole concentrates on providing convenient access to information and control over its display. The Hyperbole outliner emphasizes flexible views and structure manipulation within bodies of information.

Hyperbole (pronounced Hi-purr-boe-lee) is an open, efficient, programmable information management and hypertext system. It is intended for everyday work on any UNIX platform supported by GNU Emacs. It works well with the versions of Emacs that support multiple X or NEXTSTEP windows: Emacs 19, XEmacs (formerly called Lucid Emacs) and Epoch. Hyperbole allows hypertext buttons to be embedded within unstructured and structured files, mail messages and news articles. It offers intuitive mouse-based control of information display within multiple windows. It also provides point-and-click access to Info manuals, ftp archives, Wide-Area Information Servers (WAIS), and the World-Wide Web (WWW) hypertext system through encapsulations of software that support these protocols.

Hyperbole consists of four parts:

@bullet{Info Management}
an interactive information management interface, including a powerful rolodex, which anyone can use. It is easy to pick up and use since it introduces only a few new mechanisms and provides user-level facilities through a menu interface, which you control from the keyboard or the mouse;

@bullet{Hypertext Outliner}
an outliner with multi-level autonumbering and permanent ids attached to each outline node for use as hypertext link anchors, plus flexible view specifications that can be embedded within links or used interactively;

@bullet{Button Types}
a set of hyper-button types that provides core hypertext and other behaviors. Users can make simple changes to button types and those familiar with Emacs Lisp can quickly prototype and deliver new types;

@bullet{Programming Library}
a set of programming library classes 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. Although Hyperbole was initially designed as a prototype, it has been engineered for real-world usage and is well structured.)

Hyperbole may be used simply for browsing through documents pre-configured with Hyperbole buttons, in which case, one can safely ignore most of the information in this manual. The `DEMO' file included in the Hyperbole distribution demonstrates many of Hyperbole's standard facilities. It offers a much less technical introduction for Hyperbole users by providing good examples of how buttons may be used and an introduction to the outliner.

So if this manual is too detailed for your taste, you can skip it entirely and just jump right into the demonstration, normally by typing {C-h h d d}, assuming Hyperbole has already been installed at your site. Otherwise, 2. Installation, for Hyperbole installation and configuration information.

Many users, however, will want to do more than browse with Hyperbole, e.g. create their own buttons. The standard Hyperbole button editing user interface is GNU Emacs-based, so a basic familiarity with the Emacs editing model is useful. The material covered in the GNU Emacs tutorial, normally bound to {C-h t} within Emacs, is more than sufficient as background. If some GNU Emacs terms are unfamiliar to you, section `Glossary' in the GNU Emacs Manual.

Before we delve into Hyperbole, a number of acknowledgments are in order. Peter Wegner has encouraged the growth in this work. Morris Moore has helped me pursue my own research visions and kept me striving for excellence. Doug Engelbart has shown me the bigger picture and continues to be an inspiration. His work provides a model from which I am beginning to draw. Kellie Clark and I jointly designed the Hyperbole outliner while sharing a life together. Chris Nuzum, as a user of Hyperbole, has helped demonstrate its power since its inception; he knows how to work with Hyperbole far better than I.

1. Introduction  
2. Installation  
3. Buttons  
4. Smart Keys  
5. Menus  
6. Entering Arguments  
7. Outliner  
8. Rolodex  
9. Window Configurations  
10. Developing with Hyperbole  
A. Glossary  
B. Smart Key Reference  
C. Outliner Keys  
D. Suggestion or Bug Reporting  
E. Questions and Answers  
F. Future Work  
G. References  
Key Binding Index  
Code and File Index  
Concept Index  
-- The Detailed Node Listing ---
1.1 Hyperbole Overview  
1.2 Mail Lists  
1.3 Manual Overview  
2.1 Obtaining  
2.2 Building  
2.3 Installing  
2.4 Configuring  
2.4.1 Internal Viewers  
2.4.2 External Viewers  
2.4.3 Link Variable Substitution  
2.4.4 Configuring Button Colors  
3.1 Explicit Buttons  
3.2 Global Buttons  
3.3 Implicit Buttons  
3.4 Action Types  
3.5 Button Type Precedence  
3.6 Button Files  
3.7 Utilizing Explicit Buttons  
Utilizing Explicit Buttons
3.7.1 Creation  
3.7.2 Renaming  
3.7.3 Deletion  
3.7.4 Modification  
3.7.5 Location  
3.7.6 Buttons in Mail  
3.7.7 Buttons in News  
Creation Creation Via Action Key Drags Creation Via Menus  
7.1 Menu Commands  
7.2 Creating Outlines  
7.3 Autonumbering  
7.4 Idstamps  
7.5 Editing  
7.6 Viewing  
7.7 Links  
7.8 Cell Attributes  
7.9 Outliner History  
7.5.1 Adding and Killing  
7.5.3 Moving Around  
7.5.2 Relocating and Copying  
7.5.4 Filling  
7.5.5 Transposing  
7.5.6 Splitting and Appending  
7.5.7 Inserting and Importing  
7.6.1 Hiding and Showing  
7.6.2 View Specs  
8.1 Rolo Concepts  
8.2 Rolo Menu  
8.3 Rolo Keys  
8.4 Rolo Settings  
Developing with Hyperbole
10.1 Hook Variables  
10.2 Creating Types  
10.3 Explicit Button Technicalities  
10.4 Encapsulating Systems  
10.5 Embedding Hyperbole  
Creating Types
10.2.1 Action Type Creation  
10.2.2 Implicit Button Types  
Explicit Button Technicalities
10.3.1 Button Label Normalization  
10.3.2 Operational and Storage Formats  
10.3.3 Programmatic Button Creation  
Smart Key Reference
B.1 Smart Mouse Keys  
B.2 Smart Keyboard Keys  

This document was generated by XEmacs Webmaster on October, 2 2007 using texi2html