annotate man/hyperbole.texi @ 24:4103f0995bd7 r19-15b95

Import from CVS: tag r19-15b95
author cvs
date Mon, 13 Aug 2007 08:51:03 +0200
parents 49a24b4fd526
children c53a95d3c46d
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1 \input texinfo
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2 @c
24
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
3 @c FILE: hyperbole.texi
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
4 @c SUMMARY: The Hyperbole User Manual for V4
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
5 @c USAGE: Hardcopy man from TeX; Info man from `texinfo-format-buffer'.
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6 @c
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
7 @c AUTHOR: Bob Weiner
24
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
8 @c
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
9 @c ORG: InfoDock Associates. We sell corporate support and
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
10 @c development contracts for InfoDock, Emacs and XEmacs.
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
11 @c E-mail: <info@infodock.com> Web: http://www.infodock.com
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
12 @c Tel: +1 408-243-3300
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
13 @c
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
14 @c ORIG-DATE: 6-Nov-91 at 11:18:03
24
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
15 @c LAST-MOD: 20-Feb-97 at 12:36:16 by Bob Weiner
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
16
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
17 @c %**start of header (This is for running Texinfo on a region.)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
18 @setfilename ../info/hyperbole.info
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
19 @settitle Hyperbole User Manual
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
20 @c %**end of header (This is for running Texinfo on a region.)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
21 @synindex vr fn
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
22
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
23 @iftex
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
24 @finalout
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
25 @end iftex
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
26
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
27 @titlepage
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
28 @sp 4
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
29 @center @titlefont{Hyperbole Manual}
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
30 @sp 1
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
31 @center Everyday Information Management
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
32 @sp 5
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
33 @center Bob Weiner
24
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
34 @center InfoDock Associates
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
35 @sp 1
24
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
36 @center E-mail: <hyperbole@@infodock.com> (This is a mailing list.)
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
37 @sp 2
24
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
38 @center Edition 4.02
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
39 @sp 2
24
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
40 @center February 19, 1997
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
41
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
42 @page
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
43 @vskip 0pt plus 1filll
24
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
44 Copyright @copyright{} 1991, 1992, 1993, 1994, 1995, 1996, 1997 Free Software Foundation, Inc.
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
45
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
46 All trademarks referenced herein are trademarks of their respective
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
47 holders.
24
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
48
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
49 InfoDock Associates, the developer of Hyperbole and InfoDock (an industrial
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
50 quality turn-key version of XEmacs), donates its work on Hyperbole to the
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
51 Free Software Foundation and makes it freely available for worldwide
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
52 distribution.
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
53
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
54 InfoDock Associates is a commercial firm dedicated to radical productivity
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
55 improvement in technical environments, whether in software development or
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
56 other knowledge intensive disciplines. Our initial offerings include high
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
57 quality commercial support, training, books and custom package development
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
58 for InfoDock, XEmacs or GNU Emacs on a variety of platforms.
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
59
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
60 @example
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
61 E-mail: <info@@infodock.com>
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
62 Web: http://www.infodock.com
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
63 Tel: +1 408-243-3300
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
64 @end example
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
65
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
66 @setchapternewpage odd
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
67 @end titlepage
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
68 @page
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
69
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
70 @node Top, Introduction, (dir), (dir)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
71 @c node-name, next, previous, up
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
72 @unnumbered Preface
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
73
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
74 @ifinfo
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
75 @noindent
24
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
76 Copyright @copyright{} 1991, 1992, 1993, 1994, 1995, 1996, 1997 Free Software Foundation, Inc.
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
77
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
78 All trademarks referenced herein are trademarks of their respective holders.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
79
24
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
80 InfoDock Associates, the developer of Hyperbole and InfoDock (an industrial
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
81 quality turn-key version of XEmacs), donates its work on Hyperbole to the
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
82 Free Software Foundation and makes it freely available for worldwide
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
83 distribution.
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
84
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
85 InfoDock Associates is a commercial firm dedicated to radical productivity
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
86 improvement in technical environments, whether in software development or
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
87 other knowledge intensive disciplines. Our initial offerings include high
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
88 quality commercial support, training, books and custom package development
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
89 for InfoDock, XEmacs or GNU Emacs on a variety of platforms.
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
90
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
91 @example
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
92 E-mail: <info@@infodock.com>
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
93 Web: http://www.infodock.com
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
94 Tel: +1 408-243-3300
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
95 @end example
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
96
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
97 @end ifinfo
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
98 This edition of the Hyperbole User Manual is for use with any version
24
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
99 4.02 or greater of Hyperbole.
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
100
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
101 Hyperbole is free software; you can use it, redistribute it and/or modify it
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
102 without fee under the terms of the GNU General Public License as published by
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
103 the Free Software Foundation; either version 2, or (at your option) any later
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
104 version.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
105
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
106 Hyperbole is distributed in the hope that it will be useful, but WITHOUT ANY
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
107 WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
108 A PARTICULAR PURPOSE. See the GNU General Public License for more details.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
109
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
110 You should have received a copy of the GNU General Public License
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
111 along with GNU Emacs or XEmacs; see the file COPYING. If not, write to
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
112 the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
113
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
114 @cindex credits
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
115 @cindex InfoDock, obtaining
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
116 @cindex Hyperbole, obtaining
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
117 @cindex anonymous ftp
24
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
118 Hyperbole was designed and written by Bob Weiner of InfoDock Associates.
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
119 Motorola, Inc@. helped fund early work. For information on how to
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
120 obtain Hyperbole, @ref{Obtaining}.
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
121
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
122 This manual explains user operation and summarizes basic developer
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
123 facilities of Hyperbole. This major release of Hyperbole concentrates
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
124 on providing convenient access to information and control over its
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
125 display. The Hyperbole outliner emphasizes flexible views and structure
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
126 manipulation within bodies of information.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
127
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
128 @cindex Hyperbole
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
129 @cindex hypertext
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
130 @cindex Emacs Lisp
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
131 @cindex Emacs 19
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
132 @cindex Epoch
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
133 @cindex XEmacs
24
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
134 Hyperbole (pronounced Hi-per-bo-lee) is an open, efficient, programmable
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
135 information management and hypertext system. It is intended for
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
136 everyday work on any UNIX platform supported by GNU Emacs. It works
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
137 well with the versions of Emacs that support multiple X or NEXTSTEP
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
138 windows: Emacs 19, XEmacs and Epoch. Hyperbole allows hypertext buttons
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
139 to be embedded within unstructured and structured files, mail messages
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
140 and news articles. It offers intuitive mouse-based control of
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
141 information display within multiple windows. It also provides
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
142 point-and-click access to Info manuals, ftp archives, Wide-Area
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
143 Information Servers (WAIS), and the World-Wide Web (WWW) hypertext
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
144 system through encapsulations of software that support these protocols.
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
145
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
146 @noindent
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
147 Hyperbole consists of four parts:
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
148
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
149 @table @bullet
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
150 @item Info Management
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
151 an interactive information management interface, including a powerful
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
152 rolodex, which anyone can use. It is easy to pick up and use since it
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
153 introduces only a few new mechanisms and provides user-level facilities
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
154 through a menu interface, which you control from the keyboard or the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
155 mouse;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
156
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
157 @item Hypertext Outliner
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
158 an outliner with multi-level autonumbering and permanent ids attached to
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
159 each outline node for use as hypertext link anchors, plus flexible view
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
160 specifications that can be embedded within links or used interactively;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
161
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
162 @item Button Types
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
163 a set of hyper-button types that provides core hypertext and other
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
164 behaviors. Users can make simple changes to button types and those
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
165 familiar with Emacs Lisp can quickly prototype and deliver new types;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
166
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
167 @item Programming Library
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
168 a set of programming library classes for system developers who want to
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
169 integrate Hyperbole with another user interface or as a back-end to a
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
170 distinct system. (All of Hyperbole is written in Emacs Lisp for ease of
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
171 modification. Although Hyperbole was initially designed as a prototype,
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
172 it has been engineered for real-world usage and is well structured.)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
173 @end table
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
174
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
175 @cindex GNU Emacs
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
176 @kindex C-h t
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
177 @vindex file, DEMO
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
178 @cindex demonstration
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
179 @cindex button demo
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
180 Hyperbole may be used simply for browsing through documents
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
181 pre-configured with Hyperbole buttons, in which case, one can safely
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
182 ignore most of the information in this manual. The @file{DEMO} file
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
183 included in the Hyperbole distribution demonstrates many of Hyperbole's
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
184 standard facilities. It offers a much less technical introduction for
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
185 Hyperbole users by providing good examples of how buttons may be
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
186 used and an introduction to the outliner.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
187
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
188 So if this manual is too detailed for your taste, you can skip it
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
189 entirely and just jump right into the demonstration, normally by typing
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
190 @{@kbd{C-h h d d}@}, assuming Hyperbole has already been installed at
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
191 your site. Otherwise, @ref{Installation}, for Hyperbole installation
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
192 and configuration information.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
193
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
194 Many users, however, will want to do more than browse with Hyperbole,
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
195 e.g@. create their own buttons. The standard Hyperbole button editing
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
196 user interface is GNU Emacs-based, so a basic familiarity with the Emacs
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
197 editing model is useful. The material covered in the GNU Emacs
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
198 tutorial, normally bound to @{@kbd{C-h t}@} within Emacs, is more than
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
199 sufficient as background. If some GNU Emacs terms are unfamiliar to
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
200 you, @ref{Glossary, Emacs Glossary,, emacs, the GNU Emacs Manual}.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
201
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
202 Before we delve into Hyperbole, a number of acknowledgments are in
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
203 order. Peter Wegner has encouraged the growth in this work. Morris
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
204 Moore has helped me pursue my own research visions and kept me striving
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
205 for excellence. Doug Engelbart has shown me the bigger picture and
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
206 continues to be an inspiration. His work provides a model from which I
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
207 am beginning to draw. Kellie Clark and I jointly designed the Hyperbole
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
208 outliner while sharing a life together. Chris Nuzum, as a user of
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
209 Hyperbole, has helped demonstrate its power since its inception; he
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
210 knows how to work with Hyperbole far better than I.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
211
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
212 @menu
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
213 * Introduction::
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
214 * Installation::
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
215 * Buttons::
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
216 * Smart Keys::
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
217 * Menus::
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
218 * Entering Arguments::
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
219 * Outliner::
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
220 * Rolodex::
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
221 * Window Configurations::
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
222 * Developing with Hyperbole::
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
223 * Glossary::
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
224 * Smart Key Reference::
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
225 * Outliner Keys::
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
226 * Suggestion or Bug Reporting::
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
227 * Questions and Answers::
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
228 * Future Work::
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
229 * References::
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
230 * Key Binding Index::
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
231 * Code and File Index::
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
232 * Concept Index::
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
233
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
234 --- The Detailed Node Listing ---
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
235
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
236 Introduction
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
237
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
238 * Hyperbole Overview::
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
239 * Mail Lists::
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
240 * Manual Overview::
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
241
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
242 Installation
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
243
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
244 * Obtaining::
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
245 * Building::
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
246 * Installing::
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
247 * Configuring::
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
248
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
249 Configuring
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
250
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
251 * Internal Viewers::
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
252 * External Viewers::
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
253 * Link Variable Substitution::
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
254 * Button Colors::
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
255
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
256 Buttons
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
257
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
258 * Explicit Buttons::
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
259 * Global Buttons::
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
260 * Implicit Buttons::
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
261 * Action Types::
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
262 * Button Type Precedence::
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
263 * Button Files::
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
264 * Utilizing Explicit Buttons::
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
265
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
266 Utilizing Explicit Buttons
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
267
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
268 * Creation::
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
269 * Renaming::
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
270 * Deletion::
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
271 * Modification::
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
272 * Location::
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
273 * Buttons in Mail::
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
274 * Buttons in News::
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
275
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
276 Creation
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
277
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
278 * By Dragging:: Creation Via Action Key Drags
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
279 * By Menu:: Creation Via Menus
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
280
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
281 Outliner
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
282
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
283 * Menu Commands::
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
284 * Creating Outlines::
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
285 * Autonumbering::
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
286 * Idstamps::
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
287 * Editing::
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
288 * Viewing::
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
289 * Links::
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
290 * Cell Attributes::
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
291 * Outliner History::
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
292
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
293 Editing
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
294
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
295 * Adding and Killing::
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
296 * Moving Around::
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
297 * Relocating and Copying::
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
298 * Filling::
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
299 * Transposing::
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
300 * Splitting and Appending::
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
301 * Inserting and Importing::
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
302
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
303 Viewing
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
304
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
305 * Hiding and Showing::
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
306 * View Specs::
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
307
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
308 Rolodex
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
309
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
310 * Rolo Concepts::
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
311 * Rolo Menu::
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
312 * Rolo Keys::
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
313 * Rolo Settings::
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
314
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
315 Developing with Hyperbole
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
316
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
317 * Hook Variables::
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
318 * Creating Types::
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
319 * Explicit Button Technicalities::
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
320 * Encapsulating Systems::
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
321 * Embedding Hyperbole::
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
322
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
323 Creating Types
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
324
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
325 * Action Type Creation::
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
326 * Implicit Button Types::
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
327
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
328 Explicit Button Technicalities
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
329
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
330 * Button Label Normalization::
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
331 * Operational and Storage Formats::
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
332 * Programmatic Button Creation::
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
333
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
334 Smart Key Reference
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
335
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
336 * Smart Mouse Keys::
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
337 * Smart Keyboard Keys::
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
338 @end menu
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
339
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
340 @node Introduction, Installation, Top, Top
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
341 @chapter Introduction
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
342
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
343 This chapter describes what Hyperbole is, lists some of its potential
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
344 applications, explains how to subscribe to its mail lists, and then
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
345 summarizes the structure of the rest of the manual.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
346
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
347 @menu
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
348 * Hyperbole Overview::
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
349 * Mail Lists::
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
350 * Manual Overview::
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
351 @end menu
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
352
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
353 @node Hyperbole Overview, Mail Lists, Introduction, Introduction
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
354 @section Hyperbole Overview
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
355 @cindex button
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
356 A Hyperbole user works with @emph{buttons} embedded within textual
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
357 documents; he may create, modify, move or delete buttons. Each button
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
358 performs a specific action, such as linking to a file or executing a
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
359 shell command.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
360
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
361 @cindex button, explicit
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
362 @cindex button, global
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
363 @cindex button, implicit
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
364 @cindex button category
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
365 @cindex explicit button
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
366 @cindex global button
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
367 @cindex implicit button
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
368 There are three categories of Hyperbole buttons:
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
369 @table @dfn
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
370 @item explicit buttons
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
371 created by Hyperbole, accessible from within a single document;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
372
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
373 @item global buttons
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
374 created by Hyperbole, accessible anywhere within a user's network of
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
375 documents;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
376
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
377 @item implicit buttons
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
378 created and managed by other programs or embedded within the structure
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
379 of a document, accessible from within a single document. Hyperbole
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
380 recognizes implicit buttons by contextual patterns given in their type
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
381 specifications (explained later).
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
382 @end table
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
383
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
384 Explicit Hyperbole buttons may be embedded within any type of text file.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
385 Implicit buttons may be recognized anywhere within a text file,
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
386 depending on the implicit button types that are available. All global
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
387 buttons are stored in a single location and activated by entering their
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
388 names, rather than by direct selection, the means used to activate
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
389 explicit and implicit buttons.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
390
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
391 @noindent
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
392 To summarize:
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
393
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
394 @example
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
395 Button Category Active Within Activation Means Managed By
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
396 ========================================================================
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
397 Explicit a single document direct selection Hyperbole
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
398 Global any document specifying its name Hyperbole
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
399 Implicit a matching context direct selection other tools
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
400 ========================================================================
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
401 @end example
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
402
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
403 @cindex terminal use
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
404 Hyperbole buttons may be clicked upon with a mouse to activate them or
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
405 to describe their actions. Thus, a user can always check how a button
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
406 will act before activating it. Buttons may also be activated from a
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
407 keyboard. (In fact, virtually all Hyperbole operations, including menu
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
408 usage, may be performed from any standard character terminal interface,
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
409 so one need not be anchored to a workstation all day). @xref{Smart
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
410 Keys}.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
411
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
412 @cindex Hyperbole features
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
413 Hyperbole does not enforce any particular hypertext or information
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
414 management model, but instead allows you to organize your information in
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
415 large or small chunks as you see fit. The Hyperbole outliner organizes
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
416 information hierarchies which may also contain links to external
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
417 information sources.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
418
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
419 @noindent
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
420 Some of Hyperbole's most important features include:
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
421
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
422 @itemize @bullet
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
423 @item
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
424 Buttons may link to information or may execute procedures, such as
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
425 starting or communicating with external programs;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
426
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
427 @item
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
428 One simply drags between a button source location and a link destination
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
429 to create or to modify a link button. The same result can be achieved
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
430 from the keyboard.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
431
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
432 @item
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
433 Buttons may be embedded within electronic mail messages;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
434
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
435 @item
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
436 Outlines allow rapid browsing, editing and movement of chunks of
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
437 information organized into trees (hierarchies);
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
438
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
439 @item
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
440 Other hypertext and information retrieval systems may be encapsulated
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
441 under a Hyperbole user interface (a number of samples are provided).
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
442 @end itemize
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
443
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
444 @cindex Hyperbole applications
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
445 @noindent
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
446 Typical Hyperbole applications include:
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
447
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
448 @table @strong
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
449 @item personal information management
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
450 Overlapping link paths provide a variety of views into an information space.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
451 A search facility locates buttons in context and permits quick selection.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
452
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
453 @item documentation and code browsing
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
454 Cross-references may be embedded within documentation. One can add a
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
455 point-and-click interface to existing documentation, link code with
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
456 associated design documents, or jump to the definition of an identifier
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
457 by selecting its name within code or documentation.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
458
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
459 @item brainstorming
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
460 The Hyperbole outliner, @xref{Outliner}, is an
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
461 effective tool for capturing ideas and then quickly reorganizing them in
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
462 a meaningful way. Links to related ideas are easy to create,
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
463 eliminating the need to copy and paste information into a single place.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
464
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
465 @item help/training systems
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
466 Tutorials containing buttons can show students how things work while
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
467 explaining the concepts, e.g@. an introduction to local commands. This
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
468 technique can be much more effective than written documentation alone.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
469
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
470 @item archive managers
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
471 Programs that manage archives from incoming information streams may be
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
472 supplemented by having them add topic-based buttons that link to the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
473 archive holdings. Users can then search and create their own links to
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
474 archive entries.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
475 @end table
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
476
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
477 @node Mail Lists, Manual Overview, Hyperbole Overview, Introduction
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
478 @section Mail Lists
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
479
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
480 If you maintain or use Hyperbole, you should consider joining one of the
24
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
481 two Hyperbole mailing lists. @xref{Menus}, and the description
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
482 of the the Msg/ menu item, for a convenient means of joining and mailing
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
483 to these lists.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
484
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
485 @cindex mail lists
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
486 @cindex e-mail
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
487 There are several Hyperbole-related mail addresses. Learn what each is
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
488 for before you mail to any of them.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
489
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
490 @cindex mail list requests
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
491 @cindex joining a mail list
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
492 @cindex subscribing to a mail list
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
493 @cindex unsubscribing from a mail list
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
494 @format
24
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
495 <hyperbole-request@@infodock.com>
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
496 <hyperbole-announce-request@@infodock.com>
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
497 @end format
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
498
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
499 @display
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
500 @strong{All} mail concerning administration of the Hyperbole mailing
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
501 lists should be sent to the appropriate one of these addresses. That
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
502 includes addition, change, or deletion requests. Don't consider sending
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
503 such a request to a Hyperbole mail list or people will wonder why you
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
504 don't know that all Internet mail lists have a -request address for
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
505 administrative requests.@refill
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
506
24
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
507 Use the following formats in the @emph{body} of your message to execute requests,
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
508 where you substitute your own values for the <> delimited items and items
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
509 enclosed in [] are optional.
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
510
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
511 subscribe <mail-list-name> [<your-email-address>]
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
512 or
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
513 unsubscribe <mail-list-name> [<your-email-address>]
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
514
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
515 For example:
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
516
24
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
517 To: hyperbole-request@@infodock.com
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
518 Subject: Used if a human happens to read your mail.
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
519
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
520 subscribe hyperbole joe@@nowhere.gov
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
521
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
522 To change your address, you must unsubscribe your old address with
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
523 once command and subscribe your new address with another command, though
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
524 you can embed multiple commands on separate lines within a single message.
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
525 @end display
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
526
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
527 @noindent
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
528 There are two Hyperbole-related mail lists. Subscribe to one or the other,
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
529 not to both.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
530
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
531 @cindex hyperbole mail list
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
532 @format
24
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
533 <hyperbole@@infodock.com>
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
534 @end format
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
535
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
536 @display
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
537 Mail list for discussion of all Hyperbole issues. Bug reports and
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
538 suggestions may also be sent here.@refill
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
539
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
540 @cindex e-mail, effective communication
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
541 @cindex effective communication
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
542 Always use your Subject and/or Summary: lines to state the position that
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
543 your message takes on the topic that it addresses.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
544
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
545 For example, send:
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
546
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
547 Subject: Basic bug in top-level minibuffer menu.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
548
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
549 rather than:
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
550
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
551 Subject: Hyperbole bug.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
552
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
553 Statements end with periods, questions with question marks (typically),
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
554 and high energy, high impact declarations with exclamation points. This
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
555 simple rule makes all e-mail communication much easier for recipients to
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
556 handle appropriately.@refill
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
557
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
558 @cindex Hyperbole version
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
559 @cindex Emacs version
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
560 @vindex emacs-version
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
561 If you ask a question, your subject line should end with a ?,
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
562 e.g@. "Subject: How can man page SEE ALSOs be made implicit buttons?" A
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
563 "Subject: Re: How can ..." then indicates an answer to the question.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
564 Question messages should normally include your Hyperbole and Emacs
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
565 version numbers and clearly explain your problem and surrounding issues.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
566 Otherwise, you will simply waste the time of those who may want to help
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
567 you. (Your top-level Hyperbole menu shows its version number and @{@kbd{M-x
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
568 emacs-version @key{RET}}@} gives the other.)@refill
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
569
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
570 If you ask questions, you should consider adding to the discussion by
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
571 telling people the kinds of work you are doing or contemplating doing
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
572 with Hyperbole. In this way, the list will not be overwhelmed by
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
573 messages that ask for, but provide no information.@refill
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
574 @end display
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
575
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
576 @cindex hyperbole-announce mail list
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
577 @format
24
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
578 <hyperbole-announce@@infodock.com>
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
579 @end format
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
580
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
581 @display
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
582 Those who don't want to participate in the discussion but want to hear
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
583 about bug fixes and new releases of Hyperbole should subscribe to this
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
584 list. Anyone on the `hyperbole' list is automatically on this one too,
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
585 so there is no need to subscribe to this one in that case. This list is
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
586 for official fixes and announcements so don't send your own fixes here.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
587 Send them to `hyperbole' instead.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
588 @end display
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
589
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
590
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
591 @node Manual Overview, , Mail Lists, Introduction
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
592 @section Manual Overview
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
593
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
594 Remember that the @file{DEMO} file included in the Hyperbole
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
595 distribution demonstrates many of Hyperbole's standard facilities,
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
596 (@pxref{Top, Preface}) for more details.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
597
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
598 @xref{Glossary}, for definitions of Hyperbole terms for quick
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
599 reference, so in some cases terms are not precisely defined within the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
600 text. Be sure to reference the glossary if a term is unclear to you.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
601 Although you need not have a keen understanding of all of these terms, a
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
602 quick scan of the Glossary should help throughout Hyperbole use.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
603
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
604 If you have a question, feature suggestion or bug report on Hyperbole,
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
605 follow the instructions given in @ref{Suggestion or Bug Reporting}. A few
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
606 commonly asked questions are answered in the manual, @ref{Questions and
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
607 Answers}. If you are interested in classic articles on hypertext,
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
608 @ref{References}.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
609
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
610 @xref{Installation}, for explanations of how to obtain, install, configure
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
611 and load Hyperbole for use.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
612
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
613 @xref{Buttons}, for an overview of Hyperbole buttons and how to use them.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
614
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
615 @xref{Smart Keys}, for an explanation of the innovative,
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
616 context-sensitive mouse and keyboard Action and Assist Keys offered by
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
617 Hyperbole. @xref{Smart Key Reference}, for a complete reference on what
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
618 the Action and Assist Keys do in each particular context that they
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
619 recognize.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
620
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
621 (Keep in mind as you read about how to use Hyperbole that in many cases,
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
622 it provides a number of overlapping interaction methods are provided to
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
623 support different work styles and hardware limitations. You need learn
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
624 only one with which you can become comfortable, in such instances.)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
625
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
626 @xref{Menus}, for summaries of Hyperbole menu commands and how to use
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
627 the minibuffer-based menus that work on dumb terminals.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
628
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
629 @xref{Entering Arguments}, for special support that Hyperbole provides for
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
630 entering arguments when prompted for them.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
631
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
632 @xref{Outliner}, for concept and usage information on the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
633 autonumbered, hypertextual outliner. A full summary of the outliner
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
634 commands that are bound to keys may be found in @ref{Outliner Keys}.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
635
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
636 @xref{Rolodex}, for concept and usage information on the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
637 rapid lookup, hierarchical, free text record management system included
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
638 with Hyperbole.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
639
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
640 @xref{Window Configurations}, for instructions on how to save and restore
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
641 the set of buffers and windows that appear with a frame. This feature
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
642 lets you switch among working contexts easily, even on a dumb terminal.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
643 Such configurations only last throughout your current editor session.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
644
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
645 Developers comfortable with Emacs Lisp will want to continue on through
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
646 to, @ref{Developing with Hyperbole}.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
647
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
648 @xref{Future Work}, for future directions in Hyperbole's evolution.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
649
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
650
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
651 @node Installation, Buttons, Introduction, Top
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
652 @chapter Installation
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
653
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
654 @cindex installation
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
655 Hyperbole must be installed at your site before you can use it. The
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
656 following sections explain how to obtain, install and configure
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
657 Hyperbole for use.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
658
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
659 @vindex file, hsite.el
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
660 @cindex customization, init
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
661 If you want to customize the basic Hyperbole initialization sequence for
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
662 yourself rather than the users at your site, you should make a personal
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
663 copy of the @file{hsite.el} file, modify it the way you want, and then
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
664 load it. (If you are familiar with Emacs Lisp, @ref{Hook Variables}.)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
665
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
666 @menu
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
667 * Obtaining::
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
668 * Building::
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
669 * Installing::
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
670 * Configuring::
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
671 @end menu
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
672
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
673 @node Obtaining, Building, Installation, Installation
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
674 @section Obtaining
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
675
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
676 @cindex ftp
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
677 @cindex anonymous ftp
24
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
678 Hyperbole can be obtained via anonymous ftp on the Internet from:
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
679
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
680 @file{ftp://ftp.xemacs.org/pub/infodock}.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
681
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
682 @cindex downloading Hyperbole
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
683 @cindex obtaining Hyperbole
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
684 @cindex Hyperbole, obtaining
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
685 @noindent
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
686 Here are detailed instructions for downloading and unpacking Hyperbole.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
687
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
688 Move to a directory below which you want the @file{hyperbole} directory to
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
689 be created. Unpacking the Hyperbole archive will create the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
690 @file{hyperbole} directory and will place all of the files below it.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
691
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
692 @example
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
693 cd <LOCAL-EMACS-LISP-DIR>
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
694 @end example
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
695
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
696 @noindent
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
697 Ftp to ftp.xemacs.org (Internet Host ID = 128.174.252.16):
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
698
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
699 @example
24
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
700 prompt> ftp ftp.xemacs.org (If this doesn't work, try `ftp xemacs.org'.)
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
701 @end example
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
702
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
703 @noindent
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
704 Login as @emph{anonymous} with your own @emph{<user-id>@@<site-name>} as
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
705 a password.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
706
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
707 @example
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
708 Name (ftp.xemacs.org): anonymous
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
709 331 Guest login ok, send EMAIL address (e.g@. user@@host.domain)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
710 as password.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
711 Password:
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
712 230 Guest login ok, access restrictions apply.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
713 @end example
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
714
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
715 @noindent
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
716 Move to the Hyperbole directory:
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
717
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
718 @example
24
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
719 ftp> cd pub/xemacs/infodock
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
720 @end example
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
721
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
722 @noindent
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
723 Set your transfer mode to binary:
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
724
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
725 @example
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
726 ftp> bin
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
727 200 Type set to I.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
728 @end example
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
729
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
730 @noindent
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
731 Turn off prompting:
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
732
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
733 @example
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
734 ftp> prompt
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
735 Interactive mode off.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
736 @end example
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
737
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
738 @noindent
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
739 Retrieve just the Hyperbole archive and any diff-based patches (there may not
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
740 be any patches):
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
741
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
742 @example
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
743 ftp> mget hyperbole*
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
744 ftp> mget hdiff*
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
745 @end example
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
746
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
747 @noindent
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
748 Close the ftp connection:
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
749
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
750 @example
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
751 ftp> quit
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
752 221 Goodbye.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
753 @end example
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
754
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
755 @cindex gzcat
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
756 @cindex zcat
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
757 @cindex gunzip
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
758 @cindex tar archive
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
759 @cindex uncompressing archives
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
760 @cindex unpacking archives
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
761 @noindent
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
762 Unpack the tar archive using the GNU version of the @code{zcat} program,
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
763 sometimes called @code{gzcat} or the @code{gunzip} program:
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
764
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
765 @example
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
766 zcat hyperbole*tar.gz | tar xvf -
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
767 or
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
768 gunzip hyperbole*tar.gz; tar xvf hyperbole*tar
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
769 @end example
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
770
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
771 @noindent
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
772 Apply any patches you retrieved:
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
773
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
774 @example
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
775 cd hyperbole; patch < <patch-file>
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
776 @end example
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
777
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
778
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
779 @node Building, Installing, Obtaining, Installation
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
780 @section Building
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
781
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
782 @vindex file, Makefile
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
783 @vindex file, hsite.el
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
784 @cindex Hyperbole, building
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
785 @cindex building Hyperbole
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
786 The following explains how to Use the Hyperbole @file{Makefile} to
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
787 compile any needed code, to generate the @file{hsite.el} file used for
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
788 site-specific Hyperbole customization, and to produce printable
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
789 documentation.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
790
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
791 @vindex EMACS, environment variable
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
792 @cindex compiling Lisp
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
793 @cindex Lisp compilation
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
794 Edit the line near the top of @file{Makefile} that represents the emacs
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
795 version that you use, so that it corresponds to the emacs executable
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
796 name used on your system. Then immediatly below there, set the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
797 @var{EMACS} variable to the variable name for the emacs that you will
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
798 use to compile the Hyperbole Lisp files.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
799
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
800 @vindex SITE-PRELOADS, environment variable
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
801 You may also have to set the @var{SITE-PRELOADS} variable defined further down
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
802 in the file; follow the instructions that precede the @var{SITE-PRELOADS =}
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
803 line. Make these changes now and save the @file{Makefile}.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
804
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
805 @cindex HYPERBOLE-DIR
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
806 The following instructions use the term @file{<HYPERBOLE-DIR>/} to refer
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
807 to your @file{hyperbole/} directory, so substitute your own value.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
808
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
809 @noindent
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
810 To install Hyperbole for use with InfoDock, XEmacs, GNU Emacs or Epoch, from
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
811 a shell:
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
812
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
813 @example
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
814 cd <HYPERBOLE-DIR>; make
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
815 @end example
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
816
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
817 @noindent
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
818 All of the .elc compiled Lisp files are already built for XEmacs and V19, so
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
819 this build will finish very quickly. If you really want to rebuild all of
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
820 the .elc files, use:
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
821
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
822 @example
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
823 cd <HYPERBOLE-DIR>; make all-elc
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
824 @end example
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
825
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
826 @cindex Postscript
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
827 @cindex manual, generating Postscript
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
828 @vindex file, man/hyperbole.ps
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
829 @noindent
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
830 To produce the Postscript version of the Hyperbole manual, you must have
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
831 the TeX formatter on your system:
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
832
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
833 @example
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
834 cd <HYPERBOLE-DIR>; make ps
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
835 @end example
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
836
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
837 @noindent
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
838 To install Hyperbole for use with GNU Emacs V18 or Epoch:
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
839
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
840 @example
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
841 cd <HYPERBOLE-DIR>; make all-elc-v18
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
842 @end example
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
843
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
844 @noindent
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
845 This will produce a complete set of Emacs V18 .elc files.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
846
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
847
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
848 @node Installing, Configuring, Building, Installation
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
849 @section Installing
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
850
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
851 @cindex configuration
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
852 You may want to explore the Hyperbole configuration options before
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
853 installing it. @xref{Configuring}. If you just want to get up and
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
854 running quickly, however, there is no need to configure anything, just
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
855 follow these instructions to install Hyperbole.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
856
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
857 @cindex Hyperbole, initializing
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
858 @cindex initializing Hyperbole
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
859 @cindex installation
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
860 @cindex site initialization
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
861 @vindex file, hsite.el
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
862 @vindex file, ~/.emacs
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
863 Add the following lines to a site initialization file such as
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
864 @file{site-start.el} to set up so that all users have Hyperbole
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
865 loaded for them when they run Emacs. Otherwise, each user will have to
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
866 add these lines to his own @file{~/.emacs} initialization file.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
867
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
868 @cindex autoloading Hyperbole
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
869 @cindex Hyperbole, autoloading
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
870 @noindent
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
871 To autoload Hyperbole so that it loads only when needed:
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
872
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
873 @vindex hyperb:dir
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
874 @vindex file, hversion.el
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
875 @vindex file, hyperbole.el
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
876 @lisp
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
877 (defvar hyperb:dir "<HYPERBOLE-DIR>/")
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
878 "Directory where the Hyperbole executable code is kept.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
879 It must end with a directory separator character.")
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
880
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
881 (load (expand-file-name "hversion" hyperb:dir))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
882 (load (expand-file-name "hyperbole" hyperb:dir))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
883 @end lisp
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
884
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
885 @cindex loading Hyperbole
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
886 @cindex Hyperbole, loading
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
887 This establishes a few key bindings and sets up Hyperbole to
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
888 automatically load whenever you activate its menu. If you would rather
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
889 have the whole Hyperbole system loaded when you start up so that you can
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
890 always use the Smart Keys and other facilities, add the additional line:
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
891
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
892 @lisp
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
893 (require 'hsite)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
894 @end lisp
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
895
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
896 If you use mouse keys, be sure to add the above lines after any setup of
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
897 mouse key bindings, to ensure that Hyperbole's mouse keys are properly
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
898 initialized. @xref{Smart Keys}, for further details. If you use any
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
899 Hyperbole mail or news support, @ref{Buttons in Mail}, be certain to
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
900 perform all of your personal mail/news initializations before the point
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
901 at which you load Hyperbole. Otherwise, the mail/news support may not
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
902 be configured properly. For example, if you use the Emacs add-on
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
903 Supercite package, its setup should come before Hyperbole initialization.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
904
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
905 @cindex Hyperbole manual
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
906 @noindent
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
907 The Hyperbole Manual is included in the distribution in two forms:
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
908
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
909 @cindex Info manual
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
910 @cindex Texinfo manual
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
911 @vindex file, man/hyperbole.info
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
912 @vindex file, man/hyperbole.texi
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
913 @example
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
914 @file{man/hyperbole.info} - online version
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
915 @file{man/hyperbole.texi} - source form
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
916 @end example
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
917
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
918 @vindex Info-directory-list
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
919 @noindent
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
920 To add pointers to the Info version of the Hyperbole manual within your
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
921 Info directory, follow these instructions. If @var{Info-directory-list}
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
922 is bound as a variable within your Emacs (all versions except V18 and
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
923 Epoch), then you can simply set it so that <HYPERBOLE-DIR> is an element
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
924 in the list:
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
925
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
926 @lisp
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
927 (setq Info-directory-list (cons "<HYPERBOLE-DIR>" Info-directory-list))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
928 @end lisp
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
929
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
930 @noindent
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
931 Otherwise, from a shell:
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
932
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
933 @vindex Info-directory
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
934 @example
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
935 cd to the directory given by your @var{Info-directory} variable
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
936 rm hyperbole.info*; cp <HYPERBOLE-DIR>/man/hyperbole.info* .
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
937 @end example
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
938
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
939 @noindent
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
940 For all versions of Emacs, add an Info menu entry for the Hyperbole
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
941 manual in your Info @file{dir} file (the `*' should be placed in the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
942 first column of the file):
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
943
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
944 @example
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
945 * Hyperbole:: GNU Emacs-based everyday information management system.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
946 Use @{C-h h d d@} for a demonstration. Includes context-sensitive
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
947 mouse and keyboard support, a powerful rolodex, an autonumbered
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
948 outliner with hyperlink anchors for each outline cell, and extensible
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
949 hypertext facilities including hyper-links in mail and news messages.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
950 @end example
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
951
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
952 @cindex invoking Hyperbole
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
953 @cindex starting Hyperbole
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
954 @cindex Hyperbole, starting
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
955 @cindex Hyperbole main menu
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
956 @kindex C-h h
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
957 @findex hyperbole
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
958 That's all there is to the installation. Once Hyperbole has been
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
959 installed for use at your site, you can invoke it with @{@kbd{C-h h}@}
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
960 or @{@kbd{M-x hyperbole @key{RET}}@} to bring up the Hyperbole main menu
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
961 in the minibuffer window.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
962
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
963
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
964 @node Configuring, , Installing, Installation
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
965 @section Configuring
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
966
24
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
967 @cindex menu, Cust
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
968 @cindex customization
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
969 Major Hyperbole user options can be set from the window-system-based
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
970 Customization submenu below the Hyperbole menu. Alternatively, the
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
971 minibuffer-based menu, Cust/ may be used.
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
972
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
973 @cindex configuration
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
974 @vindex file, hyperbole.el
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
975 @vindex file, hsite.el
24
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
976 There are many additional Hyperbole configuration options that may be
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
977 changed by editing the @file{hyperbole.el} and @file{hsite.el} files in
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
978 the @file{hyperbole/} directory. The following sections discuss the
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
979 configuration options most likely to be of interest to users.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
980
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
981 @menu
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
982 * Internal Viewers::
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
983 * External Viewers::
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
984 * Link Variable Substitution::
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
985 * Button Colors::
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
986 @end menu
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
987
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
988
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
989 @node Internal Viewers, External Viewers, Configuring, Configuring
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
990 @subsection Internal Viewers
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
991 @vindex hpath:display-alist
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
992 @vindex file, hsite.el
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
993 @cindex file display function
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
994 @cindex display function
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
995 @cindex internal viewer
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
996 @cindex link, display function
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
997 When given a file name, Hyperbole will by default display the file for
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
998 editing within an Emacs buffer. The @var{hpath:display-alist} variable
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
999 can be used to specify file name patterns, such as matching suffixes,
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1000 which will invoke a special Emacs Lisp function to display any matching
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1001 files within Emacs. This can be used to format raw data files for
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1002 convenient display.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1003
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1004 Configure the @var{hpath:display-alist} variable in @file{hsite.el}.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1005 Its value is an association list whose elements are
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1006 (<file-name-regular-expression> . <function-of-one-arg>) pairs. Any
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1007 path whose name matches a <file-name-regular-expression> will be
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1008 displayed by calling the associated <function-of-one-arg> with the file
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1009 name as the argument.@refill
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1010
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1011 @xref{External Viewers}, for instructions on associating file names with
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1012 external, window-system specific viewers.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1013
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1014 @node External Viewers, Link Variable Substitution, Internal Viewers, Configuring
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1015 @subsection External Viewers
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1016 @vindex hpath:find-alist
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1017 @vindex file, hsite.el
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1018 @cindex window system
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1019 @cindex external program
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1020 @cindex external viewer
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1021 @cindex link, viewer program
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1022 If you will be using Hyperbole under a window system, you may want to
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1023 configure the @var{hpath:find-alist} variable in @file{hsite.el} to
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1024 support hyperlinks which open files using non-Emacs tools, e.g@. a
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1025 fax reader or a bitmap viewer.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1026
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1027 The value of @var{hpath:find-alist} is determined when Hyperbole is
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1028 initialized based upon the current window system and the version of
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1029 Emacs in use. The value is an association list whose elements are
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1030 (<file-name-regular-expression> . <viewer-program>) pairs. Any path
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1031 whose name matches a <file-name-regular-expression> will be
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1032 displayed using the corresponding viewer-program. If a <viewer-program>
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1033 entry contains a @code{%s} string, the filename to display will be
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1034 substituted at that point within the string. Otherwise, the filename
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1035 will be appended to the <viewer-program> entry. See the "x-suffixes"
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1036 and "nextstep-suffixes" settings within the definition of
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1037 @var{hpath:find-alist} as examples.@refill
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1038
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1039 @node Link Variable Substitution, Button Colors, External Viewers, Configuring
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1040 @subsection Link Variable Substitution
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1041 @vindex hpath:variables
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1042 @cindex environment variables
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1043 @cindex Emacs Lisp variables
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1044 @cindex Lisp variables
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1045 Another variable to consider modifying in the @file{hsite.el} file is
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1046 @var{hpath:variables}. This variable consists of a list of Emacs Lisp
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1047 variable names, each of which may have a pathname or a list of pathnames
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1048 as a value. Whenever a Hyperbole file or directory link button is
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1049 created, its pathname is compared against the values in
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1050 @var{hpath:variables}. The first match found, if any, is selected and
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1051 its associated variable name is substituted into the link pathname, in
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1052 place of its literal value. When the link is resolved (the button is
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1053 activated), Hyperbole replaces each variable with the first matching
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1054 value from this list. (Environment variables are also replaced whenever
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1055 link paths are resolved.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1056
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1057 This permits sharing of links over wide areas, where the variable values
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1058 may differ between link creator and link activator. The entire process
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1059 is wholly transparent to the user; it is explained here simply to help
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1060 you in deciding whether or not to modify the value of
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1061 @var{hpath:variables}.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1062
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1063 @node Button Colors, , Link Variable Substitution, Configuring
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1064 @subsection Configuring Button Colors
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1065 @cindex XEmacs support
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1066 @cindex Emacs 19 support
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1067 @cindex Epoch support
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1068 @cindex button highlighting
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1069 @cindex button flashing
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1070 @vindex file, hui-ep*.el
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1071 @findex hproperty:cycle-but-color
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1072 When Hyperbole is run under a window system together with Emacs 19,
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1073 XEmacs or Epoch, it automatically highlights any explicit buttons in
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1074 a buffer and makes them flash when selected. The main setting
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1075 you may want change is the selection of a color (or style) for button
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1076 highlighting and button flashing. See the @file{hui-*-b*.el} files for
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1077 lists of potential colors and the code which supports this behavior. A
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1078 call to @code{(hproperty:cycle-but-color)} within a Hyperbole
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1079 initialization sequence in the @file{hsite.el} file changes the color
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1080 used to highlight and flash explicit buttons.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1081
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1082 @cindex button emphasis
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1083 @vindex hproperty:but-emphasize-p
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1084 @vindex file, hsite.el
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1085 Additionally, under XEmacs and Emacs 19, if @var{hproperty:but-emphasize-p}
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1086 is set to @code{t} in @file{hsite.el}, then whenever the mouse pointer
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1087 moves over an explicit button, it will be emphasized in a different
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1088 color or style. This emphasis is in addition to any non-mouse-sensitive
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1089 button highlighting.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1090
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1091 @cindex button highlighting, forcing
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1092 @findex hproperty:but-create
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1093 If you read in a file with explicit buttons before you load Hyperbole,
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1094 these buttons won't be highlighted. Load Hyperbole and then use
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1095 @code{M-x hproperty:but-create @key{RET}} to highlight the buttons in
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1096 the current buffer.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1097
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1098
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1099 @node Buttons, Smart Keys, Installation, Top
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1100 @chapter Buttons
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1101
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1102 This chapter explains the user-level notion of Hyperbole buttons.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1103 Hyperbole buttons that are stored in files persist across Emacs
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1104 sessions, so they provide a convenient means of linking from one
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1105 information source to another.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1106
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1107 @menu
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1108 * Explicit Buttons::
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1109 * Global Buttons::
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1110 * Implicit Buttons::
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1111 * Action Types::
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1112 * Button Type Precedence::
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1113 * Button Files::
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1114 * Utilizing Explicit Buttons::
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1115 @end menu
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1116
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1117 @node Explicit Buttons, Global Buttons, Buttons, Buttons
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1118 @section Explicit Buttons
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1119
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1120 @cindex explicit button
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1121 @cindex button, explicit
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1122 @cindex button label
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1123 Hyperbole creates and manages @emph{explicit buttons} which look like
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1124 this @code{<(fake button)>} to a Hyperbole user. They are quickly
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1125 recognizable, yet relatively non-distracting as one scans the text in
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1126 which they are embedded. The text between the @code{<(} and
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1127 @code{)>} delimiters is called the @dfn{button label}. Spacing between
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1128 words within a button label is irrelevant to Hyperbole, so button labels
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1129 may wrap across several lines without causing a problem.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1130
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1131 @cindex button data
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1132 @cindex button attribute
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1133 @vindex file, .hypb
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1134 Hyperbole stores the @dfn{button data} that gives an explicit button its
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1135 behavior, separately from the button label, in a file named @file{.hypb}
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1136 within the same directory as the file in which the button is created.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1137 Thus, all files in the same directory share a common button data file.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1138 Button data is comprised of individual @dfn{button attribute} values. A
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1139 user never sees this data in its raw form but may see a formatted
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1140 version by asking for help on a button.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1141
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1142 @cindex button, moving
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1143 @cindex moving buttons
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1144 Explicit buttons may be freely moved about within the buffer in which
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1145 they are created. (No present support exists for moving buttons between
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1146 buffers). A single button may also appear multiple times within the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1147 same buffer; one simply copies the button label with its delimiters
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1148 to a new location in such cases.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1149
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1150 Each explicit button is assigned an action type which determines the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1151 actions that it performs. @dfn{Link action types} connect buttons to
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1152 particular types of referents. @dfn{Activation} of such buttons then
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1153 displays the referents.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1154
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1155 @cindex linking, in-place
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1156 @cindex Hyperbole data model
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1157 Hyperbole does not manage referent data; this is left to the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1158 applications that generate the data. This means that Hyperbole
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1159 provides in-place linking and does not require reformatting of data to
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1160 integrate it with a Hyperbole framework.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1161
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1162 @node Global Buttons, Implicit Buttons, Explicit Buttons, Buttons
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1163 @section Global Buttons
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1164
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1165 @cindex global button
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1166 @cindex button, global
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1167 @cindex button label
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1168 Access to explicit buttons depends upon the information on your screen
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1169 since they are embedded within particular buffers. Sometimes it is
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1170 useful to activate buttons without regard to the information with which
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1171 you are presently working. In such instances, you use @dfn{global
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1172 buttons}, which are simply explicit buttons which may be activated or
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1173 otherwise operated upon by entering their labels when they are prompted
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1174 for, rather than selecting the buttons within a buffer.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1175
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1176 If you want a permanent link to a file section that you can follow at
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1177 any time, you can use a global button. Or what about an Emacs keyboard
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1178 macro that you use frequently? Create an @code{exec-kbd-macro} button
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1179 with an easy to type name and then you can easily activate it whenever
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1180 the need arises.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1181
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1182 @node Implicit Buttons, Action Types, Global Buttons, Buttons
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1183 @section Implicit Buttons
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1184
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1185 @cindex button, implicit
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1186 @cindex implicit button
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1187 Implicit buttons are those defined by the natural structure of a
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1188 document. They are identified by contextual patterns which limit the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1189 locations or states in which they can appear. Their behavior is
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1190 determined by one or more actions which they trigger when activated. An
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1191 action is derived from either a Hyperbole action type specification,
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1192 @ref{Action Types}, or an Emacs Lisp function. Implicit
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1193 button types may use the same action types that explicit buttons do.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1194
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1195 @vindex file, hibtypes.el
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1196 @cindex context
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1197 Implicit buttons never have any button data associated with them. They
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1198 are recognized in context based on predicate matches defined within
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1199 implicit button types. For example, Hyperbole recognizes file names
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1200 enclosed in double quotes and can quickly display their associated files
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1201 in response to simple mouse clicks.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1202
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1203 @cindex ibtypes, list of
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1204 @noindent
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1205 See @file{hibtypes.el} for complete examples. Standard implicit button
24
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
1206 types are listed below in the order in which Hyperbole tries to match
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
1207 to the types when looking for an implicit button.
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1208
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1209 @table @code
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1210
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1211 @item doc-id
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1212 @findex ibtypes::doc-id
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1213 @cindex online library
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1214 @cindex document identifier
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1215 Displays an index entry for a site-specific document given its id. Ids
24
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
1216 must be delimited by `doc-id-start' and `doc-id-end' and must match the
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
1217 function given by `doc-id-p'. This permits creation of catalogued
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1218 online libraries. See @file{$@{hyperb:dir@}/hib-doc-id.el} for more
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1219 information.@refill
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1220
24
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
1221 @item completion
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
1222 @findex ibtypes::completion
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
1223 @cindex completion
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
1224 Inserts completion at point into minibuffer or other window.
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
1225
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
1226 @item Info-node
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
1227 @findex ibtypes::Info-node
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
1228 @cindex Info node
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
1229 Makes "(file)node" buttons display the associated Info node.
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
1230
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
1231 @item mail-address
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
1232 @findex ibtypes::mail-address
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
1233 @cindex e-mail address
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
1234 @cindex rolodex address
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
1235 @cindex address
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
1236 If on an e-mail address in a specific buffer type, mail to that address
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
1237 in another window. Applies to the rolodex match buffer, any buffer
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
1238 attached to a file in @var{rolo-file-list}, or any buffer with @file{mail}
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
1239 or @file{rolo} (case-insensitive) within its name.
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
1240
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
1241 @item patch-msg
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
1242 @findex ibtypes::patch-msg
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
1243 @cindex patch output
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
1244 Jumps to source code associated with output from the @code{patch}
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
1245 program. Patch applies diffs to source code.
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
1246
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1247 @item elisp-compiler-msg
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1248 @findex ibtypes::elisp-compiler-msg
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1249 @cindex byte compiler error
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1250 @cindex Emacs Lisp compiler error
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1251 @cindex compiler error
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1252 Jumps to source code for definition associated with byte-compiler error
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1253 message. Works when activated anywhere within an error line.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1254
24
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
1255 @item grep-msg
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
1256 @findex ibtypes::grep-msg
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
1257 @cindex grep
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
1258 @cindex compiler error
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
1259 Jumps to line associated with grep or compilation error msgs.
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
1260 Messages are recognized in any buffer.
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
1261
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1262 @item debugger-source
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1263 @findex ibtypes::debugger-source
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1264 @cindex gdb
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1265 @cindex dbx
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1266 @cindex xdb
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1267 @cindex stack frame
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1268 @cindex breakpoint
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1269 @cindex source line
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1270 Jumps to source line associated with debugger stack frame or breakpoint lines.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1271 This works with gdb, dbx, and xdb. Such lines are recognized in any buffer.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1272
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1273 @item pathname
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1274 @findex ibtypes::pathname
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1275 @findex hpath:at-p
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1276 @findex hpath:find
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1277 @vindex hpath:suffixes
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1278 @cindex ange-ftp
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1279 @cindex efs
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1280 @cindex pathname
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1281 @cindex remote path
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1282 @cindex filename
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1283 @cindex link, pathname
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1284 Makes a delimited, valid pathname display the path entry.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1285 Also works for delimited and non-delimited ange-ftp and efs pathnames.
24
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
1286 Also works for delimited and non-delimited ange-ftp and efs pathnames.
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
1287 Emacs Lisp library files (filenames that end in .el and .elc) are looked up
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
1288 using the load-path directory list.
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
1289
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
1290 @noindent
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1291 See @code{hpath:at-p} function documentation for possible delimiters.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1292 See @var{hpath:suffixes} variable documentation for suffixes that are
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1293 added to or removed from pathname when searching for a valid match.
24
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
1294 See @code{hpath:find} function documentation for special file
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
1295 display options.
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
1296
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
1297 @item klink
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
1298 @findex ibtypes::klink
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
1299 @cindex klink
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
1300 @cindex koutline link
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
1301 @cindex kcell link
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
1302 Follows a link delimited by <> to a koutline cell.
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
1303 See documentation for @code{actypes::link-to-kotl} for valid link
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
1304 specifiers.
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
1305
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
1306 @item man-apropos
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
1307 @findex ibtypes::man-apropos
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
1308 @item UNIX manual
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
1309 @item man pages
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
1310 @item man apropos
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
1311 Makes man apropos entries display associated man pages when selected.
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
1312
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
1313 @item hyp-source
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
1314 @findex ibtypes::hyp-source
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
1315 @cindex Hyperbole report
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
1316 Turns source location entries in Hyperbole reports into buttons that jump to the associated location.
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
1317
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
1318 @item hyp-address
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
1319 @findex ibtypes::hyp-address
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
1320 @cindex Hyperbole mail list
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
1321 Turns a Hyperbole e-mail list address into an implicit button which
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
1322 inserts Hyperbole environment information.
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
1323 Useful when sending mail to a Hyperbole mail list. See also the
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
1324 documentation for @code{actypes::hyp-config}.
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1325
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1326 @item rfc
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1327 @findex ibtypes::rfc
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1328 @cindex Internet RFC
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1329 @cindex Request For Comment
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1330 @cindex RFC
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1331 @cindex ange-ftp
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1332 @cindex efs
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1333 Retrieves and displays an Internet rfc referenced at point.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1334 Requires ange-ftp or efs when needed for remote retrievals. The
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1335 following formats are recognized: RFC822, rfc-822, and RFC 822. The
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1336 @var{hpath:rfc} variable specifies the location from which to retrieve
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1337 RFCs."
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1338
24
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
1339 @item kbd-key
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
1340 @findex ibtypes::kbd-key
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
1341 @cindex key sequence
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
1342 Executes a key sequence delimited by curly braces.
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
1343 Key sequences should be in human readable form, e.g@. @{@kbd{C-b}@}.
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
1344 Forms such as @{@}, @{@}, and @{^b@} will not be recognized.
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
1345
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
1346 @item dir-summary
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
1347 @findex ibtypes::dir-summary
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
1348 @vindex file, MANIFEST
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
1349 @vindex file, DIR
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
1350 Detects filename buttons in files named "MANIFEST" or "DIR".
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
1351 Displays selected files.
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
1352 Each file name must be at the beginning of the line and must be followed
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
1353 by one or more spaces and then another non-space, non-parenthesis, non-brace
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
1354 character.
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1355
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1356 @item text-toc
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1357 @findex ibtypes::text-toc
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1358 @cindex table of contents
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1359 @cindex toc implicit button type
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1360 Jumps to the text file section referenced by a table of contents entry
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1361 at point. File name must contain @file{README} and there must be a
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1362 `Table of Contents' or `Contents' label on a line by itself (it may
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1363 begin with an asterisk), preceding the table of contents. Each toc
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1364 entry must begin with some whitespace followed by one or more asterisk
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1365 characters. Each file section name line must start with one or more
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1366 asterisk characters at the very beginning of the line.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1367
24
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
1368 @item cscope
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
1369 @findex ibtypes::cscope
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
1370 @cindex C/C++ call trees
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
1371 @cindex C/C++ cross-reference
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
1372 @cindex Cscope
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
1373 Jumps to C/C++ source line associated with Cscope C analyzer output line.
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
1374 Requires pre-loading of the cscope.el Lisp library available from the Emacs
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
1375 Lisp archives and the commercial cscope program available from UNIX System
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
1376 Laboratories. Otherwise, does nothing.
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
1377
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
1378 @item rfc-toc
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
1379 @findex ibtypes::rfc-toc
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
1380 @cindex Internet RFC
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
1381 @cindex Request For Comment
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
1382 @cindex RFC
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
1383 @cindex table of contents
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
1384 Summarizes contents of an Internet rfc from anywhere within rfc buffer.
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
1385 Each line in summary may be selected to jump to section.
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
1386
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
1387 @item annot-bib
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
1388 @findex ibtypes::annot-bib
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
1389 @cindex bibliography
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
1390 @cindex reference
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
1391 Displays annotated bibliography entries referenced internally, delimeters = [].
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
1392 References must be delimited by square brackets, must begin with a
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
1393 word constituent character, and must not be in buffers whose
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
1394 names begin with a ` ' or `*' character.
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
1395
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1396 @item www-url
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1397 @findex ibtypes::www-url
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1398 @cindex URL
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1399 @cindex World-wide Web
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1400 @cindex WWW
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1401 @cindex Action Key, web browsing
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1402 @kindex Action Key, web browsing
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1403 @vindex action-key-url-function
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1404 When not in a w3 browser buffer, follow any non-ftp url (link) at point.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1405 The variable, @var{action-key-url-function}, can be used to customize
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1406 the url browser that is used.
24
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
1407
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
1408 @item function-in-buffer
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
1409 @findex ibtypes::function-in-buffer
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
1410 @cindex functions
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
1411 @cindex func-menu
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
1412 Return function name defined within this buffer that point is within or
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
1413 after, else nil. This triggers only when the func-menu.el package has
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
1414 been loaded and the current major mode is one handled by func-menu.
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
1415
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1416 @end table
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1417
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1418 The Hyperbole Smart Keys offer extensive additional context-sensitive
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1419 point-and-click type behavior beyond these standard implicit button
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1420 types. @xref{Smart Keys}.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1421
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1422
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1423 @node Action Types, Button Type Precedence, Implicit Buttons, Buttons
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1424 @section Action Types
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1425
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1426 @cindex action type
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1427 @cindex argument, use
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1428 @cindex action
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1429 @dfn{Action types} provide action procedures that specify button behavior.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1430 The arguments needed by an action type are prompted for at button creation
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1431 time. When a button is activated, the stored arguments are fed to the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1432 action type's @dfn{action} body to achieve the desired result. Hyperbole
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1433 handles all of this transparently.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1434
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1435 @cindex actypes, list of
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1436 @noindent
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1437 Standard action types in alphabetical order include:
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1438
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1439 @table @code
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1440 @item annot-bib
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1441 @findex actypes::annot-bib
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1442 Follows internal ref KEY within an annotated bibliography, delimiters=[].
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1443
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1444 @item completion
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1445 @findex actypes::completion
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1446 Inserts completion at point into minibuffer or other window.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1447 Unless at end of buffer or if completion has already been inserted, then
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1448 deletes completions window.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1449
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1450 @item eval-elisp
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1451 @findex actypes::eval-elisp
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1452 Evaluates a Lisp expression LISP-EXPR.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1453
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1454 @item exec-kbd-macro
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1455 @findex actypes::exec-kbd-macro
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1456 Executes KBD-MACRO REPEAT-COUNT times.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1457 KBD-MACRO may be a string of editor command characters or a function symbol.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1458 Optional REPEAT-COUNT nil means execute once, zero means repeat until
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1459 error.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1460
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1461 @item exec-shell-cmd
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1462 @findex actypes::exec-shell-cmd
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1463 Executes a SHELL-CMD string asynchronously.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1464 Optional non-nil second argument INTERNAL-CMD means do not display the shell
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1465 command line executed. Optional non-nil third argument KILL-PREV means
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1466 kill last output to shell buffer before executing SHELL-CMD.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1467
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1468 @item exec-window-cmd
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1469 @findex actypes::exec-window-cmd
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1470 Executes an external window-based SHELL-CMD string asynchronously.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1471
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1472 @item hyp-config
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1473 @findex actypes::hyp-config
24
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
1474 Inserts Hyperbole configuration info at end of current buffer or optional OUT-BUF.
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1475
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1476 @item hyp-request
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1477 @findex actypes::hyp-request
24
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
1478 Inserts Hyperbole mail list request help into current buffer or optional OUT-BUF.
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1479
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1480 @item hyp-source
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1481 @findex actypes::hyp-source
24
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
1482 Displays a buffer or file from a line beginning with `hbut:source-prefix'.
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1483
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1484 @item kbd-key
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1485 @findex actypes::kbd-key
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1486 Executes the function binding for KEY-SEQUENCE, delimited by @{@}.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1487 Returns t if a KEY-SEQUENCE has a binding, else nil.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1488
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1489 @item link-to-buffer-tmp
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1490 @findex actypes::link-to-buffer-tmp
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1491 Displays a BUFFER in another window.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1492 Link is generally only good for current Emacs session.
24
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
1493 Use `link-to-file' instead for a permanent link.
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1494
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1495 @item link-to-directory
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1496 @findex actypes::link-to-directory
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1497 Displays a DIRECTORY in Dired mode in another window.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1498
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1499 @item link-to-doc
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1500 @findex actypes::link-to-doc
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1501 Displays online version of a document given by DOC-ID, in other window.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1502 If the online version of a document is not found in
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1503 @var{doc-id-indices}, an error is signalled.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1504
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1505 @item link-to-ebut
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1506 @findex actypes::link-to-ebut
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1507 Performs action given by another button, specified by KEY and KEY-FILE.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1508
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1509 @item link-to-elisp-doc
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1510 @findex actypes::link-to-elisp-doc
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1511 Displays documentation for FUNC-SYMBOL.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1512
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1513 @item link-to-file
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1514 @findex actypes::link-to-file
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1515 Displays a PATH in another window scrolled to optional POINT.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1516 With POINT, buffer is displayed with POINT at the top of the window.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1517
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1518 @item link-to-file-line
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1519 @findex actypes::link-to-file-line
24
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
1520 Displays a file given by PATH scrolled to LINE-NUM.
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1521
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1522 @item link-to-kcell
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1523 @findex actypes::link-to-kcell
24
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
1524 Displays FILE with kcell given by CELL-REF at window top.
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
1525 See documentation for `kcell:ref-to-id' for valid cell-ref formats.
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
1526
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
1527 @noindent
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1528 If FILE is nil, the current buffer is used.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1529 If CELL-REF is nil, the first cell in the view is shown.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1530
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1531 @item link-to-kotl
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1532 @findex actypes::link-to-kotl
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1533 Displays at the top of another window the referent pointed to by LINK.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1534 LINK may be of any of the following forms, with or without delimiters:
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1535 @example
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1536 < pathname [, cell-ref] >
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1537 < [-!&] pathname >
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1538 < @@ cell-ref >
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1539 @end example
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1540
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1541 @noindent
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1542 See documentation for @code{kcell:ref-to-id} for valid cell-ref formats.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1543
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1544 @item link-to-Info-node
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1545 @findex actypes::link-to-Info-node
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1546 Displays an Info NODE in another window.
24
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
1547 NODE must be a string of the form `(file)nodename'.
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1548
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1549 @item link-to-mail
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1550 @findex actypes::link-to-mail
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1551 Displays mail msg with MAIL-MSG-ID from MAIL-FILE in other window.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1552 See documentation for the variable @var{hmail:init-function} for
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1553 information on how to specify a mail reader to use.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1554
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1555 @item link-to-regexp-match
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1556 @findex actypes::link-to-regexp-match
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1557 Finds REGEXP's Nth occurrence in FILE and displays location at window top.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1558 Returns t if found, signals an error if not.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1559
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1560 @item link-to-rfc
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1561 @findex actypes::link-to-rfc
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1562 Retrieves and displays an Internet rfc given by RFC-NUM.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1563 RFC-NUM may be a string or an integer. Requires ange-ftp or efs for
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1564 remote retrievals.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1565
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1566 @item link-to-string-match
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1567 @findex actypes::link-to-string-match
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1568 Finds STRING's Nth occurrence in FILE and displays location at window top.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1569 Returns t if found, nil if not.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1570
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1571 @item man-show
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1572 @findex actypes::man-show
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1573 Displays man page on TOPIC, which may be of the form @code{<command>(<section>}).
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1574
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1575 @item rfc-toc
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1576 @findex actypes::rfc-toc
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1577 Computes and displays summary of an Internet rfc in BUF-NAME.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1578 Assumes point has already been moved to start of region to summarize.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1579 Optional OPOINT is point to return to in BUF-NAME after displaying summary.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1580
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1581 @item text-toc
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1582 @findex actypes::text-toc
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1583 @cindex table of contents
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1584 @cindex toc action type
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1585 Jumps to the text file SECTION referenced by a table of contents entry
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1586 at point.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1587
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1588 @item www-url
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1589 @findex actypes::www-url
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1590 @cindex URL
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1591 @cindex World-wide Web
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1592 @cindex WWW
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1593 @vindex action-key-url-function
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1594 Follows a link given by URL.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1595 The variable, @var{action-key-url-function}, can be used to customize
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1596 the url browser that is used.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1597 @end table
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1598
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1599 @cindex action
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1600 @vindex hui:ebut-prompt-for-action
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1601 The use of action types provides a convenient way of specifying button
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1602 behavior without the need to know how to program. Expert users who are
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1603 familiar with Emacs Lisp, however, may find that they often want to
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1604 tailor button actions in a variety of ways not easily captured within a
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1605 type system. In such cases, @var{hui:ebut-prompt-for-action} should be
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1606 set non-nil. This will cause Hyperbole to prompt for an action to
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1607 override the button's action type at each explicit button creation. For
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1608 those cases where the action type is sufficient, a nil value should be
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1609 entered for the action. An action may be any Lisp form that may be
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1610 evaluated.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1611
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1612 @node Button Type Precedence, Button Files, Action Types, Buttons
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1613 @section Button Type Precedence
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1614
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1615 @cindex button precedence
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1616 @cindex button label overlap
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1617 Explicit buttons always take precedence over implicit buttons. Thus, if
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1618 a button selection is made which falls within both an explicit and
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1619 implicit button, only the explicit button will be selected. Explicit
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1620 button labels are not allowed to overlap; Hyperbole's behavior in such
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1621 cases is undefined.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1622
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1623 @cindex ibtype, evaluation order
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1624 If there is no explicit button at point during a selection request, then
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1625 each implicit button type predicate is tested in turn until one returns
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1626 non-nil or all are exhausted. Since two implicit button types may have
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1627 overlapping domains (those contexts in which their predicates are true),
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1628 only the first matching type is used. The type predicates are tested
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1629 in @strong{reverse} order of definition, i.e@. most recently entered
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1630 types are tested first, so that personal types defined after standard
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1631 system types take precedence. It is important to keep this order in
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1632 mind when defining new implicit button types. By making their match
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1633 predicates as specific as possible, one can minimize any overlapping of
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1634 implicit button type domains.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1635
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1636 @cindex type redefinition
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1637 Once a type name is defined, its precedence relative to other types
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1638 remains the same even if you redefine the body of the type, as long as
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1639 you don't change its name. This allows incremental modifications to
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1640 types without having to worry about shifts in type precedence.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1641 @xref{Creating Types}, for information on how to develop
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1642 or modify types.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1643
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1644 @node Button Files, Utilizing Explicit Buttons, Button Type Precedence, Buttons
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1645 @section Button Files
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1646
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1647 @cindex button files
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1648 It is often convenient to create lists of buttons that can be used as
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1649 menus to provide centralized access to distributed information pools or
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1650 for other purposes. These files can serve as useful roadmaps to help
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1651 efficiently guide a user through both unfamiliar and highly familiar
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1652 information spaces. Files that are created specifically for this
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1653 purpose, we call @dfn{button files}.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1654
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1655 @vindex hbmap:filename
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1656 @cindex button file, personal
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1657 @cindex button file, directory
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1658 The Hyperbole menu system provides quick access to two types of these
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1659 button files: personal and directory-specific, through the ButFile menu.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1660 (The variable, @var{hbmap:filename}, contains the base name of these
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1661 standard button files. Its standard value is @file{HYPB}.)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1662
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1663 @vindex dir, ~/.hyperb
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1664 @vindex hbmap:dir-user
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1665 @cindex global button
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1666 A personal button file may serve as a user's own roadmap to frequently
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1667 used resources. Selection of the ButFile/PersonalFile menu item
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1668 displays this file for editing. The default personal button file is
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1669 stored within the directory given by the @var{hbmap:dir-user} variable
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1670 whose standard value is @file{~/.hyperb}. The standard Hyperbole
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1671 configuration also appends all global buttons to the end of this file,
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1672 one per line, as they are created. So you can edit or annotate them
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1673 within the file.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1674
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1675 A directory-specific button file may exist for each file system
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1676 directory. Such files are useful for explaining the contents of
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1677 directories and pointing readers to particular highlights within the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1678 directories. Selection of the ButFile/DirFile menu item displays the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1679 button file for the current directory; this provides an easy means of
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1680 updating this file when working on a file within the same directory.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1681 If you want to view some other directory-specific button file, simply
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1682 use the normal Emacs file finding commands.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1683
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1684 One might suggest that menu quick access be provided for group-specific
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1685 and site-specific button files. Instead, link buttons to such things
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1686 should be placed at the top of your personal button file. This provides
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1687 a more flexible means of quick access.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1688
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1689 @node Utilizing Explicit Buttons, , Button Files, Buttons
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1690 @section Utilizing Explicit Buttons
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1691
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1692 Explicit buttons are a fundamental building block for creating personal
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1693 or organizational hypertext networks with Hyperbole. This section
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1694 summarizes the user-level operations available for managing these
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1695 buttons.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1696
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1697 @menu
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1698 * Creation::
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1699 * Renaming::
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1700 * Deletion::
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1701 * Modification::
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1702 * Location::
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1703 * Buttons in Mail::
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1704 * Buttons in News::
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1705 @end menu
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1706
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1707 @node Creation, Renaming, Utilizing Explicit Buttons, Utilizing Explicit Buttons
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1708 @subsection Creation
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1709
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1710 @menu
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1711 * By Dragging:: Creation Via Action Key Drags
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1712 * By Menu:: Creation Via Menus
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1713 @end menu
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1714
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1715 @node By Dragging, By Menu, Creation, Creation
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1716 @subsubsection Creation Via Action Key Drags
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1717
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1718 @cindex explicit button, creation
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1719 @cindex button, creation
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1720 @cindex link, creation
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1721 @cindex drag
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1722 @cindex Action Key drag
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1723 The most efficient way to create an explicit button interactively is to
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1724 use the mouse Action Key to drag from a button source window to a window
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1725 showing its link referent. More specifically, you should split your
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1726 current Emacs frame into two windows: one which contains the point at
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1727 which you want a button to be inserted and another which shows the point
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1728 to which you want to link. Depress the mouse Action Key at the point at
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1729 which the button should be inserted, drag to the other window and
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1730 release it at the point of the link referent. The process becomes quite
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1731 simple with a little practice. (@xref{By Menu, Creation Via Menus}, for a
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1732 more detailed explanation of the explicit button creation process.)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1733
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1734 Hyperbole uses the link referent context to determine the type of link
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1735 to make. If there are a few different types of links which are
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1736 applicable from the context, you will be prompted with a list of the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1737 types. Simply use the Action Key or the first letter of the link
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1738 type to select one of the type names and to finish the link creation.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1739 Hyperbole will then insert explicit button delimiters around the button
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1740 label and will display a message in the minibuffer indicating both the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1741 button name and its action/link type.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1742
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1743 @kindex M-o
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1744 @kindex C-u M-o
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1745 @kindex C-x o
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1746 @findex hkey-operate
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1747 If you run Emacs under a window system, you can emulate an Action Key
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1748 drag from the keyboard by: hitting @{@kbd{M-o}@}, the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1749 @code{hkey-operate} command, at the button source location, moving
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1750 to the link destination, e.g@. with @{@kbd{C-x o}@}, and then hitting
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1751 @{@kbd{M-o}@} again. This simulates a depress and then release of the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1752 Action Key. @{@kbd{C-u M-o}@} emulates drags of the Assist Key.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1753 This will not work when Hyperbole is run from a dumb terminal Emacs
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1754 session since drag actions are not supported without a window system.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1755
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1756 @page
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1757 @node By Menu, , By Dragging, Creation
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1758 @subsubsection Creation Via Menus
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1759
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1760 You can alternatively use the Hyperbole menus to create explicit
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1761 buttons. First, mark a short region of text in any fashion allowed by
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1762 GNU Emacs and then select the Hyperbole menu item sequence, Ebut/Create.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1763 You will be prompted for the button's label with the marked region as
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1764 the default. If you accept the default and enter the rest of the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1765 information you are prompted for, the button will be created within the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1766 current buffer and Hyperbole will surround the marked region with
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1767 explicit button delimiters to indicate success.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1768
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1769 If you do not mark a region before invoking the button create command,
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1770 you will be prompted for both a label and a target buffer for the button
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1771 and the delimited label text will be inserted into the target buffer
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1772 after a successful button creation.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1773
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1774 After Hyperbole has the button label and its target buffer, it will
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1775 prompt you for an action type for the button. Use the @{@kbd{?}@}
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1776 completion help key to see the available types. The type selected
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1777 determines any following values for which you will be prompted.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1778
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1779 @cindex button instance
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1780 @cindex instance number
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1781 If a previous button with the same label exists in the same buffer,
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1782 Hyperbole will add an @dfn{instance number} to the label when it adds
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1783 the delimiters so that the name is unique. Thus, you don't have to
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1784 worry about accidental button name conflicts. If you want the same
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1785 button to appear in multiple places within the buffer, just enter the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1786 label again and delimit it yourself. Hyperbole will interpret all
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1787 occurrences of the same delimited label within a buffer as the same
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1788 button.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1789
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1790 @cindex link, creation
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1791 If you create link buttons using the Hyperbole menus, the best technique
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1792 is to place on screen both the source buffer for the button and the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1793 buffer to which it will link. Mark the region of text to use for your
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1794 button label, invoke the button create command from the menu, choose an
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1795 action type which begins with @code{link-to-} and then use the direct
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1796 selection techniques mentioned in @ref{Entering Arguments}, to select
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1797 the link referent.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1798
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1799
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1800 @node Renaming, Deletion, Creation, Utilizing Explicit Buttons
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1801 @subsection Renaming
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1802
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1803 @cindex explicit button, renaming
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1804 @cindex button, renaming
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1805 Once an explicit button has been created, its label text must be
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1806 treated specially. Any inter-word spacing within the label may be
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1807 freely changed, as may happen when a paragraph is refilled. But a
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1808 special command must be invoked to rename it.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1809
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1810 The rename command operates in two different ways. If point is within a
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1811 button label when it is invoked, it will tell you to edit the button
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1812 label and then invoke the rename command again. The second invocation
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1813 will actually rename the button. If instead the command is originally
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1814 invoked outside of any explicit button, it will prompt for the button
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1815 label to replace and the label to replace it with and then will perform
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1816 the rename. All occurrences of the same button in the buffer will be
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1817 renamed, so you need locate only one occurrence of the button.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1818
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1819 @vindex file, .~/.emacs
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1820 @vindex file, hsite.el
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1821 @kindex C-c C-r
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1822 The rename command may be invoked from the Hyperbole menu via
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1823 Ebut/Rename. A faster method is to use a key bound to the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1824 @code{hui:ebut-rename} command. Your site installation may include such
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1825 a key. @{@kbd{C-h w hui:ebut-rename @key{RET}}@} should show you any
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1826 key it is on. If no key binding has been established or if you prefer
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1827 one of your own, simply bind it within your @file{~/.emacs} file. We
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1828 recommend the @{@kbd{C-c C-r}@} key, as in: @code{(global-set-key
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1829 "\C-c\C-r" 'hui:ebut-rename)}.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1830
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1831
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1832 @node Deletion, Modification, Renaming, Utilizing Explicit Buttons
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1833 @subsection Deletion
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1834
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1835 @cindex explicit button, deleting
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1836 @cindex button, deleting
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1837 Ebut/Delete works similarly to the Rename command but deletes the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1838 selected button. The button's delimiters are removed to confirm the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1839 delete. If the delete command is invoked with a prefix argument, then
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1840 both the button label and the delimiters are removed as confirmation.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1841
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1842 @vindex hui:ebut-delete-confirm-p
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1843 Presently there is no way to recover a deleted button; it must
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1844 be recreated. Therefore, the @var{hui:ebut-delete-confirm-p} variable
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1845 is true by default, causing Hyperbole to require confirmation before
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1846 interactively deleting explicit buttons. Set it to nil if you prefer no
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1847 confirmation.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1848
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1849 @node Modification, Location, Deletion, Utilizing Explicit Buttons
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1850 @subsection Modification
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1851
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1852 @cindex explicit button, modifying
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1853 @cindex button, modifying
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1854 @cindex Smart Mouse Key drag
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1855 Ebut/Modify prompts you with each of the elements from the button's
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1856 data list and allows you to modify each in turn.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1857
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1858 There is a quicker way to modify explicit link buttons. Simply drag with the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1859 mouse Action Key from within the button label to a link destination in a
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1860 different window, just as you would when creating a new button with a mouse
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1861 drag. Remember that drags may also be emulated from the keyboard.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1862 @xref{Creation}.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1863
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1864 @node Location, Buttons in Mail, Modification, Utilizing Explicit Buttons
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1865 @subsection Location
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1866
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1867 @cindex explicit button, summarizing
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1868 @cindex button, summarizing
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1869 @cindex button, help
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1870 The Ebut/Help menu can be used to summarize a single explicit button or
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1871 all such buttons within a single buffer. The buttons summarized may
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1872 then be activated directly from the summary.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1873
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1874 Ebut/Help/BufferButs summarizes the explicit buttons in the order in
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1875 which they appear in the buffer. Ebut/Help/CurrentBut summarizes only
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1876 the button at point. Ebut/Help/OrderedButs summarizes the buttons in
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1877 alphabetical order. All of these summary commands eliminate duplicate
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1878 instances of buttons from their help displays.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1879
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1880 @cindex explicit button, searching
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1881 @cindex button, searching
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1882 Ebut/Search prompts for a search pattern and searches across all the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1883 locations in which you have previously created explicit buttons. It
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1884 asks you whether to match to any part of a button label or only complete
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1885 labels. It then displays a list of button matches with a single line of
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1886 surrounding context from their sources. Any button in the match list
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1887 may be activated as usual. An Action Key press on the surrounding context
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1888 jumps to the associated source line or a press on the filename preceding
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1889 the matches jumps to the file without selecting a particular line.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1890
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1891 There are presently no user-level facilities for globally locating buttons
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1892 created by others or for searching on particular button attributes.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1893
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1894 @node Buttons in Mail, Buttons in News, Location, Utilizing Explicit Buttons
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1895 @subsection Buttons in Mail
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1896
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1897 @kindex C-x m
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1898 @findex mail
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1899 Hyperbole allows the embedding of buttons within electronic mail
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1900 messages that are composed in Emacs with the standard @code{(mail)}
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1901 command, normally bound to @{@kbd{C-x m}@} or with other Emacs-based
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1902 mail composing functions. An enhanced mail reader can then be used
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1903 to activate the buttons within messages just like any other buttons.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1904
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1905 @cindex button, mailing
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1906 @cindex button, posting
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1907 @cindex mailing buttons
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1908 @cindex posting buttons
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1909 @cindex mail reader
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1910 @cindex mailer initialization
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1911 @cindex RMAIL
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1912 @cindex VM
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1913 @cindex PIEmail
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1914 @cindex MH-e
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1915 @cindex GNUS
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1916 @cindex USENET
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1917 @cindex news
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1918 @vindex file, hmail.el
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1919 Hyperbole automatically supports the following mail readers: Rmail,
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1920 @ref{Rmail,,,emacs, the GNU Emacs Manual}, VM, @ref{Introduction,,,vm,
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1921 the VM Manual}, and PIEmail, and MH-e. Button inclusion and activation
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1922 within USENET news articles is also supported in the same fashion via
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1923 the GNUS news reader, @ref{Introduction,,,gnus, the GNUS Manual}, if
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1924 available at your site. (The @file{hmail.el} file provides a
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1925 generalized interface that can be used to hook in other mail or news
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1926 readers if the necessary interface functions are written.)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1927
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1928 @vindex mail-yank-original
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1929 @kindex C-c C-y
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1930 @cindex mail inclusion
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1931 All explicit buttons to be mailed must be created within the outgoing
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1932 message buffer. There is no present support for including text from
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1933 other buffers or files which contain explicit buttons, except for the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1934 ability to yank the contents of a message being replied to, together
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1935 with all of its buttons, via the @code{(mail-yank-original)} command
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1936 bound to @{@kbd{C-c C-y}@}. From a user's perspective, buttons are
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1937 created in precisely the same way as in any other buffer. They also
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1938 appear just like any other buttons to both the message sender and the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1939 reader who uses the Hyperbole enhanced readers. Button operation may be
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1940 tested any time before a message is sent. A person who does not use
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1941 Hyperbole enhanced mail readers can still send messages with embedded
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1942 buttons since mail composing is independent of any mail reader
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1943 choice.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1944
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1945 Hyperbole buttons embedded within received mail messages act just like
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1946 any other buttons. The mail does not contain any of the action type
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1947 definitions used by the buttons, so the receiver must have these or she
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1948 will receive an error when she activates the buttons. Buttons which
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1949 appear in message @emph{Subject} lines are copied to summary buffers
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1950 whenever such summaries are generated. Thus, they may be activated from
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1951 either the message or summary buffers.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1952
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1953 Nothing bad will happen if a mail message with explicit buttons is sent
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1954 to a non-Hyperbole user. The user will simply see the text
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1955 of the message followed by a series of lines of button data at its end.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1956 Hyperbole mail users never see this data in its raw form.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1957
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1958 @vindex smail:comment
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1959 @cindex mail comment
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1960 In order to alert readers of your mail messages that you can utilize
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1961 Hyperbole mail buttons, the system automatically inserts a comment into
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1962 each mail message that you compose to announce this fact. The variable,
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1963 @var{smail:comment} controls this behavior. See its documentation for
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1964 technical details. By default, it produces a message of the form:
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1965
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1966 @example
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1967 Comments: Hyperbole mail buttons accepted, vX.XX.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1968 @end example
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1969
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1970 @vindex file, ~/.emacs
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1971 @noindent
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1972 where the X's indicate your Hyperbole version number. You can cut this
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1973 out of particular messages before you send them. If you don't want any
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1974 message at all, add the following to your @file{~/.emacs} file before
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1975 the point at which you load Hyperbole.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1976
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1977 @lisp
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1978 (setq smail:comment nil)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1979 @end lisp
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1980
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1981 @cindex actype, link-to-mail
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1982 A final mail-related facility provided by Hyperbole is the ability to
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1983 save a pointer to a received mail message by creating an explicit button
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1984 with a @code{link-to-mail} action type. When prompted for the mail
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1985 message to link to, if you press the Action Key on an Rmail message, the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1986 appropriate parameter will be copied to the argument prompt, as
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1987 described in @ref{Entering Arguments}.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1988
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1989
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1990 @node Buttons in News, , Buttons in Mail, Utilizing Explicit Buttons
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1991 @subsection Buttons in News
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1992
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1993 @cindex button, posting
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1994 @cindex news reader/poster
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1995 @cindex posting news
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1996 @cindex GNUS
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1997 @cindex USENET
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1998 @vindex file, hgnus.el
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1999 @vindex file, hsite.el
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2000 Explicit buttons may be embedded within outgoing USENET news articles
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2001 and may be activated from news articles that are being read. This
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2002 support is available for the GNUS news reader. It is enabled by default
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2003 within @file{hsite.el} by autoloading the @file{hgnus.el} file.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2004
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2005 All Hyperbole support should work just as it does when reading or
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2006 sending mail. @xref{Buttons in Mail}. When reading news, buttons which
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2007 appear in message @emph{Subject} lines may be activated within the GNUS
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2008 subject buffer as well as the article buffer. When posting news, the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2009 *post-news* buffer is used for outgoing news articles rather than the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2010 *mail* buffer.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2011
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2012 Remember that the articles you post do not contain the action type
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2013 definitions used by the buttons, so the receiver must have these or she
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2014 will receive an error when he activates the buttons. You should also
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2015 keep in mind that most USENET readers will not be using Hyperbole, so if
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2016 they receive a news article containing explicit buttons, they will
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2017 wonder what the button data at the end of the message is. You should
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2018 therefore limit distribution of such messages. For example, if most
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2019 people at your site read news with GNUS and use Hyperbole, it would be
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2020 reasonable to embed buttons in postings to local newsgroups.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2021
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2022 @cindex news comment
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2023 In order to alert readers of your postings that you can utilize
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2024 Hyperbole mail buttons embedded within personal replies,
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2025 the system automatically inserts the same comment that is included
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2026 within mail messages to announce this fact. @xref{Buttons in Mail}, for
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2027 details and an explanation of how to turn this feature off.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2028
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2029 @node Smart Keys, Menus, Buttons, Top
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2030 @chapter Smart Keys
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2031
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2032 @cindex Smart Key
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2033 @cindex mouse support
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2034 @cindex Action Key
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2035 @cindex Assist Key
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2036 @kindex Action Key
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2037 @kindex Assist Key
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2038 Hyperbole provides two special @dfn{Smart Keys} that perform
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2039 context-sensitive operations, the Action Key and the Assist Key. By
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2040 default, the @dfn{Action Key} is bound to your shift-middle mouse button (or
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2041 shift-left on a 2-button mouse) and the @dfn{Assist Key} is bound to your
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2042 shift-right mouse button, assuming Hyperbole is run under an external window
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2043 system. (InfoDock users should use the middle mouse button as the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2044 Action Key, instead.)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2045
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2046 @findex hmouse-shift-buttons
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2047 Mouse configuration is automatic for InfoDock, XEmacs, and Epoch under
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2048 the X window system and for GNU Emacs versions 18 and 19 under X,
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2049 OpenWindows, NEXTSTEP, SunView and Apollo's Display Manager, assuming
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2050 your Emacs program has been built with support for any of these window
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2051 systems. The command, @code{hmouse-shift-buttons}, can be used to
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2052 select between shifted and unshifted Smart Mouse Keys.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2053
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2054 @vindex hkey-init
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2055 @kindex C-u M-RET
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2056 @kindex M-RET
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2057 By default (if @var{hkey-init} is set to @code{t} in @file{hsite.el}),
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2058 then @{@kbd{M-@key{RET}}@} may also be used as the Action Key and
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2059 @{@kbd{C-u M-@key{RET}}@} may be used as the Assist Key. In many
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2060 read-only modes like Dired and Rmail,
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2061 @{@key{RET}@} also functions as the Action Key. These key bindings allow
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2062 context sensitive operation from any keyboard.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2063
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2064 @cindex key binding, smart keys
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2065 @cindex smart key commands
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2066 @findex action-key
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2067 @findex assist-key
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2068 @findex action-mouse-key
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2069 @findex assist-mouse-key
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2070 If you prefer other key bindings, simply bind the commands
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2071 @code{action-key} and @code{assist-key} to keyboard keys.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2072 @code{hkey-either} may be used instead if you prefer a single
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2073 key binding for both commands; a prefix argument then invokes
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2074 @code{assist-key}.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2075
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2076 You may also bind @code{action-mouse-key} and @code{assist-mouse-key}
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2077 to mouse keys, as you like.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2078
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2079 @cindex button activation
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2080 @cindex activation
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2081 @cindex button help
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2082 The Action Key generally selects entities, creates links and
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2083 activates buttons. The Assist Key generally provides help,
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2084 such as reporting on a button's attributes, or serves a complementary
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2085 function to whatever the Action Key does within a context.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2086
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2087 @cindex Smart Key operation
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2088 You can get a summary of what the Smart Keys do in all of their
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2089 different contexts by pressing the Assist Key in the right
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2090 corner (within the rightmost 3 characters) of a window modeline or by
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2091 using the Hyperbole Doc/SmartKy menu entry.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2092
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2093 The following table is an example of this summary. Much of the browsing
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2094 power of Hyperbole comes from use of the Smart Keys, so you should spend
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2095 some time practicing how to use them. This table may appear daunting at
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2096 first, but as you practice and notice that the Smart Keys do just a few
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2097 context-sensitive things per editor mode, you will find it easy to just
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2098 point and click and let Hyperbole do the rest.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2099
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2100 For extensive reference documentation on the Smart Keys, @ref{Smart
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2101 Key Reference}.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2102
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2103 @page
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2104 @iftex
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2105 @example
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2106 @include ../etc/hypb-mouse.txt
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2107 @end example
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2108 @end iftex
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2109 @ifinfo
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2110 @format
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2111 @include ../etc/hypb-mouse.txt
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2112 @end format
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2113 @end ifinfo
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2114
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2115 @vindex action-key-default-function
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2116 @vindex assist-key-default-function
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2117 Note how the last line in the table explains the default behavior of the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2118 Smart Keys. That is what they do when they cannot find a context match
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2119 at your current location. See the documentation for the variables
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2120 @var{action-key-default-function} and @var{assist-key-default-function}
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2121 for information on how to customize the behavior of the Smart Keys
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2122 within default contexts.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2123
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2124 @cindex Hyperbole help
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2125 A prime design criterion of Hyperbole's user interface is that one
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2126 should be able to see what an operation will do before using it.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2127 The Assist Key shows you what a button or minibuffer menu item will do
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2128 before you activate it. Hyperbole also shows the result of directly
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2129 selecting an argument value with the mouse, to provide feedback as to
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2130 whether the right item has been selected. A second click is necessary
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2131 before an argument is accepted and processed.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2132
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2133 @cindex Smart Key help
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2134 @cindex help, Smart Key
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2135 @cindex context sensitive help
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2136 When you use a mouse and you want to find out what either of the Smart
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2137 Keys does within a context, depress the one you want to check on and
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2138 hold it down, then press the other and release as you please. A help
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2139 buffer will pop up explaining the actions that will be performed in that
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2140 context, if any. A press of either Smart Key at the end of that
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2141 help buffer will restore your display to its configuration prior to
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2142 invoking help.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2143
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2144 @kindex C-h A
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2145 @vindex hkey-init
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2146 By default (if @var{hkey-init} is left set equal to @code{t} in
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2147 @file{hsite.el}), then @{@kbd{C-h A}@} will display this same
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2148 context-sensitive help for the Action Key while @{@kbd{C-u C-h
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2149 A}@} will display the help for the Assist Key. Note that
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2150 @{@kbd{C-h a}@} will perform a function unrelated to Hyperbole, so you
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2151 must press the shift key when you hit the @kbd{A} character.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2152
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2153 @cindex Smart Key toggle
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2154 @cindex mouse key toggle
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2155 @vindex file, ~/.emacs
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2156 @vindex file, hsite.el
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2157 @kindex C-c t
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2158 When Hyperbole is installed, a key may be bound which allows you
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2159 to switch between the Smart Key mouse bindings and your prior ones.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2160 @kbd{C-h w hmouse-toggle-bindings @key{RET}} should show you any key
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2161 which performs this command. If no key binding has been established or
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2162 if you prefer one of your own, simply select a key and bind it
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2163 within your @file{~/.emacs} file. For example, @code{(global-set-key
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2164 "\C-ct" 'hmouse-toggle-bindings)}.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2165
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2166
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2167 @node Menus, Entering Arguments, Smart Keys, Top
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2168 @chapter Menus
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2169
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2170 @cindex InfoDock
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2171 @cindex XEmacs
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2172 @cindex Emacs 19
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2173 @cindex menu use
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2174 @cindex menubar, Hyperbole menu
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2175 Under InfoDock, XEmacs, and Emacs 19, pulldown and popup menus are
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2176 available to invoke Hyperbole commands, including those from the rolodex
24
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
2177 and the outliner. These menus operate like any other application menus
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
2178 and are fairly self-explanatory. Use the Quit command on the Hyperbole
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
2179 menubar menu to get rid of the menu if you do not need it. Invoking
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
2180 Hyperbole again will add the menu back to the menubar.
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2181
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2182 @cindex minibuffer menus
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2183 This section discusses only the specialized @dfn{minibuffer menus} that
24
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
2184 appear in the minibuffer window and that work with all Emacs versions on
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
2185 all display devices. Minibuffer menu items may be selected from either
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
2186 the keyboard or via mouse clicks. When used with the keyboard, they
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
2187 provide rapid command access similar to key bindings.
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2188
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2189 @kindex C-h h
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2190 @vindex action-key-default-function
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2191 @cindex menu, top level
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2192 The top level menu is invoked from a key given in your @file{hsite.el}
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2193 file (by default, @{@kbd{C-h h}@}) or via an Action Key press in a
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2194 location with no other action defined. The menu will appear in the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2195 minibuffer and should look mostly like so:
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2196
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2197 @noindent
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2198 @example
24
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
2199 Hy4> Act Butfile/ Cust/ Doc/ Ebut/ Gbut/ Hist Ibut/ Msg/ Otl/ Rolo/ Win/
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2200 @end example
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2201
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2202 @noindent
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2203 The above menu items can be summarized as follows:
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2204
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2205 @table @strong
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2206 @cindex menu, Act
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2207 @item Act
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2208 Perform the action associated with any button at point or prompt for the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2209 name of an explicit button to activate if point is not on one.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2210
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2211 @cindex menu, ButFile
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2212 @cindex button file, HYPB
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2213 @vindex file, HYPB
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2214 @item Butfile/
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2215 Display a local or global file of buttons, providing easy access.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2216 @file{HYPB} for a local button file and @file{~/.hyperb/HYPB} for your
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2217 global file. These are good places to start your button creation testing.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2218
24
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
2219 @cindex menu, Cust
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
2220 @cindex customization
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
2221 @cindex option settings
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
2222 @item Cust/
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
2223 Customizes Hyperbole by setting major options.
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
2224 This includes where Hyperbole link referents are displayed, where URLs
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
2225 are displayed and whether to use proportional or windowful scrolling
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
2226 when a Smart Key is pressed at the end of a line. @xref{Configuring}.
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
2227
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2228 @cindex menu, EBut
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2229 @item Ebut/
24
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
2230 All explicit button commands. The window-system-based Hyperbole
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
2231 menu includes a menu item that activates each explicit button found
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
2232 in the current buffer.
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2233
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2234 @cindex menu, Doc
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2235 @cindex menu, Types
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2236 @item Doc/
24
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
2237 Hyperbole documentation quick access. Contains About item describing
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
2238 Hyperbole and a Demo item which demonstrates a number of Hyperbole
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
2239 features. It also contains the Types/ submenu for documentation on
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
2240 Hyperbole implicit button and action types.
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2241
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2242 @cindex menu, Global Buttons
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2243 @item Gbut/
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2244 All global button commands. Global buttons are accessed by name
24
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
2245 rather than by direct selection. The window-system-based Hyperbole
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
2246 menu also includes a menu item that activates each global button.
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2247
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2248 @cindex menu, History
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2249 @cindex history
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2250 @item Hist
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2251 Jumps back to last position in button traversal history.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2252
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2253 @cindex menu, Implicit Buttons
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2254 @item Ibut/
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2255 All implicit button commands.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2256
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2257 @cindex menu, Message
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2258 @item Msg/
24
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
2259 Hyperbole-specific mail and news messaging support commands. Use this
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
2260 to send mail to a Hyperbole mail list or to add/modify/delete your entry
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
2261 on a list.
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2262
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2263 @cindex menu, Outliner
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2264 @item Otl/
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2265 Autonumbered, structured outliner and hyper-node manager commands.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2266 @xref{Outliner}.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2267
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2268 @cindex menu, Rolodex
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2269 @item Rolo/
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2270 Hierarchical, multi-file rolodex lookup and edit commands.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2271 @xref{Rolodex}.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2272
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2273 @cindex menu, Window Configurations
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2274 @cindex menu, Windows
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2275 @item Win/
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2276 Window configuration management such as adding and restoring window
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2277 configurations by name. @xref{Window Configurations}.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2278
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2279 @end table
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2280
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2281 @cindex submenus
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2282 @cindex menu help
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2283 @cindex help, menu items
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2284 All menu items are selected via the first character of their names
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2285 (letter case does not matter) or via a press of the Action Key. "/" at
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2286 the end of an item name indicates that it brings up a sub-menu. A press
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2287 of the Assist Key on an item displays help for the item, including the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2288 action that it performs.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2289
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2290 @kindex C-t
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2291 @kindex q
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2292 @kindex C-g
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2293 While a menu is active, to re-activate the top-level Hyperbole menu, you
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2294 must use @{@kbd{C-t}@}. This allows you to browse the submenus and then
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2295 return to the top. You can quit without selecting an item by using
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2296 @{@kbd{q}@}. @{@kbd{C-g}@} aborts whether you are at a menu prompt or
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2297 any other Hyperbole prompt.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2298
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2299
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2300
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2301 @node Entering Arguments, Outliner, Menus, Top
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2302 @chapter Entering Arguments
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2303
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2304 @cindex argument entry
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2305 @cindex direct selection
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2306 @cindex double click
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2307 Many Hyperbole commands prompt you for arguments. The standard
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2308 Hyperbole user interface has an extensive core of argument types that it
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2309 recognizes. Whenever Hyperbole is prompting you for an argument, it
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2310 knows the type that it needs and provides some error checking to help
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2311 you get it right. More importantly, it allows you to press the Action
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2312 Key within an entity that you want to use as an argument and it will grab the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2313 appropriate thing and show it to you at the input prompt within the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2314 minibuffer. If you press the Action Key again at the same point (click
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2315 with a mouse) on the same thing again, it accepts the entity as the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2316 argument and moves on. Thus, a double click registers a desired
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2317 argument. Double-quoted strings, pathnames, mail messages, Info nodes,
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2318 dired listings, buffers, numbers, completion items and so forth are all
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2319 recognized at appropriate times. All of the argument types mentioned in
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2320 the documentation for the Emacs Lisp @code{(interactive)} function are
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2321 recognized. Experiment a little and you will quickly get used to this
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2322 direct selection technique.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2323
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2324 @cindex completion
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2325 Wherever possible, standard Emacs completion is offered, see
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2326 @ref{Completion,,,emacs, the Gnu Emacs Manual}. Remember to use @{@kbd{?}@}
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2327 to see what your possibilities for an argument are. Once you have a
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2328 list of possible completions on screen, you can double click the Action
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2329 Key on any one to enter it as the argument.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2330
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2331
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2332 @node Outliner, Rolodex, Entering Arguments, Top
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2333 @chapter Outliner
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2334
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2335 @cindex outliner
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2336 @cindex autonumber
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2337 @cindex relative autonumber
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2338 @cindex permanent identifier
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2339 @cindex idstamp
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2340 @cindex hyperlink anchor
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2341 The Hyperbole outliner, also known as the Koutliner (pronounced
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2342 Kay-outliner), produces structured, autonumbered documents composed of
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2343 hierarchies of cells. Each @dfn{cell} has two identifiers, a
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2344 @dfn{relative identifier} indicating its present position within the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2345 outline and a @dfn{permanent identifier} called an @dfn{idstamp},
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2346 suitable for use within hyperlink references to the cell. The idstamp
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2347 is typically not displayed but is available when needed.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2348 @xref{Autonumbering}.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2349
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2350 Cells also store their time of creation and the user who created the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2351 cell. User-defined attributes may also be added to cells. @xref{Cell
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2352 Attributes}.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2353
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2354 @cindex menu, Outline
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2355 The outliner works only under GNU Emacs version 19 or higher, XEmacs
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2356 version 19.9 or higher or under InfoDock. You can tell whether you are
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2357 running a version of Emacs which supports the outliner by hitting
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2358 @{@kbd{C-h h}@} to display the Hyperbole menu. If you see an
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2359 @code{Otl/} entry in the menu, then the outliner is available.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2360 Otherwise, the outliner does not work with your version of Emacs, so
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2361 this section of the manual will not be of interest to you. (The same is
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2362 true of the Hyperbole/Outline pulldown menu; if it appears, the outliner
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2363 is available for use.)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2364
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2365 @vindex file, EXAMPLE.kotl
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2366 @cindex menu, Outline/Example
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2367 This chapter expands on the information given in @file{EXAMPLE.kotl}
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2368 file included with Hyperbole. Use @{@kbd{C-h h o e}@} to display that
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2369 file. It is an actual outline file that explains major outliner
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2370 operations. You can test out the viewing and motion commands with this
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2371 file. If you want to experiment with editing operations, use @{@kbd{C-x
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2372 C-w}@} to write the outline to a temporary file such as,
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2373 @file{/tmp/e.kotl}, and then use @{@kbd{C-x C-q}@} to make the outline
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2374 editable.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2375
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2376 @xref{Outliner Keys}, for a full summary of the key bindings and
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2377 commands available in the outliner.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2378
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2379 @menu
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2380 * Menu Commands::
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2381 * Creating Outlines::
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2382 * Autonumbering::
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2383 * Idstamps::
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2384 * Editing::
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2385 * Viewing::
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2386 * Links::
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2387 * Cell Attributes::
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2388 * Outliner History::
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2389 @end menu
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2390
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2391
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2392 @node Menu Commands, Creating Outlines, Outliner, Outliner
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2393 @section Menu Commands
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2394
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2395 The Otl/ menu entry on the Hyperbole top-level menu provides access to
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2396 a number of major outliner commands:
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2397
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2398 @cindex outliner commands
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2399 @cindex Koutliner commands
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2400 @findex kotl-mode:show-all
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2401 @findex kvspec:toggle-blank-lines
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2402 @findex kfile:find
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2403 @findex kotl-mode:hide-sublevels
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2404 @findex kotl-mode:hide-tree
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2405 @findex kotl-mode:kill-tree
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2406 @findex klink:create
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2407 @findex kotl-mode:overview
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2408 @findex kotl-mode:show-tree
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2409 @findex kotl-mode:top-cells
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2410 @findex kvspec:activate
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2411 @cindex menu, Outline
10
49a24b4fd526 Import from CVS: tag r19-15b6
cvs
parents: 2
diff changeset
2412 @example
49a24b4fd526 Import from CVS: tag r19-15b6
cvs
parents: 2
diff changeset
2413 @group
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2414 Menu Item Command Description
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2415 ====================================================================
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2416 All kotl-mode:show-all Expand all cells
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2417 Blanks kvspec:toggle-blank-lines Toggle blank lines on or off
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2418 Create kfile:find Edit or create an outline
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2419 Downto kotl-mode:hide-sublevels Hide cells deeper than a level
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2420 Examp <sample outliner file> Show self-descriptive example
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2421 Hide kotl-mode:hide-tree Hide tree with root at point
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2422 Info <outliner documentation> Show outliner manual section
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2423 Kill kotl-mode:kill-tree Kill the current tree
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2424 Link klink:create Create a link to another cell
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2425 Overvw kotl-mode:overview Show first line of each cell
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2426 Show kotl-mode:show-tree Show tree with root at point
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2427 Top kotl-mode:top-cells Collapse to top-level cells
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2428 Vspec kvspec:activate Set a view specification
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2429 ====================================================================
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2430 @end group
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2431 @end example
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2432
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2433
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2434 @node Creating Outlines, Autonumbering, Menu Commands, Outliner
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2435 @section Creating Outlines
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2436
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2437 @cindex outline file suffix
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2438 @cindex outline, creating
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2439 @vindex file, .kotl suffix
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2440 In addition to the Otl/Create menu item, you can create and experiment
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2441 with outline files simply by finding a file, @{@kbd{C-x C-f}@} with a
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2442 @file{.kotl} suffix. @file{.kot} will also work for DOS or
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2443 Windows-impaired users.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2444
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2445 @cindex root cell
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2446 @cindex top-level cell
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2447 @cindex cell, top-level
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2448 @cindex cell, idstamp 0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2449 When a new koutline is created, an invisible root cell is created. Its
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2450 permanent and relative ids are both 0, and it is considered to be at
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2451 level 0 in the outline. All visible cells in the outline are at level 1
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2452 or deeper, and thus are descendants of this root cell. Some koutliner
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2453 commands prompt for cell numbers as arguments. An argument of 0 makes
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2454 commands operate upon the entire outline.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2455
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2456 An initial level 1 cell is also created to make it easy to start
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2457 entering text in the outline. A koutline always has at least one
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2458 visible cell in it.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2459
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2460 @xref{Autonumbering}, which explains how cells are labeled according to their
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2461 respective levels in the outline and how these labels are updated as the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2462 structure of the outline changes.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2463
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2464
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2465 @node Autonumbering, Idstamps, Creating Outlines, Outliner
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2466 @section Autonumbering
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2467
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2468 @cindex autonumber
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2469 @cindex relative identifier
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2470 @xref{Adding and Killing}, which explains how to add new cells to or remove
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2471 cells from a koutline. As you do this, or as you promote or demote
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2472 cells within the outline, the labels preceding the contents of each cell
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2473 automatically update to reflect the new structure. These labels are
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2474 also known as @dfn{autonumbers} and as @dfn{relative ids} because they
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2475 change as the structure changes.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2476
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2477 @cindex outline structure
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2478 The outline structure is shown by these labels and by the indentation of
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2479 each outline level. Normally, each deeper level is indented another
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2480 three characters, to reflect the nesting.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2481
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2482 @cindex label type, alpha
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2483 @cindex label type, legal
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2484 @cindex alpha labels
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2485 @cindex legal labels
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2486 @cindex outline, label type
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2487 The default autonumbers are called @dfn{alphanumeric labels} because
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2488 they alternate between using numbers and letters to distinguish each
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2489 successive level. Each alphanumeric label uniquely identifies a cell's
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2490 position in an outline, so that there is no need to scan back to prior
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2491 cells to see what the current section number of an outline is. This is
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2492 similar to a legal numbering scheme but without all the period
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2493 characters between level numbers. As an example, 1b3 is equivalent to a
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2494 legal label of 1.2.3. Both refer to the 3rd cell at level 3,
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2495 below the 2nd child of the first cell at level 1. Said another way,
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2496 this is the 3rd child of the 1st cell's 2nd child. In other words, it
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2497 is easier to visualize hierarchies than to talk about them.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2498
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2499 Alphanumeric labels are the default because they are shorter and easier
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2500 to read aloud than equivalent legal ones. They also simplify
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2501 distinguishing between even and odd level labels because of the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2502 alternating character set.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2503
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2504 @kindex C-c C-l
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2505 @cindex label type, changing
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2506 You can change the labeling scheme used in a particular outline with the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2507 command @{@kbd{C-c C-l}@}. A @{@kbd{?}@} then will show all of your
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2508 options. Legal labels, partial alpha labels (single level autonumbering
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2509 where only the last part of the level number is shown, as commonly seen
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2510 in other outliner products), idstamps (permanent cell ids), and star
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2511 outline level labels (Emacs asterisk-based outline labeling) are all
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2512 available. Or you may choose to turn autonumbering off. Cells are
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2513 still indented to reflect the outline structure whether or not labels
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2514 are displayed.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2515
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2516 @cindex label separator, changing
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2517 @cindex cell, label separator
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2518 @cindex outline, label separator
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2519 @kindex C-c M-l
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2520 @kindex C-u C-c M-l
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2521 A cell label is normally followed by two spaces, called the @dfn{label
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2522 separator}, prior to the start of the cell contents. You can change the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2523 separator with for the current outline with @{@kbd{C-c M-l}@}.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2524 @{@kbd{C-u C-c M-l}@} will additionally change the default separator
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2525 value used when new outlines are created (for the current session only).
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2526 For example, use the value ". " to get a trailing period after each cell
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2527 label. The separator must be at least two characters long but may be
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2528 longer.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2529
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2530 @vindex file, ~/.emacs
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2531 @cindex initialization file
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2532 If you find a separator that you prefer for all outlines, change the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2533 separator setting permanently by adding the following line to your Emacs
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2534 initialization file, @file{~/.emacs}, substituting for `your-separator':
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2535
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2536 @cindex label separator, default
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2537 @vindex kview:default-label-separator
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2538 @lisp
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2539 (setq kview:default-label-separator "your-separator")
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2540 @end lisp
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2541
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2542
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2543 @node Idstamps, Editing, Autonumbering, Outliner
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2544 @section Idstamps
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2545
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2546 @cindex permanent identifier
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2547 @cindex idstamp
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2548 Idstamps (permanent ids) are associated with each cell and can be
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2549 used in hyperlinks that are maintained as cells are reordered in a file.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2550 @xref{Links}. Idstamps may also be displayed in place of the outline
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2551 level relative ids. Use @{@kbd{C-c C-l id RET}@}.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2552
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2553 @cindex idstamp counter
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2554 An idstamp counter for each outline starts at 0 and is incremented by
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2555 one each time a cell is added to the outline. This idstamp stays with
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2556 the cell no matter where it is moved within the outline. If the cell is
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2557 deleted, its idstamp is not reused.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2558
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2559 @cindex root cell
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2560 @cindex top-level cell
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2561 @cindex cell, top-level
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2562 @cindex cell, idstamp 0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2563 @cindex idstamp 0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2564 The 0 idstamp is always assigned to the root node of the entire outline.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2565 This node is never visible within the outline, but is used so that the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2566 outline may be treated as a single tree when needed. Idstamps always
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2567 begin with a 0, as in 012, to distinguish them from relative ids.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2568
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2569
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2570 @node Editing, Viewing, Idstamps, Outliner
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2571 @section Editing
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2572
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2573 You edit text and move around in the Koutliner just as you would in any
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2574 other Emacs buffer, except when you want to deal with the structural
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2575 components of an outline. Within the contents of a cell, all of your
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2576 standard editing keys should work properly. You can just type in text
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2577 and the left and right margins of the lines will be maintained for you.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2578 @xref{Filling}, for the times when you need to refill a paragraph or to
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2579 control when filling occurs.@refill
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2580
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2581 Don't invoke editing commands with @{@kbd{M-x command-name @key{RET}}@}
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2582 since the Koutliner uses special differently named commands made to act
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2583 like the regular editing commands but which account for the structure
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2584 and indentation in koutlines.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2585
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2586 @cindex cell, selection
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2587 You can use the mouse to select parts of the contents of a single cell
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2588 for editing. But don't drag across cell boundaries and then edit the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2589 selected region, since that can destroy the outline structure.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2590
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2591 @menu
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2592 * Adding and Killing::
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2593 * Moving Around::
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2594 * Relocating and Copying::
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2595 * Filling::
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2596 * Transposing::
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2597 * Splitting and Appending::
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2598 * Inserting and Importing::
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2599 @end menu
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2600
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2601 @node Adding and Killing, Relocating and Copying, Editing, Editing
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2602 @subsection Adding and Killing
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2603
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2604 @kindex C-j
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2605 @kindex C-u c-j
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2606 @kindex C-c a
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2607 @kindex C-c p
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2608 @cindex cell, adding
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2609 @cindex cell, creating
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2610 @{@kbd{C-j}@} adds a new cell as a successor sibling of the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2611 current cell, that is, the next cell at the same level as the current
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2612 cell. If you enter a positive number as a prefix argument, that number
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2613 of cells will be inserted, all at the same level. @{@kbd{C-u C-j}@} is
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2614 handled specially. It adds a single cell as a child of the current cell.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2615 @{@kbd{C-c a}@} does the same thing. @{@kbd{C-c p}@} adds the cell as
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2616 the successor of the current cell's parent.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2617
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2618 @kindex C-c C-k
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2619 @kindex C-c k
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2620 @kindex C-u C-c k
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2621 @kindex C-y
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2622 @cindex cell, killing
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2623 @cindex cell, yanking contents
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2624 @cindex tree, killing
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2625 @{@kbd{C-c C-k}@} kills the current cell and its entire subtree.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2626 @{@kbd{C-c k}@} kills the contents of a cell from point through the end
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2627 of the cell; it does not remove the cell itself. @{@kbd{C-u C-c k}@}
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2628 kills the entire contents of the cell regardless of the location of
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2629 point. You may then yank the contents into another cell or another
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2630 buffer with @{@kbd{C-y}@}.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2631
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2632
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2633 @node Relocating and Copying, Moving Around, Adding and Killing, Editing
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2634 @subsection Relocating and Copying
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2635
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2636 @cindex promotion
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2637 @cindex demotion
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2638 @cindex tree, promoting
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2639 @cindex tree, demoting
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2640 @dfn{Demotion} is the act of moving a tree down one or more levels in the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2641 outline. The new tree will become either the successor or the first
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2642 child of the cell which precedes it in the outline. @dfn{Promotion} is
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2643 the inverse operation. Note that trees (cells and their entire
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2644 substructure) are promoted and demoted, not individual cells.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2645
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2646 @kindex @key{TAB}
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2647 @kindex M-@key{TAB}
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2648 Trees may be demoted or promoted by pressing @{@key{TAB}@} or
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2649 @{@kbd{M-@key{TAB}}@} respectively, as in most outliners today.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2650 @{@kbd{M-0 @key{TAB}}@} and @{@kbd{M-0 M-@key{TAB}}@} demote and
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2651 promote trees and additionally refill each cell that is not specially
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2652 marked to prevent refilling. @xref{Filling}. A positive or negative
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2653 prefix argument to these commands promotes or demotes the tree up to a
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2654 maximum of the number of levels given by the argument. The outline may
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2655 not support movement of the tree by the number of levels requested.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2656
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2657 @cindex tree, copying
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2658 @cindex tree, moving
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2659 @cindex Action Key, cell argument
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2660 @kindex Action Key, cell argument
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2661 For maximum flexibility in rearranging outlines, there are commands that
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2662 move or copy entire trees. Each of these commands prompts for the label
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2663 of the root cell to move or copy and for second cell at the new location
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2664 for the moved or copied tree. You can either accept the default
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2665 provided, type in the cell label or when a mouse is available, simple
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2666 double click with the Action Key on the contents of a cell. The
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2667 Koutliner knows to use the cell's label in such cases.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2668
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2669 In these following commands, words delimited with <> represent the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2670 arguments for which each command prompts. Note how the use of prefix
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2671 arguments changes each command's behavior from insertion at the sibling
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2672 level to insertion at the child level.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2673
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2674 @table @kbd
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2675 @kindex C-c c
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2676 @item C-c c
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2677 Copy <tree> to be the successor of <cell>.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2678 @kindex C-u C-c c
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2679 @itemx C-u C-c c
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2680 Copy <tree> to follow as the first child of <cell>.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2681
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2682 @kindex C-c C-c
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2683 @item C-c C-c
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2684 Copy <tree> to be the predecessor of <cell>.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2685 @kindex C-u C-c C-c
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2686 @itemx C-u C-c C-c
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2687 Copy <tree> to be the first child of the parent of <cell>.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2688
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2689 @kindex C-c m
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2690 @item C-c m
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2691 Move <tree> to be the successor of <cell>.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2692 @kindex C-u C-c m
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2693 @itemx C-u C-c m
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2694 Move <tree> to follow as the first child of <cell>.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2695
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2696 @kindex C-c C-m
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2697 @item C-c C-m
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2698 Move <tree> to precede <cell>.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2699 @kindex C-u C-c C-m
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2700 @itemx C-u C-c C-m
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2701 Move <tree> to be the first child of the parent of <cell>.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2702 @end table
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2703
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2704 @cindex mouse, moving trees
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2705 If you have mouse support under Hyperbole, you can move entire trees
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2706 with mouse clicks. Simply click the Assist Key within the indentation
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2707 to the left of a cell and you will be prompted for a tree to move.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2708 Double click the Action Key within the contents the root cell of the tree
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2709 to move and then double click within the contents of the root cell of the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2710 tree you want it to follow as a sucessor.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2711
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2712 Copying and moving only work within a single outline right now, so don't
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2713 try to use them to move trees across different outline files. You can,
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2714 however, copy an outline tree to a non-outline buffer with:
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2715
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2716 @cindex tree, exporting
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2717 @cindex outline, exporting
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2718 @cindex tree, mailing
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2719 @cindex outline, mailing
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2720 @cindex exporting an outline
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2721 @cindex mailing an outline
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2722 @table @kbd
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2723 @kindex C-c M-c
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2724 @item C-c M-c
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2725 Copy <tree> to a non-koutline buffer.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2726 @kindex C-c @@
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2727 @itemx C-c @@
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2728 Copy a <tree> to an outgoing mail message.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2729 @end table
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2730
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2731 @node Moving Around, Filling, Relocating and Copying, Editing
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2732 @subsection Moving Around
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2733
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2734 @cindex outline, motion
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2735 In addition to normal Emacs movement commands, you can move within a
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2736 cell or from one cell or tree to another.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2737
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2738 @table @kbd
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2739 @kindex C-c ,
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2740 @item C-c ,
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2741 Move to the beginning of the current cell.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2742 @kindex C-c .
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2743 @itemx C-c .
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2744 Move to the end of the current cell.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2745
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2746 @kindex C-c C-n
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2747 @item C-c C-n
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2748 Move to the next visible cell, regardless of level.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2749 @kindex C-c C-p
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2750 @itemx C-c C-p
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2751 Move to the previous visible cell, regardless of level.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2752
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2753 @kindex C-c C-f
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2754 @item C-c C-f
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2755 Move forward to this cell's successor, if any.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2756 @kindex C-c C-b
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2757 @itemx C-c C-b
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2758 Move backward to this cell's predecessor, if any.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2759
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2760 @kindex C-c C-d
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2761 @item C-c C-d
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2762 Move to the first child of the current cell, if any.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2763 @kindex C-c C-u
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2764 @itemx C-c C-u
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2765 Move to the parent cell of the current cell, if any.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2766
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2767 @kindex C-c <
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2768 @item C-c <
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2769 Move to the first sibling at the current level within this tree.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2770 @kindex C-c >
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2771 @itemx C-c >
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2772 Move to the last sibling at the current level within this tree.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2773
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2774 @kindex C-c ^
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2775 @item C-c ^
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2776 Move to the level 1 root cell of the current tree.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2777 @kindex C-c $
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2778 @itemx C-c $
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2779 Move to the last cell in the tree rooted at point, regardless of level.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2780 @end table
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2781
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2782
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2783 @node Filling, Transposing, Moving Around, Editing
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2784 @subsection Filling
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2785
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2786 @cindex outline, filling
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2787 Filling is the process of extending lines that are shorter than the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2788 right margin and reducing lines which extend past the margin by moving
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2789 words among the lines. Commands are provided to fill a paragraph within
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2790 a cell or a whole cell, which may have multiple paragraphs.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2791
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2792 @cindex filling
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2793 @cindex cell, filling
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2794 @cindex paragraph, filling
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2795 @cindex tree, filling
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2796 @cindex margin
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2797 @kindex M-q
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2798 @kindex M-j
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2799 @kindex C-c M-q
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2800 @kindex C-c M-j
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2801 @kindex C-M-q
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2802 @kindex C-M-j
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2803 @{@kbd{M-q}@} or @{@kbd{M-j}@} refills a paragraph within a
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2804 cell so that its lines wrap within the current margin settings.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2805 @{@kbd{C-c M-q}@} or @{@kbd{C-c M-j}@} refills all paragraphs within a
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2806 cell. @{@kbd{C-M-q}@} or @{@kbd{C-M-j}@} refills all cells within a
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2807 tree. See your Emacs or InfoDock manual for information on how to set
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2808 the left and right margins.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2809
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2810 @vindex kotl-mode:refill-flag
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2811 @cindex refilling
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2812 @cindex attribute, no-fill
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2813 @cindex cell, no-fill attribute
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2814 Set the variable, @var{kotl-mode:refill-flag}, to t if you want
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2815 moving, promoting, demoting, exchanging, splitting and appending cells
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2816 to also automatically refill each cell. Generally, this is not
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2817 recommended since if you happen to move a cell that you have carefully
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2818 formatted and forgot to give it a `no-fill' property, your formatting
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2819 will be lost.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2820
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2821
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2822 @node Transposing, Splitting and Appending, Filling, Editing
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2823 @subsection Transposing
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2824
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2825 The Koutliner move and copy commands rearrange entire trees. The
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2826 following two commands, in contrast, exchange the locations of two
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2827 individual cells.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2828
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2829 @kindex C-c e
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2830 @cindex cell, transposing
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2831 @cindex cell, exchanging
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2832 @cindex exchanging cells
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2833 @cindex transposing cells
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2834 @{@kbd{C-c e}@} prompts for two cell addresses and exchanges the cell
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2835 locations.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2836
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2837 @kindex C-c t
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2838 @{@kbd{C-c t}@} does not prompt. It exchanges the current
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2839 and immediatly prior cell, regardless of their levels. If there is no
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2840 prior cell it exchanges the current and next cell.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2841
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2842 @cindex cell, mark and point
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2843 @kindex M-0 C-c t
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2844 @{@kbd{M-0 C-c t}@} exchanges the cells in which point and mark fall.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2845 @{@kbd{C-c t}@} with a non-zero numeric prefix argument, N, moves
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2846 the current tree past maximally the next N visible cells. If there are
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2847 fewer visible, it makes the current cell the last cell in the outline.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2848
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2849
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2850 @node Splitting and Appending, Inserting and Importing, Transposing, Editing
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2851 @subsection Splitting and Appending
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2852
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2853 @cindex splitting a cell
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2854 @cindex cell, splitting
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2855 @kindex C-c s
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2856 @kindex C-u C-c s
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2857 You can split one cell into two adjacent sibling cells with @{@kbd{C-c
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2858 s}@}. This leaves the cell contents preceding point in the current
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2859 cell, minus any trailing whitespace, and moves the contents following
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2860 point to a new sibling cell which is inserted into the outline.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2861 @{@kbd{C-u C-c s}@} instead adds the new cell as the first child of the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2862 original cell, rather than as its successor.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2863
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2864 All cell attributes in the original cell are propagated to the new one,
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2865 aside from the creation attributes and idstamp.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2866
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2867 @kindex C-c +
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2868 @cindex cell, appending
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2869 @cindex appending to a cell
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2870 @cindex attribute, no-fill
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2871 @cindex cell, no-fill attribute
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2872 @{@kbd{C-c +}@} appends the contents of a specified cell to the end of
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2873 another cell. It has no effect on cell attributes, except that if one
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2874 cell has a `no-fill' attribute that prevents all but user requested
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2875 filling of a cell, then the cell appended to inherits this property.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2876 This helps maintain any special formatting the appended text may have.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2877
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2878
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2879 @node Inserting and Importing, , Splitting and Appending, Editing
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2880 @subsection Inserting and Importing
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2881
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2882 @cindex outline, inserting into
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2883 @cindex outline, importing into
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2884 @cindex importation
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2885 @cindex insertion
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2886 @kindex C-x i
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2887 @cindex outline, foreign file
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2888 The elements of another buffer or file may be inserted into a koutline
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2889 as a set of cells by using the @{@kbd{C-x i}@} command. When prompted,
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2890 you may use a buffer name or file name from which to insert, though
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2891 completion is provided only for file names.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2892
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2893 @kindex C-u C-x i
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2894 The elements from the original buffer are converted into kcells and
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2895 inserted as the successors of the current cell. If @{@kbd{C-u C-x i}@}
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2896 is used, they are instead inserted as the inital children of the current
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2897 cell.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2898
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2899 @vindex kimport:mode-alist
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2900 @vindex kimport:suffix-alist
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2901 @cindex outline, conversion
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2902 @findex kotl-mode
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2903 @cindex outline mode
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2904 @cindex koutline mode
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2905 @cindex file, importing
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2906 @cindex importing a file
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2907 See the documentation for the variables, kimport:mode-alist and
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2908 kimport:suffix-alist, for information on mode and suffix-specific
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2909 conversions performed on file elements before they are inserted. This
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2910 same conversion process applies if you invoke @{@kbd{M-x kotl-mode
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2911 RET}@} in a non-koutline buffer or if you perform a generic file import
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2912 as described later in this section.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2913
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2914 @findex kotl-mode:insert-file-contents
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2915 Use @{@kbd{M-x kotl-mode:insert-file-contents RET}@} to insert the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2916 entire contents of a file into the current cell at the location of
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2917 point.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2918
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2919 @findex kimport:file
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2920 The outliner presently supports conversion of three types of files into
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2921 koutline files. You can choose to import a file into an existing
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2922 koutline, following the tree at point, or to create a new koutline of
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2923 the imported file contents. @{@kbd{M-x kimport:file RET}@} will select
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2924 the importation type based on the buffer or file name suffix of the file
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2925 to import.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2926
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2927 @findex kotl-mode
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2928 If you want to convert a buffer from some other mode into a koutline and
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2929 then want to save the converted buffer back to its original file,
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2930 thereby replacing the original format, then use @{@kbd{M-x kotl-mode
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2931 RET}@} to convert the buffer into a koutline. Remember that you will
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2932 lose the old format of the buffer when you do this.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2933
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2934 Use one of the following commands if you really need explicit control over the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2935 type of importation used on some text. With these commands, your
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2936 original file remains intact.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2937
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2938 @findex kimport:text
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2939 @cindex text file
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2940 Use @{@kbd{M-x kimport:text RET}@} and you will be prompted for a text
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2941 buffer or file to import and the new koutline buffer or file to create
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2942 from its text. It will also import the contents, attributes and level
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2943 structure of cells from a koutline.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2944
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2945 @findex kimport:star-outline
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2946 @cindex emacs outline
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2947 @cindex star outline
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2948 Star outlines are standard Emacs outlines where each entry begins with
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2949 one or more asterisk characters. Use @{@kbd{M-x kimport:star-outline
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2950 RET}@} and you will be prompted for the star outline buffer or file to
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2951 import and the new koutline buffer or file to create.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2952
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2953 @cindex Augment outline
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2954 @findex kimport:aug-post-outline
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2955 (Skip this if you are unfamiliar with the Augment system.) Files
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2956 exported from the Augment system as text often have alphanumeric
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2957 statement identifiers on the right side. You can import such files
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2958 while maintaining there outline structure. Use @{@kbd{M-x
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2959 kimport:aug-post-outline RET}@} and you will be prompted for the Augment
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2960 buffer or file to import and the koutline to create.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2961
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2962
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2963 @node Viewing, Links, Editing, Outliner
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2964 @section Viewing
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2965
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2966 @cindex outline, viewing
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2967 @cindex view
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2968 The Koutliner has very flexible viewing facilities to allow you to
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2969 effectively browse and study large amounts of material.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2970
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2971 @menu
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2972 * Hiding and Showing::
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2973 * View Specs::
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2974 @end menu
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2975
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2976 @node Hiding and Showing, View Specs, Viewing, Viewing
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2977 @subsection Hiding and Showing
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2978
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2979 @cindex outline, hiding
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2980 @cindex outline, showing
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2981 @cindex collapsing
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2982 @cindex expanding
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2983 @cindex hiding
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2984 @cindex showing
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2985 Individual cells, branches, or particular levels in the outline may be
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2986 hidden or shown. These commands work even when an outline buffer is
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2987 read-only, e.g. when its file is not checked out of a version control
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2988 system yet, so that you can get effective views of an outline without
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2989 editing it. Some of these commands affect the current view spec,
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2990 @ref{View Specs}.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2991
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2992 @table @kbd
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2993 @cindex hide tree
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2994 @cindex tree, show
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2995 @kindex C-c C-h
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2996 @item C-c C-h
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2997 Hide (collapse) the tree rooted at point.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2998 @cindex show tree
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2999 @cindex tree, show
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3000 @kindex C-c C-s
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3001 @itemx C-c C-s
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3002 Show (expand) the tree rooted at point.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3003
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3004 @cindex outline, all cells
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3005 @cindex cell, show all
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3006 @kindex C-c C-a
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3007 @item C-c C-a
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3008 Show (expand) all of the cells in the outline.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3009 @cindex level
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3010 @cindex cell, show levels
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3011 @cindex outline, show levels
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3012 @kindex C-x $
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3013 @itemx C-x $
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3014 Show all of the cells down to a particular <level>. You are prompted
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3015 for the level or a prefix argument may be given.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3016
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3017 @cindex subtree, hide
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3018 @cindex tree, hide subtree
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3019 @cindex cell, hide subtree
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3020 @cindex hide subtree
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3021 @kindex C-M-h
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3022 @item C-M-h
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3023 Hide the subtree at point, excluding the root cell.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3024 @cindex subtree, show
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3025 @cindex tree, show subtree
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3026 @cindex cell, show subtree
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3027 @cindex show subtree
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3028 @itemx M-x kotl-mode:show-subtree
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3029 Show the subtree at point. Use @{@kbd{C-c C-s}@} to achieve a similar
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3030 effect. The only difference is that it will expand the root cell too.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3031
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3032 @cindex overview
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3033 @cindex outline, overview
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3034 @kindex C-c C-o
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3035 @item C-c C-o
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3036 Show an overview of the outline by showing only the first line of
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3037 every cell. This also turns off blank lines between cells to maximize
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3038 your view of the outline.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3039 @cindex top-level view
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3040 @cindex outline, top-level
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3041 @kindex C-c C-t
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3042 @itemx C-c C-t
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3043 Show a top-level view of the outline by showing only the first line of
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3044 each level one cell. This does not turn off blank lines.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3045 @end table
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3046
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3047 @kindex Action Key, hide or show cell
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3048 @cindex Action Key, hide or show cell
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3049 @cindex cell, collapse
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3050 @cindex cell, expand
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3051 @kindex M-@key{RET}
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3052 A click or a press of the Action Key within a cell's body, but not on a
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3053 Hyperbole button, toggles between hiding and showing the tree rooted at
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3054 point. Try it with either your mouse or with @{@kbd{M-@key{RET}}@}.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3055
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3056
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3057 @node View Specs, , Hiding and Showing, Viewing
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3058 @subsection View Specs
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3059
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3060 @cindex view spec
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3061 @cindex modeline, view spec
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3062 @vindex kvspec:string
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3063 @cindex pipe character
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3064 @cindex |
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3065 @cindex <|viewspec>
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3066 @dfn{View specifications} (view specs, for short) are short codes used
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3067 to control the view of a koutline. The view specs in effect for an
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3068 outline are always displayed in the modeline of the outline's window,
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3069 following the outline buffer name, unless the variable,
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3070 @var{kvspec:string}, has been set to @code{nil} to disable view spec
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3071 modeline display. The modeline display appears as <|viewspec> so that
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3072 you can easily pick them out. The | (pipe character) is also used in
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3073 links that specify view specs to indicate the start of a view spec
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3074 sequence. @xref{Links}.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3075
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3076 @cindex outline, view specs
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3077 The current view spec is saved whenever the outline is saved. The next
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3078 time the outline is read in, this will be the initial view.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3079
24
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
3080 The rest of this section documents the the view spec characters that are
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3081 presently supported and explains how to invoke a view spec. There is no
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3082 user-level way to add your own view spec characters, so all character
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3083 codes are reserved for future use.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3084
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3085 @kindex C-c C-v
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3086 @cindex view spec, setting
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3087 @cindex view spec, changing
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3088 @cindex changing the view spec
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3089 @cindex setting the view spec
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3090 @{@kbd{C-c C-v}@} prompts for a new view spec setting in which the following
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3091 codes are valid. Any invalid characters in a view spec are ignored.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3092 Characters are evaluated in an order meant to do the right thing, even
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3093 when you use conflicting view spec characters. The standard initial
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3094 view spec is <|ben>.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3095
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3096 @cindex view spec, characters
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3097 @table @kbd
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3098 @cindex view spec, all lines and levels
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3099 @item a
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3100 Show all cell levels and all lines in cells.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3101
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3102 @kindex C-c b
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3103 @cindex blank lines, toggle
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3104 @cindex view spec, blank lines
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3105 @kindex C-c b
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3106 @cindex toggling blank lines
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3107 @item b
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3108 Turn on blank lines between cells. Without this character, blank lines
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3109 will be turned off. You can also use the @{@kbd{C-c b}@} key binding to
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3110 toggle line numbers on and off independent of any other view settings.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3111
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3112 @cindex view spec, lines per cell
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3113 @cindex hide lines
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3114 @cindex collapse lines
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3115 @cindex cutoff lines
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3116 @item cN
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3117 Hide any lines greater than N in each cell. 0 means don't cutoff any
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3118 lines.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3119
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3120 @cindex ellipses
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3121 @cindex view spec, ellipses
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3122 @item e
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3123 Show ellipses when some content of a cell or its subtree is hidden.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3124
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3125 @cindex level
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3126 @cindex cell, hiding levels
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3127 @cindex hide levels
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3128 @cindex view spec, show levels
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3129 @item lN
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3130 Hide cells at levels deeper than N. 0 means don't hide any cells.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3131
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3132 @cindex label type
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3133 @cindex view spec, label type
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3134 @vindex kview:default-label-type
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3135 @cindex default label type
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3136 @item n
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3137 Turn on the default label type, as given by the variable,
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3138 @var{kview:default-label-type}. Normally, this is alphanumeric labels.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3139 @cindex label type, idstamps
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3140 @itemx n0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3141 Display idstamps.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3142 @cindex label type, alpha
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3143 @itemx n1
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3144 Display alpha labels.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3145 @cindex label type, partial alpha
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3146 @itemx n2
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3147 Display partial alpha labels (don't use this, as full alpha labels are
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3148 better).
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3149 @cindex label type, legal
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3150 @itemx n.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3151 Display legal labels.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3152 @cindex label type, star
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3153 @cindex label type, asterisk
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3154 @itemx n*
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3155 Display star labels. A level three cell would have three asterisks as a
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3156 label, for example.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3157 @cindex label type, no labels
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3158 @itemx n~
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3159 Turn off labels. (n viewspec is removed from modeline).
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3160 @end table
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3161
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3162 @cindex view spec, example
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3163 As a test, use @{@kbd{C-h h o e}@} to display the example koutline.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3164 Then use @{@kbd{C-c C-v}@} to set a view spec of `c2l1'. This will turn
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3165 off blank lines, clip each cell after its second line, and hide all
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3166 cells below level one.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3167
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3168
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3169 @node Links, Cell Attributes, Viewing, Outliner
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3170 @section Links
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3171
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3172 @cindex link
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3173 @cindex hyperlink
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3174 @cindex klink
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3175 @cindex <> delimiters
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3176 Hyperlinks may be embedded in cells and may refer to other cells or
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3177 external sources of information. Explicit Hyperbole buttons may be
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3178 created as usual via mouse drags, @ref{By Dragging, Creation Via Action
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3179 Key Drags}. A @dfn{klink} is a special implicit link button, delimited
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3180 by <> separators, that jumps to a specific outline cell. This section
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3181 discusses klinks.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3182
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3183 @kindex Action Key, klink
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3184 @cindex Action Key, klink
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3185 @cindex klink, activating
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3186 @cindex klink referent
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3187 Press the Action Key over a klink to follow it. This will flash the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3188 klink as a button and then will display its referent in the other
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3189 window. If the klink contains a view spec, that will be used when the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3190 referent is displayed.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3191
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3192 @cindex klink, inserting
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3193 @kindex C-c l
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3194 There are a number of easy ways to insert klinks into koutlines. If you
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3195 have mouse support under Hyperbole, simply click the Action Key within
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3196 the indentation to the left of a cell text. If you then double click on
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3197 some cell, a link to that cell will be inserted where you started. From
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3198 a keyboard, use @{@kbd{C-c l}@} when in a koutline or @{@kbd{C-h h o
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3199 l}@} when not in a koutline to insert a klink. Since klinks are
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3200 implicit buttons, you can type in the text of the klink just as you see
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3201 it in the examples below and it will work exactly as if it had been
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3202 entered with the insert link command.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3203
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3204 @cindex klink, formats
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3205 @noindent
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3206 There are basically three forms of klinks:
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3207
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3208 @table @bullet
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3209 @cindex internal klink
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3210 @cindex klink, internal
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3211 @cindex <@@ klink>
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3212 @item internal
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3213 <@@ 2b=06> is an internal klink, since it refers to the koutline in which
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3214 it is embedded. When activated, it jumps to the cell within the current
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3215 outline which has permanent id `06' and relative id `2b'. <@@ 06> does
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3216 the same thing, as does <@@ 2b>, though this latter form will not
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3217 maintain the link properly if the cell is moved elsewhere within the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3218 outline. The form, <@@ 2b=06 |ben> additionally sets the view spec of
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3219 the current outline back to the default value, with a blank line between
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3220 each cell and all levels and lines of cells displayed.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3221
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3222 @cindex external klink
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3223 @cindex klink, external
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3224 @item external
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3225 The second klink format is an external link to another koutline, such
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3226 as, <EXAMPLE.kotl, 3=012 |c1e>, which displays the named file, starting
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3227 at the cell 3 (whose permanent identifer is 012), with the view
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3228 specification of: blank lines turned off, cutoff after one line per
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3229 cell, and show ellipses for cells or trees which are clipped.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3230
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3231 @cindex klink, view spec
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3232 @cindex view spec klink
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3233 @item view spec
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3234 The third format simply allows you to set a view spec for the current
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3235 koutline. For example, <|ben>, when activated, sets the view in the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3236 current outline to display blank lines, ellipses following collapsed
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3237 lines and standard alphanumeric numbering.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3238 @end table
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3239
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3240
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3241 @node Cell Attributes, Outliner History, Links, Outliner
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3242 @section Cell Attributes
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3243
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3244 @cindex cell, attribute
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3245 @cindex attribute
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3246 @dfn{Attributes} are named variables whose values are specific to a
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3247 particular outline cell. Thus, each cell has its own attribute list.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3248 Every cell has three standard attributes:
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3249
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3250 @table @bullet
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3251 @cindex idstamp attribute
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3252 @item idstamp
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3253 The permanent id of the cell, typically used in cross-file hyperlinks
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3254 that reference the cell.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3255
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3256 @cindex creator attribute
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3257 @cindex e-mail address
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3258 @cindex mail address
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3259 @item creator
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3260 The e-mail address of the person who created this cell.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3261
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3262 @cindex create-time attribute
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3263 @cindex cell, creation time
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3264 @item create-time
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3265 The time at which the cell was created. This is stored in a form that
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3266 allows for easy data comparisons but is displayed in a human readable
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3267 format, such as "Jan 28 18:27:59 CST 1994".
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3268 @end table
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3269
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3270 @kindex C-c C-i
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3271 @cindex attribute, adding
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3272 @cindex attribute, modifying
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3273 @cindex attribute, removing
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3274 @{@kbd{C-c C-i}@} is the command to add an attribute to or to modify an
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3275 existing attribute in the cell at point. Think of it as inserting an
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3276 attribute value. To remove an attribute from cell, set its value to
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3277 @code{nil}.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3278
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3279
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3280 @cindex attribute, no-fill
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3281 @cindex cell, no-fill attribute
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3282 @cindex no-fill attribute
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3283 @vindex kotl-mode:refill-flag
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3284 The `no-fill' attribute is special. When added with a non-nil value, it
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3285 prevents moving, promoting, demoting, exchanging, splitting and
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3286 appending cells from refilling the cell, even if the variable,
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3287 @var{kotl-mode:refill-flag}, is set to t. It does not prevent you from
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3288 invoking explicit commands that refill the cell. @xref{Filling}.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3289
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3290 @kindex Assist Key, listing attributes
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3291 @cindex Assist Key, listing attributes
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3292 @cindex listing attributes
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3293 @cindex outline, attribute list
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3294 The attribute lists for the cells in the tree rooted at point can be
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3295 displayed by pressing the Assist Key within the contents of a cell.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3296
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3297 @kindex C-c h
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3298 @kindex C-u C-c h
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3299 @{@kbd{C-c h}@} prompts for a cell label and displays the cell's
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3300 attributes. @{@kbd{C-u C-c h}@} prompts for a cell label and displays
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3301 the attributes for it and its subtree; use 0 as the kcell id to see
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3302 attributes for all visible cells in the outline.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3303
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3304
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3305 @node Outliner History, , Cell Attributes, Outliner
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3306 @section Outliner History
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3307
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3308 @cindex NLS
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3309 @cindex Augment
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3310 @cindex Engelbart
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3311 Much of the Hyperbole outliner design is based upon concepts pioneered
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3312 in the NLS/Augment system, @cite{[Eng84a]}. Augment treated documents as
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3313 a hierarchical set of nodes, called statements, rather than cells.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3314 Every Augment document utilized this intrinsic structure.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3315
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3316 @cindex distributed collaboration
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3317 @cindex collaboration
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3318 The system could rapidly change the view of a document by collapsing,
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3319 expanding, generating, clipping, filtering, including or reordering
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3320 these nodes. It could also map individual views to multiple workstation
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3321 displays across a network to aid in distributed, collaborative work.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3322
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3323 @cindex knowledge transfer
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3324 @cindex idea structuring
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3325 @cindex cross referencing
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3326 These facilities aided greatly in idea structuring, cross-referencing,
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3327 and knowledge transfer. The Koutliner is a start at bringing
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3328 these capabilities back into the mainstream of modern computing culture.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3329
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3330
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3331 @node Rolodex, Window Configurations, Outliner, Top
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3332 @chapter Rolodex
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3333
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3334 @cindex rolodex
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3335 @cindex wrolo
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3336 Hyperbole includes a complete, advanced rolodex system, Wrolo, for
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3337 convenient management of hierarchical, record-oriented information.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3338
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3339 @cindex rolo, buttons in
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3340 Hyperbole buttons may be included within rolodex records and then
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3341 manually activated whenever their records are retrieved.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3342
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3343 @vindex file, wrolo.el
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3344 See the description at the top of the @file{wrolo.el} file for
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3345 details on programmatic interfacing to the rolodex. The following
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3346 subsections explain use and basic customization of the rolodex.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3347
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3348 @menu
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3349 * Rolo Concepts::
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3350 * Rolo Menu::
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3351 * Rolo Keys::
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3352 * Rolo Settings::
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3353 @end menu
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3354
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3355 @node Rolo Concepts, Rolo Menu, Rolodex, Rolodex
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3356 @section Rolo Concepts
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3357
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3358 @cindex rolodex file
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3359 @cindex rolodex entry
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3360 The rolodex manages and searches rolodex files. A @dfn{rolodex file}
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3361 consists of an optional header which starts and ends with a line of
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3362 equal signs (at least three equal signs starting at the beginning of a
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3363 line), followed by any non-negative number of rolodex records. You must
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3364 manually add a header to any rolodex file if you want it to have one.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3365
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3366 @noindent
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3367 Here is an example of a simple rolodex file.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3368
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3369 @example
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3370 @group
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3371 ==================================================================
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3372 PERSONAL ROLODEX
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3373 <Last-Name>, <First> <Email> W<Work#> F<Fax#>
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3374 ==================================================================
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3375 * Smith, John <js@@hiho.com> W708-555-2001 F708-321-1492
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3376 Chief Ether Maintainer, HiHo Industries
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3377 10/24/95
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3378 @end group
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3379 @end example
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3380
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3381 We call rolodex records, @dfn{entries}. Entries begin with a delimiter,
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3382 some number of `*' characters at the beginning of a line. Entries may
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3383 be arranged in a hierarchy, where child entries begin with one more `*'
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3384 characters than do their parents. Top level entries begin with a single
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3385 `*'.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3386
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3387 Beyond this initial delimiter, entries are completely free-form text.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3388 It is best to use a "lastname, firstname" format, however, when adding
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3389 contact entries into a rolodex. Then the rolodex system will
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3390 automatically keep your entries alphabetized as you enter them. You'll
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3391 also be able to sort them whenever you desire.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3392
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3393 Any search done on the rolodex scans the full text of each entry.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3394 During a search, the rolodex file header separator lines and anything in
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3395 between are appended to the buffer of matched entries before any entries
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3396 are retrieved from the file. Whenever an entry is matched, it and all
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3397 of its descendant entries are retrieved. If your Emacs version supports
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3398 textual highlighting, each search match is highlighted for quick, visual
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3399 location.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3400
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3401 @noindent
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3402 For example, a search on "Company" could retrieve the following:
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3403
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3404 @example
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3405 @group
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3406 ==================================================================
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3407 COMPANY ROLODEX
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3408 ==================================================================
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3409 * Company
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3410 ** Manager
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3411 *** Underlings
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3412 @end group
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3413 @end example
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3414
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3415 @noindent
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3416 Thus, searching for Company retrieves all listed employees.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3417 Searching for Manager turns up all Underlings.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3418
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3419
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3420 @node Rolo Menu, Rolo Keys, Rolo Concepts, Rolodex
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3421 @section Rolo Menu
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3422
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3423 @cindex rolodex menu
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3424 The Rolo/ menu entry on the Hyperbole top-level menu provides the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3425 user interface to the rolodex. The rolo menu provides access to the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3426 following commands:
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3427
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3428 @cindex rolodex commands
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3429 @cindex Wrolo commands
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3430 @findex rolo-add
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3431 @findex rolo-display-matches
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3432 @findex rolo-edit
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3433 @findex rolo-kill
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3434 @findex rolo-mail-to
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3435 @findex rolo-sort
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3436 @findex rolo-grep
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3437 @findex rolo-fgrep
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3438 @findex rolo-word
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3439 @findex rolo-yank
10
49a24b4fd526 Import from CVS: tag r19-15b6
cvs
parents: 2
diff changeset
3440 @example
49a24b4fd526 Import from CVS: tag r19-15b6
cvs
parents: 2
diff changeset
3441 @group
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3442 Menu Item Command Description
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3443 ====================================================================
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3444 Add rolo-add Adds a rolodex entry
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3445 Display rolo-display-matches Displays last matches again
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3446 Edit rolo-edit Edits an existing rolodex entry
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3447 Info Displays Rolodex manual entry
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3448 Kill rolo-kill Removes an entry from the rolodex
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3449 Mail rolo-mail Mail to address following point
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3450 Order rolo-sort Sorts all levels in rolodex
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3451 RegexFind rolo-grep Finds all entries containing
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3452 a regular expression
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3453 StringFind rolo-fgrep Finds all entries containing
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3454 a string
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3455 WordFind rolo-word Finds all entries containing
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3456 a string of whole words
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3457 Yank rolo-yank Inserts first matching rolodex
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3458 entry at point
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3459 ====================================================================
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3460 @end group
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3461 @end example
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3462
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3463 A prefix argument used with either of the find commands listed above
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3464 limits the search to a maximum number of matches given by the argument.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3465 The search is terminated whenever that number of matches is found.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3466
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3467 For any of the above commands that prompt for a name, you may use the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3468 form parent/child to locate a child entry below a parent entry. So for
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3469 a rolodex which looked like so:
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3470
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3471 @example
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3472 @group
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3473 * Company
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3474 ** Manager
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3475 *** Underlings
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3476 @end group
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3477 @end example
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3478
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3479 @noindent
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3480 You could edit the Underlings entry by identifying it as
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3481 Company/Manager/Underlings. Do not use this hierarchical notation in
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3482 search expressions since the whole rolodex will be searched anyway.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3483 Thus, "Underlings" as a search pattern will find an entry containing
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3484 "Underlings" at any level in a hierarchy, like so:
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3485
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3486 @example
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3487 *** Underlings
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3488 @end example
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3489
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3490 @node Rolo Keys, Rolo Settings, Rolo Menu, Rolodex
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3491 @section Rolo Keys
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3492
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3493 @kindex e
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3494 @cindex rolodex, editing an entry
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3495 Use the @{@kbd{e}@} key to edit the entry at point within the rolodex
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3496 source file.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3497
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3498 @cindex wrolo menu
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3499 @cindex rolodex keys
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3500 After a rolodex search is performed, point is left in the @dfn{rolodex
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3501 match buffer}, @file{*Rolodex*}, which uses @code{wrolo-mode} to
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3502 simplify browsing many rolodex matches. Press @{@kbd{?}@} when in the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3503 match buffer for a summary of available keys.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3504
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3505 @kindex TAB
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3506 @kindex M-TAB
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3507 @kindex r
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3508 @cindex rolodex, highlighting matches
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3509 @cindex rolodex, finding matches
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3510 @cindex rolodex, moving through matches
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3511 If your Emacs version supports textual highlighting, each search match
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3512 is highlighted for quick, visual location. @{@key{TAB}@} moves point
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3513 forward to successive spans of text which match the search expression.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3514 @{@kbd{M-@key{TAB}}@} or @{@kbd{r}@} moves point backward to earlier
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3515 matches. These keys allow you to quickly find the matching entry of
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3516 most interest to you if your search expression failed to narrow the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3517 matches sufficiently.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3518
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3519 @kindex M-s
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3520 @kindex C-r
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3521 @cindex rolodex, extending a match
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3522 @cindex rolodex, interactive searching
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3523 If you want to extend the match expression with some more characters to
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3524 find a particular entry, use @{@kbd{M-s}@}, which performs an
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3525 interactive search forward for the match expression. You can add or
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3526 delete characters to this expression to find different occurences.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3527 @{@kbd{C-r}@} will reverse the direction of the search.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3528
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3529 @kindex a
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3530 @kindex h
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3531 @kindex s
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3532 @kindex t
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3533 @cindex rolodex, outlining
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3534 Single key outlining commands are also available for browsing matches.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3535 If your search matches a large number of entries, use
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3536 @{@kbd{t}@} to get a top-level overview of all the entries. Each entry
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3537 is collapsed so that only its first line shows. Press @{@kbd{s}@} to
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3538 show (expand) the entry at point. Use @{@kbd{h}@} to hide (collapse)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3539 the entry again. Press @{@kbd{a}@} to expand all entries in the buffer.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3540
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3541 Many other keys are defined to help you move through matching entries.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3542
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3543 @cindex rolodex, moving to entries
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3544 @table @kbd
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3545 @kindex b
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3546 @item b
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3547 Move to the previous entry at the same level as the current entry.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3548 @kindex f
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3549 @item f
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3550 Move to the next entry at the same level as the current entry.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3551 @kindex n
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3552 @item n
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3553 Move to the next entry at any level.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3554 @kindex p
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3555 @item p
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3556 Move to the previous entry at any level.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3557 @kindex u
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3558 @item u
24
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
3559 Move the the previous entry one level up.
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3560 @kindex .
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3561 @kindex <
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3562 @item .
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3563 @itemx <
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3564 Move to the beginning of the buffer.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3565 @kindex ,
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3566 @kindex >
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3567 @item ,
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3568 @itemx >
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3569 Move to the end of the buffer.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3570 @kindex @key{DEL}
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3571 @item @key{DEL}
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3572 Scroll backward a windowful.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3573 @kindex @key{SPC}
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3574 @item @key{SPC}
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3575 Scroll forward a windowful.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3576 @end table
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3577
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3578 @kindex q
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3579 @cindex rolodex, quitting
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3580 Once you have found an entry of interest and you want to remove the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3581 rolodex match buffer, use @{@kbd{q}@} to quit. This will restore your
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3582 current frame to its state prior to the rolodex search.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3583
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3584 @node Rolo Settings, , Rolo Keys, Rolodex
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3585 @section Rolo Settings
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3586
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3587 @vindex rolo-highlight-face
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3588 @cindex rolodex, highlighting matches
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3589 If textual highlighting is available in your Emacs on your current
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3590 display type, the rolodex uses the value of @var{rolo-highlight-face} as
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3591 the face to use to highlight search matches.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3592
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3593 @vindex rolo-kill-buffers-after-use
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3594 The buffers containing the rolodex files are not killed after a search
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3595 on the assumption that another search is likely to follow within this
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3596 Emacs session. You may wish to change this behavior with the following
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3597 setting: @code{(setq rolo-kill-buffers-after-use t)}.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3598
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3599 @vindex rolo-save-buffers-after-use
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3600 After an entry is killed, the modified rolodex file is automatically
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3601 saved. If you would rather always save files yourself, use this
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3602 setting: @code{(setq rolo-save-buffers-after-use nil)}.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3603
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3604 @vindex rolo-email-format
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3605 When adding an entry from within a buffer containing a mail message, the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3606 rolodex add function will extract the sender's name and e-mail address
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3607 and prompt you with the name as a default. If you accept it, it will
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3608 enter the name and the email address using the format given by the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3609 @var{rolo-email-format} variable. See its documentation if you want to
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3610 change its value.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3611
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3612 @vindex rolo-file-list
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3613 @cindex rolodex, personal
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3614 The files used in any rolodex search are given by the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3615 @var{rolo-file-list} variable, whose default value is
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3616 @code{("~/.rolodex.otl")}, so that searches initially scan only your
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3617 personal rolodex. Any entries added to this list should be file
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3618 pathnames. If a file in the list does not exist or is not readable, it
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3619 is skipped. Files are searched in the order in which they appear in the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3620 list. In general, you should leave your personal rolodex file as the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3621 first entry in the list, since this is the only file to which the rolo
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3622 menu Add command adds entries.@refill
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3623
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3624 @vindex rolo-entry-regexp
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3625 The rolodex entry start delimiter is given by the regular expression
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3626 variable, @var{rolo-entry-regexp}, whose default value is "^\*+".
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3627
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3628 @vindex rolo-hdr-regexp
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3629 A rolodex file may begin with an optional header section which is copied
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3630 to the match display buffer whenever any matches are found during a
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3631 search. The start and end lines of this header are controlled by
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3632 the regular expression variable, @var{rolo-hdr-regexp}, whose default
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3633 value is "^===". This allows lines of all equal signs to visually
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3634 separate matching entries from multiple files retrieved from a single
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3635 search.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3636
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3637 @node Window Configurations, Developing with Hyperbole, Rolodex, Top
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3638 @chapter Window Configurations
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3639
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3640 @cindex window configurations
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3641 @cindex restoring windows
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3642 @cindex saving window configurations
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3643 @vindex file, wconfig.el
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3644 Hyperbole includes the @file{wconfig.el} package which lets you save and
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3645 restore window configurations, i.e@. the window layout and buffers
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3646 displayed within an Emacs frame. This is useful to save a particular
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3647 working context and then to jump back to it at a later time during an
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3648 Emacs session. It is also useful during demonstrations to pull up many
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3649 informational artifacts all at once, e.g@. all of the windows for a
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3650 particular subsystem. None of this information is stored between Emacs
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3651 sessions, so your window configurations will last only through a single
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3652 session of use.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3653
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3654 The wconfig library provides two distinct means of managing window
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3655 configurations. The first means associates a name with each stored
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3656 window configuration. The name can then be used to retrieve the window
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3657 configuration later. The second means uses a ring structure to save
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3658 window configurations and then allows browsing through the sequence of
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3659 saved configurations.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3660
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3661 The Win/ menu entry on the Hyperbole top-level menu displays a menu of
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3662 window configuration commands:
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3663
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3664 @noindent
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3665 @display
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3666 WinConfig> AddName DeleteName RestoreName PopRing SaveRing YankRing
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3667 @end display
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3668
10
49a24b4fd526 Import from CVS: tag r19-15b6
cvs
parents: 2
diff changeset
3669 @cindex wconfig commands
49a24b4fd526 Import from CVS: tag r19-15b6
cvs
parents: 2
diff changeset
3670 @cindex window configuration commands
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3671 @findex wconfig-add-by-name
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3672 @findex wconfig-delete-by-name
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3673 @findex wconfig-restore-by-name
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3674 @findex wconfig-delete-pop
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3675 @findex wconfig-ring-save
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3676 @findex wconfig-yank-pop
24
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
3677 @example
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
3678 @group
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3679 Menu Item Command Description
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3680 ====================================================================
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3681 AddName wconfig-add-by-name Name current wconfig
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3682 DeleteName wconfig-delete-by-name Delete wconfig with name
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3683 RestoreName wconfig-restore-by-name Restore wconfig by name
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3684
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3685 PopRing wconfig-delete-pop Restore and delete wconfig
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3686 SaveRing wconfig-ring-save Store wconfig to ring
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3687 YankRing wconfig-yank-pop Restore next wconfig
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3688 ====================================================================
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3689 @end group
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3690 @end example
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3691
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3692 Saving and restoring window configurations by name is the easiest
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3693 method, but it requires that you input the chosen name from the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3694 keyboard. The ring commands permit saving and restoring through mouse
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3695 interaction only, if so desired. The prior section, @ref{Smart Keys},
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3696 mentions how to save and restore window configurations with the Smart Keys.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3697 Since the ring commands are a bit more complex than their by-name
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3698 counterparts, the following paragraphs explain them in more detail.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3699
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3700 @vindex kill-ring
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3701 Wconfig creates a ring structure that operates just like the Emacs
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3702 @var{kill-ring}, @ref{Kill Ring,,,emacs, The GNU Emacs Manual}, but its
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3703 elements are window configurations rather than text regions. One can
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3704 add an element to the ring based upon the current window configuration.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3705 After several elements are in the ring, one can walk through all of them
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3706 in sequence until the desired configuration is restored.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3707
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3708 @findex wconfig-ring-save
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3709 SaveRing executes the @code{wconfig-ring-save} command which
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3710 saves the current window configuration to the ring.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3711
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3712 @findex wconfig-yank-pop
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3713 YankRing executes the @code{wconfig-yank-pop} command. It restores the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3714 window configuration from the currently pointed to configuration in the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3715 ring. It does not delete this configuration from the ring but it does
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3716 move the pointer to the prior ring element. Repeated calls to this
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3717 command thus restore successive window configurations until the ring
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3718 pointer wraps around. Simply stop when a desired configuration appears
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3719 and use @{@kbd{q}@} to quit from the minibuffer menu.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3720
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3721 @findex wconfig-delete-pop
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3722 PopRing calls the @code{wconfig-delete-pop} command.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3723 It is used to restore a previously saved configuration and at the same
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3724 time delete it from the ring. Simply stop when a desired configuration
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3725 appears and use @{@kbd{q}@} to quit from the minibuffer menu.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3726
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3727 @vindex wconfig-ring-max
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3728 The maximum number of elements the ring can hold is set by the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3729 @var{wconfig-ring-max} variable whose default is 10. Any saves beyond
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3730 this value cause deletion of the oldest element in the ring before
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3731 a new one is added.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3732
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3733 @node Developing with Hyperbole, Glossary, Window Configurations, Top
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3734 @chapter Developing with Hyperbole
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3735
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3736 This chapter is only for people who are familiar with Emacs Lisp and
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3737 wish to customize Hyperbole, to extend it, or to develop other systems
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3738 using Hyperbole as a base.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3739
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3740 @menu
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3741 * Hook Variables::
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3742 * Creating Types::
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3743 * Explicit Button Technicalities::
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3744 * Encapsulating Systems::
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3745 * Embedding Hyperbole::
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3746 @end menu
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3747
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3748 @node Hook Variables, Creating Types, Developing with Hyperbole, Developing with Hyperbole
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3749 @section Hook Variables
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3750
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3751 @cindex variables
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3752 @cindex hook variables
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3753 Hyperbole provides a number of hook variables that allow you to adjust
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3754 its basic operations to meet your own needs, without requiring you to
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3755 change the code for those operations.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3756
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3757 We find it best to always set the value of hook variables either to nil
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3758 or to a list of function names of no arguments, each of which will be
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3759 called in sequence when the hook is triggered.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3760
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3761 Given the name of a function, a Hyperbole hook variable triggered within
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3762 that function has the same name as the function with a @code{-hook}
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3763 appended. Hyperbole provides the following hook variables:
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3764
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3765 @table @var
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3766
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3767 @vindex hyperb:init-hook
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3768 @item hyperb:init-hook
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3769 For customization at Hyperbole initialization time. Use this to load
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3770 any personal Hyperbole type definitions you might have. It is run after
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3771 Hyperbole support code is loaded but before Hyperbole session
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3772 initializations take place.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3773
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3774 @vindex action:act-hook
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3775 @vindex hbut:current
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3776 @item action:act-hook
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3777 Run before each Hyperbole button activation.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3778 The variable @var{hbut:current} contains the button to be activated when
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3779 this is run.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3780
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3781 @vindex ebut:create-hook
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3782 @item ebut:create-hook
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3783 To add to the Hyperbole explicit button creation process.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3784
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3785 @vindex ebut:delete-hook
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3786 @item ebut:delete-hook
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3787 To add to the Hyperbole explicit button deletion process.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3788
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3789 @vindex ebut:modify-hook
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3790 @item ebut:modify-hook
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3791 Executed when an explicit button's attributes are modified.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3792
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3793 @vindex hibtypes:begin-load-hook
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3794 @item hibtypes:begin-load-hook
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3795 Executed prior to loading of standard Hyperbole implicit button types.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3796 Used to load site-specific low priority implicit button types since
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3797 lowest priority ibtypes are loaded first.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3798
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3799 @vindex hibtypes:end-load-hook
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3800 @item hibtypes:end-load-hook
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3801 Executed after loading of standard Hyperbole implicit button types.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3802 Used to load site-specific high priority implicit button types since
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3803 highest priority ibtypes are loaded last.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3804
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3805 @vindex htype:create-hook
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3806 @item htype:create-hook
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3807 Executed when a Hyperbole type (e.g@. action type or implicit button
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3808 type) is added to the environment.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3809
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3810 @vindex htype:delete-hook
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3811 @item htype:delete-hook
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3812 Executed when a type is deleted from the environment.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3813
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3814 @vindex kotl-mode-hook
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3815 @item kotl-mode-hook
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3816 Executed when a Koutline is created or read in or when kotl-mode is
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3817 invoked.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3818
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3819 @vindex wrolo-display-hook
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3820 @item wrolo-display-hook
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3821 Executed when rolodex matches are displayed.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3822
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3823 @vindex wrolo-mode-hook
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3824 @item wrolo-mode-hook
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3825 Executed when a rolodex match buffer is created and put into wrolo-mode.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3826
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3827 @vindex wrolo-yank-reformat-function
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3828 @cindex yank, reformatting
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3829 @item wrolo-yank-reformat-function
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3830 A variable whose value may be set to a function of two arguments, START
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3831 and END, indicating the region of the rolodex entry yanked into the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3832 current buffer by the rolo-yank command. The function may reformat this
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3833 region to meed user-specific needs.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3834
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3835 @end table
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3836
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3837 @noindent
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3838 Hyperbole also makes use of a number of external Emacs hook variables.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3839
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3840 @table @var
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3841
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3842 @vindex find-file-hooks
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3843 @cindex button highlighting
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3844 @item find-file-hooks
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3845 This is called whenever a file is read into a GNU Emacs buffer.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3846 Hyperbole uses it to highlight any buttons within files when run under
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3847 any NEXTSTEP or X window system-based versions of GNU Emacs.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3848
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3849 @vindex write-file-hooks
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3850 @cindex button data saving
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3851 @item write-file-hooks
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3852 This is called whenever a GNU Emacs buffer is written to a file.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3853 Hyperbole uses it to save any modified button data associated with the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3854 file's directory.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3855
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3856 @cindex mail hooks
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3857 @cindex news hooks
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3858 Hyperbole mail and news facilities also utilize a number of external hook
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3859 variables. These hide button data and highlight buttons if possible.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3860 See the various support files for details.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3861 @end table
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3862
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3863 @node Creating Types, Explicit Button Technicalities, Hook Variables, Developing with Hyperbole
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3864 @section Creating Types
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3865
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3866 @cindex type definition
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3867 @cindex type redefinition
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3868 @noindent
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3869 To define or redefine a single Hyperbole type, you may either:
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3870
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3871 @itemize @bullet
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3872 @kindex C-M-x
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3873 @findex eval-defun
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3874 @kindex C-x C-e
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3875 @findex eval-last-sexp
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3876 @item
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3877 move your Emacs point to within the type definition and use
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3878 @{@kbd{C-M-x}@} @code{(eval-defun)} (only works in Emacs Lisp mode);
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3879
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3880 @item
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3881 or move your point to the end of the last line of the type definition and
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3882 use @{@kbd{C-x C-e}@} @code{(eval-last-sexp)} (works in most modes).
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3883 @end itemize
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3884
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3885 @cindex Hyperbole types
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3886 @vindex class, htype
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3887 The functions from the @code{htype} class may be applied to any
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3888 Hyperbole types, if needed.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3889
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3890 @vindex file, hactypes.el
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3891 @vindex file, hibtypes.el
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3892 The following subsections explain the specifics of Hyperbole type
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3893 definitions which are beyond standard practice for Emacs Lisp programming.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3894 See the definitions of the standard types in @file{hactypes.el}
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3895 and @file{hibtypes.el} for examples.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3896
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3897 @menu
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3898 * Action Type Creation::
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3899 * Implicit Button Types::
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3900 @end menu
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3901
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3902 @node Action Type Creation, Implicit Button Types, Creating Types, Creating Types
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3903 @subsection Action Type Creation
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3904
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3905 @findex actype:create
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3906 @vindex file, hactypes.el
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3907 @vindex file, hbut.el
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3908 New forms of explicit buttons may be created by adding new action types
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3909 to a Hyperbole environment. The file, @file{hactypes.el}, provides
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3910 many examples of working action types.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3911
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3912 @cindex action type, creation
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3913 @findex defact
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3914 @findex actype:create
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3915 An action type is created, i.e@. loaded into the Hyperbole environment,
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3916 with the @code{(defact)} function (which is an alias for
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3917 @code{(actype:create)}). The calling signature for this function is
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3918 given in its documentation; it is the same as that of @code{(defun)}
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3919 except that a documentation string is required. (An interactive calling
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3920 form is also required if the action type has formal parameters and is to
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3921 be used in explicit button definitions. Implicit buttons never use an
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3922 action type's interactive form. It is good practice to include an
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3923 interactive form since the type creator cannot know how users may choose
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3924 to apply the type.)@refill
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3925
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3926 An action type's parameters are used differently than those of a
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3927 function being called. Its interactive calling form is used when an
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3928 explicit button is created to prompt for type-specific button
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3929 attributes. The rest of its body is used when a button with that action
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3930 type is activated. Then the button attributes together with the action
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3931 type body are used to form an action that is executed in response to the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3932 button activation. The action's result is returned to the action caller
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3933 unless it returns nil, in which case t is returned to the caller to
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3934 ensure that it registers the performance of the action.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3935
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3936 An action type body may perform any computation using Emacs Lisp and
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3937 Hyperbole functions.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3938
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3939 @cindex interactive form
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3940 @findex interactive
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3941 The interactive calling form for an action type is of the same form as
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3942 that of a regular Emacs Lisp function definition (see the documentation
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3943 for the Emacs Lisp @code{(interactive)} form). It may additionally use
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3944 Hyperbole command character extensions when the form is given as a
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3945 string. Each such extension character @emph{must} be preceded by a plus
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3946 sign, @code{+}, in order to be recognized since such characters may also
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3947 have standard interactive form meanings.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3948
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3949 The present Hyperbole extension characters are:
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3950
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3951 @table @strong
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3952 @cindex argument, Info node
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3953 @cindex interactive cmd char, +I
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3954 @item +I
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3955 Prompts for an existing Info node name and file.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3956
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3957 @cindex argument, kcell
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3958 @cindex argument, koutline
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3959 @cindex interactive cmd char, +K
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3960 @item +K
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3961 Prompts for an existing kcell identifier, either a full outline level
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3962 identifier or a permanent idstamp.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3963
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3964 @cindex interactive cmd char, +M
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3965 @cindex argument, mail message
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3966 @item +M
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3967 Prompts for a mail message date and the file name it resides in.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3968 The mail parameters prompted for by this character code are likely to
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3969 change in the future.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3970
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3971 @cindex argument, view spec
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3972 @cindex interactive cmd char, +V
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3973 @item +V
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3974 Prompts for a Hyperbole view specification.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3975 Not yet available for use.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3976
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3977 @end table
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3978
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3979 @vindex class, hargs
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3980 @cindex argument, reading
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3981 Arguments are read by the functions in Hyperbole's @code{hargs} class,
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3982 rather than the standard Lisp @code{read} functions, in order to allow
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3983 direct selection of arguments via the Action Key.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3984
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3985 If an action type create is successful, the symbol that Hyperbole uses
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3986 internally to reference the type is returned. @code{Nil} is returned on
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3987 failure so that you may test whether or not the operation succeeds.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3988
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3989 Once you have defined an action type within your present Hyperbole
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3990 environment, you can create new explicit buttons which use it. There is
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3991 no explicit button type beyond its action type, so no further work is
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3992 necessary.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3993
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3994 @findex actype:delete
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3995 Call @code{(actype:delete)} to remove an action type from a Hyperbole
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3996 environment. It takes a single parameter which should be the same type
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3997 symbol used in the type definition call (not the Hyperbole symbol
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3998 returned by the call).
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3999
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4000 @node Implicit Button Types, , Action Type Creation, Creating Types
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4001 @subsection Implicit Button Types
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4002
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4003 @cindex implicit button type
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4004 @cindex ibtype
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4005 @findex defib
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4006 @findex ibtype:create
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4007 An implicit button type is created or loaded via the @code{(defib)}
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4008 function (which is an alias for @code{(ibtype:create)}). The calling
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4009 signature for this function is given in its documentation; it is the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4010 same as that of @code{(defun)}, but with a number of constraints. The
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4011 parameter list should always be empty since no parameters will be used.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4012 A documentation string is required. The type's body follows this.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4013
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4014 @cindex ibtype, predicate
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4015 @cindex ibtype, argument
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4016 @cindex ibtype, return val
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4017 @cindex ibtype, actype
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4018 The body of an implicit button type is a predicate which determines
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4019 whether or not point is within an implicit button of the type. If not,
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4020 the predicate returns @code{nil}. If so, it may optionally setup to
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4021 flash the button and then perform one or more actions. A call of the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4022 form: @code{(ibut:label-set label start-pos end-pos)} is used to setup
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4023 the button flashing, if desired. This is then typically immediately
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4024 followed by an action invocation of the form:
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4025 @code{(hact 'actype &rest actype-arguments)}. It is imperative that all
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4026 actions (non-predicate code) be invoked through the @code{(hact)}
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4027 function rather than directly or your ibtypes will not work properly.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4028 (Hyperbole first tests to see if any ibtype matches the current context
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4029 before activating any type, so it ensures that @code{(hact)} calls are
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4030 disabled during this testing.) Any action types used may be created
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4031 before or after the implicit button type definition but obviously should
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4032 be defined before any implicit buttons of the given type are activated;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4033 an error will result, otherwise.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4034
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4035 If an implicit button type create is successful, the symbol that
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4036 Hyperbole uses internally to reference the type is returned. @code{Nil}
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4037 is returned on failure so that you may test whether or not the operation
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4038 succeeds. Implicit button type names and action type names may be the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4039 same without any conflict. In fact, such naming is encouraged when an
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4040 implicit button type is the exclusive user of an action type.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4041
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4042 @findex ibtype:delete
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4043 Call @code{(ibtype:delete)} to remove an implicit button type from a
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4044 Hyperbole environment. It takes a single parameter which should be the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4045 same type symbol used in the type definition call (not the Hyperbole
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4046 symbol returned by the call). This will not delete the action type used
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4047 by the implicit button; that must be done separately.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4048
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4049 @cindex ibtype, help
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4050 @findex ibut:at-p
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4051 @vindex class, hattr
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4052 @vindex class, hbut
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4053 @vindex file, hib-kbd.el
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4054 By default, a request for help on an implicit button will display the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4055 button's attributes in the same manner as is done for explicit buttons.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4056 For some implicit button types, other forms of help will be more
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4057 appropriate. If an Emacs Lisp function is defined whose name is formed
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4058 from the concatenation of the type name followed by @code{:help}, e.g@.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4059 @code{my-ibtype:help}, it is used to respond to requests for
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4060 help on buttons of that type. Any such function should take a single
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4061 argument of an implicit button construct. (This is what
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4062 @code{(ibut:at-p)} returns when point is within an implicit button
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4063 context.) The button may be queried for its attributes using functions
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4064 from the @code{hbut} and @code{hattr} classes. See the @file{hib-kbd.el}
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4065 file for an example of a custom help function.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4066
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4067 @node Explicit Button Technicalities, Encapsulating Systems, Creating Types, Developing with Hyperbole
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4068 @section Explicit Button Technicalities
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4069 @menu
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4070 * Button Label Normalization::
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4071 * Operational and Storage Formats::
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4072 * Programmatic Button Creation::
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4073 @end menu
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4074
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4075 @node Button Label Normalization, Operational and Storage Formats, Explicit Button Technicalities, Explicit Button Technicalities
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4076 @subsection Button Label Normalization
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4077 @cindex normalized label
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4078 @cindex button label
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4079 @cindex button key
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4080 @vindex hbut:label-to-key
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4081 Hyperbole uses a normalized form of button labels called button keys (or
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4082 label keys) for all internal operations. See the documentation for the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4083 function @code{(hbut:label-to-key)} for details of the normalization
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4084 process. The normalized form permits Hyperbole to recognize buttons that
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4085 are the same but whose labels appear different from one another, due to
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4086 text formatting conventions. For example, all of the following would
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4087 be recognized as the same button.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4088
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4089 @example
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4090 <(fake button)> <( fake button)>
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4091
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4092 Pam> <(fake
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4093 Pam> button)>
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4094
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4095 ;; <(fake
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4096 ;; button)>
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4097
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4098 /* <( fake */
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4099 /* button )> */
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4100 @end example
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4101
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4102 @vindex hbut:fill-prefix-regexps
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4103 @vindex fill-prefix
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4104 @cindex fill prefix
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4105 @cindex button, multiple lines
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4106 @cindex button, split across lines
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4107 The last three examples demonstrate how Hyperbole ignores common fill
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4108 prefix patterns that happen to fall within the middle of a button label
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4109 that spans multiple lines. As long as such buttons are selected with
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4110 point at a location within the label's first line, the button will be
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4111 recognized. The variable @var{hbut:fill-prefix-regexps} holds the list
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4112 of fill prefixes recognized when embedded within button labels. All
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4113 such prefixes are recognized (one per button label), regardless of the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4114 setting of the GNU Emacs variable, @var{fill-prefix}, so no user
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4115 intervention is required.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4116
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4117 @node Operational and Storage Formats, Programmatic Button Creation, Button Label Normalization, Explicit Button Technicalities
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4118 @subsection Operational and Storage Formats
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4119
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4120 @cindex explicit button, formats
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4121 @cindex explicit button, storage
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4122 @cindex storage manager
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4123 @cindex button attributes
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4124 @vindex hbut:current
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4125 Hyperbole uses a terse format to store explicit buttons and a more
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4126 meaningful one to show users and to manipulate during editing. The
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4127 terse format consists solely of button attribute values whereas the edit
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4128 format includes an attribute name with each attribute value. A button
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4129 in edit format consists of a Lisp symbol together with its attribute list
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4130 which holds the attribute names and values. In this way, buttons may be
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4131 passed along from function to function simply by passing the symbol to
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4132 which the button is attached. Most functions utilize the pre-defined
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4133 @var{hbut:current} symbol by default to store and retrieve the last
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4134 encountered button in edit format.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4135
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4136 @vindex class, hbdata
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4137 @vindex class, ebut
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4138 @vindex class, hbut
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4139 The @code{hbdata} class handles the terse, stored format. The
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4140 @code{hbut}, @code{ebut}, and @code{ibut} classes work with the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4141 name/value format. This separation permits the wholesale replacement of
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4142 the storage manager with another, with any interface changes hidden from
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4143 any Hyperbole client programming.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4144
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4145 @node Programmatic Button Creation, , Operational and Storage Formats, Explicit Button Technicalities
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4146 @subsection Programmatic Button Creation
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4147
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4148 @cindex explicit button, creation
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4149 A common need when developing with Hyperbole is the ability to create or
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4150 modify explicit buttons without user interaction. For example, an
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4151 application might require the addition of an explicit summary button to
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4152 a file for each new mail message a user reads that contains a set of
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4153 keywords. The user could then check the summary file and jump to
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4154 desired messages quickly.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4155
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4156 @vindex class, ebut
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4157 @vindex file, hbut.el
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4158 @findex ebut:create
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4159 @findex ebut:map
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4160 The Hyperbole class @code{ebut} supports programmatic access to explicit
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4161 buttons. See it within the @file{hbut.el} file for full details. The
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4162 documentation for @code{(ebut:create)} explains the set of attributes
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4163 settings necessary to create an explicit button. For operations over
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4164 the whole set of buttons within the visible (non-narrowed) portion of a
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4165 buffer, use the @code{(ebut:map)} function.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4166
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4167 @page
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4168 @node Encapsulating Systems, Embedding Hyperbole, Explicit Button Technicalities, Developing with Hyperbole
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4169 @section Encapsulating Systems
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4170
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4171 @vindex file, hsys-*
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4172 @cindex Hyperbole, system encapsulation
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4173 @cindex system encapsulation
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4174 A powerful use of implicit button types is to provide a Hyperbole-based
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4175 interface to external systems. The basic idea is to interpret patterns
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4176 output by the application as implicit buttons.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4177
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4178 See the @file{hsys-*} files for examples of how to do this.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4179 Encapsulations are provided for the following systems (the systems
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4180 themselves are not included with Hyperbole):
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4181
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4182 @table @bullet
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4183 @item World-Wide Web
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4184 The world-wide web system originally developed at CERN, that now spans
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4185 the Internet universe. This is automatically loaded by Hyperbole so
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4186 that a press of the Action Key follows a URL.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4187
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4188 @item WAIS
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4189 The Wide Area Information Systems full text-retrieval system orginally
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4190 developed at Thinking Machines and then later at WAIS Inc.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4191
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4192 @item HyperBase
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4193 A hypertextual storage manager that stores textual nodes as records with
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4194 locking so that multiple users can read and edit hypertexts.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4195 @end table
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4196
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4197
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4198 @node Embedding Hyperbole, , Encapsulating Systems, Developing with Hyperbole
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4199 @section Embedding Hyperbole
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4200
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4201 [NOTE: We have never done this ourselves, though we have done similar
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4202 things which leads us to infer that the task should not be difficult.]
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4203
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4204 @cindex Hyperbole API
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4205 @cindex API
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4206 @cindex programming interface
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4207 @cindex Hyperbole, embedding
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4208 The standard Emacs-based Hyperbole user interface has purposely been
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4209 separated from the Hyperbole backend to support the development of
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4210 alternative interfaces and the embedding of Hyperbole functionality
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4211 within other system prototypes. The Hyperbole backend functionality
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4212 that system developers can make use of is called its Application
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4213 Programming Interface (API). The API may be used to make server-based
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4214 calls to Hyperbole when Emacs is run as a non-interactive (batch)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4215 process, with its input/output streams attached to another process.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4216
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4217 The public functions and variables from the following files may be
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4218 considered the present Hyperbole API:
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4219
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4220 @noindent
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4221 @file{hact.el}, @file{hargs.el}, @file{hbmap.el}, @file{hbut.el},
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4222 @file{hhist.el}, @file{hmail.el}, @file{hmoccur.el}, @file{hpath.el},
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4223 @file{htz.el}, @file{hypb.el}, @file{set.el}, @file{wconfig.el},
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4224 @file{wrolo.el}, and @file{wrolo-logic.el}.@refill
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4225
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4226 @noindent
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4227 Note when looking at these files, that they are divided into sections
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4228 that separate one data abstraction (class) from another. A line of
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4229 dashes within a class separates public parts of the class from the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4230 private parts that follow the line.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4231
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4232 This API does not include the Hyperbole outliner, as it has been
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4233 designed for interactive use, rather than programmatic extensibility.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4234 You can certainly study its code, below the @file{hyperbole/kotl/}
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4235 directory and learn to program it, however.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4236
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4237
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4238 @node Glossary, Smart Key Reference, Developing with Hyperbole, Top
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4239 @appendix Glossary
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4240
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4241 Concepts pertinent to operational usage of Hyperbole are defined here.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4242 If some GNU Emacs terms are unfamiliar to you, @ref{Glossary, Emacs
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4243 Glossary,, emacs, the GNU Emacs Manual}.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4244
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4245 @table @code
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4246
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4247 @cindex action
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4248 @item action
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4249 An executable behavior associated with a Hyperbole button. A specific
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4250 class of actions which display entities are called @emph{links},
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4251 such as a link to a file.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4252
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4253 @cindex Action Key
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4254 @item Action Key
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4255 See @emph{Smart Key}.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4256
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4257 @cindex action type
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4258 @item action type
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4259 A behavioral specification for use within Hyperbole buttons. Action
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4260 types usually contain a set of parameters which must be given values for
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4261 each button with which they are associated. An action type together
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4262 with a set of values, called arguments, may be considered an @emph{action}.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4263 @emph{Actype} is a synonym for action type.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4264
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4265 @cindex activation
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4266 @item activation
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4267 Request for a Hyperbole button to perform its action.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4268 Ordinarily the user presses a key which selects and activates a button.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4269
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4270 @cindex ange-ftp
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4271 @cindex ftp
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4272 @item ange-ftp
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4273 A standard GNU Emacs Lisp package which allows one to use pathnames
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4274 that are accessible via the Internet File Transfer Protocol (ftp) just
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4275 like other pathnames, for example when finding a file. The
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4276 latest version of ange-ftp may always be obtained via anonymous ftp to:
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4277 @file{/ftp.gnu.ai.mit.edu:ange-ftp/ange-ftp.tar.gz}.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4278
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4279 @cindex argument
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4280 @item argument
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4281 A button-specific value fed to a Hyperbole type specification when the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4282 button is activated.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4283
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4284 @cindex Assist Key
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4285 @item Assist Key
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4286 See @emph{Smart Key}.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4287
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4288 @cindex attributes
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4289 @item attributes
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4290 Slot names associated with Hyperbole buttons. An @emph{attribute value}
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4291 is associated with each button attribute.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4292
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4293 @cindex Augment
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4294 @cindex NLS
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4295 @cindex hypertext
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4296 @cindex interactive computing
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4297 @cindex mouse
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4298 @cindex windows
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4299 @cindex hypertext
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4300 @cindex outline processor
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4301 @cindex groupware
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4302 @cindex digital signature
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4303 @cindex Engelbart
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4304 @item Augment
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4305 The Augment system, originally named NLS, was a pioneering research and
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4306 production system aimed at augmenting human intellect and group
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4307 knowledge processing capabilities through integrated tools and
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4308 organizational development strategies. This approach led to the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4309 invention of much of interactive computing technology decades ahead of
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4310 other efforts, including: the mouse, screen windows, true hypertext,
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4311 outline processors, groupware, and digitally signed documents.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4312 @xref{References}, which cites several Douglas Engelbart papers on the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4313 subject. The Koutliner concept emerged from studies of publicly
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4314 available information concerning Augment.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4315
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4316 @cindex button
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4317 @item button
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4318 A selectable Hyperbole construct which performs an action. A button
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4319 consists of a set of attributes that includes: a textual label, a
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4320 category, a type and zero or more arguments. @emph{Explicit buttons}
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4321 also have creator, create time, last modifier, and last modifier time
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4322 attributes.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4323
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4324 Buttons provide the user's gateway to information. The user sees and
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4325 interacts with button labels, the rest of the button data is managed
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4326 invisibly by Hyperbole and displayed only in response to user queries.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4327
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4328 @cindex button activation
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4329 @item button activation
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4330 See @emph{activation}.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4331
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4332 @cindex button attributes
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4333 @item button attributes
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4334 See @emph{attributes}.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4335
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4336 @cindex button data
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4337 @item button data
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4338 Lists of button attribute values explicitly saved and managed by Hyperbole.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4339 One list for each button created by Hyperbole.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4340
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4341 @cindex button file, local
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4342 @item button file, local
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4343 A per-directory file named @file{HYPB} that may be used to store any
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4344 desired buttons and may then be displayed via a menu selection whenever
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4345 a user is within that directory.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4346
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4347 @cindex button file, personal
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4348 @item button file, personal
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4349 A per-user file named @file{HYPB} that may be used to store any desired
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4350 buttons and may then be displayed via a menu selection.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4351
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4352 @cindex button key
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4353 @item button key
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4354 A normalized form of a @emph{button label} used internally by Hyperbole.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4355
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4356 @cindex button label
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4357 @item button label
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4358 A text string that visually indicates a Hyperbole button location and
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4359 provides it with a name and unique identifier. Within a buffer, buttons
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4360 with the same label are considered separate views of the same button and
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4361 so behave exactly alike. Since button labels are simply text strings,
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4362 they may be embedded within any text to provide non-linear information
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4363 or operational access points.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4364
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4365 The maximum length of a button label is limited by the variable
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4366 @var{ebut:max-len}.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4367
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4368 @cindex button selection
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4369 @item button selection
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4370 The act of designating a Hyperbole button upon which to operate.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4371 Use the Action Key to select a button.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4372
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4373 @cindex category
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4374 @item category
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4375 A high-level, conceptual grouping of Hyperbole buttons into classes.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4376 @emph{Implicit} and @emph{explicit} groupings represent categories.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4377
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4378 @cindex cell
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4379 @item cell
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4380 See @emph{kcell}.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4381
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4382 @cindex children
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4383 @item children
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4384 The set of koutline cells which share a common parent cell and are one
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4385 level deeper than the parent.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4386
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4387 @cindex class
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4388 @item class
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4389 A group of functions and variables with the same prefix in their names,
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4390 used to provide an interface to an internal or external Hyperbole
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4391 abstraction.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4392
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4393 @cindex context
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4394 @item context
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4395 A programmatic or positional state recognized by Hyperbole.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4396 We speak of Smart Key and implicit button contexts. Both are typically
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4397 defined in terms of surrounding patterns within a buffer, but may be
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4398 defined by arbitrary Emacs Lisp predicates. (Context may come to have a
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4399 broader meaning within future versions of Hyperbole.)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4400
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4401 @cindex environment
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4402 @item environment
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4403 See @emph{Hyperbole environment}.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4404
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4405 @cindex efs
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4406 @item efs
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4407 The much larger successor to ange-ftp. It does the same thing as
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4408 ange-ftp but works with more types of ftp hosts. See @emph{ange-ftp}.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4409
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4410 @cindex explicit button
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4411 @item explicit button
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4412 A button created and managed by Hyperbole. By default, explicit buttons
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4413 are delimited like this @code{<(fake button)>}. Direct selection is
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4414 used to operate upon an explicit button.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4415
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4416 @cindex global button
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4417 @item global button
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4418 @vindex gbut:file
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4419 A form of explicit button which is typically accessed by name rather
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4420 than direct selection. Global buttons are useful when one wants
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4421 quick access to actions such as jumping to common file locations or for
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4422 performing sequences of operations. One need not locate them since they
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4423 are always available by name, with full completion offered. All global
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4424 buttons are stored in the file given by the variable @var{gbut:file} and
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4425 may be activated as regular explicit buttons by visiting this file. By
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4426 default, this is the same as the user's personal button file.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4427
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4428 @cindex global button file
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4429 @item global button file
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4430 See @emph{button file, personal}.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4431
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4432 @findex run-hooks
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4433 @cindex hook variable
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4434 @item hook variable
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4435 A variable that permits customization of an existing function's
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4436 operation without the need to edit the function's code. See also the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4437 documentation for the function @code{(run-hooks)}.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4438
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4439 @cindex Hyperbole
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4440 @item Hyperbole
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4441 A flexible, programmable information management and viewing system built
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4442 on top of GNU Emacs. It utilizes a button-action model and supports
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4443 hypertextual linkages. Hyperbole is all things to all people.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4444
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4445 @cindex Hyperbole environment
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4446 @item Hyperbole environment
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4447 A programmatic context within which Hyperbole operates. This includes
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4448 the set of Hyperbole types defined and the set of Hyperbole code modules
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4449 loaded. It does not include the set of accessible buttons.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4450 Although the entire Emacs environment is available to Hyperbole, we do
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4451 not speak of this as part of the Hyperbole environment.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4452
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4453 @cindex hypertext
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4454 @item hypertext
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4455 A text or group of texts which may be explored in a non-linear fashion
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4456 through associative linkages embedded throughout the text. Instead of
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4457 simply referring to other pieces of work, hypertext references when
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4458 followed actually take you to the works themselves.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4459
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4460 @cindex implicit button
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4461 @item implicit button
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4462 A button recognized contextually by Hyperbole. Such buttons contain no
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4463 button data. See also @emph{implicit button type}.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4464
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4465 @cindex implicit button type
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4466 @item implicit button type
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4467 A specification of how to recognize and activate implicit buttons of a
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4468 specific kind. Implicit button types often utilize structure internal
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4469 to documents created and managed without Hyperbole assistance, for
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4470 example, programming documentation. @emph{Ibtype} is a synonym for
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4471 implicit button type. See also @emph{system encapsulation}.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4472
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4473 @cindex instance number
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4474 @item instance number
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4475 A colon prefaced number appended to the label of a newly created button
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4476 when the button's label duplicates the label of an existing button in
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4477 the current buffer. This number makes the label unique and so allows
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4478 any number of buttons with the same base label within a single buffer.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4479
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4480 @cindex koutline
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4481 @item koutline
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4482 A hierarchically ordered grouping of cells which may be stored as a file
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4483 and viewed and edited as an outline.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4484
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4485 @cindex Koutliner
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4486 @item Koutliner
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4487 Koutliner, the Hyperbole outliner, is a powerful autonumbering outliner
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4488 with permanent hypertext anchors for easy hyperlinking and view
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4489 specs for rapid outline view alteration.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4490
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4491 @cindex kcell
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4492 @item kcell
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4493 Cells or kcells are elements within koutlines. Each cell contains
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4494 textual and graphical contents, a relative identifier, a permanent
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4495 identifier and a set of attributes such as the user who created the cell
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4496 and the time of creation. See also @emph{Koutliner}.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4497
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4498 @cindex link
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4499 @item link
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4500 A reference from a Hyperbole button to an entity. The referenced entity
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4501 is sometimes called a @emph{node} or @emph{referent}.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4502 A specific class of actions which display entities are called
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4503 @emph{links}, such as a link to a file.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4504
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4505 @cindex local button file
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4506 @item local button file
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4507 See @emph{button file, local}.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4508
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4509 @cindex minibuffer window
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4510 @item minibuffer window
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4511 The one line window at the bottom of a frame where messages and prompts
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4512 are displayed.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4513
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4514 @cindex minibuffer menu
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4515 @item minibuffer menu
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4516 A Hyperbole menu displayed in the minibuffer window. Each menu item
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4517 within a minibuffer menu begins with a different letter that can be used
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4518 to invoke the item (case doesn't matter). Items that display other
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4519 menus end with a forward slash, /.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4520
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4521 @cindex mouse button
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4522 @item mouse button
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4523 @item mouse key
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4524 See @emph{Smart Key}.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4525
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4526 @cindex node
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4527 @item node
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4528 See @emph{link} or @emph{cell}.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4529
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4530 @cindex outline
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4531 @item outline
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4532 See @emph{koutline}.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4533
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4534 @cindex parent
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4535 @item parent
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4536 Any koutline cell which has children.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4537
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4538 @cindex predecessor
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4539 @item predecessor
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4540 The previous same level koutline cell with the same parent.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4541
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4542 @cindex predicate
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4543 @item predicate
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4544 A boolean (nil = false, non-nil = true) Lisp expression typically
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4545 evaluated as part of a conditional expression.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4546
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4547 @cindex referent
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4548 @item referent
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4549 See @emph{link}.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4550
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4551 @cindex rolodex
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4552 @item rolodex
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4553 Wrolo, the Hyperbole rolodex, provides rapid lookup of multi-line,
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4554 hierarchically ordered free form text records.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4555
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4556 @cindex root cell
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4557 @item root cell
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4558 A koutline cell which has cells below it. All such cells share the same
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4559 root cell.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4560
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4561 @cindex Smart Key
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4562 @vindex smart-scroll-proportional
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4563 @cindex proportional scrolling
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4564 @cindex scrolling
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4565 @item Smart Key
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4566 A context-sensitive key used within Hyperbole and beyond. Actually,
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4567 there are two Smart Keys, the Action Key and the Assist Key. The
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4568 Action Key, typically bound to the shift-middle mouse key (or shift-left
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4569 mouse key on a 2-button mouse), activates Hyperbole buttons and scrolls
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4570 the current buffer line to the top of the window when pressed at the end
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4571 of a line. The Assist Key, typically bound to the shift-right mouse
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4572 key, explains what a Hyperbole button does or scrolls the current line
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4573 to the bottom of the window when pressed at the end of a line. (See the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4574 documentation for the variable, @var{smart-scroll-proportional}, for
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4575 information on how to make these keys scroll forward and backward a
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4576 windowful at a time).
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4577
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4578 To see what a Smart Key will do within a particular context, depress and
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4579 hold the key at the point desired and depress the other Smart Key. A
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4580 buffer containing a description of its contextual function will then be
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4581 displayed. You may release the two keys in any order after you have
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4582 them both depressed. A press of the Assist Key in an unsupported
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4583 context displays a summary of Smart Key functions in each context, as
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4584 does the Doc/SmartKy menu item.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4585
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4586 @cindex source buffer
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4587 @cindex source file
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4588 @item source buffer / file
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4589 The buffer or file within which a Hyperbole button is embedded.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4590
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4591 @cindex subtree
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4592 @item subtree
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4593 All of the cells in a koutline which share the same root cell, excluding
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4594 the root cell.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4595
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4596 @cindex successor
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4597 @item successor
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4598 The next same level koutline cell with the same parent.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4599
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4600 @cindex system encapsulation
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4601 @item system encapsulation
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4602 Use of Hyperbole to provide an improved or simply consistent user
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4603 interface to another system. Typically, implicit button types are
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4604 defined to recognize and activate button-type constructs managed by the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4605 other system.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4606
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4607 @cindex tree
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4608 @item tree
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4609 The set of cells in a koutline that share a common root cell, including
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4610 the root cell.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4611
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4612 @cindex view
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4613 @item view
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4614 A perspective on some information. A view can affect the extent of the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4615 information displayed, its format, modes used to operate on it, its
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4616 display location and so forth.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4617
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4618 @cindex view spec
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4619 @item view spec
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4620 A terse (and to the uninitiated, cryptic) string that specifies a
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4621 particular view of koutline or a link referent. If a view spec is in
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4622 use in a buffer, the view spec appears in the modeline delimited by
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4623 <|view spec>.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4624
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4625 @end table
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4626
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4627 @node Smart Key Reference, Outliner Keys, Glossary, Top
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4628 @appendix Smart Key Reference
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4629
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4630 This appendix supplies complete documentation on Smart Key operation. It is
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4631 quite extensive and is meant for reference rather than sequential reading.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4632 @xref{Smart Keys}, for a description of the Smart Keys. That section also
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4633 describes how to get context-sensitive Smart Key help, with which you can
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4634 explore Smart Key operation bit by bit.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4635
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4636 Smart Key operations are context-sensitive. Contexts are described herein as
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4637 conditionals, e.g@. when depressed here, if this is true, etc. Each Smart
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4638 Key context is listed in the order in which it will be checked. The first
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4639 matching context is always the one applied. Within each context, the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4640 actions performed by the Action and Assist Keys are listed.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4641
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4642 @menu
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4643 * Smart Mouse Keys::
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4644 * Smart Keyboard Keys::
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4645 @end menu
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4646
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4647 @node Smart Mouse Keys, Smart Keyboard Keys, Smart Key Reference, Smart Key Reference
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4648 @section Smart Mouse Keys
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4649
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4650 @cindex Smart Mouse Keys
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4651 Smart Key drags and modeline presses can only be used when running under
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4652 a window system with mouse key support. So keep in mind that the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4653 operations in this section apply only if you have mouse support within
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4654 Hyperbole. The Smart Key operations in, @ref{Smart Keyboard Keys},
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4655 apply to both mouse and keyboard Smart Key usage.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4656
10
49a24b4fd526 Import from CVS: tag r19-15b6
cvs
parents: 2
diff changeset
4657 @cindex drag, side edge
49a24b4fd526 Import from CVS: tag r19-15b6
cvs
parents: 2
diff changeset
4658 @cindex side drag
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4659 @format
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4660 @group
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4661 If dragged from a side-by-side window edge or from the immediate left of
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4662 a vertical scroll bar:
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4663 ACTION or ASSIST
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4664 Resizes adjacent window sides to the point of drag release.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4665 @end group
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4666 @end format
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4667
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4668 @format
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4669 @group
24
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
4670 @cindex drag, between windows
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4671 If dragged from inside one window to another:
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4672 ACTION
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4673 Creates a new link button at the drag start location, linked to the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4674 drag end location. If drag start position is within a button,
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4675 modifies the button to link to drag end location.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4676 ASSIST
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4677 Swaps buffers in the two windows.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4678 @end group
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4679 @end format
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4680
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4681 @page
10
49a24b4fd526 Import from CVS: tag r19-15b6
cvs
parents: 2
diff changeset
4682 @cindex drag, horizontal
49a24b4fd526 Import from CVS: tag r19-15b6
cvs
parents: 2
diff changeset
4683 @cindex horizontal drag
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4684 @format
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4685 @group
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4686 If dragged horizontally within a single window while depressed
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4687 (hmouse-x-drag-sensitivity sets the minimal horizontal movement which
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4688 registers a drag):
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4689 ACTION
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4690 Goes to buffer end if drag was to the right, otherwise goes to beginning.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4691 ASSIST
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4692 Splits window vertically if drag was to the right, otherwise deletes
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4693 window.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4694 @end group
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4695 @end format
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4696
10
49a24b4fd526 Import from CVS: tag r19-15b6
cvs
parents: 2
diff changeset
4697 @cindex depress, modeline
49a24b4fd526 Import from CVS: tag r19-15b6
cvs
parents: 2
diff changeset
4698 @cindex modeline depress
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4699 @format
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4700 @group
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4701 If depressed within a window mode line:
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4702 ACTION
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4703 (1) clicked on left edge of a window's modeline,
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4704 window's buffer is buried (placed at bottom of buffer list);
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4705 (2) clicked on right edge of a window's modeline,
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4706 the Info buffer is displayed, or if already displayed and the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4707 modeline clicked belongs to a window displaying Info, the Info
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4708 buffer is hidden;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4709 (3) clicked anywhere in the middle of a window's modeline,
24
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
4710 the functions listed in `assist-key-modeline-hook' are
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4711 called;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4712 (4) dragged vertically from modeline to within a window,
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4713 the modeline is moved to point of key release, thereby resizing
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4714 its window and potentially its vertical neighbors.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4715 ASSIST
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4716 (1) clicked on left edge of a window's modeline,
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4717 bottom buffer in buffer list is unburied and placed in window;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4718 (2) clicked on right edge of a window's modeline,
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4719 the summary of Smart Key behavior is displayed, or if already
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4720 displayed and the modeline clicked belongs to a window displaying
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4721 the summary, the summary buffer is hidden;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4722 (3) clicked anywhere in the middle of a window's modeline,
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4723 a popup menu (if available) is displayed;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4724 (4) dragged vertically from modeline to within a window,
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4725 the modeline is moved to point of key release, thereby resizing
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4726 its window and potentially its vertical neighbors.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4727 @end group
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4728 @end format
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4729
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4730 @page
10
49a24b4fd526 Import from CVS: tag r19-15b6
cvs
parents: 2
diff changeset
4731 @cindex drag, vertical
49a24b4fd526 Import from CVS: tag r19-15b6
cvs
parents: 2
diff changeset
4732 @cindex vertical drag
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4733 @format
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4734 @group
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4735 If dragged vertically within a single window while depressed
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4736 (hmouse-y-drag-sensitivity sets the minimal vertical movement which
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4737 registers a drag):
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4738 ACTION or ASSIST
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4739 Splits current window into two side-by-side windows.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4740 @end group
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4741 @end format
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4742
10
49a24b4fd526 Import from CVS: tag r19-15b6
cvs
parents: 2
diff changeset
4743 @cindex drag, diagonal
49a24b4fd526 Import from CVS: tag r19-15b6
cvs
parents: 2
diff changeset
4744 @cindex diagonal drag
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4745 @format
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4746 @group
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4747 If dragged diagonally within a single window while depressed
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4748 (hmouse-x-diagonal-sensitivity and hmouse-y-diagonal-sensitivity set the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4749 minimal diagonal movement which registers a drag):
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4750 ACTION
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4751 Save current window configuration onto a ring of window configurations.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4752 ASSIST
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4753 Restores prior window configuration from ring. A prefix argument N
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4754 specifies the Nth prior configuration from the ring.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4755 @end group
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4756 @end format
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4757
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4758 @page
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4759
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4760 @node Smart Keyboard Keys, , Smart Mouse Keys, Smart Key Reference
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4761 @section Smart Keyboard Keys
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4762
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4763 @cindex Smart Keyboard Keys
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4764 @format
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4765 @group
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4766 When prompting for a Hyperbole argument, a press in the minibuffer:
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4767 ACTION
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4768 Terminates this minibuffer argument.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4769 ASSIST
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4770 Offers completion help for current minibuffer argument.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4771 @end group
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4772 @end format
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4773
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4774 @format
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4775 @group
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4776 When reading a Hyperbole menu item or a Hyperbole completion-based argument:
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4777 ACTION
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4778 Returns value selected at point if any, else nil. If
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4779 value is the same as the contents of the minibuffer, it is used as the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4780 current minibuffer argument, otherwise, the minibuffer is erased and
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4781 value is inserted there.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4782
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4783 ASSIST
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4784 Displays Hyperbole menu item help when item is selected.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4785 @end group
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4786 @end format
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4787
24
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
4788 @format
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
4789 @group
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
4790 If in ID-edit mode (a package from InfoDock Associates that supports
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
4791 rapid killing, copying, ynaking and display-management):
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
4792 ACTION or ASSIST
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
4793 Yanks (pastes) last selected region at point.
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
4794 @end group
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
4795 @end format
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
4796
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4797 @vindex smart-scroll-proportional
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4798 @cindex proportional scrolling
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4799 @cindex scrolling
10
49a24b4fd526 Import from CVS: tag r19-15b6
cvs
parents: 2
diff changeset
4800 @cindex click, end of line
49a24b4fd526 Import from CVS: tag r19-15b6
cvs
parents: 2
diff changeset
4801 @cindex end of line click
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4802 @format
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4803 @group
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4804 When pressed at the end of a line but not the end of a buffer:
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4805 ACTION
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4806 Scrolls up according to value of smart-scroll-proportional. If
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4807 smart-scroll-proportional is nil or if point is on the top
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4808 window line, scrolls up (forward) a windowful. Otherwise, tries to
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4809 bring current line to top of window. Leaves point at end of line and
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4810 returns t if scrolled, nil if not.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4811 ASSIST
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4812 Scrolls down according to value of smart-scroll-proportional. If
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4813 smart-scroll-proportional is nil or if point is on the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4814 bottom window line, scrolls down (backward) a windowful. Otherwise,
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4815 tries to bring current line to bottom of window. Leaves point at end of
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4816 line and returns t if scrolled, nil if not.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4817 @end group
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4818 @end format
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4819
24
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
4820 @format
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
4821 @group
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
4822 When pressed on a Smart Menu item:
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
4823 ACTION
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
4824 Activates item.
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
4825 ASSIST
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
4826 Displays help for item.
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
4827 @end group
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
4828 @end format
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
4829
10
49a24b4fd526 Import from CVS: tag r19-15b6
cvs
parents: 2
diff changeset
4830 @cindex click, button
49a24b4fd526 Import from CVS: tag r19-15b6
cvs
parents: 2
diff changeset
4831 @cindex button click
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4832 @format
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4833 @group
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4834 When pressed on a Hyperbole button:
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4835 ACTION
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4836 Activates button.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4837 ASSIST
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4838 Displays help for button, typically a summary of its attributes.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4839 @end group
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4840 @end format
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4841
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4842 @format
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4843 @group
24
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
4844 If Smart Menu package has been loaded and `hkey-always-display-menu' is
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
4845 non-nil:
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
4846 ACTION or ASSIST
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
4847 Pops up a window with a Smart Menu of commands.
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
4848 Menu displayed is selected by (smart-menu-choose-menu).
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
4849 @end group
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
4850 @end format
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
4851
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
4852 @format
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
4853 @group
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4854 If pressed within a buffer in View major or minor mode:
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4855 ACTION
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4856 Scrolls buffer forward a windowful and quits from view mode when at
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4857 the last line of the buffer.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4858 ASSIST
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4859 Scrolls buffer backward a windowful.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4860 @end group
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4861 @end format
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4862
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4863 @format
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4864 @group
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4865 When pressed within a Hyperbole outliner buffer (kotl-mode):
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4866 ACTION
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4867 (1) at the end of buffer, uncollapse and unhide all cells in view;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4868 (2) within a cell, if its subtree is hidden then show it,
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4869 otherwise hide it;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4870 (3) between cells or within the read-only indentation region to the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4871 left of a cell, then move point to prior location and begin
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4872 creation of a klink to some other outline cell; hit the Action
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4873 Key twice to select the link referent cell;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4874 (4) anywhere else, scroll up a windowful.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4875 ASSIST
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4876 (1) at the end of buffer, collapse all cells and hide all non-level-one
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4877 cells;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4878 (2) on a header line but not at the beginning or end, display
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4879 properties of each cell in kotl beginning at point;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4880 (3) between cells or within the read-only indentation region to the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4881 left of a cell, then move point to prior location and prompt to
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4882 move one tree to a new location in the outline; hit the Action
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4883 Key twice to select the tree to move and where to move it;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4884 (4) anywhere else, scroll down a windowful.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4885 @end group
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4886 @end format
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4887
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4888 @page
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4889 @format
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4890 @group
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4891 When pressed at the end of a Help buffer:
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4892 ACTION or ASSIST
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4893 Restores window configuration prior to help display.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4894 @end group
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4895 @end format
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4896
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4897 @format
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4898 @group
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4899 When pressed within a C source code file:
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4900 ACTION
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4901 Jumps to the definition of selected C construct:
24
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
4902 (1) on a `#include' statement, the include file is displayed;
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4903 Look for include file in directory lists
24
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
4904 `smart-c-cpp-include-dirs' and `smart-c-include-dirs'.
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4905 (2) on a C identifier, the identifier definition is displayed,
24
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
4906 assuming the identifier is found within an `etags' generated tag file
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4907 in the current directory or any of its ancestor directories.
24
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
4908 (3) if `smart-c-use-lib-man' is non-nil, the C identifier is
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4909 recognized as a library symbol, and a man page is found for the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4910 identifier, then the man page is displayed.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4911 ASSIST
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4912 Jumps to the next tag matching an identifier at point.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4913 @end group
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4914 @end format
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4915
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4916 @format
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4917 @group
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4918 When pressed within an assembly source code file:
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4919 ACTION
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4920 Jumps to the definition of selected assembly construct:
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4921 (1) on an include statement, the include file is displayed;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4922 Look for include file in directory list
24
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
4923 `smart-asm-include-dirs'.
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4924 (2) on an identifier, the identifier definition is displayed,
24
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
4925 assuming the identifier is found within an `etags' generated
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4926 tag file in the current directory or any of its ancestor
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4927 directories.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4928 ASSIST
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4929 Jumps to the next tag matching an identifier at point.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4930 @end group
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4931 @end format
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4932
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4933 @page
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4934 @format
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4935 @group
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4936 When pressed on a Lisp symbol within a Lisp code buffer:
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4937 ACTION
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4938 Jumps to the definition of any selected Lisp construct.
24
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
4939 If on an Emacs Lisp require, load, or autoload clause and `find-library'
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4940 from load-library package by Hallvard Furuseth <hallvard@@ifi.uio.no> has
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4941 been loaded, jumps to library source, if possible.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4942 ASSIST
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4943 Jumps to the next tag matching an identifier at point or if using the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4944 "wtags" package and identifier is an Emacs Lisp symbol, then displays
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4945 documentation for the symbol.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4946 @end group
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4947 @end format
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4948
24
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
4949 @page
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
4950 @format
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
4951 @group
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
4952 When pressed within a Java source code file:
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
4953 ACTION
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
4954 Jumps to the definition of selected Java construct:
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
4955 (1) within a commented @@see cross-reference, the referent is
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
4956 displayed;
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
4957 (2) on a `package' or `import' statement, the referent is
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
4958 displayed; Look for referent files in the directory list
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
4959 `smart-java-package-dirs'.
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
4960 (3) on an Java identifier, the identifier definition is displayed,
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
4961 assuming the identifier is found within an `etags' generated
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
4962 tag file in the current directory or any of its ancestor
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
4963 directories."
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
4964 ASSIST
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
4965 Jumps to the next tag matching an identifier at point.
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
4966 @end group
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
4967 @end format
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
4968
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
4969 @format
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
4970 @group
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
4971 When pressed within a C++ source code file:
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
4972 ACTION
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
4973 Jumps to the definition of selected C++ construct:
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
4974 (1) on a `#include' statement, the include file is displayed;
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
4975 Look for include file in directory lists
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
4976 `smart-c-cpp-include-dirs' and `smart-c-include-dirs'.
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
4977 (2) on a C++ identifier, the identifier definition is displayed,
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
4978 assuming the identifier is found within an `etags' generated tag file
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
4979 in the current directory or any of its ancestor directories.
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
4980 (3) if `smart-c-use-lib-man' is non-nil, the C++ identifier is
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
4981 recognized as a library symbol, and a man page is found for the
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
4982 identifier, then the man page is displayed.
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
4983 ASSIST
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
4984 Jumps to the next tag matching an identifier at point.
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
4985 @end group
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
4986 @end format
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
4987
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4988 @format
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4989 @group
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4990 When the OO-Browser has been loaded and the press is within a C++ buffer:
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4991 ACTION or ASSIST
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4992 Jumps to the definition of selected C++ construct via OO-Browser support.
24
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
4993 (1) on a `#include' statement, the include file is displayed;
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4994 Look for include file in directory lists
24
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
4995 `smart-c-cpp-include-dirs' and `smart-c-include-dirs'.
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4996 (2) within a method declaration, its definition is displayed;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4997 (3) on a class name, the class definition is shown.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4998 @end group
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4999 @end format
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5000
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5001 @format
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5002 @group
24
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
5003 When pressed within a Objective-C source code file:
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
5004 ACTION
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
5005 Jumps to the definition of selected C+ construct:
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
5006 (1) on a `#include' statement, the include file is displayed;
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
5007 Look for include file in directory lists
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
5008 `smart-c-cpp-include-dirs' and `smart-c-include-dirs'.
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
5009 (2) on an Objective-C identifier, the identifier definition is displayed,
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
5010 assuming the identifier is found within an `etags' generated tag file
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
5011 in the current directory or any of its ancestor directories.
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
5012 (3) if `smart-c-use-lib-man' is non-nil, the Objective-C identifier is
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
5013 recognized as a library symbol, and a man page is found for the
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
5014 identifier, then the man page is displayed.
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
5015 ASSIST
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
5016 Jumps to the next tag matching an identifier at point.
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
5017 @end group
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
5018 @end format
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
5019
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
5020 @format
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
5021 @group
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5022 When the OO-Browser has been loaded and the press is within a
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5023 Objective-C buffer:
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5024 ACTION or ASSIST
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5025 Jumps to the definition of selected Objective-C construct via
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5026 OO-Browser support.
24
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
5027 (1) on a `#include' statement, the include file is displayed;
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5028 Look for include file in directory lists
24
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
5029 `smart-c-cpp-include-dirs' and `smart-c-include-dirs'.
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5030 (2) within a method declaration, its definition is displayed;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5031 (3) on a class name, the class definition is shown.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5032 @end group
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5033 @end format
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5034
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5035 @format
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5036 @group
24
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
5037 When pressed within a Fortran source code file:
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
5038 ACTION or ASSIST
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
5039 Jumps to the next tag matching an identifier at point.
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
5040 @end group
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
5041 @end format
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
5042
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
5043 @format
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
5044 @group
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5045 When pressed within an occur-mode or moccur-mode buffer:
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5046 ACTION or ASSIST
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5047 Jumps to the source buffer and line of the current occurrence.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5048 @end group
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5049 @end format
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5050
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5051 @page
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5052 @format
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5053 @group
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5054 When pressed within a calendar-mode buffer:
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5055 ACTION
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5056 (1) at the end of the buffer, the calendar is scrolled forward 3 months;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5057 (2) to the left of any dates on a calendar line, the calendar is scrolled
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5058 backward 3 months;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5059 (3) on a date, the diary entries for the date, if any, are displayed.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5060 ASSIST
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5061 (1) at the end of the buffer, the calendar is scrolled backward 3 months;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5062 (2) to the left of any dates on a calendar line, the calendar is scrolled
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5063 forward 3 months;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5064 (3) anywhere else, all dates with marking diary entries are marked in the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5065 calendar window.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5066 @end group
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5067 @end format
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5068
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5069 @format
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5070 @group
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5071 When pressed within a man page apropos buffer:
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5072 ACTION
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5073 (1) on a UNIX man apropos entry, the man page for that entry is
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5074 displayed in another window;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5075 (2) on or after the last line, the buffer in the other window is
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5076 scrolled up a windowful.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5077 ASSIST
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5078 (1) on a UNIX man apropos entry, the man page for that entry is
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5079 displayed in another window;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5080 (2) on or after the last line, the buffer in the other window is
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5081 scrolled down a windowful.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5082 @end group
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5083 @end format
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5084
24
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
5085 @page
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5086 @format
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5087 @group
24
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
5088 When pressed within an OO-Browser listing window:
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
5089 ACTION
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
5090 (1) in a blank buffer or at the end of a buffer, browser help
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
5091 information is displayed in the viewer window;
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
5092 (2) at the beginning of a (non-single char) class name, the class'
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
5093 ancestors are listed;
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
5094 (3) at the end of an entry line, scrolls listing up;
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
5095 (4) on the `...', following a class name, point is moved to the class
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
5096 descendency expansion;
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
5097 (5) before an element name, the implementor classes of the name are
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
5098 listed;
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
5099 (6) anywhere else on an entry line, the source is displayed for editing.
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
5100 ASSIST
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
5101 (1) in a blank buffer, a selection list of buffer files is displayed;
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
5102 (2) at the beginning of a (non-single char) entry, the class'
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
5103 descendants are listed;
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
5104 (3) at the end of an entry line, scrolls listing down;
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
5105 (4) on the `...', following a class name, point is moved to the class
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
5106 expansion;
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
5107 (5) anywhere else on a class entry line, lists the class' elements;
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
5108 (6) anywhere else on an element line, lists the element's implementor
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
5109 classes;
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
5110 (7) on a blank line following all entries, the current listing buffer
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
5111 is exited.
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
5112 @end group
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
5113 @end format
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
5114
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
5115 @format
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
5116 @group
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
5117 When pressed within an OO-Browser Command Help Menu buffer:
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
5118 ACTION
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
5119 Executes an OO-Browser command whose key binding is at point.
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
5120 ASSIST
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
5121 Displays help for an OO-Browser command whose key binding is at point.
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
5122 @end group
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
5123 @end format
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
5124
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
5125 @format
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
5126 @group
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
5127 When pressed on an identifier within an OO-Browser source file:
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
5128 ACTION
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
5129 Tries to display identifier definition.
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
5130 ASSIST
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
5131 Not applicable.
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5132 @end group
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5133 @end format
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5134
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5135 @page
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5136 @format
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5137 @group
24
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
5138 If pressed within an outline-mode buffer or when `selective-display' is
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5139 non-nil:
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5140 ACTION
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5141 Collapses, expands, and moves outline entries.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5142 (1) after an outline heading has been cut via the Action Key, then paste
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5143 the cut heading at point;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5144 (2) at the end of buffer, show all buffer text
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5145 (3) at the beginning of a heading line, cut the headings subtree from the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5146 buffer;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5147 (4) on a header line but not at the beginning or end, if headings
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5148 subtree is hidden then show it, otherwise hide it;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5149 (5) anywhere else, scroll up a windowful.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5150 ASSIST
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5151 (1) after an outline heading has been cut via the Action Key, allow
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5152 multiple pastes throughout the buffer (last paste should be done
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5153 with the Action Key, not the Assist Key);
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5154 (2) at the end of buffer, hide all bodies in buffer;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5155 (3) at the beginning of a heading line, cut the current heading (sans
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5156 subtree) from the buffer;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5157 (4) on a header line but not at the beginning or end, if heading body is
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5158 hidden then show it, otherwise hide it;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5159 (5) anywhere else, scroll down a windowful.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5160 @end group
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5161 @end format
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5162
10
49a24b4fd526 Import from CVS: tag r19-15b6
cvs
parents: 2
diff changeset
5163 @cindex click, Info
49a24b4fd526 Import from CVS: tag r19-15b6
cvs
parents: 2
diff changeset
5164 @cindex Info browsing
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5165 @format
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5166 @group
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5167 If pressed within an Info manual node:
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5168 ACTION
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5169 (1) the first line of an Info Menu Entry or Cross Reference, the desired
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5170 node is found;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5171 (2) the Up,Next,or Previous entries of a Node Header (first line),
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5172 the desired node is found;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5173 (3) the File entry of a Node Header (first line),
24
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
5174 the `Top' node within that file is found;
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5175 (4) at the end of the current node, the Next node is found (this will
24
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
5176 descend subtrees if the function `Info-global-next' is bound);
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5177 (5) anywhere else (e.g@. at the end of a line), the current node entry is
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5178 scrolled up a windowful.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5179 ASSIST
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5180 (1) the first line of an Info Menu Entry or Cross Reference, the desired
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5181 node is found;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5182 (2) the Up,Next,or Previous entries of a Node Header (first line),
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5183 the last node in the history list is found;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5184 (3) the File entry of a Node Header (first line),
24
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
5185 the `DIR' root-level node is found;
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5186 (4) at the end of the current node, the Previous node is found (this will
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5187 return from subtrees if the function 'Info-global-prev is bound);
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5188 (5) anywhere else (e.g@. at the end of a line), the current node entry is
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5189 scrolled down a windowful.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5190 @end group
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5191 @end format
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5192
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5193 @page
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5194 @format
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5195 @group
24
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
5196 If pressed within a Hyperbole-supported mail reader, `hmail:reader', or mail
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
5197 summary mode, `hmail:lister', buffer at:
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5198 ACTION
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5199 (1) a msg buffer, within the first line or at the end of a message,
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5200 the next undeleted message is displayed;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5201 (2) a msg buffer within the first line of an Info cross reference, the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5202 reference is followed;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5203 (3) anywhere else in a msg buffer, the window is scrolled up one
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5204 windowful;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5205 (4) a msg summary buffer on a header entry, the message corresponding to
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5206 the header is displayed in the msg window;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5207 (5) a msg summary buffer, on or after the last line, the messages marked
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5208 for deletion are expunged.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5209 ASSIST
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5210 (1) a msg buffer, within the first line or at the end of a message,
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5211 the previous undeleted message is displayed;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5212 (2) a msg buffer within the first line of an Info cross reference, the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5213 reference is followed;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5214 (3) anywhere else in a msg buffer, the window is scrolled down one
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5215 windowful;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5216 (4) a msg summary buffer on a header entry, the message corresponding to
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5217 the header is marked as deleted;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5218 (5) a msg summary buffer, on or after the last line, all messages are
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5219 marked undeleted.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5220 @end group
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5221 @end format
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5222
10
49a24b4fd526 Import from CVS: tag r19-15b6
cvs
parents: 2
diff changeset
5223 @cindex click, GNUS
49a24b4fd526 Import from CVS: tag r19-15b6
cvs
parents: 2
diff changeset
5224 @cindex GNUS browsing
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5225 @format
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5226 @group
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5227 If pressed within a GNUS listing of newsgroups buffer at:
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5228 ACTION
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5229 (1) a GNUS-GROUP line, that newsgroup is read;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5230 (2) to the left of any GNUS-GROUP line, on any of the whitespace, the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5231 current group is unsubscribed or resubscribed;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5232 (3) at the end of the GNUS-GROUP buffer, after all lines, checks for new
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5233 news.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5234 ASSIST
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5235 (1) a GNUS-GROUP line, that newsgroup is read;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5236 (2) to the left of any GNUS-GROUP line, on any of the whitespace, the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5237 user is prompted for a group name to subscribe or unsubscribe to;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5238 (3) at the end of the GNUS-GROUP buffer, after all lines, quits from the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5239 newsreader.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5240 @end group
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5241 @end format
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5242
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5243 @page
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5244 @format
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5245 @group
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5246 If pressed within a GNUS newsreader subject listing buffer at:
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5247 ACTION
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5248 (1) a GNUS-SUBJECT line, that article is read, marked deleted, and
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5249 scrolled forward;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5250 (2) at the end of the GNUS-SUBJECT buffer, the next undeleted article
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5251 is read or the next group is entered.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5252 ASSIST
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5253 (1) a GNUS-SUBJECT line, that article is read and scrolled backward;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5254 (2) at the end of the GNUS-SUBJECT buffer, the subject is exited, the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5255 user is returned to group mode.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5256 @end group
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5257 @end format
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5258
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5259 @format
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5260 @group
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5261 If pressed within a GNUS newsreader article buffer at:
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5262 ACTION
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5263 (1) the first line or end of an article, the next unread message is
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5264 displayed;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5265 (2) the first line of an Info cross reference, the reference is followed;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5266 (3) anywhere else, the window is scrolled up a windowful.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5267 ASSIST
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5268 (1) the first line or end of an article, the previous message is
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5269 displayed;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5270 (2) the first line of an Info cross reference, the reference is followed;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5271 (3) anywhere else, the window is scrolled down a windowful.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5272 @end group
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5273 @end format
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5274
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5275 @page
10
49a24b4fd526 Import from CVS: tag r19-15b6
cvs
parents: 2
diff changeset
5276 @cindex click, buffer menu
49a24b4fd526 Import from CVS: tag r19-15b6
cvs
parents: 2
diff changeset
5277 @cindex buffer menu
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5278 @format
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5279 @group
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5280 If pressed within a listing of buffers (Buffer-menu-mode):
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5281 ACTION
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5282 (1) on the first column of an entry, the selected buffer is marked for
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5283 display;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5284 (2) on the second column of an entry, the selected buffer is marked to be
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5285 saved;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5286 (3) anywhere else within an entry line, all saves and deletes are done,
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5287 and selected buffers are displayed, including the one just clicked
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5288 on (if in the OO-Browser, only the selected buffer is displayed);
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5289 (4) on or after the last line in the buffer, all saves and deletes are
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5290 done.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5291 ASSIST
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5292 (1) on the first or second column of an entry, the selected buffer is
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5293 unmarked for display and for saving or deletion;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5294 (2) anywhere else within an entry line, the selected buffer is marked for
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5295 deletion;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5296 (3) on or after the last line in the buffer, all display, save, and delete
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5297 marks on all entries are undone.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5298 @end group
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5299 @end format
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5300
10
49a24b4fd526 Import from CVS: tag r19-15b6
cvs
parents: 2
diff changeset
5301 @cindex click, dired
49a24b4fd526 Import from CVS: tag r19-15b6
cvs
parents: 2
diff changeset
5302 @cindex dired browsing
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5303 @format
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5304 @group
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5305 If pressed within a dired-mode buffer:
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5306 ACTION
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5307 (1) within an entry line, the selected file/directory is displayed
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5308 for editing in the other window;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5309 (2) on or after the last line in the buffer, if any deletes are to be
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5310 performed, they are executed after user verification, otherwise, this
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5311 dired invocation is quit.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5312 ASSIST
24
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
5313 (1) on a `~' character, all backup files in the directory are marked for
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5314 deletion;
24
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
5315 (2) on a `#' character, all auto-save files in the directory are marked
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5316 for deletion;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5317 (3) anywhere else within an entry line, the current entry is marked for
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5318 deletion;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5319 (4) on or after the last line in the buffer, all delete marks on all
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5320 entries are undone.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5321 @end group
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5322 @end format
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5323
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5324 @page
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5325 @cindex click, tar
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5326 @cindex tar archive browsing
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5327 @cindex extracting from tar files
10
49a24b4fd526 Import from CVS: tag r19-15b6
cvs
parents: 2
diff changeset
5328 @format
49a24b4fd526 Import from CVS: tag r19-15b6
cvs
parents: 2
diff changeset
5329 @group
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5330 If pressed within a tar-mode buffer:
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5331 ACTION
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5332 (1) within an entry line, the selected file/directory is displayed
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5333 for editing in the other window;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5334 (2) on or after the last line in the buffer, if any deletes are to be
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5335 performed, they are executed after user verification, otherwise, this
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5336 tar file browser is quit.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5337 ASSIST
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5338 (1) on an entry line, the current entry is marked for deletion;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5339 (2) on or after the last line in the buffer, all delete marks on all
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5340 entries are undone.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5341 @end group
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5342 @end format
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5343
10
49a24b4fd526 Import from CVS: tag r19-15b6
cvs
parents: 2
diff changeset
5344 @cindex man page references
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5345 @format
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5346 @group
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5347 If pressed on a cross reference within a man page entry section labeled
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5348 NAME, SEE ALSO, or PACKAGES USED, or within a man page C routine
24
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
5349 specification (see `smart-man-c-routine-ref') and man page buffer
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5350 has either an attached file or else a @var{man-path} local variable
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5351 containing its pathname:
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5352 ACTION or ASSIST
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5353 Displays man page or source code for cross reference.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5354 @end group
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5355 @end format
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5356
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5357 @cindex click, world-wide web
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5358 @cindex W3
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5359 @cindex URL
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5360 @cindex world-wide web
10
49a24b4fd526 Import from CVS: tag r19-15b6
cvs
parents: 2
diff changeset
5361 @format
49a24b4fd526 Import from CVS: tag r19-15b6
cvs
parents: 2
diff changeset
5362 @group
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5363 If pressed on a world-wide web universal resource locator:
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5364 ACTION
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5365 Displays the URL referent at point.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5366 ASSIST
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5367 Goes back to a previously displayed web page.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5368 @end group
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5369 @end format
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5370
10
49a24b4fd526 Import from CVS: tag r19-15b6
cvs
parents: 2
diff changeset
5371 @cindex game, gomoku
49a24b4fd526 Import from CVS: tag r19-15b6
cvs
parents: 2
diff changeset
5372 @cindex gomoku
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5373 @format
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5374 @group
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5375 If pressed in a Gomoku game buffer.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5376 ACTION
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5377 Makes a move at the space pointed to.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5378 ASSIST
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5379 Takes back a prior move made at the space pointed to.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5380 @end group
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5381 @end format
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5382
10
49a24b4fd526 Import from CVS: tag r19-15b6
cvs
parents: 2
diff changeset
5383 @cindex click, wrolo matches
49a24b4fd526 Import from CVS: tag r19-15b6
cvs
parents: 2
diff changeset
5384 @cindex wrolo matches
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5385 @format
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5386 @group
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5387 If pressed within an entry in the wrolo match display buffer:
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5388 ACTION or ASSIST
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5389 The entry is edited in the other window.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5390 @end group
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5391 @end format
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5392
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5393 @node Outliner Keys, Suggestion or Bug Reporting, Smart Key Reference, Top
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5394 @appendix Outliner Keys
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5395
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5396 @cindex outliner keys
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5397 This appendix summarizes the specialized key bindings available when
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5398 editing an outline with Hyperbole. Each key is shown together with its
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5399 command binding and the documentation for that command. Normal emacs
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5400 editing keys are modified to account for the structure within outlines.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5401 An outliner command which overloads an Emacs command named @emph{cmd}
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5402 would be named @emph{kotl-mode:cmd}.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5403
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5404 @table @code
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5405
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5406 @findex kfile:write
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5407 @item kfile:write @{@kbd{C-x C-w}@}
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5408 Write current outline to FILE.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5409
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5410 @findex klink:create
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5411 @item klink:create @{@kbd{C-c l}@}
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5412 Insert at point an implicit link to REFERENCE.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5413 REFERENCE should be a cell-ref or a string containing "filename, cell-ref".
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5414 See documentation for @code{kcell:ref-to-id} for valid cell-ref formats.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5415
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5416 @findex kotl-mode:add-cell
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5417 @item kotl-mode:add-cell @{@key{LFD}@}
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5418 Add a cell following current cell at optional RELATIVE-LEVEL with CONTENTS string.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5419 Optional prefix arg RELATIVE-LEVEL means add as sibling if nil or >= 0, as child
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5420 if equal to universal argument, @kbd{C-u}, and as sibling of current cell's
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5421 parent, otherwise. If added as sibling of current level, RELATIVE-LEVEL is
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5422 used as a repeat count for the number of cells to add.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5423
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5424 Return last newly added cell.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5425
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5426 @findex kotl-mode:add-child
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5427 @item kotl-mode:add-child @{@kbd{C-c a}@}
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5428 Add a new cell to current kview as first child of current cell.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5429
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5430 @findex kotl-mode:add-parent
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5431 @item kotl-mode:add-parent @{@kbd{C-c p}@}
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5432 Add a new cell to current kview as sibling of current cell's parent.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5433
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5434 @findex kotl-mode:append-cell
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5435 @item kotl-mode:append-cell @{@kbd{C-c +}@}
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5436 Append CONTENTS-CELL to APPEND-TO-CELL.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5437 APPEND-TO-CELL is refilled if neither cell has a no-fill property and
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5438 kotl-mode:refill-flag is enabled.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5439
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5440 @findex kotl-mode:back-to-indentation
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5441 @item kotl-mode:back-to-indentation @{@kbd{M-m}@}
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5442 Move point to the first non-read-only non-whitespace character on this line.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5443
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5444 @findex kotl-mode:backward-cell
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5445 @item kotl-mode:backward-cell @{@kbd{C-c C-b}@}
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5446 Move to prefix ARGth prior cell (same level) within current view.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5447 Return number of cells left to move.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5448
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5449 @findex kotl-mode:backward-char
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5450 @item kotl-mode:backward-char @{@kbd{C-b}@}
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5451 Move point backward ARG (or 1) characters and return point.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5452
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5453 @findex kotl-mode:backward-kill-word
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5454 @item kotl-mode:backward-kill-word @{@kbd{M-DEL}@}
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5455 Kill up to prefix ARG words preceding point within a single cell.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5456
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5457 @findex kotl-mode:backward-sentence
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5458 @item kotl-mode:backward-sentence @{@kbd{M-a}@}
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5459 Move point backward ARG (or 1) sentences and return point.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5460
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5461 @findex kotl-mode:backward-word
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5462 @item kotl-mode:backward-word @{@kbd{M-b}@}
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5463 Move point backward ARG (or 1) words and return point.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5464
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5465 @findex kotl-mode:beginning-of-buffer
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5466 @item kotl-mode:beginning-of-buffer @{@kbd{M-<}@}
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5467 Move point to beginning of buffer and return point.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5468
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5469 @findex kotl-mode:beginning-of-cell
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5470 @item kotl-mode:beginning-of-cell @{@kbd{C-c ,}@}
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5471 Move point to beginning of current or ARGth - 1 prior cell and return point.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5472
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5473 @findex kotl-mode:beginning-of-line
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5474 @item kotl-mode:beginning-of-line @{@kbd{C-a}@}
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5475 Move point to beginning of current or ARGth - 1 line and return point.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5476
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5477 @findex kotl-mode:beginning-of-tree
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5478 @item kotl-mode:beginning-of-tree @{@kbd{C-c ^}@}
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5479 Move point to the level 1 root of the current cell's tree.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5480 Leave point at the start of the cell.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5481
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5482 @findex kotl-mode:center-line
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5483 @item kotl-mode:center-line @{@kbd{M-s}@}
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5484 @vindex fill-column
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5485 Center the line point is on, within the width specified by @var{fill-column}.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5486 This means adjusting the indentation so that it equals the distance between
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5487 the end of the text and @var{fill-column}.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5488
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5489 @findex kotl-mode:center-paragraph
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5490 @item kotl-mode:center-paragraph @{@kbd{M-S}@}
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5491 Center each nonblank line in the paragraph at or after point.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5492 See @code{center-line} for more info.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5493
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5494 @findex kotl-mode:copy-after
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5495 @item kotl-mode:copy-after @{@kbd{C-c c}@}
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5496 Copy tree rooted at FROM-CELL-REF to follow tree rooted at TO-CELL-REF.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5497 If prefix arg CHILD-P is non-nil, make FROM-CELL-REF the first child of
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5498 TO-CELL-REF, otherwise make it the sibling following TO-CELL-REF.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5499
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5500 Leave point at the start of the root cell of the new tree.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5501
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5502 @findex kotl-mode:copy-before
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5503 @item kotl-mode:copy-before @{@kbd{C-c C-c}@}
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5504 Copy tree rooted at FROM-CELL-REF to precede tree rooted at TO-CELL-REF.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5505 If prefix arg PARENT-P is non-nil, make FROM-CELL-REF the first child of
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5506 TO-CELL-REF's parent, otherwise make it the preceding sibling of TO-CELL-REF.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5507
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5508 Leave point at the start of the root cell of the new tree.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5509
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5510 @findex kotl-mode:copy-to-buffer
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5511 @item kotl-mode:copy-to-buffer @{@kbd{C-c M-c}@}
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5512 Copy outline tree rooted at CELL-REF to a non-koutline BUFFER.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5513 Use 0 to copy the whole outline buffer.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5514
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5515 @findex kotl-mode:copy-to-register
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5516 @item kotl-mode:copy-to-register @{@kbd{C-x x}@}
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5517 Copy into REGISTER the region START to END.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5518 With optional prefix arg DELETE-FLAG, delete region.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5519
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5520 @findex kotl-mode:delete-backward-char
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5521 @item kotl-mode:delete-backward-char @{@kbd{DEL}@}
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5522 Delete up to the preceding prefix ARG characters.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5523 Return number of characters deleted.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5524 Optional KILL-FLAG non-nil means save in kill ring instead of deleting.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5525 Does not delete across cell boundaries.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5526
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5527 @findex kotl-mode:delete-blank-lines
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5528 @item kotl-mode:delete-blank-lines @{@kbd{C-x C-o}@}
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5529 On blank line within a cell, delete all surrounding blank lines, leaving just one.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5530 On isolated blank line, delete that one.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5531 On nonblank line, delete all blank lines that follow it.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5532
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5533 If nothing but whitespace follows point until the end of a cell, delete all
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5534 whitespace at the end of the cell.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5535
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5536 @findex kotl-mode:delete-char
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5537 @item kotl-mode:delete-char @{@kbd{C-d}@}
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5538 Delete up to prefix ARG characters following point.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5539 Return number of characters deleted.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5540 Optional KILL-FLAG non-nil means save in kill ring instead of deleting.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5541 Does not delete across cell boundaries.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5542
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5543 @findex kotl-mode:delete-indentation
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5544 @item kotl-mode:delete-indentation @{@kbd{M-^}@}
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5545 Join this line to previous and fix up whitespace at join.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5546 If there is a fill prefix, delete it from the beginning of this line.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5547 With argument, join this line to following line.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5548
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5549 @findex kotl-mode:demote-tree
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5550 @vindex kotl-mode:refill-flag
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5551 @item kotl-mode:demote-tree @{@kbd{TAB}@}
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5552 Move current kotl a maximum of prefix ARG levels lower in current view.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5553 Each cell is refilled iff its @emph{no-fill} attribute is nil and
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5554 @var{kotl-mode:refill-flag} is non-nil. With prefix ARG = 0, cells are
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5555 demoted up to one level and kotl-mode:refill-flag is treated as true.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5556
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5557 @findex kotl-mode:down-level
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5558 @item kotl-mode:down-level @{@kbd{C-c C-d}@}
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5559 Move down prefix ARG levels lower within current tree.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5560
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5561 @findex kotl-mode:end-of-buffer
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5562 @item kotl-mode:end-of-buffer @{@kbd{M->}@}
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5563 Move point to end of buffer and return point.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5564
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5565 @findex kotl-mode:end-of-cell
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5566 @item kotl-mode:end-of-cell @{@kbd{C-c .}@}
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5567 Move point to end of current or ARGth - 1 succeeding cell and return point.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5568
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5569 @findex kotl-mode:end-of-line
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5570 @item kotl-mode:end-of-line @{@kbd{C-e}@}
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5571 Move point to end of current or ARGth - 1 line and return point.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5572
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5573 @findex kotl-mode:end-of-tree
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5574 @item kotl-mode:end-of-tree @{@kbd{C-c $}@}
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5575 Move point to the last cell in tree rooted at the current cell.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5576 Leave point at the start of the cell.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5577
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5578 @findex kotl-mode:exchange-cells
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5579 @item kotl-mode:exchange-cells @{@kbd{C-c e}@}
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5580 Exchange CELL-REF-1 with CELL-REF-2 in current view. Don't move point.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5581
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5582 @findex kotl-mode:fill-cell
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5583 @item kotl-mode:fill-cell @{@kbd{C-c M-j}@}
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5584 Fill current cell within current view if it does not have the 'no-fill attribute.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5585 With optional JUSTIFY, justify cell as well.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5586 IGNORE-COLLAPSED-P is used when caller has already expanded cell, indicating
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5587 it is not collapsed.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5588
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5589 @findex kotl-mode:fill-paragraph
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5590 @item kotl-mode:fill-paragraph @{@kbd{C-x f}@}
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5591 Fill current paragraph within cell. With optional JUSTIFY, justify
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5592 paragraph as well. Ignore any non-nil no-fill attribute attached to the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5593 cell.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5594
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5595 @findex kotl-mode:fill-tree
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5596 @item kotl-mode:fill-tree @{@kbd{C-M-j}@}
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5597 Refill each cell within the tree whose root is at point.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5598
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5599 @findex kotl-mode:first-sibling
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5600 @item kotl-mode:first-sibling @{@kbd{C-c <}@}
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5601 Move point to the first sibling of the present cell.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5602 Leave point at the start of the cell or at its present position if it is
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5603 already within the first sibling cell.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5604
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5605 @findex kotl-mode:fkey-backward-char
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5606 @item kotl-mode:fkey-backward-char @{@kbd{left}@}
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5607 Move point backward ARG (or 1) characters and return point.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5608
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5609 @findex kotl-mode:fkey-forward-char
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5610 @item kotl-mode:fkey-forward-char @{@kbd{right}@}
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5611 Move point forward ARG (or 1) characters and return point.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5612
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5613 @findex kotl-mode:fkey-next-line
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5614 @item kotl-mode:fkey-next-line @{@kbd{down}@}
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5615 Move point to ARGth next line and return point.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5616
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5617 @findex kotl-mode:fkey-previous-line
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5618 @item kotl-mode:fkey-previous-line @{@kbd{up}@}
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5619 Move point to ARGth previous line and return point.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5620
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5621 @findex kotl-mode:forward-cell
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5622 @item kotl-mode:forward-cell @{@kbd{C-c C-f}@}
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5623 Move to prefix ARGth following cell (same level) within current view.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5624 Return number of cells left to move.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5625
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5626 @findex kotl-mode:forward-char
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5627 @item kotl-mode:forward-char @{@kbd{C-f}@}
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5628 Move point forward ARG (or 1) characters and return point.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5629
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5630 @findex kotl-mode:forward-para
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5631 @item kotl-mode:forward-para @{@kbd{M-n}@}
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5632 Move to prefix ARGth next cell (any level) within current view.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5633
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5634 @findex kotl-mode:forward-paragraph
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5635 @item kotl-mode:forward-paragraph @{@kbd{M-]}@}
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5636 Move to prefix ARGth next cell (any level) within current view.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5637
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5638 @findex kotl-mode:forward-sentence
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5639 @item kotl-mode:forward-sentence @{@kbd{M-e}@}
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5640 Move point forward ARG (or 1) sentences and return point.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5641
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5642 @findex kotl-mode:forward-word
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5643 @item kotl-mode:forward-word @{@kbd{M-f}@}
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5644 Move point forward ARG (or 1) words and return point.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5645
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5646 @findex kotl-mode:goto-cell
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5647 @item kotl-mode:goto-cell @{@kbd{C-c g}@}
24
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
5648 Move point to start of cell given by CELL-REF. (See `kcell:ref-to-id'.)
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5649 Return point iff CELL-REF is found within current view.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5650 With a prefix argument, CELL-REF is assigned the argument value for use
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5651 as an idstamp.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5652
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5653 Optional second arg, ERROR-P, non-nil means signal an error if CELL-REF is
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5654 not found within current view. Will signal same error if called
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5655 interactively when CELL-REF is not found.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5656
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5657 @findex kotl-mode:hide-sublevels
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5658 @item kotl-mode:hide-sublevels @{@kbd{C-X $}@}
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5659 Hide all cells in outline at levels deeper than LEVELS-TO-KEEP (a
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5660 number). Shows any hidden cells within LEVELS-TO-KEEP. 1 is the first
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5661 level.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5662
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5663 @findex kotl-mode:hide-subtree
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5664 @item kotl-mode:hide-subtree @{@kbd{C-M-h}@}
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5665 Hide subtree, ignoring root, at optional CELL-REF (defaults to cell at
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5666 point).
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5667
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5668 @findex kotl-mode:hide-tree
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5669 @item kotl-mode:hide-tree @{@kbd{C-c BS}@}
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5670 Collapse kotl rooted at optional CELL-REF (defaults to cell at point).
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5671
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5672 @findex kotl-mode:insert-file
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5673 @item kotl-mode:insert-file @{@kbd{C-x i}@}
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5674 Insert each paragraph in IMPORT-FROM as a separate cell in the current view.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5675 Insert as sibling cells following the current cell. IMPORT-FROM may be a
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5676 buffer name or file name (file name completion is provided).
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5677
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5678 @findex kotl-mode:insert-register
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5679 @item kotl-mode:insert-register @{@kbd{C-c r i}@}
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5680 Insert contents of register REGISTER at point in current cell.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5681 REGISTER is a character naming the register to insert.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5682 Normally puts point before and mark after the inserted text.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5683 If optional second arg is non-nil, puts mark before and point after.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5684 Interactively, second arg is non-nil if prefix arg is supplied.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5685
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5686 @findex kotl-mode:just-one-space
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5687 @item kotl-mode:just-one-space @{@kbd{M-\}@}
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5688 Delete all spaces and tabs around point and leave one space.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5689
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5690 @findex kotl-mode:kcell-help
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5691 @item kotl-mode:kcell-help @{@kbd{C-c h}@}
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5692 Display a temporary buffer with CELL-REF's properties.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5693 CELL-REF defaults to current cell.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5694 Optional prefix arg CELLS-FLAG selects the cells to print:
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5695 If = 1, print CELL-REF's cell only;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5696 If > 1, print CELL-REF's visible kotl (the tree rooted at CELL-REF);
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5697 If < 1, print all visible cells in current view (CELL-REF is not used).
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5698
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5699 See also the documentation for @code{kotl-mode:properties}.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5700
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5701 @findex kotl-mode:kill-contents
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5702 @item kotl-mode:kill-contents @{@kbd{C-c k}@}
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5703 Kill contents of cell from point to cell end.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5704 With prefix ARG, kill entire cell contents.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5705
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5706 @findex kotl-mode:kill-line
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5707 @item kotl-mode:kill-line @{@kbd{C-k}@}
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5708 Kill ARG lines from point.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5709
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5710 @findex kotl-mode:kill-region
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5711 @item kotl-mode:kill-region @{@kbd{C-w}@}
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5712 Kill region between START and END within a single kcell.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5713 With optional COPY-P equal to 't, copy region to kill ring but does not
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5714 kill it. With COPY-P any other non-nil value, return region as a
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5715 string without affecting kill ring.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5716
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5717 If the buffer is read-only and COPY-P is nil, the region will not be deleted
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5718 but it will be copied to the kill ring and then an error will be signaled.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5719
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5720 @findex kotl-mode:kill-ring-save
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5721 @item kotl-mode:kill-ring-save @{@kbd{M-w}@}
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5722 Copy region between START and END within a single kcell to kill ring.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5723
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5724 @findex kotl-mode:kill-sentence
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5725 @item kotl-mode:kill-sentence @{@kbd{M-k}@}
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5726 Kill up to prefix ARG (or 1) sentences following point within a single cell.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5727
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5728 @findex kotl-mode:kill-tree
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5729 @item kotl-mode:kill-tree @{@kbd{C-c C-k}@}
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5730 Kill ARG following trees starting with tree rooted at point.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5731 If ARG is not a non-positive number, nothing is done.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5732
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5733 @findex kotl-mode:kill-word
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5734 @item kotl-mode:kill-word @{@kbd{M-d}@}
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5735 Kill up to prefix ARG words following point within a single cell.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5736
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5737 @findex kotl-mode:last-sibling
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5738 @item kotl-mode:last-sibling @{@kbd{C-c >}@}
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5739 Move point to the last sibling of the present cell.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5740 Leave point at the start of the cell or at its present position if it is
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5741 already within the last sibling cell.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5742
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5743 @findex kotl-mode:mail-tree
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5744 @item kotl-mode:mail-tree @{@kbd{C-c @@}@}
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5745 Mail outline tree rooted at CELL-REF. Use "0" for whole outline buffer.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5746
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5747 @findex kotl-mode:move-after
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5748 @item kotl-mode:move-after @{@kbd{C-c m}@}
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5749 Move tree rooted at FROM-CELL-REF to follow tree rooted at TO-CELL-REF.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5750 If prefix arg CHILD-P is non-nil, make FROM-CELL-REF the first child of
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5751 TO-CELL-REF, otherwise make it the sibling following TO-CELL-REF.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5752 With optional COPY-P, copies tree rather than moving it.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5753
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5754 Leave point at original location but return the tree's new start point.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5755
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5756 @findex kotl-mode:move-before
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5757 @item kotl-mode:move-before @{@kbd{C-c RET}@}
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5758 Move tree rooted at FROM-CELL-REF to precede tree rooted at TO-CELL-REF.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5759 If prefix arg PARENT-P is non-nil, make FROM-CELL-REF the first child of
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5760 TO-CELL-REF's parent, otherwise make it the preceding sibling of TO-CELL-REF.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5761 With optional COPY-P, copies tree rather than moving it.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5762
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5763 Leave point at original location but return the tree's new start point.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5764
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5765 @findex kotl-mode:newline
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5766 @item kotl-mode:newline @{@kbd{RET}@}
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5767 Insert a newline. With ARG, insert ARG newlines.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5768 In Auto Fill mode, if no numeric arg, break the preceding line if it is
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5769 too long.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5770
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5771 @findex kotl-mode:next-cell
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5772 @item kotl-mode:next-cell @{@kbd{C-c C-n}@}
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5773 Move to prefix ARGth next cell (any level) within current view.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5774
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5775 @findex kotl-mode:next-line
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5776 @item kotl-mode:next-line @{@kbd{C-n}@}
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5777 Move point to ARGth next line and return point.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5778
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5779 @findex kotl-mode:open-line
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5780 @item kotl-mode:open-line @{@kbd{C-o}@}
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5781 Insert a newline and leave point before it.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5782 With arg N, insert N newlines.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5783
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5784 @findex kotl-mode:overview
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5785 @item kotl-mode:overview @{@kbd{C-c C-o}@}
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5786 Show only the first line of each cell in the current outline.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5787
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5788 @findex kotl-mode:previous-cell
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5789 @item kotl-mode:previous-cell @{@kbd{C-c C-p}@}
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5790 Move to prefix ARGth previous cell (any level) within current view.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5791
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5792 @findex kotl-mode:previous-line
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5793 @item kotl-mode:previous-line @{@kbd{C-p}@}
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5794 Move point to ARGth previous line and return point.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5795
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5796 @findex kotl-mode:promote-tree
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5797 @vindex kotl-mode:refill-flag
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5798 @item kotl-mode:promote-tree @{@kbd{M-TAB}@}
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5799 Move current kotl a maximum of prefix ARG levels higher in current view.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5800 Each cell is refilled iff its @emph{no-fill} attribute is nil and
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5801 @var{kotl-mode:refill-flag} is non-nil. With prefix ARG = 0, cells are
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5802 promoted up to one level and kotl-mode:refill-flag is treated as true.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5803
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5804 @findex kotl-mode:scroll-down
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5805 @item kotl-mode:scroll-down @{@kbd{M-v}@}
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5806 Scroll text of current window downward ARG lines; or a windowful if no ARG.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5807
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5808 @findex kotl-mode:scroll-up
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5809 @item kotl-mode:scroll-up @{@kbd{C-v}@}
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5810 Scroll text of current window upward ARG lines; or a windowful if no ARG.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5811
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5812 @findex kotl-mode:set-cell-attribute
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5813 @item kotl-mode:set-cell-attribute @{@kbd{C-c C-i}@}
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5814 Include ATTRIBUTE VALUE with the current cell or the cell at optional POS.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5815 Replaces any existing value that ATTRIBUTE has.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5816 When called interactively, it displays the setting in the minibuffer as
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5817 confirmation.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5818
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5819 @findex kotl-mode:set-fill-prefix
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5820 @item kotl-mode:set-fill-prefix @{@kbd{C-x l}@}
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5821 Sets fill prefix to line up to point.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5822 With prefix arg TURN-OFF or at begin of line, turns fill prefix off.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5823
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5824 @findex kotl-mode:show-all
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5825 @item kotl-mode:show-all @{@kbd{C-c C-a}@}
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5826 Show (expand) all cells in current view.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5827
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5828 @findex kotl-mode:show-subtree
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5829 @item kotl-mode:show-subtree
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5830 Show subtree, ignoring root, at optional CELL-REF (defaults to cell at
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5831 point).
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5832
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5833 @findex kotl-mode:show-tree
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5834 @item kotl-mode:show-tree @{@kbd{C-c C-s}@}
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5835 Display fully expanded kotl rooted at CELL-REF.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5836
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5837 @findex kotl-mode:split-cell
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5838 @item kotl-mode:split-cell @{@kbd{C-c s}@}
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5839 Split cell into two cells and move to new cell.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5840 Cell contents after point become part of newly created cell.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5841 Default is to create new cell as sibling of current cell.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5842 With optional universal ARG, @kbd{C-u}, new cell is added as child of
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5843 current cell.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5844
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5845 @findex kotl-mode:top-cells
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5846 @item kotl-mode:top-cells @{@kbd{C-c C-t}@}
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5847 Collapse all level 1 cells in view and hide any deeper sublevels.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5848
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5849 @findex kotl-mode:transpose-cells
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5850 @item kotl-mode:transpose-cells @{@kbd{C-c t}@}
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5851 Exchange current and previous visible cells, leaving point after both.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5852 If no previous cell, exchange current with next cell.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5853 With prefix ARG, take current cell and move it past ARG cells.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5854 With prefix ARG = 0, interchange the cell that contains point with the cell
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5855 that contains mark.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5856
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5857 @findex kotl-mode:transpose-chars
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5858 @item kotl-mode:transpose-chars @{@kbd{C-t}@}
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5859 Interchange characters around point, moving forward one character.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5860 With prefix ARG, take character before point and drag it forward past ARG
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5861 other characters (backward if ARG negative).
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5862 If no prefix ARG and at end of line, the previous two characters are
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5863 exchanged.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5864
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5865 @findex kotl-mode:transpose-lines
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5866 @item kotl-mode:transpose-lines @{@kbd{C-x C-t}@}
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5867 Exchange current line and previous line, leaving point after both.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5868 If no previous line, exchange current with next line.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5869 With prefix ARG, take previous line and move it past ARG lines.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5870 With prefix ARG = 0, interchange the line that contains point with the line
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5871 that contains mark.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5872
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5873 @findex kotl-mode:transpose-words
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5874 @item kotl-mode:transpose-words @{@kbd{M-t}@}
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5875 Interchange words around point, leaving point after both words.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5876 With prefix ARG, take word before or around point and drag it forward past
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5877 ARG other words (backward if ARG negative). If ARG is zero, the words around
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5878 or after point and around or after mark are interchanged.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5879
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5880 @findex kotl-mode:up-level
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5881 @item kotl-mode:up-level @{@kbd{C-c C-u}@}
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5882 Move up prefix ARG levels higher in current outline view.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5883
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5884 @findex kotl-mode:yank
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5885 @item kotl-mode:yank @{@kbd{C-y}@}
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5886 Reinsert the last stretch of killed text.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5887 More precisely, reinsert the stretch of killed text most recently
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5888 killed OR yanked. Put point at end, and set mark at beginning.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5889 With just C-u as argument, same but put point at beginning (and mark at end).
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5890 With argument N, reinsert the Nth most recently killed stretch of killed
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5891 text.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5892 See also the command M-x kotl-mode:yank-pop.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5893
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5894 @findex kotl-mode:yank-pop
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5895 @item kotl-mode:yank-pop @{@kbd{M-y}@}
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5896 Replace just-yanked stretch of killed text with a different stretch.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5897 This command is allowed only immediately after a @code{yank} or a
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5898 @code{yank-pop}. At such a time, the region contains a stretch of
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5899 reinserted previously-killed text. @code{yank-pop} deletes that text
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5900 and inserts in its place a different stretch of killed text.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5901
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5902 With no argument, the previous kill is inserted.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5903 With argument N, insert the Nth previous kill.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5904 If N is negative, this is a more recent kill.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5905
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5906 The sequence of kills wraps around, so that after the oldest one
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5907 comes the newest one.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5908
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5909 @findex kotl-mode:zap-to-char
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5910 @item kotl-mode:zap-to-char @{@kbd{M-z}@}
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5911 Kill up to and including prefix ARG'th occurrence of CHAR.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5912 Goes backward if ARG is negative; error if CHAR not found.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5913
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5914 @findex kview:set-label-type
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5915 @item kview:set-label-type @{@kbd{C-c C-l}@}
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5916 Change kview's label display type to NEW-TYPE, updating all displayed labels.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5917 See documentation for variable, kview:default-label-type, for
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5918 valid values of NEW-TYPE.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5919
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5920 @findex kvspec:activate
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5921 @item kvspec:activate @{@kbd{C-c C-v}@}
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5922 Activate optional VIEW-SPEC or existing view spec in the current koutline.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5923 VIEW-SPEC is a string. See <$@{hyperb:dir@}/kotl/EXAMPLE.kotl, 2b17=048> for
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5924 details on valid view specs.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5925
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5926 @findex kvspec:toggle-blank-lines
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5927 @item kvspec:toggle-blank-lines @{@kbd{C-c b}@}
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5928 Toggle blank lines between cells on or off.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5929
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5930 @end table
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5931
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5932 @node Suggestion or Bug Reporting, Questions and Answers, Outliner Keys, Top
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5933 @appendix Suggestion or Bug Reporting
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5934
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5935 @xref{Mail Lists}, for complete details on Hyperbole mailing lists and
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5936 how to subscribe.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5937
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5938 @cindex version description
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5939 @cindex Hyperbole version
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5940 If you find any errors in Hyperbole's operation or documentation, feel
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5941 free to report them to the Hyperbole discussion list:
24
4103f0995bd7 Import from CVS: tag r19-15b95
cvs
parents: 10
diff changeset
5942 <hyperbole@@infodock.com>. Be sure to use the Msg/Compose-Hypb-Mail
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5943 minibuffer menu item whenever you send a message to the mail list since
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5944 it will insert important system version information for you.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5945
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5946 If you use Hyperbole mail or news support, @ref{Buttons in Mail}, a
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5947 click with your Action Key on the Hyperbole mail list address
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5948 will insert a description of your Hyperbole configuration information
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5949 into your outgoing message, so that you do not have to type it. This is
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5950 useful when composing a reply for the Hyperbole mail list. Otherwise,
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5951 be sure to include your Emacs, Hyperbole and window system versions in
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5952 your message. Your Hyperbole version number can be found in the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5953 top-level Hyperbole menu.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5954
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5955 Please use your subject line to state the position that your message
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5956 takes on the topic that it addresses, e.g@. send "Subject: Basic bug in
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5957 top-level Hyperbole menu." rather than "Subject: Hyperbole bug". This
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5958 simple rule makes all e-mail communication much easier.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5959
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5960 If you have suggestions on how to improve Hyperbole, send them to the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5961 same address. Here are some issues you might address:
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5962
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5963 @itemize @bullet
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5964 @item
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5965 What did you like and dislike about the system?
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5966 @item
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5967 What kinds of tasks, if any, does it seem to help you with?
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5968 @item
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5969 What did you think of the Emacs-based user interface?
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5970 @item
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5971 How was the Hyperbole Manual and other documentation?
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5972 @item
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5973 Was the setup trivial, average or hard?
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5974 @item
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5975 What areas of Hyperbole would you like to see expanded/added?
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5976 @item
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5977 How does it compare to other hypertext tools you have used?
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5978 @item
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5979 Was it easy or difficult to create your own types? Why?
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5980 @item
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5981 Did you get any use out of the external system encapsulations?
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5982 @end itemize
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5983
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5984 @node Questions and Answers, Future Work, Suggestion or Bug Reporting, Top
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5985 @appendix Questions and Answers
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5986
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5987 @table @emph
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5988 @cindex Smart Key
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5989 @cindex mouse key bindings
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5990 @findex hmouse-setup
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5991 @findex hmouse-get-bindings
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5992 @vindex file, hmouse-sh.el
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5993 @vindex file, hmouse-reg.el
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5994 @item How can I change the Smart Mouse Key bindings?
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5995 @findex hmouse-shift-buttons
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5996 Since the Smart Mouse Keys are set up for use under five different Emacs
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5997 configurations, there is no easy way to provide user level
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5998 customization. The command, @code{hmouse-shift-buttons}, can be used to
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5999 select between shifted and unshifted Smart Mouse Keys. Any other mouse
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6000 key binding changes must be done by editing the @code{hmouse-setup} and
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6001 @code{hmouse-get-bindings} functions in the @file{hmouse-sh.el} and
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6002 @file{hmouse-reg.el} files.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6003
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6004 @vindex file, hmouse-key.el
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6005 @vindex file, hui-window.el
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6006 @vindex hkey-alist
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6007 @vindex hmouse-alist
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6008 The @var{hkey-alist} and @var{hmouse-alist} variable
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6009 settings in @file{hui-mouse.el} and @file{hui-window.el} must be altered
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6010 if you want to change what the Smart Keys do in particular contexts.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6011 You should then update the Smart Key summary documentation in the file,
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6012 @file{hypb-mouse.txt}, and potentially the same summary in this manual.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6013
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6014
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6015 @item Missing Action Types
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6016
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6017 What if someone sends a mail message with a button for which I do
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6018 not have the action type? Or a button whose link referent I can't access?
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6019
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6020 You receive an error that an action type is not defined or a link
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6021 referent is not accessible/readable if you try to use the button. This
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6022 is hardly different than trying to get through a locked door without a
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6023 key; you try the doorknob, find that it is locked, and then realize that
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6024 you need to take a different approach or else give up.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6025
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6026 Like all communication, people need to coordinate, which usually
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6027 requires an iterative process. If you get a mail message with a button
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6028 for which you don't have the action type, you mail the sender and
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6029 request it.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6030
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6031 @cindex global button, modify
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6032 @item How can I modify a number of global buttons in succession?
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6033
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6034 Rather than typing the name for each, it is quicker to jump to the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6035 global button file and edit the buttons there as you would any explicit
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6036 buttons. By default, the ButFile/PersonalFile menu item takes you to
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6037 the file where global buttons are saved.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6038
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6039 @item Why is all the button data scattered across directories?
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6040
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6041 When you think of a hyper-space that you depend on every day, you don't
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6042 want to have a single point of failure make you incapable of doing work.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6043 With Hyperbole, if some directories become unavailable for a particular
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6044 time (e.g@. the filesystems on which they reside are dismounted) you can
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6045 still work elsewhere with minimal effect. We believe this to be a
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6046 compelling factor to leave the design with external button data storage.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6047
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6048 This design also permits the potential addition of buttons to read-only
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6049 media.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6050
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6051 @item Why are action types defined separately from their implicit button types?
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6052
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6053 Any category of button can make use of an action type. Some action types
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6054 are useful as behavior definitions for a variety of button categories,
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6055 so all action types are defined separately to give them independence
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6056 from those types which apply them.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6057
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6058 For implicit button types that require a lot of code, it is useful to
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6059 add a module that includes the implicit button type definition, its
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6060 action type definition and supporting code.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6061
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6062 @end table
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6063
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6064
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6065 @node Future Work, References, Questions and Answers, Top
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6066 @appendix Future Work
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6067
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6068 @noindent
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6069 This appendix is included for a number of reasons:
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6070
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6071 @itemize @bullet
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6072 @item
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6073 to better allow you to assess whether to work with Hyperbole by
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6074 providing sketches of possible additions:
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6075 @item
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6076 to direct further development effort towards known needs;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6077 @item
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6078 and to acknowledge known weaknesses in the current system.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6079 @end itemize
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6080
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6081 @table @asis
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6082
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6083 Note that due to a lack of volunteers to further develop Hyperbole, much
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6084 of this work may not be done. So if you want to see these features,
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6085 encourage qualified people to volunteer.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6086
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6087 @item Button Copying, Killing, and Yanking
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6088 There is as yet no means of transferring explicit buttons among buffers.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6089 We realize this is a critical need. Users should be able to manipulate
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6090 text with embedded buttons in ordinary ways. This will probably be
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6091 implemented only for versions of Emacs 19 and higher. It will store the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6092 button attributes as text attributes within the buffers so that if a
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6093 button is copied, its attributes follow. When a buffer is saved, the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6094 attributes also will be saved.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6095
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6096 @item Trails
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6097 Trails are an extension to the basic history mechanism presently offered
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6098 by Hyperbole. Trails will allow a user to capture, edit and store a
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6099 specific sequence and set of views of information for later replay by
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6100 other users. Conditional branching may also be supported.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6101
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6102 @item Outliner View Mode
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6103 This will complement the outliner editing mode by using simple one
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6104 character keys that normally insert characters to instead modify the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6105 view of an outline and to move around in it, for ease of study.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6106 Switching between view and edit modes will also be simple.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6107
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6108 @item Storage of button data within button source files
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6109 The current design choice of storing buttons external to the source file
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6110 was made under the assumption that people should be able to look at
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6111 files that contain Hyperbole buttons with any standard editor or tool
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6112 and not be bothered by the ugly button data (since they won't be able to
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6113 utilize the buttons anyway, they don't need to see or have access to
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6114 them).
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6115
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6116 In many contexts, embedding the button data within the source files may
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6117 be a better choice, so a provision which would allow selection of either
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6118 configuration may be added. Here are some of the PROs and CONs of both
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6119 design choices:
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6120 @sp 1
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6121
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6122 @example
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6123 @group
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6124 POSITIVE NEGATIVE
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6125
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6126 Button data in source file
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6127 Documents can stand alone. All edit operators have
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6128 Normal file operations apply. to account for file
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6129 structure and hide
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6130 Simplifies creation and internal components.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6131 facility expansion for
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6132 structured and multi-media
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6133 files.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6134
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6135 Button data external to source file
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6136 Files can be displayed and Currently, bdata for
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6137 printed exactly as they look. whole directory is
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6138 No special display formatting locked when any bdata
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6139 is necessary. entry is locked.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6140
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6141 Button-based searches and
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6142 database-type lookup operations
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6143 need only search one file
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6144 per directory.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6145 @end group
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6146 @end example
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6147 @sp 2
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6148
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6149 @item Forms-based Interfaces
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6150
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6151 This will allow one to create buttons more flexibly. For example, button
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6152 attributes could be given in any order. Entry of long code sequences,
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6153 quick note taking and cross-referencing would also be made easier.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6154
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6155 @item Collaboration Support
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6156
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6157 From the early stages of Hyperbole design, collaborative work
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6158 environments have been considered. A simple facility has demonstrated
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6159 broadcast of button activations to a number of workstations on a local
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6160 area network, so that one user can lead others around an information
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6161 space, as during an online design review. (This facility was never
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6162 adapted to the current Hyperbole release, however.) We shall do some
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6163 work in specific collaborative mechanisms, but we also expect that
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6164 others who concentrate in collaborative work will provide more extensive
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6165 capabilities.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6166
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6167 @end table
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6168
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6169 @node References, Key Binding Index, Future Work, Top
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6170 @appendix References
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6171
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6172 @table @b
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6173 @item [AkMcYo88]
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6174 Akscyn, R. M., D. L. McCracken and E. A. Yoder. KMS: A
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6175 Distributed Hypermedia System for Managing Knowledge in Organizations.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6176 @emph{Communications of the ACM}, Vol. 31, No. 7, July 1988, pp. 820-835.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6177
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6178 @item [Bro87]
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6179 Brown, P. J. Turning Ideas into Products: The Guide System.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6180 @emph{Proceedings of Hypertext '87}, November 13-15, 1987, Chapel Hill, NC.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6181 ACM: NY, NY, pp. 33-40.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6182
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6183 @item [Con87]
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6184 Conklin, Jeff. Hypertext: An Introduction and Survey. @emph{IEEE
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6185 Computer}, Vol. 20, No. 9, September 1987, pp. 17-41.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6186
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6187 @item [Eng68]
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6188 Engelbart, D., and W. English. A research center for augmenting
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6189 human intellect. @emph{Proceedings of the Fall Joint Computer Conference},
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6190 33, 1, AFIPS Press: Montvale, NJ, 1968, pp. 395-410.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6191
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6192 @item [Eng84a]
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6193 Engelbart, D. C. Authorship Provisions in Augment.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6194 @emph{Proceedings of the 1984 COMPCON Conference (COMPCON '84 Digest)},
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6195 February 27-March 1, 1984, San Francisco, CA. IEEE Computer Society Press,
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6196 Spring, 1984. 465-472. (OAD,2250,)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6197
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6198 @item [Eng84b]
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6199 Engelbart, D. C. Collaboration Support Provisions in Augment.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6200 @emph{Proceedings of the AFIPS Office Automation Conference (OAC '84 Digest)},
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6201 February, 1984, Los Angeles, CA, 1984. 51-58. (OAD,2221,)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6202
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6203 @item [Fos88]
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6204 Foss, C. L. Effective Browsing in Hypertext Systems.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6205 @emph{Proceedings of the Conference on User-Oriented Content-Based Text and
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6206 Image Handling (RIAO 88)}, March 21-24, MIT, Cambridge MA. Centre de Hautes
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6207 Etudes Internationales d'Informatique Documentaire, 1988, pp. 82-98.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6208
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6209 @item [GaSmMe86]
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6210 Garrett, N., K. E. Smith and N. Meyrowitz. Intermedia: Issues,
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6211 Strategies, and Tactics in the Design of a Hypermedia Document System.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6212 @emph{Computer-Supported Cooperative Work (CSCW '86) Proceedings}, December
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6213 3-5, Austin, TX, 1986, pp. 163-174.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6214
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6215 @item [HaMoTr87]
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6216 Halasz, F. G., T. P. Moran and R. H. Trigg. NoteCards in a
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6217 Nutshell. @emph{Proceedings of the CHI and GI '87 Conference on Human Factors
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6218 in Computing Systems}, Toronto, J. M. Carroll and P. P. Tanner, (editors),
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6219 ACM: NY, NY, April 1987, pp. 45-52.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6220
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6221 @item [Har88]
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6222 Harvey, G. @emph{Understanding HyperCard.} Alameda, CA: SYBEX, Inc.,
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6223 1988.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6224
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6225 @item [KaCaLoLa92]
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6226 Kaplan, S., A. M. Carroll, C. Love and D. M. LaLiberte.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6227 @emph{Epoch 4.0 Manual.} Department of Computer Science, University of
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6228 Illinois, Urbana, March 1992.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6229
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6230 @item [KaKaBeLaDr90]
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6231 Kaplan, S. J., M. D. Kapor, E. J. Belove, R. A. Landsman, and
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6232 T. R. Drake. AGENDA: A personal Information Manager. @emph{Communications
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6233 of the ACM}, No. 33, July 1990, pp. 105-116.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6234
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6235 @item [Nel87a]
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6236 Nelson, T. H. @emph{Computer Lib/Dream Machines.} MicroSoft Press,
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6237 Redmond, WA, 1987.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6238
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6239 @item [Nel87b]
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6240 Nelson, T. H. @emph{Literary Machines, Edition 87.1}. Available
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6241 from the Distributors, 702 South Michigan, South Bend, IN 46618, 1987.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6242
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6243 @item [NoDr86]
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6244 Norman, D. A. and S. W. Draper, editors. @emph{User Centered System
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6245 Design.} Lawrence Erlbaum Associates: Hillsdale, New Jersey, 1986.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6246
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6247 @item [Shn82]
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6248 Shneiderman, B. The future of interactive systems and the emergence
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6249 of direct manipulation. @emph{Behavior and Information Technology}, Vol. 1,
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6250 1982, pp. 237-256.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6251
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6252 @item [Sta87]
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6253 Stallman, R. @emph{GNU Emacs Manual.} Free Software Foundation,
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6254 Cambridge: MA, March 1987.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6255
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6256 @item [Tri86]
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6257 Trigg, R., L. Suchman, and F. Halasz. Supporting collaboration in
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6258 NoteCards. @emph{Proceedings of the CSCW '86 Conference}, Austin, TX,
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6259 December 1986, pp. 147-153.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6260
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6261 @item [TrMoHa87]
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6262 Trigg, R. H., T. P. Moran and F. G. Halasz. Adaptability and
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6263 Tailorability in NoteCards. @emph{Proceedings of INTERACT '87}, Stuttgart,
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6264 West Germany, September 1987.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6265
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6266 @item [Wei92]
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6267 Weiner, B. @emph{PIEmail: A Personalized Information Environment
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6268 Mail Tool.} Department of Computer Science Masters Project, Brown
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6269 University: Providence, RI, May 10, 1992.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6270
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6271 @item [YaHaMeDr88]
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6272 Yankelovich, N., B. J. Haan, N. Meyrowitz and S. M. Drucker.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6273 Intermedia: The Concept and the Construction of a Seamless Information
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6274 Environment. @emph{IEEE Computer}, Vol. 21, No. 1, January 1988, pp. 81-96.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6275
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6276 @item [YoAkMc89]
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6277 Yoder, E. A., R. M. Akscyn and D. L. McCracken. Collaboration in
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6278 KMS, A Shared Hypermedia System. @emph{Proceedings of the 1989 ACM Conference
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6279 on Human Factors in Computer Systems (CHI '89)}, April 30-May 4, 1989,
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6280 Austin, TX, ACM: NY,NY, 1989, pp. 37-42.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6281
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6282 @end table
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6283
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6284
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6285 @c ***************************
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6286 @c Indices
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6287 @c ***************************
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6288
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6289 @node Key Binding Index, Code and File Index, References, Top
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6290 @unnumbered Key Binding Index
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6291
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6292 @printindex ky
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6293
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6294 @node Code and File Index, Concept Index, Key Binding Index, Top
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6295 @unnumbered Code and File Index
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6296
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6297 @printindex fn
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6298
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6299 @node Concept Index, , Code and File Index, Top
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6300 @unnumbered Concept Index
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6301
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6302 @printindex cp
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6303
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6304 @page
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6305 @summarycontents
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6306 @contents
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6307 @bye