;ELC ;;; compiled by kwzh@hal.gnu.ai.mit.edu on Tue May 2 20:22:04 1995 ;;; from file /gd/gnu/emacs/19.0/lisp/docref.el ;;; emacs version 19.28.90.69. ;;; bytecomp version FSF 2.10 ;;; optimization is on. ;;; this file uses opcodes which do not exist in Emacs 18. (if (and (boundp 'emacs-version) (or (and (boundp 'epoch::version) epoch::version) (string-lessp emacs-version "19"))) (error "`/gd/gnu/emacs/19.0/lisp/docref.el' was compiled for Emacs 19")) #@235 *If non-nil, \(f@docref-subst) highlights cross-references. Under window system it highlights them with face defined by \(v@docref-highlight-face), on character terminal highlighted references look like cross-references in info mode. (defvar docref-highlight-p t (#$ . -482)) #@70 *Face used to highlight cross-references (used by \(f@docref-subst)) (defvar docref-highlight-face (quote highlight) (#$ . -764)) #@250 Alist which maps cross-reference ``types'' to retrieval functions. The car of each element is a string that serves as `type' in cross-references. (See \(f@docref-subst)). The cdr is a function of one argument, to be called to find this reference. (defvar docref-methods-alist (quote (("f" . docref-describe-function) ("v" . docref-describe-variable) ("F" . docref-read-file) ("s" . docref-use-string) ("V" . docref-use-variable-value) ("0" . beep))) (#$ . 901)) #@62 Label to use by \(f@docref-subst) for the go-back reference. (defvar docref-back-label "\nback" (#$ . 1371)) #@251 If non-nil, this is a go-back reference to add to the current buffer. The value specifies how to go back. It should be suitable for use as the second argument to \(f@docref-insert-label). \(f@docref-subst) uses this to set up the go-back reference. (defvar docref-back-reference nil (#$ . 1487)) (byte-code " B" [docref-last-active-buffer current-load-list] 2) #@84 Process docref cross-references in the current buffer. See also \(f@docref-subst). (defalias 'docref-setup #[nil "p! " [docref-subst docref-mode] 2 (#$ . 1859) nil]) (byte-code "! B (  # # # )‡" [boundp docref-mode-map nil current-load-list make-sparse-keymap map define-key [mouse-2] docref-follow-mouse "" docref-go-back "" docref-follow] 4) #@227 Major mode for help buffers that contain cross references. To follow a reference, move to it and type \[docref-follow], or use \[docref-follow-mouse]. The command \[docref-go-back] can used to go back to where you came from. (defalias 'docref-mode #[nil " !!" [kill-all-local-variables docref-mode major-mode "Docref" mode-name use-local-map docref-mode-map run-hooks] 2 (#$ . 2245) nil]) #@673 Parse documentation cross-references in buffer BUF. Find cross-reference information in a buffer and highlight them with face defined by \(v@docref-highlight-face). Cross-reference has the following format: \ (TYPE[@LABEL]@DATA), where TYPE defines method used to retrive xref data (like reading from file or calling \(f@describe-function)), DATA is an argument to this method (like file name or function name), and LABEL is displayed in text using \(v@docref-highlight-face). The special reference `back' can be used to return back. The variable \(v@docref-back-label) specifies the label to use for that. See \(v@docref-methods-alist) for currently defined methods. (defalias 'docref-subst #[(buf) "qebe\"?u #Rɔ\n˔˕{\f͔͕{ϔ;ϔ\\ϕ{=\"\fB\",idbeeT`$\"eeT$\f!))" [buf get-text-property docref-seen buffer-modified-p old-modified re-search-forward "[\\](\\([^)@]+\\)\\(@[^)@]+\\)?@\\([^)]*\\))" nil t 0 start 1 type 3 data 2 label replace-match "" docref-insert-label docref-back-reference put-text-property docref-back-position docref-back-label set-buffer-modified-p] 5 (#$ . 2655) "b"]) (defalias 'docref-insert-label #[(string ref) "` Ŏ\n\"ȕ* \nˎ\n\"+Ȕ-\nG* _T\nO\n O\n O_ \n%\nG\n%\nc," [string pos label match-data match-data ((store-match-data match-data)) string-match "^\\([ \n]+\\)" 1 0 match-data ((store-match-data match-data)) "\\([ \n]+\\)$" trailing-space-start leading-space-end docref-highlight-p window-system "(*note " ")" nil put-text-property face docref-highlight-face docref ref] 7]) #@47 Follow the cross-reference that you click on. (defalias 'docref-follow-mouse #[(click) "A@)@\nA@p !q\f!-" [click event start window pos docref-last-active-buffer window-buffer docref-follow] 3 (#$ . 4310) "e"]) #@50 Go back to the previous contents of help buffer. (defalias 'docref-go-back #[nil "e\"\n!!)" [get-text-property docref-back-position pos docref-follow error "No go-back reference"] 4 (#$ . 4540) nil]) #@151 Follow cross-reference at point. For the cross-reference format, see \(f@docref-subst). The special reference named `back' can be used to return back (defalias 'docref-follow #[(&optional pos) "`\"E @ A\f\" \n` \nB 6\f\"ҎA !Ӊ. )" [pos get-text-property docref docref-data type name assoc docref-methods-alist method buffer-string cur-contents opoint "s" docref-back-reference nil success error "Unknown cross-reference type: %s" ((byte-code " \nc b!" [success erase-buffer cur-contents opoint set-buffer-modified-p nil] 2)) t] 4 (#$ . 4761) nil]) (defalias 'docref-describe-function #[(data) "!\n q\f!!)" [boundp docref-last-active-buffer describe-function intern data] 3]) (defalias 'docref-describe-variable #[(data) "!\n q\f!!)" [boundp docref-last-active-buffer describe-variable intern data] 3]) (defalias 'docref-read-file #[(data) " \f!!" [buffer-name erase-buffer insert-file-contents expand-file-name data] 4]) (defalias 'docref-use-string #[(data) " \nc" [buffer-name erase-buffer data] 2]) (defalias 'docref-use-variable-value #[(data) " ! \nJ!)" [intern data sym buffer-name erase-buffer princ] 3]) (provide (quote docref))