comparison lisp/info.el @ 17430:de68258fef5f

Add defgroup; use defcustom for user vars.
author Richard M. Stallman <rms@gnu.org>
date Sun, 13 Apr 1997 03:09:23 +0000
parents 01faa9b0043e
children 27d5828e6c50
comparison
equal deleted inserted replaced
17429:5eb28dcbdb71 17430:de68258fef5f
27 27
28 ;; Note that nowadays we expect info files to be made using makeinfo. 28 ;; Note that nowadays we expect info files to be made using makeinfo.
29 29
30 ;;; Code: 30 ;;; Code:
31 31
32 (defgroup info nil
33 "Info subsystem"
34 :group 'help
35 :group 'docs)
36
37
32 (defvar Info-history nil 38 (defvar Info-history nil
33 "List of info nodes user has visited. 39 "List of info nodes user has visited.
34 Each element of list is a list (FILENAME NODENAME BUFFERPOS).") 40 Each element of list is a list (FILENAME NODENAME BUFFERPOS).")
35 41
36 (defvar Info-enable-edit nil 42 (defcustom Info-enable-edit nil
37 "*Non-nil means the \\<Info-mode-map>\\[Info-edit] command in Info can edit the current node. 43 "*Non-nil means the \\<Info-mode-map>\\[Info-edit] command in Info can edit the current node.
38 This is convenient if you want to write info files by hand. 44 This is convenient if you want to write info files by hand.
39 However, we recommend that you not do this. 45 However, we recommend that you not do this.
40 It is better to write a Texinfo file and generate the Info file from that, 46 It is better to write a Texinfo file and generate the Info file from that,
41 because that gives you a printed manual as well.") 47 because that gives you a printed manual as well."
48 :type 'boolean
49 :group 'info)
42 50
43 (defvar Info-enable-active-nodes nil 51 (defvar Info-enable-active-nodes nil
44 "Non-nil allows Info to execute Lisp code associated with nodes. 52 "Non-nil allows Info to execute Lisp code associated with nodes.
45 The Lisp code is executed when the node is selected.") 53 The Lisp code is executed when the node is selected.")
46 (put 'Info-enable-active-nodes 'risky-local-variable t) 54 (put 'Info-enable-active-nodes 'risky-local-variable t)
47 55
48 (defvar Info-fontify t 56 (defcustom Info-fontify t
49 "*Non-nil enables highlighting and fonts in Info nodes.") 57 "*Non-nil enables highlighting and fonts in Info nodes."
50 58 :type 'boolean
51 (defvar Info-fontify-maximum-menu-size 30000 59 :group 'info)
52 "*Maximum size of menu to fontify if `Info-fontify' is non-nil.") 60
61 (defcustom Info-fontify-maximum-menu-size 30000
62 "*Maximum size of menu to fontify if `Info-fontify' is non-nil."
63 :type 'integer
64 :group 'info)
53 65
54 (defvar Info-directory-list 66 (defvar Info-directory-list
55 (let ((path (getenv "INFOPATH")) 67 (let ((path (getenv "INFOPATH"))
56 ;; This is for older Emacs versions 68 ;; This is for older Emacs versions
57 ;; which might get this info.el from the Texinfo distribution. 69 ;; which might get this info.el from the Texinfo distribution.
97 If you run the Emacs executable from the `src' directory in the Emacs 109 If you run the Emacs executable from the `src' directory in the Emacs
98 source tree, the `info' directory in the source tree is used as the last 110 source tree, the `info' directory in the source tree is used as the last
99 element, in place of the installation Info directory. This is useful 111 element, in place of the installation Info directory. This is useful
100 when you run a version of Emacs without installing it.") 112 when you run a version of Emacs without installing it.")
101 113
102 (defvar Info-additional-directory-list nil 114 (defcustom Info-additional-directory-list nil
103 "List of additional directories to search for Info documentation files. 115 "List of additional directories to search for Info documentation files.
104 These directories are not searched for merging the `dir' file.") 116 These directories are not searched for merging the `dir' file."
117 :type '(repeat directory)
118 :group 'info)
105 119
106 (defvar Info-current-file nil 120 (defvar Info-current-file nil
107 "Info file that Info is now looking at, or nil. 121 "Info file that Info is now looking at, or nil.
108 This is the name that was specified in Info, not the actual file name. 122 This is the name that was specified in Info, not the actual file name.
109 It doesn't contain directory names or file name extensions added by Info.") 123 It doesn't contain directory names or file name extensions added by Info.")
1934 (Info-goto-emacs-command-node 1948 (Info-goto-emacs-command-node
1935 (read-command "Find documentation for command: "))) 1949 (read-command "Find documentation for command: ")))
1936 (t 1950 (t
1937 (Info-goto-emacs-command-node command))))) 1951 (Info-goto-emacs-command-node command)))))
1938 1952
1939 (defvar Info-title-face-alist 1953 (defcustom Info-title-face-alist
1940 '((?* bold underline) 1954 '((?* bold underline)
1941 (?= bold-italic underline) 1955 (?= bold-italic underline)
1942 (?- italic underline)) 1956 (?- italic underline))
1943 "*Alist of face or list of faces to use for pseudo-underlined titles. 1957 "*Alist of face or list of faces to use for pseudo-underlined titles.
1944 The alist key is the character the title is underlined with (?*, ?= or ?-).") 1958 The alist key is the character the title is underlined with (?*, ?= or ?-)."
1959 :type '(repeat (list character face face))
1960 :group 'info)
1945 1961
1946 (defun Info-fontify-node () 1962 (defun Info-fontify-node ()
1947 (save-excursion 1963 (save-excursion
1948 (let ((buffer-read-only nil)) 1964 (let ((buffer-read-only nil))
1949 (goto-char (point-min)) 1965 (goto-char (point-min))