%PDF- %PDF-
Direktori : /usr/local/share/emacs/27.2/lisp/emacs-lisp/ |
Current File : //usr/local/share/emacs/27.2/lisp/emacs-lisp/eldoc.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\302\303\304\305\304\306&\210\307\310\311\312\313DD\314\315\316\304\301&\210\307\317\311\312\320DD\321\315\322\304\301&\210\307\323\311\312\324DD\325\315\326\304\301&\210\307\327\311\312\330DD\331\315\332\304\301&\210\333\327\302\334#\210\307\335\311\312\336DD\337\315\340\304\301&\210\341\342\343\344\304\301%\207" [custom-declare-group eldoc nil "Show function arglist or variable docstring in echo area." :group lisp extensions custom-declare-variable eldoc-idle-delay funcall function #[0 "\300\207" [0.5] 1] "Number of seconds of idle time to wait before printing.\nIf user input arrives before this interval of time has elapsed after the\nlast input, no documentation will be printed.\n\nIf this variable is set to 0, no idle time is required." :type number eldoc-print-after-edit #[0 "\300\207" [nil] 1] "If non-nil eldoc info is only shown when editing.\nChanging the value requires toggling `eldoc-mode'." boolean eldoc-minor-mode-string #[0 "\300\301!\207" [purecopy " ElDoc"] 2] "String to display in mode line when ElDoc Mode is enabled; nil for none." (choice string (const :tag "None" nil)) eldoc-argument-case #[0 "\300\207" [identity] 1] "Case to display argument names of functions, as a symbol.\nThis has two preferred values: `upcase' or `downcase'.\nActually, any name of a function which takes a string as an argument and\nreturns another string is acceptable.\n\nNote that this variable has no effect, unless\n`eldoc-documentation-function' handles it explicitly." (radio (function-item upcase) (function-item downcase) function) make-obsolete-variable "25.1" eldoc-echo-area-use-multiline-p #[0 "\300\207" [truncate-sym-name-if-fit] 1] "Allow long ElDoc messages to resize echo area display.\nIf value is t, never attempt to truncate messages; complete symbol name\nand function arglist or 1-line variable documentation will be displayed\neven if echo area must be resized to fit.\n\nIf value is any non-nil value other than t, symbol name may be truncated\nif it will enable the function arglist or documentation string to fit on a\nsingle line without resizing window. Otherwise, behavior is just like\nformer case.\n\nIf value is nil, messages are always truncated to fit in a single line of\ndisplay in the echo area. Function or variable symbol name may be\ntruncated to make more of the arglist or documentation string visible.\n\nNote that this variable has no effect, unless\n`eldoc-documentation-function' handles it explicitly." (radio (const :tag "Always" t) (const :tag "Never" nil) (const :tag "Yes, but truncate symbol names if it will enable argument list to fit on one line" truncate-sym-name-if-fit)) custom-declare-face eldoc-highlight-function-argument ((t (:inherit bold))) "Face used for the argument at point in a function's argument list.\nNote that this face has no effect unless the `eldoc-documentation-function'\nhandles it explicitly."] 8) #@329 Used by `eldoc-add-command' to initialize `eldoc-message-commands' obarray. It should probably never be necessary to do so, but if you choose to increase the number of buckets, you must do so before loading this file since the obarray is initialized at load time. Remember to keep it a prime number to improve hash performance. (defvar eldoc-message-commands-table-size 31 (#$ . 3328)) #@479 Commands after which it is appropriate to print in the echo area. ElDoc does not try to print function arglists, etc., after just any command, because some commands print their own messages in the echo area and these functions would instantly overwrite them. But `self-insert-command' as well as most motion commands are good candidates. This variable contains an obarray of symbols; do not manipulate it directly. Instead, use `eldoc-add-command' and `eldoc-remove-command'. (defvar eldoc-message-commands (make-vector eldoc-message-commands-table-size 0) (#$ . 3721)) #@278 Bookkeeping; elements are as follows: 0 - contains the last symbol read from the buffer. 1 - contains the string last displayed in the echo area for variables, or argument string for functions. 2 - `function' if function args, `variable' if variable documentation. (defvar eldoc-last-data (make-vector 3 nil) (#$ . 4300)) (make-obsolete-variable 'eldoc-last-data "use your own instead" "25.1") (defvar eldoc-last-message nil) #@23 ElDoc's timer object. (defvar eldoc-timer nil (#$ . 4744)) #@116 Idle time delay currently in use by timer. This is used to determine if `eldoc-idle-delay' is changed by the user. (defvar eldoc-current-idle-delay eldoc-idle-delay (#$ . 4810)) #@110 The function used by `eldoc-message' to display messages. It should receive the same arguments as `message'. (defvar eldoc-message-function 'eldoc-minibuffer-message (#$ . 4995)) #@172 Return an obarray containing common editing commands. When `eldoc-print-after-edit' is non-nil, ElDoc messages are only printed after commands contained in this obarray. (defalias 'eldoc-edit-message-commands #[0 "\301\302\303\"\304\305\306\307\310\311\312\"\313\"\314\315%\"\210\207" [obarray make-vector 31 0 "\\(?:delete\\|e\\(?:dit\\|lectric\\)\\|insert\\|newline\\)" mapatoms make-byte-code 257 "\303!\205 \301\304!\305\306\307#)\266\203\205 \310\304!\300\"\207" vconcat vector [inhibit-changing-match-data commandp symbol-name nil t string-match intern] 8 "\n\n(fn S)"] 10 (#$ . 5181)]) #@89 Non-nil if Eldoc mode is enabled. Use the command `eldoc-mode' to change this variable. (defvar eldoc-mode nil (#$ . 5796)) (make-variable-buffer-local 'eldoc-mode) #@664 Toggle echo area display of Lisp objects at point (ElDoc mode). If called interactively, enable Eldoc mode if ARG is positive, and disable it if ARG is zero or negative. If called from Lisp, also enable the mode if ARG is omitted or nil, and toggle it if ARG is `toggle'; disable the mode otherwise. ElDoc mode is a buffer-local minor mode. When enabled, the echo area displays information about a function or variable in the text where point is. If point is on a documented variable, it displays the first line of that variable's doc string. Otherwise it displays the argument list of the function called in the expression point is on. (fn &optional ARG) (defalias 'eldoc-mode #[256 "\305 \306=\203 ?\202 \307!\310V\311\312 \204) \313\314!\203$ \315\316!\210\311\202c \203I \n\2038 \317\303!\210\320 \321\322\323\311\324$\210\321\325\326\311\324$\210\202c \327\303!\210\330\322\323\324#\210\330\325\326\324#\210\f\203c \331\f!\210\311\332\333\203m \334\202n \335\"\210\313\314!\203\222 \305 \203\202 \211\305 \232\203\222 \336\315\337\203\215 \340\202\216 \341#\266\210\342 \210\207" [eldoc-mode eldoc-last-message eldoc-print-after-edit eldoc-message-commands eldoc-timer current-message toggle prefix-numeric-value 0 nil eldoc--supported-p called-interactively-p any message "There is no ElDoc support in this buffer" make-local-variable eldoc-edit-message-commands add-hook post-command-hook eldoc-schedule-timer t pre-command-hook eldoc-pre-command-refresh-echo-area kill-local-variable remove-hook cancel-timer run-hooks eldoc-mode-hook eldoc-mode-on-hook eldoc-mode-off-hook " in current buffer" "Eldoc mode %sabled%s" "en" "dis" force-mode-line-update] 7 (#$ . 5968) (byte-code "\206 \301C\207" [current-prefix-arg toggle] 1)]) (defvar eldoc-mode-hook nil) (byte-code "\301\302N\204\f \303\301\302\304#\210\305\306\307\310\300!\205 \311\211%\210\303\312\313\314#\207" [eldoc-mode-map eldoc-mode-hook variable-documentation put "Hook run after entering or leaving `eldoc-mode'.\nNo problems result if this variable is not bound.\n`add-hook' automatically binds it. (This is true for all hook variables.)" add-minor-mode eldoc-mode eldoc-minor-mode-string boundp nil global-eldoc-mode globalized-minor-mode t] 6) (defvar eldoc-mode-major-mode nil) (byte-code "\300\301!\210\302\303\304\305\306DD\307\310\311\312\313\314\315\316\317&\207" [make-variable-buffer-local eldoc-mode-major-mode custom-declare-variable global-eldoc-mode funcall function #[0 "\300\207" [t] 1] "Non-nil if Global Eldoc mode is enabled.\nSee the `global-eldoc-mode' command\nfor a description of this minor mode.\nSetting this variable directly does not take effect;\neither customize it (see the info node `Easy Customization')\nor call the function `global-eldoc-mode'." :set custom-set-minor-mode :initialize custom-initialize-delay :group eldoc :type boolean] 12) #@335 Toggle Eldoc mode in all buffers. With prefix ARG, enable Global Eldoc mode if ARG is positive; otherwise, disable it. If called from Lisp, enable the mode if ARG is omitted or nil. Eldoc mode is enabled in all buffers where `turn-on-eldoc-mode' would do it. See `eldoc-mode' for more information on Eldoc mode. (fn &optional ARG) (defalias 'global-eldoc-mode #[256 "\302 \303\300\304=\203 \305\300!?\202 \306!\307V\"\210\203. \310\311\312\"\210\310\313\314\"\210\310\315\316\"\210\202= \317\311\312\"\210\317\313\314\"\210\317\315\316\"\210\320 \211\203c \211@r\211q\210\203S \321 \210\202[ \203[ \301\322!\210)A\266\202\202? \210\203p \310\323\324\"\210\202u \317\323\324\"\210\325\326\305\300!\203\201 \327\202\202 \330\"\210\331\332!\203\254 \333\300!\210\302 \203\232 \211\302 \232\203\254 \334\335\336\305\300!\203\247 \337\202\250 \340#\266\210\341 \210\305\300!\207" [global-eldoc-mode eldoc-mode current-message set-default toggle default-value prefix-numeric-value 0 add-hook after-change-major-mode-hook global-eldoc-mode-enable-in-buffers find-file-hook global-eldoc-mode-check-buffers change-major-mode-hook global-eldoc-mode-cmhh remove-hook buffer-list turn-on-eldoc-mode -1 eval-expression-minibuffer-setup-hook eldoc--eval-expression-setup run-hooks global-eldoc-mode-hook global-eldoc-mode-on-hook global-eldoc-mode-off-hook called-interactively-p any customize-mark-as-set "" message "Global Eldoc mode %sabled%s" "en" "dis" force-mode-line-update] 7 (#$ . 8852) (byte-code "\206 \301C\207" [current-prefix-arg toggle] 1)]) (defvar global-eldoc-mode-hook nil) (byte-code "\301\302N\204\f \303\301\302\304#\210\305\306\307\310\300!\205 \307\211%\207" [global-eldoc-mode-map global-eldoc-mode-hook variable-documentation put "Hook run after entering or leaving `global-eldoc-mode'.\nNo problems result if this variable is not bound.\n`add-hook' automatically binds it. (This is true for all hook variables.)" add-minor-mode global-eldoc-mode nil boundp] 6) (defvar eldoc-mode-set-explicitly nil nil) (make-variable-buffer-local 'eldoc-mode-set-explicitly) (defalias 'eldoc-mode-set-explicitly #[0 "\301\211\207" [eldoc-mode-set-explicitly t] 2]) (byte-code "\300\301\302\303#\210\304\305\301\"\207" [put eldoc-mode-set-explicitly definition-name global-eldoc-mode add-hook eldoc-mode-hook] 4) (defvar global-eldoc-mode-buffers nil) (defalias 'global-eldoc-mode-enable-in-buffers #[0 "\305\211\211\2059 \211@\306!\2032 r\211q\210 \204/ \n=\204/ \f\203, \304\307!\210\310 \210\202/ \310 \210)A\266\202\202 \262\207" [global-eldoc-mode-buffers eldoc-mode-set-explicitly eldoc-mode-major-mode major-mode eldoc-mode nil buffer-live-p -1 turn-on-eldoc-mode] 5]) (put 'global-eldoc-mode-enable-in-buffers 'definition-name 'global-eldoc-mode) (defalias 'global-eldoc-mode-check-buffers #[0 "\300 \210\301\302\303\"\207" [global-eldoc-mode-enable-in-buffers remove-hook post-command-hook global-eldoc-mode-check-buffers] 3]) (put 'global-eldoc-mode-check-buffers 'definition-name 'global-eldoc-mode) (defalias 'global-eldoc-mode-cmhh #[0 "\300\301p\"\210\302\303\304\"\207" [add-to-list global-eldoc-mode-buffers add-hook post-command-hook global-eldoc-mode-check-buffers] 3]) (put 'global-eldoc-mode-cmhh 'definition-name 'global-eldoc-mode) (defalias 'eldoc--eval-expression-setup #[0 "\300\301\302\303B\304\305$\210\306\307!\207" [advice--add-function :before-until #[0 "\300\301!\207" [advice--buffer-local eldoc-documentation-function] 2] #[257 "\300\301\"\207" [advice--set-buffer-local eldoc-documentation-function] 4 "\n\n(fn GV--VAL)"] elisp-eldoc-documentation-function nil eldoc-mode 1] 5]) #@115 Turn on `eldoc-mode' if the buffer has ElDoc support enabled. See `eldoc-documentation-function' for more detail. (defalias 'turn-on-eldoc-mode #[0 "\300 \205 \301\302!\207" [eldoc--supported-p eldoc-mode 1] 2 (#$ . 12499)]) #@54 Non-nil if an ElDoc function is set for this buffer. (defalias 'eldoc--supported-p #[0 "\301>?\207" [eldoc-documentation-function (nil ignore)] 2 (#$ . 12731)]) #@119 Ensure `eldoc-timer' is running. If the user has changed `eldoc-idle-delay', update the timer to reflect the change. (defalias 'eldoc-schedule-timer #[0 "\203\n >\204 \304\n\305\306#\nU?\205 \n\307\n\310#\207" [eldoc-timer timer-idle-list eldoc-idle-delay eldoc-current-idle-delay run-with-idle-timer nil #[0 "\204 \205 \302 \205 \303 \207" [eldoc-mode global-eldoc-mode eldoc--supported-p eldoc-print-current-symbol-info] 1] timer-set-idle-time t] 4 (#$ . 12900)]) (defvar eldoc-mode-line-string nil) (put 'eldoc-mode-line-string 'risky-local-variable t) #@121 Display messages in the mode-line when in the minibuffer. Otherwise work like `message'. (fn FORMAT-STRING &rest ARGS) (defalias 'eldoc-minibuffer-message #[385 "\302 \203C \303\304\305\306\307$\210r\310\311\312\313 \"\206 \314 \206 \315 !q\210\2034 <\203/ \301\236\2044 \316\317E;\205>