%PDF- <> %âãÏÓ endobj 2 0 obj <> endobj 3 0 obj <>/ExtGState<>/ProcSet[/PDF/Text/ImageB/ImageC/ImageI] >>/Annots[ 28 0 R 29 0 R] /MediaBox[ 0 0 595.5 842.25] /Contents 4 0 R/Group<>/Tabs/S>> endobj ºaâÚÎΞ-ÌE1ÍØÄ÷{òò2ÿ ÛÖ^ÔÀá TÎ{¦?§®¥kuµùÕ5sLOšuY>endobj 2 0 obj<>endobj 2 0 obj<>endobj 2 0 obj<>endobj 2 0 obj<> endobj 2 0 obj<>endobj 2 0 obj<>es 3 0 R>> endobj 2 0 obj<> ox[ 0.000000 0.000000 609.600000 935.600000]/Fi endobj 3 0 obj<> endobj 7 1 obj<>/ProcSet[/PDF/Text/ImageB/ImageC/ImageI]>>/Subtype/Form>> stream
;ELC ;;; Compiled ;;; in Emacs version 25.2.1 ;;; 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. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; #@232 If non-nil, function applied to literal strings before they are inserted. It should take strings and characters and return them transformed, or nil which means no transformation. Typical examples might be `upcase' or `capitalize'. (defvar skeleton-transformation-function 'identity (#$ . 411)) (byte-code "\300\301\302\"\210\303\302\304\305#\207" [defvaralias skeleton-transformation skeleton-transformation-function put variable-interactive "aTransformation function: "] 4) #@309 Controls wrapping behavior of functions created with `define-skeleton'. When the region is visible (due to `transient-mark-mode' or marking a region with the mouse) and this is non-nil and the function was called without an explicit ARG, then the ARG defaults to -1, i.e. wrapping around the visible region. (defvar skeleton-autowrap t (#$ . 893)) (make-obsolete-variable 'skeleton-autowrap nil "24.5") #@71 If non-nil, make sure that the skeleton inserted ends with a newline. (defvar skeleton-end-newline t (#$ . 1302)) #@132 Hook called at end of skeleton but before going to point of interest. The variables `v1' and `v2' are still set when calling this. (defvar skeleton-end-hook nil (#$ . 1423)) #@71 Function for transforming a skeleton proxy's aliases' variable value. (defvar skeleton-filter-function 'identity (#$ . 1603)) (defvaralias 'skeleton-filter 'skeleton-filter-function) #@68 When non-nil untabifies when deleting backwards with element -ARG. (defvar skeleton-untabify nil (#$ . 1792)) #@107 When non-nil, indent rigidly under current line for element `\n'. Else use mode's `indent-line-function'. (defvar skeleton-newline-indent-rigidly nil (#$ . 1909)) #@240 A buffer-local varlist (see `let') of mode specific skeleton elements. These variables are bound while interpreting a skeleton. Their value may in turn be any valid skeleton element if they are themselves to be used as skeleton elements. (defvar skeleton-further-elements nil (#$ . 2079)) (make-variable-buffer-local 'skeleton-further-elements) #@58 Replacement for %s in prompts of recursive subskeletons. (defvar skeleton-subprompt (substitute-command-keys "RET, \\<minibuffer-local-map>\\[abort-recursive-edit] or \\[help-command]") (#$ . 2431)) #@65 If non-nil `define-skeleton' will override previous definition. (defvar skeleton-debug nil (#$ . 2636)) #@206 List of positions marked with @, after skeleton insertion. The list describes the most recent skeleton insertion, and its elements are integer buffer positions in the reverse order of the insertion order. (defvar skeleton-positions nil (#$ . 2747)) (put 'skeleton-edebug-spec 'edebug-form-spec '([&or null stringp (stringp &rest stringp) [[¬ atom] def-form]] &rest &or "n" "_" "-" ">" "@" "&" "!" "resume:" ("quote" def-form) skeleton-edebug-spec def-form)) #@156 Define a user-configurable COMMAND that enters a statement skeleton. DOCUMENTATION is that of the command. SKELETON is as defined under `skeleton-insert'. (defalias 'define-skeleton '(macro . #[(command documentation &rest skeleton) "\203 \nL\210\304\305\306 D\307BB\310 \311\312\313\"\203 \314\202 \315\315\316R\317\320\306\nD\321BB\257E\207" [skeleton-debug command skeleton documentation progn put quote ('no-self-insert t) defun (&optional str arg) string-match "\n\\'" "" "\n" "This is a skeleton command (see `skeleton-insert').\nNormally the skeleton text is inserted at point, with nothing \"inside\".\nIf there is a highlighted region, the skeleton text is wrapped\naround the region text.\n\nA prefix argument ARG says to wrap the skeleton around the next ARG words.\nA prefix argument of -1 says to wrap around region, even if not highlighted.\nA prefix argument of zero says to wrap around zero words---that is, nothing.\nThis is a way of overriding the use of a highlighted region." (interactive "*P\nP") skeleton-proxy-new (str arg)] 10 (#$ . 3215)])) (byte-code "\300\301\302\303#\210\304\301\305\306#\207" [function-put define-skeleton doc-string-elt 2 put edebug-form-spec (&define name stringp skeleton-edebug-spec)] 4) #@493 Insert SKELETON. Prefix ARG allows wrapping around words or regions (see `skeleton-insert'). If no ARG was given, but the region is visible, ARG defaults to -1 depending on `skeleton-autowrap'. An ARG of M-0 will prevent this just for once. This command can also be an abbrev expansion (3rd and 4th columns in \[edit-abbrevs] buffer: "" command-name). Optional second argument STR may also be a string which will be the value of `str' whereas the skeleton's interactor is then ignored. (defalias 'skeleton-proxy-new #[(skeleton &optional str arg) "\306 !\n\204\f \203 \307\n\206 !\202. \f\205. \310=\204* \f\205. \205. \311 \210\312;\2056 #\210\313\207" [skeleton-filter-function skeleton arg current-prefix-arg skeleton-autowrap last-command skeleton-insert prefix-numeric-value mouse-drag-region deactivate-mark -1 t transient-mark-mode mark-active str] 4 (#$ . 4468)]) #@3445 Insert the complex statement skeleton SKELETON describes very concisely. With optional second argument REGIONS, wrap first interesting point (`_') in skeleton around next REGIONS words, if REGIONS is positive. If REGIONS is negative, wrap REGIONS preceding interregions into first REGIONS interesting positions (successive `_'s) in skeleton. An interregion is the stretch of text between two contiguous marked points. If you marked A B C [] (where [] is the cursor) in alphabetical order, the 3 interregions are simply the last 3 regions. But if you marked B A [] C, the interregions are B-A, A-[], []-C. The optional third argument STR, if specified, is the value for the variable `str' within the skeleton. When this is non-nil, the interactor gets ignored, and this should be a valid skeleton element. When done with skeleton, but before going back to `_'-point, add a newline (unless `skeleton-end-newline' is nil) and run the hook `skeleton-end-hook'. SKELETON is made up as (INTERACTOR ELEMENT ...). INTERACTOR may be nil if not needed, a prompt-string or an expression for complex read functions. If ELEMENT is a string or a character it gets inserted (see also `skeleton-transformation-function'). Other possibilities are: \n go to next line and indent according to mode, unless this is the first/last element of a skeleton and point is at bol/eol _ interesting point, interregion here - interesting point, no interregion interaction, overrides interesting point set by _ > indent line (or interregion if > _) according to major mode @ add position to `skeleton-positions' & do next ELEMENT if previous moved point | do next ELEMENT if previous didn't move point -NUM delete NUM preceding characters (see `skeleton-untabify') resume: skipped, continue here if quit is signaled nil skipped After termination, point will be positioned at the last occurrence of - or at the first occurrence of _ or at the end of the inserted text. Note that \n as the last element of the skeleton only inserts a newline if not at eol. If you want to unconditionally insert a newline at the end of the skeleton, use "\n" instead. Likewise with \n as the first element when at bol. Further elements can be defined via `skeleton-further-elements'. ELEMENT may itself be a SKELETON with an INTERACTOR. The user is prompted repeatedly for different inputs. The SKELETON is processed as often as the user enters a non-empty string. \[keyboard-quit] terminates skeleton insertion, but continues after `resume:' and positions at `_' if any. If INTERACTOR in such a subskeleton is a prompt-string which contains a ".. %s .." it is formatted with `skeleton-subprompt'. Such an INTERACTOR may also be a list of strings with the subskeleton being repeated once for each string. Quoted Lisp expressions are evaluated for their side-effects. Other Lisp expressions are evaluated and the value treated as above. Note that expressions may not return t since this implies an endless loop. Modes can define other symbols by locally setting them to any valid skeleton element. The following local variables are available: str first time: read a string according to INTERACTOR then: insert previously read string once more help help-form during interaction with the user or nil input initial input (string or cons with index) while reading str v1, v2 local variables for memorizing anything you want (defalias 'skeleton-insert #[(skeleton &optional regions str) "\211\203X \306V\203 \307`\310\"\212\311 !\210\312 )D\202J [\313 \nB\307`\310\"C\f\203E \306V\203E \307\f\211A\242\310\"B S\202* \314\315\"*\211\203X @b\203X A`\316\211\211\211\211\211\211\316\317\216\320\321 \"!\320\322 \"\"\323#\316$!\203\246 !\211A!\242\324\"\211A\"\242DD$B$\202\210 \325\326$\327\324#DDE!.\207" [regions skeleton-regions mark-ring l2 l1 v2 0 copy-marker t forward-word-strictly point-marker mark-marker sort < nil #[nil "l\204 \203 \303 \210\304\305!\210\306\307!\210\310 !\204 b\210\311\307!\210\n\205&