comparison lisp/hyperbole/hsite-ex.el @ 24:4103f0995bd7 r19-15b95

Import from CVS: tag r19-15b95
author cvs
date Mon, 13 Aug 2007 08:51:03 +0200
parents 376386a54a3c
children e04119814345
comparison
equal deleted inserted replaced
23:0edd3412f124 24:4103f0995bd7
4 ;; SUMMARY: Site-specific setup for Hyperbole 4 ;; SUMMARY: Site-specific setup for Hyperbole
5 ;; USAGE: GNU Emacs Lisp Library 5 ;; USAGE: GNU Emacs Lisp Library
6 ;; KEYWORDS: hypermedia, local 6 ;; KEYWORDS: hypermedia, local
7 ;; 7 ;;
8 ;; AUTHOR: Bob Weiner 8 ;; AUTHOR: Bob Weiner
9 ;; ORG: Brown U. 9 ;; ORG: InfoDock Associates
10 ;; 10 ;;
11 ;; ORIG-DATE: 15-Apr-91 at 00:48:49 11 ;; ORIG-DATE: 15-Apr-91 at 00:48:49
12 ;; LAST-MOD: 3-Nov-95 at 22:51:43 by Bob Weiner 12 ;; LAST-MOD: 17-Feb-97 at 18:34:17 by Bob Weiner
13 ;; 13 ;;
14 ;; This file is part of Hyperbole. 14 ;; This file is part of Hyperbole.
15 ;; Available for use and distribution under the same terms as GNU Emacs. 15 ;; Available for use and distribution under the same terms as GNU Emacs.
16 ;; 16 ;;
17 ;; Copyright (C) 1991-1995, Free Software Foundation, Inc. 17 ;; Copyright (C) 1991-1997, Free Software Foundation, Inc.
18 ;; Developed with support from Motorola Inc. 18 ;; Developed with support from Motorola Inc.
19 ;; 19 ;;
20 ;; DESCRIPTION: 20 ;; DESCRIPTION:
21 ;; 21 ;;
22 ;; See the "README" file for installation instructions. 22 ;; See the "README" file for installation instructions.
34 ;;; ************************************************************************ 34 ;;; ************************************************************************
35 ;;; Read the comments and modify as desired. 35 ;;; Read the comments and modify as desired.
36 ;;; ************************************************************************ 36 ;;; ************************************************************************
37 37
38 (message "Initializing Hyperbole, please wait...") 38 (message "Initializing Hyperbole, please wait...")
39
40 ;;; ************************************************************************
41 ;;; TIMEZONE SETTING
42 ;;; ************************************************************************
43
44 ;; The following section applies only to MS-DOS and MS-Windows OSs.
45 ;; For such OSs, you must configure this section or you will receive
46 ;; an error when starting Hyperbole. Users of other OSs may simply
47 ;; ignore this section.
48
49
50 ;; Microcruft OSs don't provide an automatically set timezone environment
51 ;; variable. Nor do they include a UNIX-style date program. So follow
52 ;; the commented instructions in the code below here.
53
54 ;; If you happened to have installed a UNIX-style date program (when you type
55 ;; `date' at a shell, it simply spits out the date and time and then quits),
56 ;; you may comment out the logic.
57 ;;
58 (if (and hyperb:microcruft-os-p
59 (not (or (getenv "TZ") (getenv "TIMEZONE"))))
60 (progn
61 ;; Comment out the following `error' line...
62 (error "(hsite.el): Configure the TIMEZONE SETTING section in this file.")
63 ;; ... and uncomment the following line, substituting an appropriate
64 ;; timezone from the list in the variable, `htz:world-timezones'
65 ;; in the file, "htz.el".
66 ;; (setenv "TZ" "your-3char-timezone")
67 ))
39 68
40 ;;; ************************************************************************ 69 ;;; ************************************************************************
41 ;;; SMART SETTINGS 70 ;;; SMART SETTINGS
42 ;;; ************************************************************************ 71 ;;; ************************************************************************
43 72
61 90
62 ;;; ************************************************************************ 91 ;;; ************************************************************************
63 ;;; INTERNET SETTINGS 92 ;;; INTERNET SETTINGS
64 ;;; ************************************************************************ 93 ;;; ************************************************************************
65 94
66 ;; String to be used in the call: (hpath:rfc rfc-num) to create an ange-ftp 95 ;; String to be used in the call: (hpath:rfc rfc-num) to create a remote
67 ;; path to the RFC document for 'rfc-num'. Uncomment and alter this setting 96 ;; path to the RFC document for `rfc-num'. Uncomment and alter this setting
68 ;; if another site is closer for you. 97 ;; if another site is closer for you.
69 ;; (setq hpath:rfc "/anonymous@ds.internic.net:rfc/rfc%s.txt") 98 ;; (setq hpath:rfc "/anonymous@ds.internic.net:rfc/rfc%s.txt")
70 99
71 ;; When a user creates an explicit button, Hyperbole tries to store her 100 ;; When a user creates an explicit button, Hyperbole tries to store her
72 ;; Internet e-mail address with the button by using the formula, email-id = 101 ;; Internet e-mail address with the button by using the formula, email-id =
75 ;; hit {C-x C-e} after the closing paren of the following function, 104 ;; hit {C-x C-e} after the closing paren of the following function,
76 ;; (hypb:domain-name), you will see whether or not yours is configured 105 ;; (hypb:domain-name), you will see whether or not yours is configured
77 ;; properly. If it is not, uncomment the following line and set it to the 106 ;; properly. If it is not, uncomment the following line and set it to the
78 ;; proper value. 107 ;; proper value.
79 108
80 ;; (setenv "DOMAINNAME" "mot.com") 109 ;; (setenv "DOMAINNAME" "yourdomain.com")
81 110
82 ;;; ************************************************************************ 111 ;;; ************************************************************************
83 ;;; XEMACS, GNU EMACS 19, AND EPOCH CONFIGURATION 112 ;;; XEMACS, GNU EMACS 19, AND EPOCH CONFIGURATION
84 ;;; ************************************************************************ 113 ;;; ************************************************************************
85 114
172 ;;; requires some additional configuration before use. See the DESCRIPTION 201 ;;; requires some additional configuration before use. See the DESCRIPTION
173 ;;; section in "hib-doc-id.el" for complete installation and use information. 202 ;;; section in "hib-doc-id.el" for complete installation and use information.
174 ;;; 203 ;;;
175 (setq hibtypes:end-load-hook 204 (setq hibtypes:end-load-hook
176 (list (function (lambda () (mapcar 'require '(hib-doc-id)))))) 205 (list (function (lambda () (mapcar 'require '(hib-doc-id))))))
177
178 ;;; ************************************************************************
179 ;;; HYPERBOLE INITIALIZATION
180 ;;; ************************************************************************
181
182 ;;; This call loads the whole Hyperbole system.
183 ;;; You may want to look at this file just to see what it does.
184 ;;;
185 (require 'hinit)
186 ;;;
187 ;;; This call initializes the Hyperbole system for use.
188 ;;;
189 (hyperb:init)
190 206
191 ;;; ************************************************************************ 207 ;;; ************************************************************************
192 ;;; FILE VIEWER COMMAND SETTINGS 208 ;;; FILE VIEWER COMMAND SETTINGS
193 ;;; ************************************************************************ 209 ;;; ************************************************************************
194 210
216 (Info-find-node file "*" nil t)) 232 (Info-find-node file "*" nil t))
217 (error "Invalid file"))))))) 233 (error "Invalid file")))))))
218 )) 234 ))
219 "*Alist of (FILENAME-REGEXP . EDIT-FUNCTION) elements for calling special 235 "*Alist of (FILENAME-REGEXP . EDIT-FUNCTION) elements for calling special
220 functions to display particular file types within Emacs. See also 236 functions to display particular file types within Emacs. See also
221 'hpath:file-alist' for external display program settings.") 237 `hpath:file-alist' for external display program settings.")
238
239 (defvar hpath:display-buffer-alist
240 (list
241 (list 'this-window 'switch-to-buffer)
242 (list 'other-window (function (lambda (b)
243 (if (br-in-browser)
244 (progn (br-to-view-window)
245 (switch-to-buffer b))
246 (switch-to-buffer-other-window b)))))
247 (list 'one-window (function (lambda (b)
248 (if (br-in-browser) (br-quit))
249 (delete-other-windows)
250 (switch-to-buffer b))))
251 (list 'new-frame (function (lambda (b)
252 (select-frame (make-frame))
253 (switch-to-buffer b))))
254 (list 'other-frame 'hpath:display-buffer-other-frame)
255 (list 'other-frame-one-window
256 (function (lambda (b)
257 (hpath:display-buffer-other-frame b)
258 (delete-other-windows)))))
259 "*Alist of (DISPLAY-WHERE-SYMBOL DISPLAY-BUFFER-FUNCTION) elements.
260 This permits fine-grained control of where Hyperbole displays linked to buffers.
261 The default value of DISPLAY-WHERE-SYMBOL is given by `hpath:display-where'.
262 Valid DISPLAY-WHERE-SYMBOLs are:
263 this-window - display in the current window
264 other-window - display in another window in the current frame
265 one-window - display in the current window, deleting other windows
266 new-frame - display in a new frame
267 other-frame - display in another, possibly existing, frame
268 other-frame-one-window - display in another frame, deleting other windows.")
269
270 (defvar hpath:display-where 'other-window
271 "Symbol specifying the default method to use to display Hyperbole link referents.
272 See documentation of `hpath:display-where-alist' for valid values.")
273
274 (defvar hpath:display-where-alist
275 (list
276 (list 'this-window 'find-file)
277 (list 'other-window (function (lambda (f)
278 (if (br-in-browser)
279 (progn (br-to-view-window)
280 (find-file f))
281 (find-file-other-window f)))))
282 (list 'one-window (function (lambda (f)
283 (if (br-in-browser) (br-quit))
284 (delete-other-windows) (find-file f))))
285 (list 'new-frame 'find-file-new-frame)
286 (list 'other-frame 'hpath:find-other-frame)
287 (list 'other-frame-one-window
288 (function (lambda (f) (hpath:find-other-frame f) (delete-other-windows)))))
289 "*Alist of (DISPLAY-WHERE-SYMBOL DISPLAY-FILE-FUNCTION) elements.
290 This permits fine-grained control of where Hyperbole displays linked to files.
291 The default value of DISPLAY-WHERE-SYMBOL is given by `hpath:display-where'.
292 Valid DISPLAY-WHERE-SYMBOLs are:
293 this-window - display in the current window
294 other-window - display in another window in the current frame
295 one-window - display in the current window, deleting other windows
296 new-frame - display in a new frame
297 other-frame - display in another, possibly existing, frame
298 other-frame-one-window - display in another frame, deleting other windows.")
222 299
223 ;;; `hyperb:window-system' variable from "hversion.el" must be defined 300 ;;; `hyperb:window-system' variable from "hversion.el" must be defined
224 ;;; prior to this variable definition. 301 ;;; prior to this variable definition.
225 ;;; 302 ;;;
226 (defvar hpath:find-alist 303 (defvar hpath:find-alist
229 ("\\.ps\\.g?[zZ]$" . "zcat %s | ghostview -") 306 ("\\.ps\\.g?[zZ]$" . "zcat %s | ghostview -")
230 ("\\.\\(gif\\|tiff?\\|xbm\\|pm\\|pbm\\|jpe?g\\)" . "xv") 307 ("\\.\\(gif\\|tiff?\\|xbm\\|pm\\|pbm\\|jpe?g\\)" . "xv")
231 ("\\.xwd$" . "xwud -noclick -in") 308 ("\\.xwd$" . "xwud -noclick -in")
232 ("\\.ra?s$" . "snapshot -l") 309 ("\\.ra?s$" . "snapshot -l")
233 ("\\.xpm$" . "sxpm") 310 ("\\.xpm$" . "sxpm")
234 ("\\.\\(fm\\|frame\\|mif\\)$" . "maker") 311 ("\\.\\(fm\\|frame\\|mif\\)$" .
312 "frame.pl -vn -preader -c -f%s") ;; was "msgfm_driver"
235 ("\\.\\(doc\\|boo\\)$" . "ileaf") 313 ("\\.\\(doc\\|boo\\)$" . "ileaf")
236 ))) 314 )))
237 (if (memq window-system '(dps ns)) 315 (if (memq window-system '(dps ns))
238 nextstep-suffixes 316 nextstep-suffixes
239 (cdr (assoc hyperb:window-system 317 (cdr (assoc hyperb:window-system
245 (cons "next" nextstep-suffixes) 323 (cons "next" nextstep-suffixes)
246 '("apollo" . nil) ; Display Manager 324 '("apollo" . nil) ; Display Manager
247 ))))) 325 )))))
248 "*Alist of (FILENAME-REGEXP . EDIT-PROGRAM) elements for using window system 326 "*Alist of (FILENAME-REGEXP . EDIT-PROGRAM) elements for using window system
249 dependent external programs to edit/display particular file types. See also 327 dependent external programs to edit/display particular file types. See also
250 'hpath:display-alist' for internal, window-system independent display 328 `hpath:display-alist' for internal, window-system independent display
251 settings.") 329 settings.")
252 330
253 ;;; ************************************************************************ 331 ;;; ************************************************************************
254 ;;; LINK PATH VARIABLE SUBSTITUTION SETTINGS 332 ;;; LINK PATH VARIABLE SUBSTITUTION SETTINGS
255 ;;; ************************************************************************ 333 ;;; ************************************************************************
267 '(hyperb:dir Info-directory Info-directory-list sm-directory load-path exec-path) 345 '(hyperb:dir Info-directory Info-directory-list sm-directory load-path exec-path)
268 "*List of Emacs Lisp variable symbols to substitute within matching link paths. 346 "*List of Emacs Lisp variable symbols to substitute within matching link paths.
269 Each variable value, if bound, must be either a pathname or a list of pathnames.") 347 Each variable value, if bound, must be either a pathname or a list of pathnames.")
270 348
271 ;;; ************************************************************************ 349 ;;; ************************************************************************
350 ;;; HYPERBOLE INITIALIZATION
351 ;;; ************************************************************************
352
353 ;;; This call loads the whole Hyperbole system.
354 ;;; You may want to look at this file just to see what it does.
355 ;;;
356 (require 'hinit)
357 ;;;
358 ;;; This call initializes the Hyperbole system for use.
359 ;;;
360 (hyperb:init)
361
362 ;;; ************************************************************************
272 ;;; HYPERBOLE LOCAL VARIABLE SUPPORT 363 ;;; HYPERBOLE LOCAL VARIABLE SUPPORT
273 ;;; ************************************************************************ 364 ;;; ************************************************************************
274 365
275 ;;; Uncomment this if you really need to be able to use Hyperbole variables 366 ;;; Uncomment this if you really need to be able to use Hyperbole variables
276 ;;; (and others with colons in their names) within file local variable lists. 367 ;;; (and others with colons in their names) within file local variable lists.