annotate lisp/hyperbole/hsite.el @ 90:99da576a67e7 xemacs-20-0

Import from CVS: tag xemacs-20-0
author cvs
date Mon, 13 Aug 2007 09:10:46 +0200
parents 376386a54a3c
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 ;; FILE: hsite.el
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4 ;; SUMMARY: Site-specific setup for Hyperbole
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5 ;; USAGE: GNU Emacs Lisp Library
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6 ;; KEYWORDS: hypermedia, local
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
7 ;;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
8 ;; AUTHOR: Bob Weiner
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
9 ;; ORG: Brown U.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
10 ;;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
11 ;; ORIG-DATE: 15-Apr-91 at 00:48:49
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
12 ;; LAST-MOD: 3-Nov-95 at 22:51:43 by Bob Weiner
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
13 ;;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
14 ;; This file is part of Hyperbole.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
15 ;; Available for use and distribution under the same terms as GNU Emacs.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
16 ;;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
17 ;; Copyright (C) 1991-1995, Free Software Foundation, Inc.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
18 ;; Developed with support from Motorola Inc.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
19 ;;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
20 ;; DESCRIPTION:
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
21 ;;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
22 ;; See the "README" file for installation instructions.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
23 ;;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
24 ;; "hsite.el" may be byte-compiled if you like but normally it is not.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
25 ;;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
26 ;; Be sure to have users load any personal mail/news initializations
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
27 ;; before they load this file if any of Hyperbole's mail or news
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
28 ;; support features are enabled either herein or within their personal
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
29 ;; Hyperbole initializations. Otherwise, the mail/news support may
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
30 ;; not be configured properly.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
31 ;;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
32 ;; DESCRIP-END.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
33
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
34 ;;; ************************************************************************
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
35 ;;; Read the comments and modify as desired.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
36 ;;; ************************************************************************
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
37
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
38 (message "Initializing Hyperbole, please wait...")
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
39
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
40 ;;; ************************************************************************
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
41 ;;; SMART SETTINGS
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
42 ;;; ************************************************************************
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
43
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
44 (defvar hkey-always-display-menu nil
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
45 "*Non-nil means always display the Smart Menu window when the Action or Assist Key is pressed and the Smart Menu system has been loaded.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
46 If a Smart Menu is already displayed, perform another Action or Assist Key
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
47 function.")
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
48
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
49 (defvar smart-scroll-proportional t
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
50 "*Non-nil means Smart Keys should scroll relative to current line when pressed at the end of a line.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
51 Action Key moves current line to top of window. Assist Key moves current
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
52 line to bottom of window. Repeated presses then scroll up or down a
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
53 windowful. Nil value instead ignores current line and always scrolls up or
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
54 down a windowful.")
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
55
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
56 ;;; ************************************************************************
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
57 ;;; HYPERBOLE DIRECTORY SETTING
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 (require 'hyperbole)
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 ;;; INTERNET SETTINGS
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
64 ;;; ************************************************************************
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
65
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
66 ;; String to be used in the call: (hpath:rfc rfc-num) to create an ange-ftp
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
67 ;; path to the RFC document for 'rfc-num'. Uncomment and alter this setting
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
68 ;; if another site is closer for you.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
69 ;; (setq hpath:rfc "/anonymous@ds.internic.net:rfc/rfc%s.txt")
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
70
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
71 ;; When a user creates an explicit button, Hyperbole tries to store her
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
72 ;; Internet e-mail address with the button by using the formula, email-id =
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
73 ;; <user-id>@<domainname>. Not every system has its domainname set
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
74 ;; up properly, however. If you do a {M-x load-file hypb.elc RET} and then
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
75 ;; hit {C-x C-e} after the closing paren of the following function,
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
76 ;; (hypb:domain-name), you will see whether or not yours is configured
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
77 ;; properly. If it is not, uncomment the following line and set it to the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
78 ;; proper value.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
79
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
80 ;; (setenv "DOMAINNAME" "mot.com")
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
81
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
82 ;;; ************************************************************************
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
83 ;;; XEMACS, GNU EMACS 19, AND EPOCH CONFIGURATION
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
84 ;;; ************************************************************************
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
85
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
86 ;; No-op unless set by one of the conditionals below.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
87 (defun hui:but-flash ())
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
88
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
89 (if (and hyperb:emacs19-p window-system)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
90 (progn
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
91 (require 'hui-em19-b)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
92 ;; Highlight explicit buttons whenever a file is read in.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
93 (var:append 'find-file-hooks '(hproperty:but-create))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
94 (fset 'hui:but-flash 'hproperty:but-flash)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
95 ;;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
96 ;; Substitute for the nil argument below a valid X color name with
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
97 ;; which to highlight buttons if the default highlighting does not
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
98 ;; appeal to you. See "hui-em19-b.el" for how this works.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
99 (hproperty:cycle-but-color nil)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
100 ;;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
101 ;; Non-nil means visually emphasize that button under mouse cursor is
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
102 ;; selectable.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
103 (setq hproperty:but-emphasize-p nil)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
104 ;;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
105 ;; If you find that the Hyperbole button flash time is too slow
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
106 ;; or too fast, adjust it here.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
107 (setq hproperty:but-flash-time 1000)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
108 ))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
109
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
110 (if (and hyperb:lemacs-p (not noninteractive))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
111 (progn
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
112 (require 'hui-xe-but)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
113 ;;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
114 ;; If running XEmacs 19.8 or below, don't highlight explicit buttons
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
115 ;; whenever a file is read in since this can cause a sporadic crash
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
116 ;; when find-files are done.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
117 (if hyperb:kotl-p (var:append 'find-file-hooks '(hproperty:but-create)))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
118 (fset 'hui:but-flash 'hproperty:but-flash)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
119 ;;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
120 ;; Substitute for the nil argument below a valid X color name with
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
121 ;; which to highlight buttons if the default highlighting does not
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
122 ;; appeal to you. See "hui-xe-but.el" for how this works.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
123 (hproperty:cycle-but-color nil)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
124 ;;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
125 ;; Non-nil means visually emphasize that button under mouse cursor is
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
126 ;; selectable.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
127 (setq hproperty:but-emphasize-p nil)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
128 ;;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
129 ;; If you find that the Hyperbole button flash time is too slow
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
130 ;; or too fast, adjust it here.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
131 (setq hproperty:but-flash-time 1000)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
132 ))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
133
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
134 (if (and hyperb:epoch-p (string= hyperb:epoch-p "V4"))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
135 (progn
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
136 (require 'hui-epV4-b)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
137 ;; Highlight explicit buttons whenever a file is read in.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
138 (var:append 'find-file-hooks '(hproperty:but-create))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
139 (fset 'hui:but-flash 'hproperty:but-flash)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
140 ;; Substitute for the nil argument below a valid X color name with
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
141 ;; which to highlight buttons if the default highlighting does not
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
142 ;; appeal to you. See "hui-epV4-b.el" for how this works.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
143 (hproperty:cycle-but-color nil)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
144 ;; If you use Epoch and find that the Hyperbole button flash time is
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
145 ;; too slow or too fast, adjust it here.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
146 (defvar hproperty:but-flash-time 1000
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
147 "Machine specific value for empty loop counter, Epoch but flash delay.")
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 ;;; ************************************************************************
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
151 ;;; EXTERNAL SYSTEM ENCAPSULATIONS
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
152 ;;; ************************************************************************
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
153
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
154 ;;; Support for encapsulations of any of these external systems may be
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
155 ;;; enabled here. You should be familiar with the external system before
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
156 ;;; you try to use the Hyperbole support for it.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
157 ;;; Possible system encapsulations to include within the innermost set of
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
158 ;;; parentheses are:
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
159 ;;; hsys-wais hsys-hbase
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
160 ;;; See files with the same name, e.g. "hsys-wais.el" for details on each
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
161 ;;; system.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
162 ;;;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
163 ;;; Note: hsys-w3 is automatically loaded by default by Hyperbole.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
164 (setq hibtypes:begin-load-hook
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
165 (list (function (lambda () (mapcar 'require '())))))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
166
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
167 ;;; ************************************************************************
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
168 ;;; ONLINE LIBRARY CONFIGURATION
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 ;;; Support for online library document id references is loaded here but
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
172 ;;; requires some additional configuration before use. See the DESCRIPTION
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
173 ;;; section in "hib-doc-id.el" for complete installation and use information.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
174 ;;;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
175 (setq hibtypes:end-load-hook
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
176 (list (function (lambda () (mapcar 'require '(hib-doc-id))))))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
177
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
178 ;;; ************************************************************************
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
179 ;;; HYPERBOLE INITIALIZATION
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
180 ;;; ************************************************************************
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
181
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
182 ;;; This call loads the whole Hyperbole system.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
183 ;;; You may want to look at this file just to see what it does.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
184 ;;;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
185 (require 'hinit)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
186 ;;;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
187 ;;; This call initializes the Hyperbole system for use.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
188 ;;;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
189 (hyperb:init)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
190
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
191 ;;; ************************************************************************
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
192 ;;; FILE VIEWER COMMAND SETTINGS
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
193 ;;; ************************************************************************
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
194
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
195 (defvar hpath:display-alist
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
196 (let ((info-suffix "\\.info\\(-[0-9]+\\)?\\(\\.gz\\|\\.Z\\|-z\\)?$"))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
197 (list
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
198 ;; Run the OO-Browser on OOBR or OOBR-FTR Environment files.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
199 '("OOBR\\(-FTR\\)?$" . br-env-browse)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
200 ;; Display the top node from Info online manuals.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
201 (cons
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
202 (concat (` (, info-suffix)) "\\|/info/[^.]+$\\|/info-local/[^.]+$")
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
203 (` (lambda (file)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
204 (if (and (string-match (, info-suffix) file)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
205 (match-beginning 1))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
206 ;; Removed numbered trailer to get basic filename.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
207 (setq file (concat (substring file 0 (match-beginning 1))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
208 (substring file (match-end 1)))))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
209 (require 'info)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
210 (condition-case ()
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
211 (Info-find-node file "Top")
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
212 (error (if (and file (file-exists-p file))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
213 (progn
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
214 (if (get-buffer "*info*")
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
215 (kill-buffer "*info*"))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
216 (Info-find-node file "*" nil t))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
217 (error "Invalid file")))))))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
218 ))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
219 "*Alist of (FILENAME-REGEXP . EDIT-FUNCTION) elements for calling special
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
220 functions to display particular file types within Emacs. See also
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
221 'hpath:file-alist' for external display program settings.")
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
222
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
223 ;;; `hyperb:window-system' variable from "hversion.el" must be defined
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
224 ;;; prior to this variable definition.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
225 ;;;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
226 (defvar hpath:find-alist
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
227 (let ((nextstep-suffixes '(("\\.\\(adaptor\\|app\\|bshlf\\|clr\\|concur\\|create\\|diagram\\|dp\\|e?ps\\|frame\\|gif\\|locus\\|Mesa\\|nib\\|project\\|rtf\\|sense\\|tiff\\|tree\\)$" . "open")))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
228 (x-suffixes '(("\\.e?ps$" . "ghostview")
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
229 ("\\.ps\\.g?[zZ]$" . "zcat %s | ghostview -")
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
230 ("\\.\\(gif\\|tiff?\\|xbm\\|pm\\|pbm\\|jpe?g\\)" . "xv")
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
231 ("\\.xwd$" . "xwud -noclick -in")
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
232 ("\\.ra?s$" . "snapshot -l")
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
233 ("\\.xpm$" . "sxpm")
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
234 ("\\.\\(fm\\|frame\\|mif\\)$" . "maker")
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
235 ("\\.\\(doc\\|boo\\)$" . "ileaf")
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
236 )))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
237 (if (memq window-system '(dps ns))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
238 nextstep-suffixes
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
239 (cdr (assoc hyperb:window-system
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
240 (list (cons "emacs19" x-suffixes) ; GNU Emacs V19 under X
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
241 (cons "lemacs" x-suffixes) ; XEmacs under X
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
242 (cons "xterm" x-suffixes) ; GNU Emacs V18 under X
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
243 (cons "epoch" x-suffixes) ; UofI Epoch under X
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
244 '("sun" . nil) ; SunView
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
245 (cons "next" nextstep-suffixes)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
246 '("apollo" . nil) ; Display Manager
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
247 )))))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
248 "*Alist of (FILENAME-REGEXP . EDIT-PROGRAM) elements for using window system
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
249 dependent external programs to edit/display particular file types. See also
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
250 'hpath:display-alist' for internal, window-system independent display
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
251 settings.")
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
252
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
253 ;;; ************************************************************************
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
254 ;;; LINK PATH VARIABLE SUBSTITUTION SETTINGS
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
255 ;;; ************************************************************************
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
256
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
257 ;;; The following variable permits sharing of links over wide areas, where
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
258 ;;; links may contain variable references whose values may differ between
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
259 ;;; link creator and link activator.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
260 ;;;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
261 ;;; When a link is created, if its path contains a match for any of the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
262 ;;; variable values in hpath:variables, then the variable's symbol is
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
263 ;;; substituted for the literal value. Hyperbole then replaces the variable
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
264 ;;; with a matching value when the link is resolved.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
265 ;;;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
266 (defvar hpath:variables
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
267 '(hyperb:dir Info-directory Info-directory-list sm-directory load-path exec-path)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
268 "*List of Emacs Lisp variable symbols to substitute within matching link paths.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
269 Each variable value, if bound, must be either a pathname or a list of pathnames.")
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
270
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
271 ;;; ************************************************************************
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
272 ;;; HYPERBOLE LOCAL VARIABLE SUPPORT
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
273 ;;; ************************************************************************
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
274
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
275 ;;; Uncomment this if you really need to be able to use Hyperbole variables
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
276 ;;; (and others with colons in their names) within file local variable lists.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
277 ;;; See the source file for more details.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
278 ;;;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
279 ;; (require 'hlvar)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
280
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
281 ;;; ************************************************************************
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
282 ;;; SITE-SPECIFIC ADDITIONS - Add your Hyperbole configuration additions here.
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 ;;; ************************************************************************
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
286 ;;; END OF HYPERBOLE CONFIGURATION
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
287 ;;; ************************************************************************
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
288
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
289 (provide 'hsite)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
290
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
291 (message "Hyperbole is ready for action.")