%PDF- %PDF-
Direktori : /usr/local/share/emacs/27.2/lisp/ |
Current File : //usr/local/share/emacs/27.2/lisp/info-xref.elc |
;ELC ;;; Compiled ;;; in Emacs version 27.2 ;;; with all optimizations. ;;; This file uses dynamic docstrings, first added in Emacs 19.29. ;;; This file does not contain utf-8 non-ASCII characters, ;;; and so can be loaded in Emacs versions earlier than 23. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; (byte-code "\300\301!\210\302\303\304\305\306\307%\210\310\311\312\313\314DD\315\306\303\316\317\320\321& \207" [require info custom-declare-group info-xref nil "Check external cross-references in Info documents." :group docs custom-declare-variable info-xref-case-fold funcall function #[0 "\300\207" [nil] 1] "Non-nil means node checks should ignore case.\nWhen following cross-references, the Emacs Info reader first tries a\ncase-sensitive match, then if that fails a case-insensitive one.\nThe standalone Info reader does not do this, nor does this work\nfor links in the html versions of Texinfo manuals. Therefore\nto ensure your cross-references work on the widest range of platforms,\nyou should set this variable to nil." :type boolean :version "24.4"] 10) #@116 Return non-nil if FILENAME is an Emacs lock file. A lock file is ".#foo.txt" etc per `lock-buffer'. (fn FILENAME) (defalias 'info-xref-lock-file-p #[257 "\300\301\"\207" [string-match "\\(\\`\\|/\\)\\.#"] 4 (#$ . 1177)]) #@274 Return t if FILENAME is an info subfile. If removing the last "-<NUM>" from the filename gives a file which exists, then consider FILENAME a subfile. This is an imperfect test, probably ought to open up the purported top file and see what subfiles it says. (fn FILENAME) (defalias 'info-xref-subfile-p #[257 "\300\301\"\205 \302\303\304\"\303\305\"P!\207" [string-match "\\`\\(\\([^-]*-\\)*[^-]*\\)-[0-9]+\\(.*\\)\\'" file-exists-p match-string 1 3] 6 (#$ . 1407)]) #@451 Evaluate BODY in a buffer containing the contents of FILENAME. If FILENAME is already in a buffer then that's used, otherwise a temporary buffer. The current implementation uses `insert-file-contents' rather than `find-file-noselect' so as not to be held up by queries about local variables or possible weirdness in a major mode. `lm-with-file' does a similar thing, but it sets `emacs-lisp-mode' which is not wanted here. (fn FILENAME &rest BODY) (defalias 'info-xref-with-file '(macro . #[385 "\300\301D\302\303\304BBD\305BB\306\307\310\311\312D\313BBFE\207" [let* info-xref-with-file--filename info-xref-with-file--body lambda nil ((info-xref-with-file--existing (find-buffer-visiting info-xref-with-file--filename))) if info-xref-with-file--existing (with-current-buffer info-xref-with-file--existing (save-excursion (funcall info-xref-with-file--body))) with-temp-buffer insert-file-contents ((funcall info-xref-with-file--body))] 10 (#$ . 1886)])) (byte-code "\300\301\302\303#\210\304\301\305\306#\300\207" [put info-xref-with-file edebug-form-spec t function-put lisp-indent-function 1] 4) #@43 Name of the buffer for info-xref results. (defconst info-xref-output-buffer "*info-xref results*" (#$ . 2996)) #@62 Count of good cross references, during info-xref processing. (defvar info-xref-good 0 (#$ . 3113)) #@61 Count of bad cross references, during info-xref processing. (defvar info-xref-bad 0 (#$ . 3218)) #@69 Count of unavailable cross references, during info-xref processing. (defvar info-xref-unavail 0 (#$ . 3321)) #@106 A heading string, during info-xref processing. This is shown if there's an error, but not if successful. (defvar info-xref-output-heading "" (#$ . 3437)) #@160 The current buffer's filename, during info-xref processing. When looking at file contents in a temp buffer there's no `buffer-file-name', hence this variable. (defvar info-xref-filename nil (#$ . 3598)) #@280 Info files found or not found, during info-xref processing. Key is "(foo)" etc and value nil or t according to whether info manual "(foo)" exists or not. This is used to suppress duplicate messages about foo not being available. (Duplicates within one top-level file that is.) (defvar info-xref-xfile-alist nil (#$ . 3808)) (defvar info-xref-in-progress nil) #@305 Run BODY with an info-xref output buffer. This is meant to nest, so you can wrap it around a set of different info-xref checks and have them write to the one output buffer created by the outermost `info-xref-with-output', with an overall good/bad count summary inserted at the very end. (fn &rest BODY) (defalias 'info-xref-with-output '(macro . #[128 "\300\301\302\303BB\304BBB\207" [save-excursion (unless info-xref-in-progress (display-buffer (get-buffer-create info-xref-output-buffer)) (set-buffer info-xref-output-buffer) (setq buffer-read-only nil) (fundamental-mode) (erase-buffer) (insert ";; info-xref output -*- mode: compilation -*-\n\n") (compilation-mode) (setq info-xref-good 0 info-xref-bad 0 info-xref-unavail 0 info-xref-xfile-alist nil)) let ((info-xref-in-progress t) (info-xref-output-heading "")) ((unless info-xref-in-progress (info-xref-output "done, %d good, %d bad, %d unavailable" info-xref-good info-xref-bad info-xref-unavail)))] 6 (#$ . 4176)])) (put 'info-xref-with-output 'edebug-form-spec t) #@100 Emit a `format-message'-ed message FMT+ARGS to the `info-xref-output-buffer'. (fn FMT &rest ARGS) (defalias 'info-xref-output #[385 "rq\210\212db\210\303\n\304\305#\306\261\210*\307\310\311!)\207" [info-xref-output-buffer inhibit-read-only info-xref-output-heading t apply format-message "\n" "" sit-for 0] 7 (#$ . 5210)]) (put 'info-xref-output 'byte-compile-format-like t) #@189 Emit a `format'-ed error FMT+ARGS to the `info-xref-output-buffer'. The error is attributed to `info-xref-filename' and the current buffer's line and column of point. (fn FMT &rest ARGS) (defalias 'info-xref-output-error #[385 "\301\302\303P\304e\305 \"TiT&\207" [info-xref-filename apply info-xref-output "%s:%s:%s: " count-lines line-beginning-position] 9 (#$ . 5599)]) (put 'info-xref-output-error 'byte-compile-format-like t) #@63 Return t if it's possible to go to the given NODE. (fn NODE) (defalias 'info-xref-goto-node-p #[257 "p\212\301 \302\303\304\305\306!\307\"\310$\216\3111) \312\313\314!\205 \314q\210\315?#\210\3160\202+ \210\317p\232\2044 \320 \210)\262)\207" [info-xref-case-fold current-window-configuration make-byte-code 0 "\301\300!\207" vconcat vector [set-window-configuration] 2 (error) Info-goto-node get-buffer "*info*" "xref - temporary" t nil kill-buffer] 9 (#$ . 6041)]) #@13 (fn NODE) (defalias 'info-xref-check-node #[257 "\304\305\306\307\211%\262\310\311\"\204 \312\313\"\207\314\315\"\211\316\230\203&