;ELC ;;; Compiled ;;; in Emacs version 28.0.50 ;;; with all optimizations. (byte-code "\300\301!\210\300\302!\210\300\303!\210\300\304!\210\300\305!\210\306\307\310\311\312\302%\210\313\314\315\316\317DD\320\312\307\321\322&\207" [require cl-lib helm helm-lib helm-utils info custom-declare-group helm-info nil "Info-related applications and libraries for Helm." :group custom-declare-variable helm-info-default-sources funcall function #[0 "\300\207" [(helm-source-info-elisp helm-source-info-cl helm-source-info-eieio helm-source-info-pages)] 1] "Default sources to use for looking up symbols at point in Info\nfiles with `helm-info-at-point'." :type (repeat (choice symbol))] 8) #@54 (fn &optional (FILE (helm-get-attr \='info-file))) (defalias 'helm-info-init #[128 "\211\203 \211A\262\242\202\302\303!\203\304\305\306GTD\"\210\205#\307 \211\203+\310!\210\210\307 ?\205\251\311 r\312\313\"\216\314\315\"\210\307\316!\317\211\211\211\320 \211\203\240\211@\321!\210eb\210\322\323\317\324#\203\231\322\325\326 T\324#\204W\327 \262\212\327 b\210\330\331\317\324#)\206}\326 \262\332\333\334{#\262rq\210c\210\333c\210)\202WA\266\202\202J\210\335 )\266\205*\262\207" [debug-on-error Info-history helm-get-attr info-file signal wrong-number-of-arguments helm-info-init helm-candidate-buffer kill-buffer internal--before-save-selected-window make-closure #[0 "\301\300!\207" [V0 internal--after-save-selected-window] 2] info " *helm info temp buffer*" global nil Info-index-nodes Info-goto-node search-forward "\n* " t "Menu:\n" point-at-eol point-at-bol re-search-forward "(line +[0-9]+)" replace-regexp-in-string "\n" "" bury-buffer] 15 (#$ . 695)]) #@18 (fn NODE-LINE) (defalias 'helm-info-goto #[257 "\300@!\210\301A!\207" [Info-goto-node helm-goto-line] 3 (#$ . 1700)]) #@13 (fn LINE) (defalias 'helm-info-display-to-real #[257 "\300\301\"\205\302\303\304\305!\306\307\"#\310\306\311\"\206\312!B\207" [string-match "\\* +\\([^\n]*.+[^\n]*\\):[ ]+\\([^\n]*\\)\\.\\(?:[ \n]*(line +\\([0-9]+\\))\\)?" format "(%s)%s" helm-get-attr info-file match-string 2 string-to-number 3 "1"] 7 (#$ . 1828)]) (byte-code "\300\301\302\303!\"\210\300\304\305\303!\"\210\300\306\304\"\210\307\306\310\311#\210\312\303\313\304#\314\303\315\316\317$\207" [defalias helm-info-source-p eieio-make-class-predicate helm-info-source helm-info-source--eieio-childp eieio-make-child-predicate helm-info-source-child-p make-obsolete "use (cl-typep ... \\='helm-info-source) instead" "25.1" define-symbol-prop cl-deftype-satisfies eieio-defclass-internal (helm-source-in-buffer) ((info-file :initarg :info-file :initform nil :custom 'string) (init :initform #'helm-info-init) (display-to-real :initform #'helm-info-display-to-real) (get-line :initform #'buffer-substring) (action :initform '(("Goto node" . helm-info-goto)))) nil] 6) #@73 Create a new object of class type `helm-info-source'. (fn &rest SLOTS) (defalias 'helm-info-source #[128 "\300\301\302#\207" [apply make-instance helm-info-source] 5 (#$ . 2874)]) (byte-code "\300\301\302\303#\300\207" [function-put helm-info-source compiler-macro helm-info-source--anon-cmacro] 4) #@26 (fn WHOLE &rest SLOTS) (defalias 'helm-info-source--anon-cmacro #[385 "\211@;\204\207\300\301\302@@#@\303@DABB\"\207" [macroexp-warn-and-return format "Obsolete name arg %S to constructor %S" identity] 7 (#$ . 3181)]) #@25 (fn FNAME &rest ARGS) (defalias 'helm-build-info-source '(macro . #[385 "\300\301\302E\303\304BBBBB\207" [helm-make-source concat "Info Index: " 'helm-info-source :info-file] 8 (#$ . 3415)])) #@189 Define a Helm command NAME with documentation DOC. Arg SOURCE will be an existing helm source named `helm-source-info-' and BUFFER a string buffer name. (fn NAME DOC SOURCE BUFFER) (defalias 'helm-build-info-index-command #[1028 "\300\301\302P!\303\304##\207" [defalias intern "helm-info-" make-closure #[0 "\302\303\300\304\301\305\306&\207" [V0 V1 helm :sources :buffer :candidate-number-limit 1000] 7 nil nil]] 10 (#$ . 3619)]) #@294 Define Helm sources named helm-source-info-. Sources are generated for all entries of `helm-default-info-index-list'. If COMMANDS arg is non-nil, also build commands named `helm-info-'. Where NAME is an element of `helm-default-info-index-list'. (fn VAR-VALUE &optional COMMANDS) (defalias 'helm-define-info-index-sources #[513 "\300\211\211:\203=@\262\301\302P!\262\303\304P\305\306$L\210\2033\307\310\311\"\310\312\"$\210A\262\300\262\202\300\207" [nil intern "helm-source-info-" helm-make-source "Info Index: " helm-info-source :info-file helm-build-info-index-command format "Predefined helm for %s info." "*helm info %s*"] 13 (#$ . 4070)]) #@18 (fn VAR VALUE) (defalias 'helm-info-index-set #[514 "L\210\300\301\"\207" [helm-define-info-index-sources t] 5 (#$ . 4758)]) #@41 Ring of previously searched Info files. (defvar helm-info-searched (make-ring 32) (#$ . 4894)) #@238 Return list of Info files to use for `helm-info'. Elements of the list are strings of Info file names without extensions (e.g., "emacs" for file "emacs.info.gz"). Info files are found by searching directories in `Info-directory-list'. (defalias 'helm-get-info-files #[0 "\302 \210\206 \303\211:\203+@\262\304!\203$\305\306\303\307#!\244\262A\262\202\n\211\237\266\203\310\303\211:\203J@\262\311!B\262A\262\2023\211\237\266\203\312\313#\207" [Info-directory-list Info-default-directory-list info-initialize nil file-directory-p reverse directory-files "\\.info" helm-fast-remove-dups helm-file-name-sans-extension :test equal] 8 (#$ . 4996)]) (byte-code "\300\301\302\303\304DD\305\306\307\310\311\312\313& \207" [custom-declare-variable helm-default-info-index-list funcall function #[0 "\300 \207" [helm-get-info-files] 1] "Info files to search in with `helm-info'." :group helm-info :type (repeat (choice string)) :set helm-info-index-set] 10) #@101 Search the index of CANDIDATE's Info file using the function helm-info-. (fn CANDIDATE) (defalias 'helm-info-search-index #[257 "\301\302P!\303!\205\211 \210\304\"\207" [helm-info-searched intern-soft "helm-info-" fboundp ring-insert] 5 (#$ . 5977)]) #@38 Return a Helm source for Info files. (defalias 'helm-def-source--info-files #[0 "\300\301\302\303\304\305\306\307\310\311\312\313\314&\f\207" [helm-make-source "Helm Info" helm-source-sync :candidates #[0 "\301!\207" [helm-default-info-index-list copy-sequence] 2] :candidate-number-limit 999 :candidate-transformer #[257 "\300\301\"\207" [sort string-lessp] 4 "\n\n(fn CANDIDATES)"] :nomark t :action (("Search index" . helm-info-search-index))] 13 (#$ . 6252)]) #@539 Preconfigured `helm' for searching Info files' indices. With a prefix argument \[universal-argument], set REFRESH to non-nil. Optional parameter REFRESH, when non-nil, re-evaluates `helm-default-info-index-list'. If the variable has been customized, set it to its saved value. If not, set it to its standard value. See `custom-reevaluate-setting' for more. REFRESH is useful when new Info files are installed. If `helm-default-info-index-list' has not been customized, the new Info files are made available. (fn &optional REFRESH) (defalias 'helm-info #[256 "\301!?\205 \302\303\"\203\304\305!\210\306\307\310 \311\312\313\205&\314\315!\316Q&\207" [helm-info-searched ring-empty-p ring-ref 0 custom-reevaluate-setting helm-default-info-index-list helm :sources helm-def-source--info-files :buffer "*helm Info*" :preselect "\\_<" regexp-quote "\\_>"] 11 (#$ . 6725) "P"]) #@41 Cache for all Info pages on the system. (defvar helm-info--pages-cache nil (#$ . 7621)) #@29 Helm source for Info pages. (defvar helm-source-info-pages (helm-make-source "Info Pages" 'helm-source-sync :init 'helm-info-pages-init :candidates #[0 "\207" [helm-info--pages-cache] 1] :action '(("Show with Info" lambda (node-str) (info (replace-regexp-in-string "^[^:]+: " "" node-str)))) :requires-pattern 2) (#$ . 7715)) #@47 Collect candidates for initial Info node Top. (defalias 'helm-info-pages-init #[0 "\2062\301\302 r\303\304\"\216\305\306\307\"\210\310\306\311\"\210eb\210\312\313\314#\203+\315\316!B\202\317 *\262\262\207" [helm-info--pages-cache "\\* +\\([^:]+: ([^)]+)[^.]*\\)\\." internal--before-save-selected-window make-closure #[0 "\301\300!\207" [V0 internal--after-save-selected-window] 2] info "dir" " *helm info temp buffer*" Info-find-node "top" re-search-forward nil t match-string-no-properties 1 kill-buffer] 6 (#$ . 8048)]) #@51 Preconfigured `helm' for searching info at point. (defalias 'helm-info-at-point #[0 "\301\211\211:\2031@\2629\203\302J\236\202\302\236\262\204'\303\304\"\210A\262\301\262\202\266\305\306\307\310$\207" [helm-info-default-sources nil name warn "Couldn't build source `%S' without its info file" helm :sources :buffer "*helm info*"] 7 (#$ . 8588) nil]) (provide 'helm-info)