%PDF- %PDF-
Mini Shell

Mini Shell

Direktori : /usr/local/share/emacs/27.2/lisp/emacs-lisp/
Upload File :
Create Path :
Current File : //usr/local/share/emacs/27.2/lisp/emacs-lisp/easy-mmode.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.

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;


#@202 Turn the symbol MODE into a string intended for the user.
If provided, LIGHTER will be used to help choose capitalization by,
replacing its case-insensitive matches with the literal string in LIGHTER.
(defalias 'easy-mmode-pretty-mode-name #[(mode &optional lighter) "\304\305\306\307\310\305\311\312\313	!#!#\314P\305\315\316\n#;\204!\n\2020\305\317\312#\305\320!\n\304\211%*\207" [case-fold-search mode name lighter t replace-regexp-in-string "-Minor" " minor" capitalize "toggle-\\|-mode\\'" "" symbol-name " mode" "\\`Global-" "Global " "\\`\\s-+\\|\\s-+\\'" regexp-quote] 9 (#$ . 409)])
(defconst easy-mmode--arg-docstring "\n\nIf called interactively, enable %s if ARG is positive, and\ndisable it if ARG is zero or negative.  If called from Lisp,\nalso enable the mode if ARG is omitted or nil, and toggle it\nif ARG is `toggle'; disable the mode otherwise.")
(defalias 'easy-mmode--mode-docstring #[(doc mode-pretty-name keymap-sym) "\206	\306\307	\n#\310\311\312\313#)\266\203\203\202q\311\314\305!\205'
\211\250\2033\2024\315\306	\"\316\317!\203`\320\321!rq\210\322\216c\210\317ed\323\312$\210\324 +\202b\325\326\327P\311\211\330&-)\207" [doc mode-pretty-name keymap-sym inhibit-changing-match-data fill-prefix emacs-lisp-docstring-fill-column format "Toggle %s on or off.\n\n\\{%s}" "\\bARG\\b" nil t string-match boundp 65 fboundp fill-region generate-new-buffer " *temp*" #[nil "\301!\205	\302!\207" [#1=#:temp-buffer buffer-name kill-buffer] 2] left buffer-string replace-regexp-in-string "\\(\n\n\\|\\'\\)\\(.\\|\n\\)*\\'" "\\1" 1 docs-fc fill-column easy-mmode--arg-docstring argdoc #1# filled] 8])
(defalias 'easy-mmode-define-minor-mode 'define-minor-mode)
#@3691 Define a new minor mode MODE.
This defines the toggle command MODE and (by default) a control variable
MODE (you can override this with the :variable keyword, see below).
DOC is the documentation for the mode toggle command.

The defined mode command takes one optional (prefix) argument.
Interactively with no prefix argument, it toggles the mode.
A prefix argument enables the mode if the argument is positive,
and disables it otherwise.

When called from Lisp, the mode command toggles the mode if the
argument is `toggle', disables the mode if the argument is a
non-positive integer, and enables the mode otherwise (including
if the argument is omitted or nil or a positive integer).

If DOC is nil, give the mode command a basic doc-string
documenting what its argument does.  If the word "ARG" does not
appear in DOC, a paragraph is added to DOC explaining
usage of the mode argument.

Optional INIT-VALUE is the initial value of the mode's variable.
  Note that the minor mode function won't be called by setting
  this option, so the value *reflects* the minor mode's natural
  initial state, rather than *setting* it.
  In the vast majority of cases it should be nil.
Optional LIGHTER is displayed in the mode line when the mode is on.
Optional KEYMAP is the default keymap bound to the mode keymap.
  If non-nil, it should be a variable name (whose value is a keymap),
  or an expression that returns either a keymap or a list of
  (KEY . BINDING) pairs where KEY and BINDING are suitable for
  `define-key'.  If you supply a KEYMAP argument that is not a
  symbol, this macro defines the variable MODE-map and gives it
  the value that KEYMAP specifies.

BODY contains code to execute each time the mode is enabled or disabled.
  It is executed after toggling the mode, and before running MODE-hook.
  Before the actual body code, you can write keyword arguments, i.e.
  alternating keywords and values.  If you provide BODY, then you must
  provide (even if just nil) INIT-VALUE, LIGHTER, and KEYMAP, or provide
  at least one keyword argument, or both; otherwise, BODY would be
  misinterpreted as the first omitted argument.  The following special
  keywords are supported (other keywords are passed to `defcustom' if
  the minor mode is global):

:group GROUP	Custom group name to use in all generated `defcustom' forms.
		Defaults to MODE without the possible trailing "-mode".
		Don't use this default group name unless you have written a
		`defgroup' to define that group properly.
:global GLOBAL	If non-nil specifies that the minor mode is not meant to be
		buffer-local, so don't make the variable MODE buffer-local.
		By default, the mode is buffer-local.
:init-value VAL	Same as the INIT-VALUE argument.
		Not used if you also specify :variable.
:lighter SPEC	Same as the LIGHTER argument.
:keymap MAP	Same as the KEYMAP argument.
:require SYM	Same as in `defcustom'.
:variable PLACE	The location to use instead of the variable MODE to store
		the state of the mode.	This can be simply a different
		named variable, or a generalized variable.
		PLACE can also be of the form (GET . SET), where GET is
		an expression that returns the current state, and SET is
		a function that takes one argument, the new state, and
		sets it.  If you specify a :variable, this function does
		not define a MODE variable (nor any of the terms used
		in :variable).

:after-hook     A single lisp form which is evaluated after the mode hooks
                have been run.  It should not be quoted.

For example, you could write
  (define-minor-mode foo-mode "If enabled, foo on you!"
    :lighter " Foo" :require \='foo :global t :group \='hassle :version "27.5"
    ...BODY CODE...)
(defalias 'define-minor-mode '(macro . #[(mode doc &optional init-value lighter keymap &rest body) "\306!\203!	\203\n	BBB\202\nD\307\211\307\202@\306\n!\2034\n	BB\307\211\202@\306	!\203@	B\307\310\311!\312
!@\313
\n\"A\307\211BC\307\211DE\307\211FG\307\211HI\314
DJ
K
L\315M\307N\316@\317P!O\316@\320P!P\316@\321P!Q\307\211RS\307T\306@\211R!\203\210AR\322\267\202t\211A\242\202\231\323\211A\242!\202\231\211A\242\211B\203\231
9\203\231\324
DJ\325\326
DDK\202\231\211A\242G\202\231\327\211A\242DC\202\231\330\211A\242DD\202\231E\331\211A\242D\244E\202\231\332\211A\242DF\202\231\211A\242M\202\231\211A\242\202\231\211A\242\211I\243\211T\203LT9\204Y\333T!\204Y\334IDJIK\202\231I@K\335\336IADDJ\202\231\211A\242N\202\231RHBH\211A\242HBH\202\231	\203\225	9\203\225	\202\233\316@\337P!SC\204\245\340CD\204\255\341DE\204\300\331\326\316\342\343\344@#!DDEF\204\310\345F\346I\203\322\307\202B\204\354\346\347\350
\351\352A
#F\353\326
DDF\202\354\205\362\355PU\356
\351UA
\211$\357CDEFM\315=?\205\360MDH\237&)BBBB\361L\362\363GBB\364VAS#\365\366\f\367BC\357J\370\371\372KD\373BBBC\"\357\374\326OD\370K\326PD\326QDFE\370\375\346B\205lI?\205l\376\326
DD\377\201`\201a\372\201b\f\201cBBDE\366\201dB\203\214\344\202\217\201eDC\201f\351\201gA\"\370K\201hBB\201iBBBEEEEDN\205\266NC#BBB\201jK\257\347\350O\201kBB\377\201l\326OD\201mBB\201n\326OD\201o\351\201pL\"FE	9?\205\350S\366\201q	DC\201rBB\351\201s@\"FK:\203\207K@\211W\325=\203\201KA\211X:\203{X@\211Y:\203uY@\211Z\326=\203oYA\211[:\203i[@\\[A\211]\204cXA\211^\204]\\\202_K)\202eK*\202kK)\202qK)\202wK)\202}K)\202\203K)\202\211K\211_9\204\244\n\204\230	\205\326\201t\201uK\"\202\326\201v\201w\326_D\326\nD	\203\272S\202\306\370\201x\326SDDSE\307
L=?\205\323\326LD\257D)\257.\207" [init-value keymap lighter body last-message mode keywordp nil make-symbol "last-message" symbol-name easy-mmode-pretty-mode-name setq t intern "-hook" "-on-hook" "-off-hook" #s(hash-table size 12 test eq rehash-size 1.5 rehash-threshold 0.8125 purecopy t data (:init-value 173 :lighter 182 :global 193 :extra-args 224 :set 234 :initialize 246 :group 258 :type 273 :require 285 :keymap 295 :variable 304 :after-hook 362)) purecopy setq-default default-value quote :set :initialize :group :type functionp setf funcall function "-map" (:set #'custom-set-minor-mode) (:initialize 'custom-initialize-default) replace-regexp-in-string "-mode\\'" "" (:type 'boolean) progn :autoload-end defvar format "Non-nil if %s is enabled.\nUse the command `%s' to change this variable." make-variable-buffer-local "Non-nil if %s is enabled.\nSee the `%s' 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 `%s'." defcustom append :require defun &optional arg easy-mmode--mode-docstring (interactive (list (or current-prefix-arg 'toggle))) let ((current-message)) if (eq arg 'toggle) not ((> (prefix-numeric-value arg) 0)) run-hooks (called-interactively-p 'any) customize-mark-as-set unless mode-name pretty-name globalp set initialize group type extra-args extra-keywords variable setter getter modefun require after-hook hook hook-on hook-off keyw keymap-sym tmp base-doc-string doc #1=#:x8 #2=#:x9 #3=#:x10 #4=#:x11 #5=#:x12 #6=#:x13 #7=#:x14 #8=#:x15 modevar and (current-message) equal ((current-message)) local " in current buffer" message "%s %%sabled%%s" ("en" "dis") (local) (force-mode-line-update) (nil) get ('variable-documentation) put 'variable-documentation "Hook run after entering or leaving `%s'.\nNo problems result if this variable is not bound.\n`add-hook' automatically binds it.  (This is true for all hook variables.)" m ((cond ((keymapp m) m) ((listp m) (easy-mmode-define-keymap m)) (t (error "Invalid keymap %S" m)))) "Keymap for `%s'." error ":lighter and :keymap unsupported with mode expression %S" with-no-warnings add-minor-mode boundp] 27 (#$ . 2147)]))
(byte-code "\300\301\302\303#\304\301\305\306#\210\307\310\311\"\210\307\312\311\"\207" [function-put define-minor-mode doc-string-elt 2 put edebug-form-spec (&define name string-or-null-p [&optional [&not keywordp] sexp &optional [&not keywordp] sexp &optional [&not keywordp] sexp] [&rest [keywordp sexp]] def-body) defalias easy-mmode-define-global-mode define-globalized-minor-mode define-global-minor-mode] 5)
#@1444 Make a global mode GLOBAL-MODE corresponding to buffer-local minor MODE.
TURN-ON is a function that will be called with no args in every buffer
  and that should try to turn MODE on if applicable for that buffer.
Each of KEY VALUE is a pair of CL-style keyword arguments.  As
  the minor mode defined by this function is always global, any
  :global keyword is ignored.  Other keywords have the same
  meaning as in `define-minor-mode', which see.  In particular,
  :group specifies the custom group.  The most useful keywords
  are those that are passed on to the `defcustom'.  It normally
  makes no sense to pass the :lighter or :keymap keywords to
  `define-globalized-minor-mode', since these are usually passed
  to the buffer-local version of the minor mode.
BODY contains code to execute each time the mode is enabled or disabled.
  It is executed after toggling the mode, and before running GLOBAL-MODE-hook.

If MODE's set-up depends on the major mode in effect when it was
enabled, then disabling and reenabling MODE should make MODE work
correctly with the current major mode.  This is important to
prevent problems with derived modes, that is, major modes that
call another major mode in their body.

When a major mode is initialized, MODE is actually turned on just
after running the major mode's hook.  However, MODE is not turned
on if the hook has explicitly disabled it.

(fn GLOBAL-MODE MODE TURN-ON [KEY VALUE]... BODY...)
(defalias 'define-globalized-minor-mode '(macro . #[(global-mode mode turn-on &rest body) "\306!\306\n!\307\n!\307!\310\211@A\311	\312P!B\311	\313P!C\311	\314P!D\311	\315P!E\311\316P!F\311\317P!G\311\306\n!\320P!H\310I\321J@\211I!\203\226J\211AJ\210I\322\267\202\200@\323J\211AJ\242D\244@\202LJ\211AJ\210\202LIABAJ\211AJ\242ABA\202L\324\211\325\326D\327BB\330\331H\332BB\333\326HDD\257\334\335\336\f
\fK\n\f&\337\340\341@A\237\342\324\343\344\326CDE\343\345\326DDE\343\346\326EDEF\347\350\326CDE\347\351\326DDE\347\352\326EDE\257\353\354\355\356\342\357\360KDD\361\n\211\362BEFEEDJ$BBBBB\330\363G\364BB\365G\310\366G\367BBF\325\326GD\370\326DF\343\326FD\326GDE\331B\371BB\365C\310\372\373BDC\366B\374BB\353\375\361\376\355\356\377G\377\201LH\201MBB\342\n\324\n\201NB\357\360KDDE\357\360KDDFEE\366H\201OBBFEEFF\325\326CD\201P\326DF\365D\310CC\347\201Q\326DDE\257\325\326DD\201R\326DF\365E\310\201S\326BD\201TBB\343\201U\326DDE\257\325\326ED\201V\326DF\257.\207" [global-mode global-mode-name mode mode-name pretty-name pretty-global-name symbol-name easy-mmode-pretty-mode-name nil intern "-buffers" "-enable-in-buffers" "-check-buffers" "-cmhh" "-hook" "-set-explicitly" "-major-mode" keywordp #s(hash-table size 2 test eq rehash-size 1.5 rehash-threshold 0.8125 purecopy t data (:group 101 :global 118)) :group progn put quote ('globalized-minor-mode t) :autoload-end defvar (nil) make-variable-buffer-local define-minor-mode format "Toggle %s in all buffers.\nWith prefix ARG, enable %s if ARG is positive;\notherwise, disable it.  If called from Lisp, enable the mode if\nARG is omitted or nil.\n\n%s is enabled in all buffers where\n`%s' would do it.\nSee `%s' for more information on %s." :global t append if add-hook 'after-change-major-mode-hook 'find-file-hook 'change-major-mode-hook remove-hook 'after-change-major-mode-hook 'find-file-hook 'change-major-mode-hook dolist (buf (buffer-list)) with-current-buffer buf funcall function when (-1) defvar-local (nil) defun setq (t) 'definition-name (nil) let buffers (nil) (buf buffers) (buffer-live-p buf) unless group extra-keywords MODE-buffers MODE-enable-in-buffers MODE-check-buffers MODE-cmhh minor-MODE-hook MODE-set-explicitly MODE-major-mode keyw body turn-on eq (major-mode) (-1) (major-mode) 'definition-name 'post-command-hook 'definition-name add-to-list ((current-buffer)) 'post-command-hook 'definition-name] 33 (#$ . 10483)]))
(byte-code "\300\301\302\303#\300\207" [function-put define-globalized-minor-mode doc-string-elt 2] 4)
(defalias 'easy-mmode-set-keymap-parents #[(m parents) "\302	A\203
\303	!\202	@\"\207" [m parents set-keymap-parent make-composed-keymap] 4])
#@590 Return a keymap built from bindings BS.
BS must be a list of (KEY . BINDING) where
KEY and BINDINGS are suitable for `define-key'.
Optional NAME is passed to `make-sparse-keymap'.
Optional map M can be used to modify an existing map.
ARGS is a list of additional keyword arguments.

Valid keywords and arguments are:

  :name      Name of the keymap; overrides NAME argument.
  :dense     Non-nil for a dense keymap.
  :inherit   Parent keymap.
  :group     Ignored.
  :suppress  Non-nil to call `suppress-keymap' on keymap,
             `nodigits' to suppress digits as prefix arguments.
(defalias 'easy-mmode-define-keymap #[(bs &optional name m args) "\306\211\211\203=\211A\242\211A\242\211\307\267\2024\f\2029\f\2029\f\2029\f\2029\2029\310\311
\"\210*\202\312!\204]\313\"	\203W\314!\202[\315!\203i\316\317=\"\210\306\211\203\374@\211@A\211:\203\214\202\217C\306\211\203\362@\2119\203\255\320
$\210\202\351\204\307\312\321
\"!\204\351\322
#\210\202\351\321
\"\211?\206\335\247\206\335\323=)\203\351\322
#\210A\211\204\227,A\211\204t*\312\n!\203\f\324\n\"\210\202\n:\203\325\n\"\210+\207" [suppress dense inherit args val key nil #s(hash-table size 5 test eq rehash-size 1.5 rehash-threshold 0.8125 purecopy t data (:name 28 :dense 34 :inherit 39 :suppress 44 :group 49)) message "Unknown argument %s in defmap" keymapp append make-keymap make-sparse-keymap suppress-keymap nodigits substitute-key-definition lookup-key define-key undefined set-keymap-parent easy-mmode-set-keymap-parents name m bs b --dolist-tail-- binding keys global-map o] 6 (#$ . 14685)])
#@172 Define a constant M whose value is the result of `easy-mmode-define-keymap'.
The M, BS, and ARGS arguments are as per that function.  DOC is
the constant's documentation.
(defalias 'easy-mmode-defmap '(macro . #[(m bs doc &rest args) "\304\305	\306\307\310\311DDE\312\nB\257F\207" [m bs args doc defconst easy-mmode-define-keymap nil if boundp quote list] 9 (#$ . 16387)]))
(byte-code "\300\301\302\303#\300\207" [function-put easy-mmode-defmap lisp-indent-function 1] 4)
(defalias 'easy-mmode-define-syntax #[(css args) "\306\307\310\"!\307\311\"\312\211\203?
@\211@\fA\313!\203/\314\315\"\210\2027\316\n#\210*
A\211\204*	\203S\317\n	9\203P	J\202Q	\"\210\n*\207" [args parent st css cs --dolist-tail-- make-syntax-table plist-get :copy :inherit nil sequencep mapc #[(c) "\303	\n#\207" [c syntax st modify-syntax-entry] 4] modify-syntax-entry set-char-table-parent syntax char] 5])
#@113 Define variable ST as a syntax-table.
CSS contains a list of syntax specifications of the form (CHAR . SYNTAX).
(defalias 'easy-mmode-defsyntax '(macro . #[(st css doc &rest args) "\304\305\306\307	\310\nBEFE\207" [st css args doc progn (autoload 'easy-mmode-define-syntax "easy-mmode") defconst easy-mmode-define-syntax list] 8 (#$ . 17311)]))
(byte-code "\300\301\302\303#\300\207" [function-put easy-mmode-defsyntax lisp-indent-function 1] 4)
#@691 Define BASE-next and BASE-prev to navigate in the buffer.
RE determines the places the commands should move point to.
NAME should describe the entities matched by RE.  It is used to build
  the docstrings of the two functions.
BASE-next also tries to make sure that the whole entry is visible by
  searching for its end (by calling ENDFUN if provided or by looking for
  the next entry) and recentering if necessary.
ENDFUN should return the end position (with or without moving point).
NARROWFUN non-nil means to check for narrowing before moving, and if
found, do `widen' first and then call NARROWFUN with no args after moving.
BODY is executed after moving to the destination location.
(defalias 'easy-mmode-define-navigation '(macro . #[(base re &optional name endfun narrowfun &rest body) "\306!\307	\310P!\307	\311P!\312
\204	\313\314\315\316\317
\"\320\321\322\323\n\324B\322\3258D\326BB\f\322\327\3308\331BBD\322\3258D\332\3339\205K\334\3359DD\336BBD\337\340
EF\341\342\343\344\345\333\3469\203i\334\3359DD\202o\3308\347BBD\350BBDC\351BBE\257!:BBBBB\257\352\353D\354\353DF\314\n\355\316\356
\206\230	\"\357\360\322\361\362B\f\363\3648\365BB\337\366
EE!:BBBB\257\352\353\nD\367\353DF\257,\207" [base base-name prev-sym next-sym when-narrowed name symbol-name intern "-prev" "-next" #[(body) "\204	\207\302\303	\304\305\306\307DDEF\207" [narrowfun body let ((was-narrowed (prog1 (buffer-narrowed-p) (widen)))) when was-narrowed funcall function] 8] progn defun (&optional count) format "Go to the next COUNT'th %s.\nInteractively, COUNT is the prefix numeric argument, and defaults to 1." (interactive "p") (unless count (setq count 1)) if (< count 0) ((- count)) looking-at ((setq count (1+ count))) not re-search-forward (nil t count) goto-char or funcall function ((point-max)) user-error "No next %s" (goto-char (match-beginning 0)) when (and (eq (current-buffer) (window-buffer)) (called-interactively-p 'interactive)) let endpt save-excursion (nil t 2) ((point-max)) ((unless (pos-visible-in-window-p endpt nil t) (let ((ws (window-start))) (recenter '(0)) (if (< (window-start) ws) (set-window-start nil ws))))) put quote 'definition-name (&optional count) "Go to the previous COUNT'th %s.\nInteractively, COUNT is the prefix numeric argument, and defaults to 1." (interactive "p") (unless count (setq count 1)) (< count 0) ((- count)) unless re-search-backward (nil t count) "No previous %s" 'definition-name re endfun body] 25 (#$ . 17766)]))
(byte-code "\300\301\302\303#\304\301\305\306#\210\307\310!\207" [function-put easy-mmode-define-navigation lisp-indent-function 5 put edebug-form-spec (exp exp exp def-form def-form def-body) provide easy-mmode] 5)

Zerion Mini Shell 1.0