%PDF- %PDF-
Direktori : /usr/local/share/emacs/27.2/lisp/progmodes/ |
Current File : //usr/local/share/emacs/27.2/lisp/progmodes/elisp-mode.elc |
;ELC ;;; Compiled ;;; in Emacs version 27.2 ;;; with all optimizations. ;;; This file contains utf-8 non-ASCII characters, ;;; and so cannot be loaded into Emacs 22 or earlier. (and (boundp 'emacs-version) (< (aref emacs-version (1- (length emacs-version))) ?A) (string-lessp emacs-version "23") (error "`%s' was compiled for Emacs 23 or later" #$)) ;;;;;;;;;;;;;;;;;;;;;;;;;;;;; (byte-code "\301\302!\210\301\303!\210\304\305\306\307\310C%\207" [lisp-mode-abbrev-table require cl-generic lisp-mode define-abbrev-table emacs-lisp-mode-abbrev-table nil "Abbrev table for Emacs Lisp mode.\nIt has `lisp-mode-abbrev-table' as its parent." :parents] 6) #@41 Syntax table used in `emacs-lisp-mode'. (defvar emacs-lisp-mode-syntax-table (byte-code "\301!\302\303\304#\210\302\305\306#\210\211\207" [lisp--mode-syntax-table make-syntax-table modify-syntax-entry 91 "(] " 93 ")[ "] 5) (#$ . 678)) #@95 Keymap for Emacs Lisp mode. All commands in `lisp-mode-shared-map' are inherited by this map. (defvar emacs-lisp-mode-map (byte-code "\302 \302\303!\302 \302 \302 \304\"\210\305\306\307#\210\305\310\311#\210\305\312\313#\210\314\315\303B#\210\314\316\317#\210\314\320\321#\210\314\322\323#\210\314\324\325B#\210\314\326\327#\210\314\330\331#\210\314\332 #\210\314\333\334#\210\314\335\336#\210\314\337\340B#\210\314\341\342#\210\314\343\344#\210\314\345 #\210\314\346\347#\210\314\350\351#\210\314\352\353#\210\314\354\355#\210\314\356\357#\210\314\360 #\210\314\361\362#\210\314\363\364#\210\314\365\366#\210\314\367\370B#\210\314\371\372#\210\314\373\374#\210\314\375\376#\210\314\377\201@ #\210\314\201A \201B #\210\314\201C #\210\314\201D \201E #\210\314\201F \201G #\210\314\201H \201I #\210\314\201J \201K #\210\314\201L #\210\314\201M \201N #\210\314\201O \201P #\210\314\201Q \201R #\210\314\201S \201T #\210\314\201U #\210\314\201V \201W #\210\314\201X \201Y #\210\314\201Z \201[ #\210\207" [lisp-mode-shared-map menu-bar-separator make-sparse-keymap "Emacs-Lisp" set-keymap-parent define-key " " completion-at-point "" eval-defun "" indent-pp-sexp bindings--define-key [menu-bar emacs-lisp] [eldoc] (menu-item "Auto-Display Documentation Strings" eldoc-mode :button (:toggle bound-and-true-p eldoc-mode) :help "Display the documentation string for the item under cursor") [checkdoc] (menu-item "Check Documentation Strings" checkdoc :help "Check documentation strings for style requirements") [re-builder] (menu-item "Construct Regexp" re-builder :help "Construct a regexp interactively") [tracing] "Tracing" [tr-a] (menu-item "Untrace All" untrace-all :help "Untrace all currently traced functions") [tr-uf] (menu-item "Untrace Function..." untrace-function :help "Untrace function, and possibly activate all remaining advice") [tr-sep] [tr-q] (menu-item "Trace Function Quietly..." trace-function-background :help "Trace the function with trace output going quietly to a buffer") [tr-f] (menu-item "Trace Function..." trace-function :help "Trace the function given as an argument") [profiling] "Profiling" [prof-restall] (menu-item "Remove Instrumentation for All Functions" elp-restore-all :help "Restore the original definitions of all functions being profiled") [prof-restfunc] (menu-item "Remove Instrumentation for Function..." elp-restore-function :help "Restore an instrumented function to its original definition") [sep-rem] [prof-resall] (menu-item "Reset Counters for All Functions" elp-reset-all :help "Reset the profiling information for all functions being profiled") [prof-resfunc] (menu-item "Reset Counters for Function..." elp-reset-function :help "Reset the profiling information for a function") [prof-res] (menu-item "Show Profiling Results" elp-results :help "Display current profiling results") [prof-pack] (menu-item "Instrument Package..." elp-instrument-package :help "Instrument for profiling all function that start with a prefix") [prof-func] (menu-item "Instrument Function..." elp-instrument-function :help "Instrument a function for profiling") [sep-natprof] [prof-natprof-stop] (menu-item "Stop Native Profiler" profiler-stop :help "Stop recording profiling information" :enable (and (featurep 'profiler) (profiler-running-p))) [prof-natprof-report] (menu-item "Show Profiler Report" profiler-report :help "Show the current profiler report" :enable (and (featurep 'profiler) (profiler-running-p))) [prof-natprof-start] (menu-item "Start Native Profiler..." profiler-start :help "Start recording profiling information") [lint] "Linting" [lint-di] (menu-item "Lint Directory..." elint-directory :help "Lint a directory") [lint-f] (menu-item "Lint File..." elint-file :help "Lint a file") [lint-b] (menu-item "Lint Buffer" elint-current-buffer :help "Lint the current buffer") [lint-d] (menu-item "Lint Defun" elint-defun :help "Lint the function at point") [edebug-defun] (menu-item "Instrument Function for Debugging" edebug-defun :help "Evaluate the top level form point is in, stepping through with Edebug" :keys "C-u C-M-x") [separator-byte] [disas] (menu-item "Disassemble Byte Compiled Object..." disassemble :help "Print disassembled code for OBJECT in a buffer") [byte-recompile] (menu-item "Byte-recompile Directory..." byte-recompile-directory :help "Recompile every `.el' file in DIRECTORY that needs recompilation") [emacs-byte-compile-and-load] (menu-item "Byte-compile and Load" emacs-lisp-byte-compile-and-load :help "Byte-compile the current file (if it has changed), then load compiled code") [byte-compile] (menu-item "Byte-compile This File" emacs-lisp-byte-compile :help "Byte compile the file containing the current buffer") [separator-eval] [ielm] (menu-item "Interactive Expression Evaluation" ielm :help "Interactively evaluate Emacs Lisp expressions") [eval-buffer] (menu-item "Evaluate Buffer" eval-buffer :help "Execute the current buffer as Lisp code") [eval-region] (menu-item "Evaluate Region" eval-region :help "Execute the region as Lisp code" :enable mark-active) [eval-sexp] (menu-item "Evaluate Last S-expression" eval-last-sexp :help "Evaluate sexp before point; print value in echo area") [separator-format] [comment-region] (menu-item "Comment Out Region" comment-region :help "Comment or uncomment each line in the region" :enable mark-active) [indent-region] (menu-item "Indent Region" indent-region :help "Indent each nonblank line in the region" :enable mark-active) [indent-line] (menu-item "Indent Line" lisp-indent-line)] 10) (#$ . 924)) #@54 Byte compile the file containing the current buffer. (defalias 'emacs-lisp-byte-compile #[0 "\203 \301!\207\302\303!\207" [buffer-file-name byte-compile-file error "The buffer must be saved in a file first"] 2 (#$ . 6518) nil]) #@77 Byte-compile the current file (if it has changed), then load compiled code. (defalias 'emacs-lisp-byte-compile-and-load #[0 "\204 \301\302!\210\303\304!\210\305 \203 \306\307\310\311 \"!\203 \312 \210\313\314\315\316$\207" [buffer-file-name error "The buffer must be saved in a file first" require bytecomp buffer-modified-p y-or-n-p format "Save buffer %s first? " buffer-name save-buffer byte-recompile-file nil 0 t] 5 (#$ . 6755) nil]) #@70 Macroexpand the form after point. Comments in the form will be lost. (defalias 'emacs-lisp-macroexpand #[0 "`\300p!\301!\232\203 \302\303!\202( `|\210\304p\"\210n\203$ \305\306!\210\307`\"\207" [read macroexpand-1 message "Not a macro call, nothing to expand" pp delete-char -1 indent-region] 6 (#$ . 7205) nil]) (byte-code "\300\301\302\303\304DD\305\306\307\310\311\312\313& \207" [custom-declare-variable emacs-lisp-mode-hook funcall function #[0 "\300\207" [nil] 1] "Hook run when entering Emacs Lisp mode." :options (eldoc-mode imenu-add-menubar-index checkdoc-minor-mode) :type hook :group lisp] 10) #@67 Set `electric-pair-text-pairs' for all `emacs-lisp-mode' buffers. (defalias 'emacs-lisp-set-electric-text-pairs #[0 "\301\302\"r\303 \211\203# \211@\211q\210\304\305!\203 \306\300!\210A\266\202\202 \210)\210\307\310\311\"\207" [electric-pair-text-pairs append ((96 . 39) (8216 . 8217)) buffer-list derived-mode-p emacs-lisp-mode make-local-variable remove-hook electric-pair-mode-hook emacs-lisp-set-electric-text-pairs] 5 (#$ . 7824)]) (defvar emacs-lisp-mode-hook nil) (byte-code "\300\301N\204\f \302\300\301\303#\210\304\305!\204 \302\305\306\307#\210\300\207" [emacs-lisp-mode-hook variable-documentation put "Hook run after entering Emacs-Lisp mode.\nNo problems result if this variable is not bound.\n`add-hook' automatically binds it. (This is true for all hook variables.)" boundp emacs-lisp-mode-map definition-name emacs-lisp-mode] 4) (defvar emacs-lisp-mode-map (make-sparse-keymap)) (byte-code "\301\302N\204 \303\301\302\304\305!#\210\306\307!\204 \303\307\310\311#\210\312\313 !\210\307\302N\204- \303\307\302\304\314!#\210\306\300!\204B \303\300\310\311#\210\315\316\300\317\"\210!\210\300\302N\204P \303\300\302\304\320!#\210\303\311\321\322#\210\303\311\323\324#\207" [emacs-lisp-mode-abbrev-table emacs-lisp-mode-map variable-documentation put purecopy "Keymap for `emacs-lisp-mode'." boundp emacs-lisp-mode-syntax-table definition-name emacs-lisp-mode (lambda (#1=#:def-tmp-var) (defvar emacs-lisp-mode-syntax-table #1#)) make-syntax-table "Syntax table for `emacs-lisp-mode'." (lambda (#1#) (defvar emacs-lisp-mode-abbrev-table #1#)) define-abbrev-table nil "Abbrev table for `emacs-lisp-mode'." derived-mode-parent prog-mode custom-mode-group lisp] 5) #@369 Major mode for editing Lisp code to run in Emacs. Commands: Delete converts tabs to spaces as it moves back. Blank lines separate paragraphs. Semicolons start comments. \{emacs-lisp-mode-map} In addition to any hooks its parent mode `prog-mode' might have run, this mode runs the hook `emacs-lisp-mode-hook', as the final or penultimate step during initialization. (defalias 'emacs-lisp-mode #[0 "\306\300!\210\307\310 \210\311\312\310\313N\203 \314\311\313\310\313N#\210\315!\204' \316\317 \"\210\320\f!\211\2035 \211\321 =\203; \322\f\323 \"\210\210\324 \325\"\204R ;=\204R \326 \325;C#\210\327!\210\330\f!\210 ;\331\332\211\333#\210\334\335\336\"\210\337\340!\203| \306\340!\210\341\342 \" \202\201 \334\343\344\"\210\306\345!\210\307%\332<\346\347\350\351B\352\332$\210\334\353\354\332\307$\210\306\355!\210\356-\334\357\360\332\361$\210\362 \211;\205\263 \363!\211;\205\303 \364\365\"\206\303 =\230\266\202\204\326 \334\366\367\332\307$\210\334\366\370\332\307$\210)\371\372!\207" [delay-mode-hooks major-mode mode-name emacs-lisp-mode-map emacs-lisp-mode-syntax-table emacs-lisp-mode-abbrev-table make-local-variable t prog-mode emacs-lisp-mode "Emacs-Lisp" mode-class put keymap-parent set-keymap-parent current-local-map char-table-parent standard-syntax-table set-char-table-parent syntax-table abbrev-table-get :parents abbrev-table-put use-local-map set-syntax-table lisp-mode-variables nil elisp add-hook after-load-functions elisp--font-lock-flush-elisp-buffers boundp electric-pair-text-pairs append ((96 . 39) (8216 . 8217)) electric-pair-mode-hook emacs-lisp-set-electric-text-pairs electric-quote-string 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 xref-backend-functions elisp--xref-backend project-vc-external-roots-function elisp-load-path-roots completion-at-point-functions elisp-completion-at-point local buffer-file-name file-name-nondirectory string-match "\\`\\.#" flymake-diagnostic-functions elisp-flymake-checkdoc elisp-flymake-byte-compile run-mode-hooks emacs-lisp-mode-hook local-abbrev-table imenu-case-fold-search dir-locals-file] 5 (#$ . 9516) nil]) #@23 (fn &optional FILE) (defalias 'elisp--font-lock-flush-elisp-buffers #[256 "\203 \211\205' \301 \211\205% \211@r\211q\210\302\303!\203 \304 \210)A\266\202\202\n \262\207" [load-in-progress buffer-list derived-mode-p emacs-lisp-mode font-lock-flush] 5 (#$ . 11832)]) #@88 Return the vars locally bound around the witness, or nil if not found. (fn VARS SEXP) (defalias 'elisp--local-variables-1 #[514 "\211C\300\301\302\303\304\242:\203a\242@\211\305\267\202V\242A\211:\203\275 \211@A\211\204` \f\211\f\242@\306=\203P \307!A\211\203O \211@\211\242\206D \211B\262A\266\202\2028 \210\310\311!@\243@\"\266\202\262\202\270 \312\267\202\262 \f#\202\270 \f#\202\270 \211:\203\236 \211@A\211\204\221 \310\"\262\202\231 #\266\202\202\270 \310\f\311\f\242!@\"\202\270 \300\240\202\270 \f\"\266\202\202\320 \313=\203\312 \300\240\202\320 \n \"\262\202\\\242A\211:\203\374 \211@A\211\204\360 \n\300\240\262\202\367 \f#\266\202\202\n \"\262\202\\\242A\211:\203D\211@A\211:\2039\211@A\211\204,\310\"\262\2024 #\266\202\202?\f\"\266\202\202J\n \"\262\202\\\300\240\202\\ \"\262\202r\242\314=\203q\206r\315\202r\300\266\204\211\262\204\215\3161\207\317\242!0\202\211\210\300\240\204 \211\262\207" [nil #[771 "\300B\301!@A\"\207" [elisp--local-variables-1 last] 7 "\n\n(fn VARS CATCHES V)"] #[771 "\300\301\302\303\302\304\"\"\"\305!@\"\207" [elisp--local-variables-1 append remq &optional &rest last] 10 "\n\n(fn VARS BODY ARGS)"] #[771 "\211\203 \211@\211\242\206 \211B\262A\266\202\202 \210\300\301!@\"\207" [elisp--local-variables-1 last] 8 "\n\n(fn VARS BODY BINDINGS)"] #[514 "\300\301\242!@\"\207" [elisp--local-variables-1 last] 6 "\n\n(fn VARS SEXP)"] #s(hash-table size 5 test eq rehash-size 1.5 rehash-threshold 0.8125 purecopy t data (let* 22 let 22 lambda 213 condition-case 263 quote 335)) let* reverse elisp--local-variables-1 last #s(hash-table size 5 test eq rehash-size 1.5 rehash-threshold 0.8125 purecopy t data (let* 102 let 102 lambda 111 condition-case 121 quote 171)) quote elisp--witness--lisp (nil) (error) butlast] 19 (#$ . 12110)]) #@56 Return a list of locally let-bound variables at point. (defalias 'elisp--local-variables #[0 "\212\301\302!\210\303 \304\3058@\206 `\3068\206 `\"\307\3058\211\2031 \211@\310!AB\262A\266\202\202 \210\311\312\"\262\3131G \314\315Q!@0\202I \210\307\316\317\320\321\322\323!\324\"\325$\216\326\327\330\331#\210\332!*\333\307\"\334\307\335\336\"\"\266\204\266\203)\207" [warning-minimum-log-level skip-syntax-backward "w_" syntax-ppss buffer-substring-no-properties 9 8 nil syntax-after apply string (invalid-read-syntax end-of-file) read-from-string "elisp--witness--lisp" #[642 "\3001 \301#0\207\210\207" [(error) apply] 7 "\n\n(fn EXPANDER FORM &rest ARGS)"] make-byte-code 0 "\301\302\300\"\207" vconcat vector [advice-remove macroexpand] 3 :emergency advice-add macroexpand :around macroexpand-all elisp--local-variables-1 delq mapcar #[257 "\2119\205 \300\301!\302\"?\205 \303!\205 \211\207" [string-match symbol-name "\\`[&_]" intern-soft] 4 "\n\n(fn VAR)"]] 12 (#$ . 14034)]) (defvar elisp--local-variables-completion-table (byte-code "\300C\300C\300C\211\301\302\303\304\305\"\306\"\307$\240\210\310\301\311\312\304\305#\313\"\314\315%!\262\207" [nil make-byte-code 0 "\300\302\240\210\303\304\301\242\"\207" vconcat vector [nil remove-hook post-command-hook] 3 completion-table-dynamic 257 "\212\303\304!\210`pB\300\242\232\204! \305\306\302\242\"\210\300\240\210\301\307\310\311 \"\240\210\210)\301\242\207" [skip-syntax-backward "_w" add-hook post-command-hook mapcar symbol-name elisp--local-variables] 6 "\n\n(fn STRING)"] 12)) #@79 Return non-nil if the symbol at point is expected to be a function. (fn POS) (defalias 'elisp--expect-function-p #[257 "\211\206 `Sf\300=\203 \211S\206 `Sf\301=\2063 \212\302!A@\211\2050 \211b\210\303\304!\2050 \305\225=\262)\207" [39 35 syntax-ppss looking-at "(\\(cl-\\)?\\(?:callf2?\\|de\\(?:clare-function\\|f\\(?:advice\\|setf\\)\\)\\|function\\)[ \n]+" 0] 4 (#$ . 15620)]) #@109 Return non-nil if the form at POS is not evaluated. It can be quoted, or be inside a quoted form. (fn POS) (defalias 'elisp--form-quoted-p #[257 "\212\300!\3018\206K `\302\3038!B\304\203I \211\204I \211A\262\242b\210\304f\305=\2045 \306\304x\210`Sf\307>\203; \310\262\202 `Sf\311=\203 \304\262\202 \262\262)\207" [syntax-ppss 8 reverse 9 nil 91 " " (39 96 8216) t 44] 6 (#$ . 16015)]) #@12 (fn STR) (defalias 'elisp--company-doc-buffer #[257 "\301!\302 \303\304\305\306\307!\310\"\311$\216\312\3131V \314!\203$ \315!\210\202P \316!\2031 \317!\210\202P \320!\203>