annotate lisp/hyperbole/hyperbole.el @ 143:50e7fedfe353

Added tag r20-2b5 for changeset 1856695b1fa9
author cvs
date Mon, 13 Aug 2007 09:33:20 +0200
parents 8619ce7e4c50
children
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 ;;!emacs
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2 ;;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3 ;; LCD-ENTRY: See "hversion.el".
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4 ;;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5 ;; FILE: hyperbole.el
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6 ;; SUMMARY: Sets up Hyperbole for autoloading and use.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
7 ;; USAGE: GNU Emacs Lisp Library
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
8 ;; KEYWORDS: hypermedia
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
9 ;;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
10 ;; AUTHOR: Bob Weiner
100
4be1180a9e89 Import from CVS: tag r20-1b2
cvs
parents: 70
diff changeset
11 ;; ORG: InfoDock Associates
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
12 ;;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
13 ;; ORIG-DATE: 6-Oct-92 at 11:52:51
114
8619ce7e4c50 Import from CVS: tag r20-1b9
cvs
parents: 100
diff changeset
14 ;; LAST-MOD: 15-Mar-97 at 17:09:40 by Bob Weiner
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
15 ;;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
16 ;; This file is part of Hyperbole.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
17 ;; Available for use and distribution under the same terms as GNU Emacs.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
18 ;;
100
4be1180a9e89 Import from CVS: tag r20-1b2
cvs
parents: 70
diff changeset
19 ;; Copyright (C) 1992-1996, Free Software Foundation, Inc.
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
20 ;; Developed with support from Motorola Inc.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
21 ;;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
22 ;; DESCRIPTION:
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
23 ;;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
24 ;; See the "README" file for installation instructions.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
25 ;;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
26 ;; There is no need to manually edit this file unless there are specific
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
27 ;; customizations you would like to make, such as whether the Hyperbole
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
28 ;; mouse buttons are placed on shifted or unshifted mouse buttons.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
29 ;; (See the call of the function, hmouse-shift-buttons, below.)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
30 ;;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
31 ;; Other site-specific customizations belong in "hsite.el" which is created
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
32 ;; from "hsite-ex.el" by the person who installs Hyperbole at your site.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
33 ;;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
34 ;; DESCRIP-END.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
35
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
36 ;;; ************************************************************************
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
37 ;;; Hyperbole directory setting
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
38 ;;; ************************************************************************
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
39
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
40 ;; Defines hyperb:window-system, hyperb:kotl-p and
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
41 ;; (hyperb:path-being-loaded), which are used below.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
42 ;; The Hyperbole distribution directory must either already be in
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
43 ;; load-path or an explicit load of "hversion" must have been
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
44 ;; done already or else the following line will fail to load hversion.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
45 ;; This is all documented in the Hyperbole installation instructions.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
46 (require 'hversion)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
47
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
48 ;; Reinitialize hyperb:dir on reload if initialization failed for any reason.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
49 (and (boundp 'hyperb:dir) (null hyperb:dir) (makunbound 'hyperb:dir))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
50
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
51 (defvar hyperb:dir (if (fboundp 'backtrace-frame) (hyperb:path-being-loaded))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
52 "Directory where the Hyperbole executable code is kept.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
53 It must end with a directory separator character.")
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
54 (if (stringp hyperb:dir)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
55 (setq hyperb:dir (file-name-directory hyperb:dir))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
56 (error
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
57 "(hyperbole.el): Failed to set hyperb:dir. Try setting it manually."))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
58
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
59 ;;; ************************************************************************
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
60 ;;; Other required Elisp libraries
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
61 ;;; ************************************************************************
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
62
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
63 (require 'set (expand-file-name "set" hyperb:dir))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
64
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
65 ;; Add hyperb:dir and kotl subdirectory to load-path so other
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
66 ;; Hyperbole libraries can be found.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
67 (setq load-path (set:add hyperb:dir load-path))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
68 (if hyperb:kotl-p
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
69 (setq load-path (set:add (expand-file-name "kotl/" hyperb:dir) load-path)))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
70
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
71 (require 'hvar) ;; Defines var:append function.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
72
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
73 ;;; ************************************************************************
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
74 ;;; Public key bindings
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
75 ;;; ************************************************************************
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
76
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
77 ;;; Setup so Hyperbole can be autoloaded from a key.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
78 ;;; Choose a key on which to place the Hyperbole menus.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
79 ;;; For most people this key binding will work and will be equivalent
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
80 ;;; to {C-h h}.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
81 ;;;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
82 (or (where-is-internal 'hyperbole)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
83 (where-is-internal 'hui:menu)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
84 (define-key help-map "h" 'hyperbole))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
85
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
86 ;;; Provides a site standard way of emulating most Hyperbole mouse drag
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
87 ;;; commands from the keyboard. This is most useful for rapidly creating
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
88 ;;; Hyperbole link buttons from the keyboard without invoking the Hyperbole
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
89 ;;; menu. Only works if Emacs is run under a window system.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
90 ;;;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
91 (or (not hyperb:window-system)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
92 (global-key-binding "\M-o")
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
93 (where-is-internal 'hkey-operate)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
94 (global-set-key "\M-o" 'hkey-operate))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
95
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
96 ;;; Provides a site standard way of performing explicit button
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
97 ;;; renames without invoking the Hyperbole menu.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
98 ;;;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
99 (or (global-key-binding "\C-c\C-r")
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
100 (where-is-internal 'hui:ebut-rename)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
101 (global-set-key "\C-c\C-r" 'hui:ebut-rename))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
102
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
103 ;;; The following operations are now available through the Hyperbole Win/
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
104 ;;; menu. In earlier versions of Hyperbole, each of these operations had its
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
105 ;;; own keybindings. Uncomment the following code lines if you still want
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
106 ;;; to use those key bindings.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
107 ;;; Key bindings for window configuration save/restore ring, like kill-ring
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
108 ;;; except holds the configuration of windows within a frame.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
109 ;;; {C-x 4 w} to save config; {C-x 4 y} to restore successive
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
110 ;;; saves; {C-x 4 DEL} to delete successive saves.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
111 ;;;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
112 ;; (or (global-key-binding "\C-x4w")
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
113 ;; (global-set-key "\C-x4w" 'wconfig-ring-save))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
114 ;; (or (global-key-binding "\C-x4y")
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
115 ;; (global-set-key "\C-x4y" 'wconfig-yank-pop))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
116 ;; (or (global-key-binding "\C-x4\177")
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
117 ;; (global-set-key "\C-x4\177" 'wconfig-delete-pop))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
118
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
119 ;;; Provides a site standard way to easily switch between the Hyperbole mouse
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
120 ;;; bindings and a set of personal mouse bindings. You may instead show
114
8619ce7e4c50 Import from CVS: tag r20-1b9
cvs
parents: 100
diff changeset
121 ;;; users how to bind this to a key via `hyperb:init-hook' (see
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
122 ;;; Hyperbole Manual).
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
123 ;;;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
124 (or (global-key-binding "\C-ct")
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
125 (where-is-internal 'hmouse-toggle-bindings)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
126 (global-set-key "\C-ct" 'hmouse-toggle-bindings))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
127
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
128 (defun hkey-either (arg)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
129 "Executes `action-key' or with non-nil ARG executes `assist-key'."
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
130 (interactive "P")
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
131 (if arg (assist-key) (action-key)))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
132
114
8619ce7e4c50 Import from CVS: tag r20-1b9
cvs
parents: 100
diff changeset
133 ;;; A value of t for `hkey-init' below will cause the Hyperbole
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
134 ;;; context-sensitive keys to be bound to keyboard keys, in addition to any
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
135 ;;; mouse key bindings. Comment it out or set it to nil if you don't want
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
136 ;;; these bindings. Or change the bindings in the succeeding lines.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
137 ;;;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
138 (or (boundp 'hkey-init) (setq hkey-init t))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
139 (and hkey-init
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
140 (not (global-key-binding "\M-\C-m"))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
141 (global-set-key "\M-\C-m" 'hkey-either))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
142 ;;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
143 ;; Bind a key, {C-h A}, for Action Key help and {C-u C-h A} for Assist key
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
144 ;; help.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
145 (and hkey-init
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
146 (not (where-is-internal 'hkey-help))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
147 (define-key help-map "A" 'hkey-help))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
148
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
149 ;;;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
150 ;;; Hyperbole key bindings for many non-edit modes.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
151 ;;; Set both to nil if unwanted.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
152 ;;;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
153 (defvar action-key-read-only "\C-m"
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
154 "Local Action Key binding for special read-only modes.")
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
155 (defvar assist-key-read-only "\M-\C-m"
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
156 "Local Assist Key binding for special read-only modes.")
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
157
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
158 ;;; ************************************************************************
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
159 ;;; URL Browsing
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
160 ;;; ************************************************************************
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
161
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
162 ;;;###autoload
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
163 (defvar action-key-url-function 'w3-fetch
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
164 "Value is a function of one argument, a url, which displays the url referent.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
165 Possible values are:
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
166 w3-fetch - display using the W3 Emacs web browser;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
167 highlight-headers-follow-url-netscape - display in Netscape;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
168 highlight-headers-follow-url-mosaic - display in Mosaic.")
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
169
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
170 ;;; ************************************************************************
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
171 ;;; Koutliner mode and file suffix importation settings.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
172 ;;; ************************************************************************
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
173
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
174 ;;;###autoload
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
175 (defvar kimport:mode-alist
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
176 '((t . kimport:text)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
177 (outline-mode . kimport:star-outline))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
178 "Alist of (major-mode . importation-function) elements.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
179 This determines the type of importation done on a file when `kimport:file' is
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
180 called if the major mode of the import file matches the car of an element in
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
181 this list. If there is no match, then `kimport:suffix-alist' is checked. If
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
182 that yields no match, the element in this list whose car is 't is used. It
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
183 normally does an import of a koutline or text file.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
184
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
185 Each importation-function must take two arguments, a buffer/file to import
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
186 and a buffer/file into which to insert the imported elements and a third
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
187 optional argument, CHILDREN-P, which when non-nil means insert imported cells
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
188 as the initial set of children of the current cell, if any.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
189
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
190 outline-mode - imported as an Emacs outline whose entries begin with
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
191 asterisks;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
192 .kot
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
193 .kotl - imported as a structured koutline
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
194
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
195 all others - imported as text.")
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
196
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
197 ;;;###autoload
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
198 (defvar kimport:suffix-alist
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
199 '(("\\.otl$". kimport:star-outline)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
200 ("\\.aug$" . kimport:aug-post-outline))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
201 "Alist of (buffer-name-suffix-regexp . importation-function) elements.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
202 This determines the type of importation done on a file when `kimport:file' is
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
203 called. Each importation-function must take two arguments, a buffer/file to
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
204 import and a buffer/file into which to insert the imported elements and a
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
205 third optional argument, CHILDREN-P, which when non-nil means insert imported
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
206 cells as the initial set of children of the current cell, if any.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
207
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
208 .otl - imported as an Emacs outline whose entries begin with asterisks;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
209 .kot
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
210 .kotl - imported as a structured koutline
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
211 .aug - imported as an Augment post-numbered outline.")
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
212
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
213 ;;; ************************************************************************
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
214 ;;; You shouldn't need to modify anything below here.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
215 ;;; ************************************************************************
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
216
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
217 (defun hkey-read-only-bindings ()
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
218 "Binds Action and Assist Keys in many read-only modes.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
219 Uses values of `action-key-read-only' and `assist-key-read-only'. Does
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
220 nothing if either variable is nil."
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
221 (if (not (and action-key-read-only assist-key-read-only))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
222 nil
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
223 (if (and (boundp 'Buffer-menu-mode-map)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
224 (keymapp Buffer-menu-mode-map))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
225 (progn
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
226 (define-key Buffer-menu-mode-map action-key-read-only 'action-key)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
227 (define-key Buffer-menu-mode-map assist-key-read-only
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
228 'hkey-either)))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
229 (if (and (boundp 'calendar-mode-map)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
230 (keymapp calendar-mode-map))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
231 (progn
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
232 (define-key calendar-mode-map action-key-read-only 'action-key)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
233 (define-key calendar-mode-map assist-key-read-only
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
234 'hkey-either)))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
235 (if (and (boundp 'dired-mode-map)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
236 (keymapp dired-mode-map))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
237 (progn
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
238 (define-key dired-mode-map action-key-read-only 'action-key)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
239 (define-key dired-mode-map assist-key-read-only
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
240 'hkey-either)))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
241 (if (and (boundp 'gnus-group-mode-map)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
242 (keymapp gnus-group-mode-map))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
243 (progn
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
244 (define-key gnus-group-mode-map action-key-read-only 'action-key)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
245 (define-key gnus-group-mode-map assist-key-read-only
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
246 'hkey-either)))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
247 (if (and (boundp 'gnus-summary-mode-map)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
248 (keymapp gnus-summary-mode-map))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
249 (progn
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
250 (define-key gnus-summary-mode-map action-key-read-only 'action-key)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
251 (define-key gnus-summary-mode-map assist-key-read-only
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
252 'hkey-either)))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
253 (if (and (boundp 'Info-mode-map)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
254 (keymapp Info-mode-map))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
255 (progn
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
256 (define-key Info-mode-map action-key-read-only 'action-key)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
257 (define-key Info-mode-map assist-key-read-only
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
258 'hkey-either)))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
259 (if (and (boundp 'oo-browse-mode-map)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
260 (keymapp oo-browse-mode-map))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
261 (progn
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
262 (define-key oo-browse-mode-map action-key-read-only 'action-key)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
263 (define-key oo-browse-mode-map assist-key-read-only
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
264 'hkey-either)))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
265 (if (and (boundp 'rmail-mode-map)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
266 (keymapp rmail-mode-map))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
267 (progn
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
268 (define-key rmail-mode-map action-key-read-only 'action-key)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
269 (define-key rmail-mode-map assist-key-read-only
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
270 'hkey-either)))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
271 (if (and (boundp 'rmail-summary-mode-map)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
272 (keymapp rmail-summary-mode-map))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
273 (progn
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
274 (define-key rmail-summary-mode-map action-key-read-only 'action-key)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
275 (define-key rmail-summary-mode-map assist-key-read-only
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
276 'hkey-either)))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
277 (if (and (boundp 'unix-apropos-map)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
278 (keymapp unix-apropos-map))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
279 (progn
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
280 (define-key unix-apropos-map action-key-read-only 'action-key)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
281 (define-key unix-apropos-map assist-key-read-only
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
282 'hkey-either)))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
283 ))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
284
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
285 (hkey-read-only-bindings)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
286
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
287 ;;; ************************************************************************
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
288 ;;; Setup Hyperbole mouse bindings
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
289 ;;; ************************************************************************
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
290
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
291 (require 'hmouse-key)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
292 ;;; The following function call selects between shifted and unshifted Action
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
293 ;;; and Assist mouse buttons. With no argument or an argument of nil,
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
294 ;;; shifted buttons are used, and under InfoDock, the middle button also acts
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
295 ;;; as an Action Key. With a positive number as an argument, use shifted
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
296 ;;; buttons. With any other integer, use unshifted buttons.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
297 (hmouse-shift-buttons)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
298
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
299 ;;; Permits restore of the prior window configuration after any help buffer
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
300 ;;; is shown by pressing either the Action or Assist Key at the end of the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
301 ;;; help buffer. (Help buffer names end with "Help*".)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
302 ;;;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
303 (setq temp-buffer-show-hook 'hkey-help-show
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
304 temp-buffer-show-function temp-buffer-show-hook)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
305
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
306 ;;; ************************************************************************
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
307 ;;; Autoloads
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
308 ;;; ************************************************************************
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
309
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
310 ;;; Menu items could call this function before Info is loaded.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
311 (autoload 'Info-goto-node "info" "Jump to specific Info node." t)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
312
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
313 ;;; Hyperbole user interface entry points that trigger loading of the full
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
314 ;;; Hyperbole system.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
315
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
316 ;; Action type definitions.
100
4be1180a9e89 Import from CVS: tag r20-1b2
cvs
parents: 70
diff changeset
317 (autoload 'defact "hsite"
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
318 "Creates an action TYPE (an unquoted symbol) with PARAMS, described by DOC."
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
319 nil 'macro)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
320 ;; Implicit button type definitions.
100
4be1180a9e89 Import from CVS: tag r20-1b2
cvs
parents: 70
diff changeset
321 (autoload 'defib "hsite"
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
322 "Creates implicit button TYPE (unquoted sym) with PARAMS, described by DOC."
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
323 nil 'macro)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
324
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
325 (autoload 'ebut:map "hsite" "Map over Hyperbole buffer buttons." nil)
100
4be1180a9e89 Import from CVS: tag r20-1b2
cvs
parents: 70
diff changeset
326 (autoload 'hbut:key-src "hsite" "Called by {e} command in rolo match buffer.")
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
327 (autoload 'hui:ebut-rename "hsite" "Rename a Hyperbole button." t)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
328 (autoload 'hyperbole "hsite" "Hyperbole info manager menus." t)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
329
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
330 (autoload 'action-key "hsite"
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
331 "Context-sensitive Action Key command." t)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
332 (autoload 'hkey-help "hsite"
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
333 "Display help for the Action Key command in current context.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
334 With optional ASSIST-FLAG non-nil, display help for the Assist Key command.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
335 Returns non-nil iff associated help documentation is found." t)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
336 (autoload 'assist-key-help "hsite"
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
337 "Display help for the Assist Key command in current context." t)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
338 (autoload 'hkey-help-hide "hsite"
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
339 "Restores frame to configuration prior to help buffer display." nil)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
340 (autoload 'hkey-help-show "hsite"
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
341 "Saves prior frame configuration if BUFFER displays help." nil)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
342 (autoload 'assist-key "hsite"
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
343 "Context-sensitive Assist Key command." t)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
344 (autoload 'action-mouse-key "hsite"
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
345 "Context-sensitive Action Mouse Key command." t)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
346 (autoload 'assist-mouse-key "hsite"
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
347 "Context-sensitive Assist Mouse Key command." t)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
348 (autoload 'hkey-operate "hsite" "Emulate Hyperbole mouse key drags." t)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
349 (autoload 'symset:add "hsite" "Adds ELT to SYMBOL's PROP set." nil)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
350 (autoload 'hact "hsite" "Performs action formed from rest of ARGS."
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
351 nil)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
352 (autoload 'actypes::exec-window-cmd "hsite"
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
353 "Executes an external window-based SHELL-CMD string asynchronously." nil)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
354 (autoload 'hpath:absolute-to "hsite"
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
355 "Make PATH absolute from optional DEFAULT-DIRS." nil)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
356 (autoload 'hpath:find "hsite"
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
357 "Edit file FILENAME, possibly using a special command." t)
100
4be1180a9e89 Import from CVS: tag r20-1b2
cvs
parents: 70
diff changeset
358 (autoload 'hpath:find-other-frame "hsite"
4be1180a9e89 Import from CVS: tag r20-1b2
cvs
parents: 70
diff changeset
359 "Edit file FILENAME in other frame, possibly using a special command." t)
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
360 (autoload 'hpath:find-other-window "hsite"
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
361 "Edit file FILENAME in other window, possibly using a special command." t)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
362
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
363 ;;; Hyperbole entry points that trigger loading part of the system.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
364
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
365 (autoload 'hypb:functionp "hypb" "Return t iff OBJ is a function." nil)
100
4be1180a9e89 Import from CVS: tag r20-1b2
cvs
parents: 70
diff changeset
366 (autoload 'hypb:display-file-with-logo "hypb" "Display FILE with IDA logo." nil)
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
367
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
368 ;;; Hyperbole msg reader autoloads.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
369 (autoload 'Rmail-init "hrmail" "Initializes Hyperbole Rmail support." t)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
370 (autoload 'Mh-init "hmh" "Initializes Hyperbole Mh support." t)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
371 (autoload 'Vm-init "hvm" "Initializes Hyperbole Vm support." t)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
372 (autoload 'Pm-init "hpm" "Initializes Hyperbole PIEmail support." t)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
373 (autoload 'Gnus-init "hgnus" "Initializes Hyperbole Gnus support." t)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
374
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
375 ;;; Hyperbole msg composer autoloads.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
376 (autoload 'hmail:compose "hmail"
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
377 "Compose mail with ADDRESS and evaluation of EXPR." t)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
378 (autoload 'hmail:msg-narrow "hmail"
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
379 "Narrows buffer to displayable part of current message.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
380 Its displayable part begins at optional MSG-START and ends at or before MSG-END.")
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
381
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
382 ;;; Hyperbole outliner main entry points.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
383 (if (not hyperb:kotl-p)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
384 nil
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
385 (autoload 'kfile:find "kfile" "Edit an autonumbered outline." t)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
386 (autoload 'kfile:is-p "kfile" "Is an unformatted outline?" nil)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
387 (autoload 'kfile:view "kfile"
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
388 "View an autonumbered outline in read-only mode." t)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
389 (autoload 'kotl-mode "kfile" "Autonumbered outlining mode." t)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
390 ;;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
391 ;; Entry points from Hyperbole Otl/ menu.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
392 (autoload 'klink:create "klink" "Insert an implicit link at point." t)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
393 (autoload 'kotl-mode:is-p "kfile" "Test if within a Hyperbole outline.")
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
394 (autoload 'kotl-mode:hide-tree "kfile" "Hide sublevels of current tree." t)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
395 (autoload 'kotl-mode:overview "kfile" "Show first line of each cell." t)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
396 (autoload 'kotl-mode:show-all "kfile" "Expand all outline cells." t)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
397 (autoload 'kotl-mode:show-tree "kfile" "Expand current tree cells." t)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
398 (autoload 'kotl-mode:top-cells "kfile" "Hide all but top-level cells." t)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
399 ;;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
400 ;; Functions required from outline.el library.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
401 (autoload 'show-all "outline" "Show all of the text in the buffer." t)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
402 ;;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
403 (autoload 'kimport:file "kfile" "Import different file types." t)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
404 (autoload 'kimport:aug-post-outline "kfile" "Import Augment files." t)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
405 (autoload 'kimport:star-outline "kfile" "Import * outline files." t)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
406 (autoload 'kimport:text "kfile" "Import text or koutline files." t)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
407 )
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
408
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
409 ;;; Hyperbole rolodex main entry points.
114
8619ce7e4c50 Import from CVS: tag r20-1b9
cvs
parents: 100
diff changeset
410 (autoload 'rolo-add "wrolo" "Add an entry to rolodex" t)
8619ce7e4c50 Import from CVS: tag r20-1b9
cvs
parents: 100
diff changeset
411 (autoload 'rolo-display-matches "wrolo" "Redisplay previous rolodex matches" t)
8619ce7e4c50 Import from CVS: tag r20-1b9
cvs
parents: 100
diff changeset
412 (autoload 'rolo-edit "wrolo" "Edit an existing rolodex entry" t)
8619ce7e4c50 Import from CVS: tag r20-1b9
cvs
parents: 100
diff changeset
413 (autoload 'rolo-fgrep "wrolo" "Rolodex string search" t)
8619ce7e4c50 Import from CVS: tag r20-1b9
cvs
parents: 100
diff changeset
414 (autoload 'rolo-grep "wrolo" "Rolodex regexp search" t)
8619ce7e4c50 Import from CVS: tag r20-1b9
cvs
parents: 100
diff changeset
415 (autoload 'rolo-kill "wrolo" "Delete an existing rolodex entry" t)
8619ce7e4c50 Import from CVS: tag r20-1b9
cvs
parents: 100
diff changeset
416 (autoload 'rolo-logic "wrolo-logic" "Logical rolodex search filters." t)
8619ce7e4c50 Import from CVS: tag r20-1b9
cvs
parents: 100
diff changeset
417 (autoload 'rolo-sort "wrolo" "Sort rolodex entries" t)
8619ce7e4c50 Import from CVS: tag r20-1b9
cvs
parents: 100
diff changeset
418 (autoload 'rolo-toggle-datestamps "wrolo" "Toggle datestamp insertion." t)
8619ce7e4c50 Import from CVS: tag r20-1b9
cvs
parents: 100
diff changeset
419 (autoload 'rolo-word "wrolo" "Rolodex string search for a word" t)
8619ce7e4c50 Import from CVS: tag r20-1b9
cvs
parents: 100
diff changeset
420 (autoload 'rolo-yank "wrolo" "Insert a rolodex entry into current buffer" t)
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
421
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
422 ;;; Hyperbole Key autoloads.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
423 (autoload 'Info-handle-in-note "hmous-info"
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
424 "Follows Info documentation references.")
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
425 (autoload 'smart-info "hmous-info" "Follows Info documentation references." t)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
426 (autoload 'smart-info-assist "hmous-info"
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
427 "Follows Info documentation references." t)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
428 (autoload 'smart-asm-at-tag-p "hmouse-tag"
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
429 "Jumps to assembly identifier definitions.")
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
430 (autoload 'smart-c-at-tag-p "hmouse-tag" "Jumps to C identifier definitions.")
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
431 (autoload 'smart-lisp-mode-p "hmouse-tag"
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
432 "Jumps to Lisp identifier definitions.")
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
433 (autoload 'smart-c++ "hmouse-tag" "Jumps to C++ identifier definitions.")
100
4be1180a9e89 Import from CVS: tag r20-1b2
cvs
parents: 70
diff changeset
434 (autoload 'smart-fortran-at-tag-p "hmouse-tag" "Jumps to Fortran identifier definitions.")
4be1180a9e89 Import from CVS: tag r20-1b2
cvs
parents: 70
diff changeset
435 (autoload 'smart-java "hmouse-tag" "Jumps to Java identifier definitions.")
4be1180a9e89 Import from CVS: tag r20-1b2
cvs
parents: 70
diff changeset
436 (autoload 'smart-java-at-tag-p "hmouse-tag" "Jumps to Java identifier definitions.")
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
437 (autoload 'smart-objc "hmouse-tag" "Jumps to Objective-C identifier definitions.")
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
438 (autoload 'smart-tags-file "hmouse-tag" "Determines nearest etags file.")
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
439 (autoload 'smart-tags-file-path "hmouse-tag" "Expands a filename from TAGS file.")
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
440
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
441 ;;; Window configuration save and restore autoloads.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
442 (autoload 'wconfig-add-by-name "wconfig" "Save win config under name." t)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
443 (autoload 'wconfig-delete-by-name "wconfig" "Delete win config under name." t)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
444 (autoload 'wconfig-restore-by-name "wconfig" "Restore win config under name." t)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
445 (autoload 'wconfig-ring-save "wconfig" "Save window-config to ring." t)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
446 (autoload 'wconfig-yank-pop "wconfig" "Pop window-config from ring." t)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
447 (autoload 'wconfig-delete-pop "wconfig" "Delete window-config from ring." t)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
448
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
449 ;;; ************************************************************************
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
450 ;;; Auto mode file suffixes
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
451 ;;; ************************************************************************
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
452
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
453 ;;; Invoke kotl-mode for files ending in ".kotl". Also allow ".kot" for DOS
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
454 ;;; and Windows users.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
455 (if hyperb:kotl-p
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
456 (setq auto-mode-alist (cons '("\\.kotl$\\|\\.kot$" . kotl-mode)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
457 auto-mode-alist)))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
458
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
459 ;;; ************************************************************************
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
460 ;;; MESSAGE SYSTEM SUPPORT CONFIGURATION
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
461 ;;; ************************************************************************
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
462
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
463 ;;; Even if you don't need some of the following hook settings, you might
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
464 ;;; as well leave them in so that if they ever become useful to you, you
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
465 ;;; need not reconfigure Hyperbole. These settings do nothing if the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
466 ;;; corresponding subsystems are never invoked.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
467 ;;;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
468 ;;; GNUS USENET news reader/poster support.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
469 ;;;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
470 (var:append 'gnus-Startup-hook '(Gnus-init))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
471 ;;;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
472 ;;; Hyperbole mail reader support configuration.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
473 ;;;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
474 ;; Rmail
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
475 (var:append 'rmail-mode-hook '(Rmail-init))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
476 ;; Mh-e
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
477 (var:append 'mh-inc-folder-hook '(Mh-init))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
478 ;;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
479 ;; VM support is based on V5.72 beta of VM. If you have a version of VM
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
480 ;; earlier than 5.70 beta, you should either upgrade or comment out the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
481 ;; following line so that Hyperbole support for VM is not enabled.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
482 (var:append 'vm-mode-hooks '(Vm-init))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
483 ;;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
484 ;; PIEmail
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
485 (var:append 'pm-hook '(Pm-init))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
486 ;;;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
487 ;;; Hyperbole mail composer support configuration.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
488 ;;;
114
8619ce7e4c50 Import from CVS: tag r20-1b9
cvs
parents: 100
diff changeset
489 (var:append 'mail-mode-hook (list (function (lambda () (require 'hsmail)))))
8619ce7e4c50 Import from CVS: tag r20-1b9
cvs
parents: 100
diff changeset
490 (var:append 'mh-letter-mode-hook (list (function (lambda () (require 'hsmail)))))
8619ce7e4c50 Import from CVS: tag r20-1b9
cvs
parents: 100
diff changeset
491 (var:append 'vm-mail-mode-hook (list (function (lambda () (require 'hsmail)))))
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
492
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
493 ;;; ************************************************************************
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
494 ;;; Frame function aliases.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
495 ;;; ************************************************************************
114
8619ce7e4c50 Import from CVS: tag r20-1b9
cvs
parents: 100
diff changeset
496 ;; Create all needed `frame-' aliases for all `screen-' functions, e.g.
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
497 ;; screen-width.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
498 (if (fboundp 'selected-frame)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
499 nil
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
500 (fset 'selected-frame 'selected-screen)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
501 (mapcar
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
502 (function (lambda (func-name)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
503 (or (fboundp (intern-soft (concat "frame" func-name)))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
504 (fset (intern (concat "frame" func-name))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
505 (intern-soft (concat "screen" func-name))))))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
506 '("-width" "-height")))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
507
100
4be1180a9e89 Import from CVS: tag r20-1b2
cvs
parents: 70
diff changeset
508 ;;; ************************************************************************
4be1180a9e89 Import from CVS: tag r20-1b2
cvs
parents: 70
diff changeset
509 ;;; Register Hyperbole Package
4be1180a9e89 Import from CVS: tag r20-1b2
cvs
parents: 70
diff changeset
510 ;;; ************************************************************************
4be1180a9e89 Import from CVS: tag r20-1b2
cvs
parents: 70
diff changeset
511
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
512 (provide 'hyperbole)