;ELC ;;; Compiled by cyd@localhost on Mon Apr 23 22:21:06 2007 ;;; from file /home/cyd/emacs/lisp/replace.el ;;; in Emacs version 22.0.99 ;;; with all optimizations. ;;; This file uses dynamic docstrings, first added in Emacs 19.29. (if (and (boundp 'emacs-version) (< (aref emacs-version (1- (length emacs-version))) ?A) (or (and (boundp 'epoch::version) epoch::version) (string-lessp emacs-version "19.29"))) (error "`replace.el' was compiled for Emacs 19.29 or later")) ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; #@70 *Non-nil means `query-replace' should preserve case in replacements. (custom-declare-variable 'case-replace 't '(#$ . -561) :type 'boolean :group 'matching) (byte-code "\301B\302\301!\204\303\301\304\"\210\304\207" [current-load-list query-replace-history default-boundp set-default nil] 3) #@150 Default values of FROM-STRING and TO-STRING for `query-replace'. This is a cons cell (FROM-STRING . TO-STRING), or nil if there is no default value. (defvar query-replace-defaults nil (#$ . 863)) #@98 Non-nil means `query-replace' uses the last search string. That becomes the "string to replace". (defvar query-replace-interactive nil (#$ . 1065)) #@220 History list to use for the FROM argument of `query-replace' commands. The value of this variable should be a symbol; that symbol is used as a variable to hold a history list for the strings or patterns to be replaced. (custom-declare-variable 'query-replace-from-history-variable ''query-replace-history '(#$ . 1220) :group 'matching :type 'symbol :version "20.3") #@211 History list to use for the TO argument of `query-replace' commands. The value of this variable should be a symbol; that symbol is used as a variable to hold a history list for replacement strings or patterns. (custom-declare-variable 'query-replace-to-history-variable ''query-replace-history '(#$ . 1593) :group 'matching :type 'symbol :version "20.3") #@70 *Non-nil means `query-replace' and friends ignore read-only matches. (custom-declare-variable 'query-replace-skip-read-only 'nil '(#$ . -1954) :type 'boolean :group 'matching :version "22.1") #@63 *Non-nil means to highlight matches during query replacement. (custom-declare-variable 'query-replace-highlight 't '(#$ . -2152) :type 'boolean :group 'matching) #@246 *Controls the lazy-highlighting during query replacements. When non-nil, all text in the buffer matching the current match is highlighted lazily using isearch lazy highlighting (see `lazy-highlight-initial-delay' and `lazy-highlight-interval'). (custom-declare-variable 'query-replace-lazy-highlight 't '(#$ . -2321) :type 'boolean :group 'lazy-highlight :group 'matching :version "22.1") (custom-declare-face 'query-replace '((t (:inherit isearch))) "Face for highlighting query replacement matches." :group 'matching :version "22.1") (defalias 'query-replace-descr #[(string) "\301\302\303#\207" [string mapconcat isearch-text-char-description ""] 4]) #@172 Query and return the `from' argument of a query-replace operation. The return value can also be a pair (FROM . TO) indicating that the user wants to replace FROM with TO. (defalias 'query-replace-read-from #[(prompt regexp-flag) "\203 \203\f\n\202 @\207\306\212\307 \203'\310\311\312 @!\312 A!$\202,\310\313\"\306\211\211\306\314&)\315G!\203O \203O @\316 A \"B\202\212\317\306\314$\210 \203\210\320\321\"\203\210\322\323\"\211\324\230\203x\325\326!\210\202\203\327\230\203\203\325\330!\210\331\332!\210)*\207" [query-replace-interactive regexp-flag regexp-search-ring search-ring history-add-new-input query-replace-defaults nil read-from-minibuffer format "%s (default %s -> %s): " query-replace-descr "%s: " t zerop query-replace-compile-replacement add-to-history string-match "\\(\\`\\|[^\\]\\)\\(\\\\\\\\\\)*\\(\\\\[nt]\\)" match-string 3 "\\n" message "Note: `\\n' here doesn't match a newline; to do that, type C-q C-j instead" "\\t" "Note: `\\t' here doesn't match a tab; to do that, just type TAB" sit-for 2 prompt query-replace-from-history-variable from match] 9 (#$ . 2983)]) #@136 Maybe convert a regexp replacement TO to Lisp. Returns a list suitable for `perform-replace' if necessary, the original string if not. (defalias 'query-replace-compile-replacement #[(to regexp-flag) "\203\232\306\307 \"\203\232\310\211\211\311\225 \311\f\312ZO B \fSH \f\310O\n\313=\2034\314 B\202v\n\315=\203v\316 !\317\f@D B\f@9\204[\f@\242\320=\203m \311H\321U\204m\306\322 \fA#\fA=\203m\fAT\202o\fA \310O)\306\307 \"\204\323\324 B\"\237\325 !\210\326 A\203\225\327 B\202\227 @+B\207 \207" [regexp-flag to char list pos end string-match "\\(\\`\\|[^\\]\\)\\(\\\\\\\\\\)*\\\\[,#]" nil 0 2 35 (number-to-string replace-count) 44 read-from-string replace-quote quote 40 " " delete "" replace-match-string-symbols replace-eval-replacement concat] 4 (#$ . 4120)]) #@66 Query and return the `to' argument of a query-replace operation. (defalias 'query-replace-read-to #[(from prompt regexp-flag) "\306\212\307\310\311\312 \313\n!#\307\211\211 \n\314&\315 \f\307\314$\210\n\fB\f+\"\207" [history-add-new-input prompt from query-replace-to-history-variable to query-replace-defaults query-replace-compile-replacement nil read-from-minibuffer format "%s %s with: " query-replace-descr t add-to-history regexp-flag] 9 (#$ . 4918)]) (defalias 'query-replace-read-args #[(prompt regexp-flag &optional noerror) "\204\306 \210\307 \n\"\211:\203 A @\202\310 \n# \f E*\207" [noerror prompt regexp-flag from to current-prefix-arg barf-if-buffer-read-only query-replace-read-from query-replace-read-to] 5]) #@1178 Replace some occurrences of FROM-STRING with TO-STRING. As each match is found, the user must type a character saying what to do with it. For directions, type \[help-command] at that time. In Transient Mark mode, if the mark is active, operate on the contents of the region. Otherwise, operate from point to the end of the buffer. If `query-replace-interactive' is non-nil, the last incremental search string is used as FROM-STRING--you don't have to specify it with the minibuffer. Matching is independent of case if `case-fold-search' is non-nil and FROM-STRING has no uppercase letters. Replacement transfers the case pattern of the old text to the new text, if `case-replace' and `case-fold-search' are non-nil and FROM-STRING has no uppercase letters. (Transferring the case pattern means that if the old text matched is all caps, or capitalized, then its replacement is upcased or capitalized.) Third arg DELIMITED (prefix arg if interactive), if non-nil, means replace only matches surrounded by word boundaries. Fourth and fifth arg START and END specify the region to operate on. To customize possible responses, change the "bindings" in `query-replace-map'. (defalias 'query-replace #[(from-string to-string &optional delimited start end) "\305 \306\307\n\307\211 \f& \207" [from-string to-string delimited start end perform-replace t nil] 10 (#$ . 5668) (let ((common (query-replace-read-args (if (and transient-mark-mode mark-active) "Query replace in region" "Query replace") nil))) (list (nth 0 common) (nth 1 common) (nth 2 common) (if (and transient-mark-mode mark-active) (region-beginning)) (if (and transient-mark-mode mark-active) (region-end))))]) (define-key esc-map "%" 'query-replace) #@2129 Replace some things after point matching REGEXP with TO-STRING. As each match is found, the user must type a character saying what to do with it. For directions, type \[help-command] at that time. In Transient Mark mode, if the mark is active, operate on the contents of the region. Otherwise, operate from point to the end of the buffer. If `query-replace-interactive' is non-nil, the last incremental search regexp is used as REGEXP--you don't have to specify it with the minibuffer. Matching is independent of case if `case-fold-search' is non-nil and REGEXP has no uppercase letters. Replacement transfers the case pattern of the old text to the new text, if `case-replace' and `case-fold-search' are non-nil and REGEXP has no uppercase letters. (Transferring the case pattern means that if the old text matched is all caps, or capitalized, then its replacement is upcased or capitalized.) Third arg DELIMITED (prefix arg if interactive), if non-nil, means replace only matches surrounded by word boundaries. Fourth and fifth arg START and END specify the region to operate on. In TO-STRING, `\&' stands for whatever matched the whole of REGEXP, and `\=\N' (where N is a digit) stands for whatever what matched the Nth `\(...\)' in REGEXP. `\?' lets you edit the replacement text in the minibuffer at the given position for each replacement. In interactive calls, the replacement text can contain `\,' followed by a Lisp expression. Each replacement evaluates that expression to compute the replacement string. Inside of that expression, `\&' is a string denoting the whole match as a string, `\N' for a partial match, `\#&' and `\#N' for the whole or a partial match converted to a number with `string-to-number', and `\#' itself for the number of replacements done so far (starting with zero). If the replacement expression is a symbol, write a space after it to terminate it. One space there, if any, will be discarded. When using those Lisp features interactively in the replacement text, TO-STRING is actually made a list instead of a string. Use \[repeat-complex-command] after this command for details. (defalias 'query-replace-regexp #[(regexp to-string &optional delimited start end) "\305 \306\211\n\307\211 \f& \207" [regexp to-string delimited start end perform-replace t nil] 10 (#$ . 7395) (let ((common (query-replace-read-args (if (and transient-mark-mode mark-active) "Query replace regexp in region" "Query replace regexp") t))) (list (nth 0 common) (nth 1 common) (nth 2 common) (if (and transient-mark-mode mark-active) (region-beginning)) (if (and transient-mark-mode mark-active) (region-end))))]) (define-key esc-map [67108901] 'query-replace-regexp) #@1653 Replace some things after point matching REGEXP with the result of TO-EXPR. Interactive use of this function is deprecated in favor of the `\,' feature of `query-replace-regexp'. For non-interactive use, a loop using `search-forward-regexp' and `replace-match' is preferred. As each match is found, the user must type a character saying what to do with it. For directions, type \[help-command] at that time. TO-EXPR is a Lisp expression evaluated to compute each replacement. It may reference `replace-count' to get the number of replacements already made. If the result of TO-EXPR is not a string, it is converted to one using `prin1-to-string' with the NOESCAPE argument (which see). For convenience, when entering TO-EXPR interactively, you can use `\&' or `\0' to stand for whatever matched the whole of REGEXP, and `\N' (where N is a digit) to stand for whatever matched the Nth `\(...\)' in REGEXP. Use `\#&' or `\#N' if you want a number instead of a string. In interactive use, `\#' in itself stands for `replace-count'. In Transient Mark mode, if the mark is active, operate on the contents of the region. Otherwise, operate from point to the end of the buffer. If `query-replace-interactive' is non-nil, the last incremental search regexp is used as REGEXP--you don't have to specify it with the minibuffer. Preserves case in each replacement if `case-replace' and `case-fold-search' are non-nil and REGEXP has no uppercase letters. Third arg DELIMITED (prefix arg if interactive), if non-nil, means replace only matches that are surrounded by word boundaries. Fourth and fifth arg START and END specify the region to operate on. (defalias 'query-replace-regexp-eval #[(regexp to-expr &optional delimited start end) "\305\306 B\307\310\n\311\211 \f& \207" [regexp to-expr delimited start end perform-replace replace-eval-replacement t literal nil] 10 (#$ . 10096) (progn (barf-if-buffer-read-only) (let* ((from (let ((query-replace-to-history-variable nil)) (query-replace-read-from "Query replace regexp" t))) (to (list (read-from-minibuffer (format "Query replace regexp %s with eval: " (query-replace-descr from)) nil nil t query-replace-to-history-variable from t)))) (replace-match-string-symbols to) (list from (car to) current-prefix-arg (if (and transient-mark-mode mark-active) (region-beginning)) (if (and transient-mark-mode mark-active) (region-end)))))]) (make-obsolete 'query-replace-regexp-eval "for interactive use, use the special `\\,' feature of\n`query-replace-regexp' instead. Non-interactively, a loop\nusing `search-forward-regexp' and `replace-match' is preferred." "22.1") #@986 Replace some matches for REGEXP with various strings, in rotation. The second argument TO-STRINGS contains the replacement strings, separated by spaces. Third arg DELIMITED (prefix arg if interactive), if non-nil, means replace only matches surrounded by word boundaries. This command works like `query-replace-regexp' except that each successive replacement uses the next successive replacement string, wrapping around from the last such string to the first. In Transient Mark mode, if the mark is active, operate on the contents of the region. Otherwise, operate from point to the end of the buffer. Non-interactively, TO-STRINGS may be a list of replacement strings. If `query-replace-interactive' is non-nil, the last incremental search regexp is used as REGEXP--you don't have to specify it with the minibuffer. A prefix argument N says to use each replacement string N times before rotating to the next. Fourth and fifth arg START and END specify the region to operate on. (defalias 'map-query-replace-regexp #[(regexp to-strings &optional n start end) "\306 <\203\f \202? G\307U\204?\310\311 \"\2033\312 \307\310\311 \"OC\" \310\311 \"T\306O\211\202 \312 C\"\313\211\202 \314\n\315\211\306 \306\f & )\207" [replacements to-strings regexp n start end nil 0 string-match " " append "" perform-replace t] 11 (#$ . 12725) (let* ((from (if query-replace-interactive (car regexp-search-ring) (read-from-minibuffer "Map query replace (regexp): " nil nil nil 'query-replace-history nil t))) (to (read-from-minibuffer (format "Query replace %s with (space-separated strings): " (query-replace-descr from)) nil nil nil 'query-replace-history from t))) (list from to (and current-prefix-arg (prefix-numeric-value current-prefix-arg)) (if (and transient-mark-mode mark-active) (region-beginning)) (if (and transient-mark-mode mark-active) (region-end))))]) #@1153 Replace occurrences of FROM-STRING with TO-STRING. Preserve case in each match if `case-replace' and `case-fold-search' are non-nil and FROM-STRING has no uppercase letters. (Preserving case means that if the string matched is all caps, or capitalized, then its replacement is upcased or capitalized.) In Transient Mark mode, if the mark is active, operate on the contents of the region. Otherwise, operate from point to the end of the buffer. Third arg DELIMITED (prefix arg if interactive), if non-nil, means replace only matches surrounded by word boundaries. Fourth and fifth arg START and END specify the region to operate on. If `query-replace-interactive' is non-nil, the last incremental search string is used as FROM-STRING--you don't have to specify it with the minibuffer. This function is usually the wrong thing to use in a Lisp program. What you probably want is a loop like this: (while (search-forward FROM-STRING nil t) (replace-match TO-STRING nil t)) which will run faster and will not set the mark or print anything. (You may need a more complex loop if FROM-STRING can match the null string and TO-STRING is also null.) (defalias 'replace-string #[(from-string to-string &optional delimited start end) "\305 \306\211\n\306\211 \f& \207" [from-string to-string delimited start end perform-replace nil] 10 (#$ . 14606) (let ((common (query-replace-read-args (if (and transient-mark-mode mark-active) "Replace string in region" "Replace string") nil))) (list (nth 0 common) (nth 1 common) (nth 2 common) (if (and transient-mark-mode mark-active) (region-beginning)) (if (and transient-mark-mode mark-active) (region-end))))]) #@2021 Replace things after point matching REGEXP with TO-STRING. Preserve case in each match if `case-replace' and `case-fold-search' are non-nil and REGEXP has no uppercase letters. In Transient Mark mode, if the mark is active, operate on the contents of the region. Otherwise, operate from point to the end of the buffer. Third arg DELIMITED (prefix arg if interactive), if non-nil, means replace only matches surrounded by word boundaries. Fourth and fifth arg START and END specify the region to operate on. In TO-STRING, `\&' stands for whatever matched the whole of REGEXP, and `\=\N' (where N is a digit) stands for whatever what matched the Nth `\(...\)' in REGEXP. `\?' lets you edit the replacement text in the minibuffer at the given position for each replacement. In interactive calls, the replacement text may contain `\,' followed by a Lisp expression used as part of the replacement text. Inside of that expression, `\&' is a string denoting the whole match, `\N' a partial match, `\#&' and `\#N' the respective numeric values from `string-to-number', and `\#' itself for `replace-count', the number of replacements occurred so far. If your Lisp expression is an identifier and the next letter in the replacement string would be interpreted as part of it, you can wrap it with an expression like `\,(or \#)'. Incidentally, for this particular case you may also enter `\#' in the replacement text directly. When using those Lisp features interactively in the replacement text, TO-STRING is actually made a list instead of a string. Use \[repeat-complex-command] after this command for details. If `query-replace-interactive' is non-nil, the last incremental search regexp is used as REGEXP--you don't have to specify it with the minibuffer. This function is usually the wrong thing to use in a Lisp program. What you probably want is a loop like this: (while (re-search-forward REGEXP nil t) (replace-match TO-STRING nil nil)) which will run faster and will not set the mark or print anything. (defalias 'replace-regexp #[(regexp to-string &optional delimited start end) "\305 \306\307\n\306\211 \f& \207" [regexp to-string delimited start end perform-replace nil t] 10 (#$ . 16270) (let ((common (query-replace-read-args (if (and transient-mark-mode mark-active) "Replace regexp in region" "Replace regexp") t))) (list (nth 0 common) (nth 1 common) (nth 2 common) (if (and transient-mark-mode mark-active) (region-beginning)) (if (and transient-mark-mode mark-active) (region-end))))]) #@63 History list for some commands that read regular expressions. (defvar regexp-history nil (#$ . 18790)) (byte-code "\300\301\302\"\210\300\303\304\"\210\300\305\306\"\207" [defalias delete-non-matching-lines keep-lines delete-matching-lines flush-lines count-matches how-many] 3) #@106 Read arguments for `keep-lines' and friends. Prompt for a regexp with PROMPT. Value is a list, (REGEXP). (defalias 'keep-lines-read-args #[(prompt) "\301\302\211\211\303\302\304&\302\211\304F\207" [prompt read-from-minibuffer nil regexp-history t] 8 (#$ . 19076)]) #@1114 Delete all lines except those containing matches for REGEXP. A match split across lines preserves all the lines it lies in. When called from Lisp (and usually interactively as well, see below) applies to all lines starting after point. If REGEXP contains upper case characters (excluding those preceded by `\'), the matching is case-sensitive. Second and third arg RSTART and REND specify the region to operate on. This command operates on (the accessible part of) all lines whose accessible part is entirely contained in the region determined by RSTART and REND. (A newline ending a line counts as part of that line.) Interactively, in Transient Mark mode when the mark is active, operate on all lines whose accessible part is entirely contained in the region. Otherwise, the command applies to all lines starting after point. When calling this function from Lisp, you can pretend that it was called interactively by passing a non-nil INTERACTIVE argument. This function starts looking for the next match from the end of the previous match. Hence, it ignores matches that overlap a previously found match. (defalias 'keep-lines #[(regexp &optional rstart rend interactive) "\203! ^b\210\212 ]b\210n\204m\204\306y\210\307 )\202M\n\203E \203E\f\203E\310 \311 b\210n\204?m\204?\306y\210\307 \202J`\312 b\210\212n\204U\313y\210` \205_\314\315\"` W\203\260\316 \317#\204y |\210\202\224\212\306\224b\210\306y\210`)W\203\223|\210)\212\313y\210`)` W\203b\306\224\306\225U\203b\313u\210\202b+ \320\211\223\210\320\207" [rstart rend interactive transient-mark-mode mark-active case-fold-search 0 point-marker region-beginning region-end point-max-marker 1 isearch-no-upper-case-p t re-search-forward move nil regexp start end] 4 (#$ . 19351) (byte-code "\300 \210\301\302!\207" [barf-if-buffer-read-only keep-lines-read-args "Keep lines (containing match for regexp): "] 2)]) #@1099 Delete lines containing matches for REGEXP. When called from Lisp (and usually when called interactively as well, see below), applies to the part of the buffer after point. The line point is in is deleted if and only if it contains a match for regexp starting after point. If REGEXP contains upper case characters (excluding those preceded by `\'), the matching is case-sensitive. Second and third arg RSTART and REND specify the region to operate on. Lines partially contained in this region are deleted if and only if they contain a match entirely contained in it. Interactively, in Transient Mark mode when the mark is active, operate on the contents of the region. Otherwise, operate from point to the end of (the accessible portion of) the buffer. When calling this function from Lisp, you can pretend that it was called interactively by passing a non-nil INTERACTIVE argument. If a match is split across lines, all the lines it lies in are deleted. They are deleted _before_ looking for the next match. Hence, a match starting on the same line at which another match ended is ignored. (defalias 'flush-lines #[(regexp &optional rstart rend interactive) "\203 ^b\210\306 ]!\2021\n\203) \203)\f\203)\307 \306\310 !\202.`\311 b\210 \205:\312\313\"\212` W\203^\314 \313#\203^\212\315\224b\210\315y\210`)\316y\210`|\210\202<* \317\211\223\210\317\207" [rstart rend interactive transient-mark-mode mark-active case-fold-search copy-marker region-beginning region-end point-max-marker isearch-no-upper-case-p t re-search-forward 0 1 nil regexp] 4 (#$ . 21283) (byte-code "\300 \210\301\302!\207" [barf-if-buffer-read-only keep-lines-read-args "Flush lines (containing match for regexp): "] 2)]) #@781 Print and return number of matches for REGEXP following point. When called from Lisp and INTERACTIVE is omitted or nil, just return the number, do not print it; if INTERACTIVE is t, the function behaves in all respects has if it had been called interactively. If REGEXP contains upper case characters (excluding those preceded by `\'), the matching is case-sensitive. Second and third arg RSTART and REND specify the region to operate on. Interactively, in Transient Mark mode when the mark is active, operate on the contents of the region. Otherwise, operate from point to the end of (the accessible portion of) the buffer. This function starts looking for the next match from the end of the previous match. Hence, it ignores matches that overlap a previously found match. (defalias 'how-many #[(regexp &optional rstart rend interactive) "\212\203 ^b\210 ]\202-\n\203& \203&\f\203&\306 \307 \202*`db\210\310\311 \2058\312\313\"` W\203d`\314 \313#\203d`U\203\\\315u\210\202=T\202=\n\203y\316\317\211\315U\203v\320\202w\321#\210,\207" [rstart rend interactive transient-mark-mode mark-active case-fold-search region-beginning region-end 0 nil isearch-no-upper-case-p t re-search-forward 1 message "%d occurrence%s" "" "s" regexp opoint count] 5 (#$ . 23016) (keep-lines-read-args "How many matches for (regexp): ")]) #@26 Keymap for `occur-mode'. (defvar occur-mode-map (byte-code "\301 \302\303\304#\210\302\305\306#\210\302\307\306#\210\302\310\311#\210\302\312\313#\210\302\314\315#\210\302\316\317#\210\302\320\321#\210\302\322\323#\210\302\324\325#\210\302\326\327#\210\302\330\331#\210\302\332\333#\210)\207" [map make-sparse-keymap define-key [mouse-2] occur-mode-mouse-goto "" occur-mode-goto-occurrence " " "o" occur-mode-goto-occurrence-other-window "" occur-mode-display-occurrence "\356" occur-next "\360" occur-prev "r" occur-rename-buffer "c" clone-buffer "g" revert-buffer "q" quit-window "z" kill-this-buffer "" next-error-follow-minor-mode] 4) (#$ . 24390)) #@93 Arguments to pass to `occur-1' to revert an Occur mode buffer. See `occur-revert-function'. (defvar occur-revert-arguments nil (#$ . 25069)) #@36 Hook run when entering Occur mode. (custom-declare-variable 'occur-mode-hook ''(turn-on-font-lock) '(#$ . 25216) :type 'hook :group 'matching) #@47 Hook run by Occur when there are any matches. (custom-declare-variable 'occur-hook 'nil '(#$ . 25365) :type 'hook :group 'matching) (put 'occur-mode 'mode-class 'special) #@279 Major mode for output from \[occur]. \Move point to one of the items in this buffer, then use \[occur-mode-goto-occurrence] to go to the occurrence that the item refers to. Alternatively, click \[occur-mode-mouse-goto] on an item to go to it. \{occur-mode-map} (defalias 'occur-mode #[nil "\305 \210\306!\210\307\310\311\303!\210\312\311\313!\210\314\315\316\317\320$\210\321\322\323!\207" [occur-mode-map major-mode mode-name revert-buffer-function next-error-function kill-all-local-variables use-local-map occur-mode "Occur" make-local-variable occur-revert-function occur-revert-arguments add-hook change-major-mode-hook font-lock-defontify nil t occur-next-error run-mode-hooks occur-mode-hook] 5 (#$ . 25543) nil]) #@48 Handle `revert-buffer' for Occur mode buffers. (defalias 'occur-revert-function #[(ignore1 ignore2) "\301\302\303\304 C\"\"\207" [occur-revert-arguments apply occur-1 append buffer-name] 5 (#$ . 26292)]) (defalias 'occur-mode-find-occurrence #[nil "\301`\302\"\211\204 \303\304!\210\305\306!!\204\303\307!\210)\207" [pos get-text-property occur-target error "No occurrence on this line" buffer-live-p marker-buffer "Buffer for this occurrence was killed"] 4]) (defalias 'occur-mode-mouse-goto 'occur-mode-goto-occurrence) #@50 Go to the occurrence the current line describes. (defalias 'occur-mode-goto-occurrence #[(&optional event) "\204 \305 \202pr\306\211:\203#\3078:\203\307\202\3108\202)\311 `\312\313F)\313 8)!q\210\212\211:\203K\3078:\203E\307\202F\3108\202Q\311 `\312\313F)\314 8\206j\310 8:\203g\310 8@\202j\310 8)b\210\305 *\315\211\316\317\f!!\210\fb+\207" [event position same-window-regexps same-window-buffer-names pos occur-mode-find-occurrence window-buffer 2 1 selected-window (0 . 0) 0 5 nil pop-to-buffer marker-buffer] 6 (#$ . 26827) (list last-nonmenu-event)]) #@69 Go to the occurrence the current line describes, in another window. (defalias 'occur-mode-goto-occurrence-other-window #[nil "\301 \302\303!!\210b)\207" [pos occur-mode-find-occurrence switch-to-buffer-other-window marker-buffer] 3 (#$ . 27418) nil]) #@70 Display in another window the occurrence the current line describes. (defalias 'occur-mode-display-occurrence #[nil "\306 \307\211\211\310\311 !!\312 \313\314\315 \"r\316\216\317\n!\210 b.\207" [same-window-regexps same-window-buffer-names window pos save-selected-window-alist save-selected-window-window occur-mode-find-occurrence nil display-buffer marker-buffer selected-window mapcar #[(frame) "\301!D\207" [frame frame-selected-window] 3] frame-list ((byte-code "\305\211\203/\n@\306 @!\203(\307 \211A@)!\203(\310 @ \211A@)\"\210\nA\211\204*\307\f!\203:\311\f!\210\305\207" [save-selected-window-alist elt #1=#:--cl-dolist-temp-- x save-selected-window-window nil frame-live-p window-live-p set-frame-selected-window select-window] 4)) select-window] 4 (#$ . 27678) nil]) (defalias 'occur-find-match #[(n search message) "\204\304\305\306V\2058\n`\307\"\211\203#\310 \307\"\203#\n \307\" \203- b\210\2021\311 !\210S\211\202 )\207" [n r search message 1 nil 0 occur-match get-text-property error] 4]) #@65 Move to the Nth (default 1) next match in an Occur mode buffer. (defalias 'occur-next #[(&optional n) "\301\302\303#\207" [n occur-find-match next-single-property-change "No more matches"] 4 (#$ . 28729) "p"]) #@69 Move to the Nth (default 1) previous match in an Occur mode buffer. (defalias 'occur-prev #[(&optional n) "\301\302\303#\207" [n occur-find-match previous-single-property-change "No earlier matches"] 4 (#$ . 28946) "p"]) #@119 Move to the Nth (default 1) next match in an Occur mode buffer. Compatibility function for \[next-error] invocations. (defalias 'occur-next-error #[(&optional argp reset) "rp\306\211\211\307 !\2056\n\205 p=?\2056r q\210\f\203/\203+ \2025\310\2025 \2055 ),\203>p\202C\311\306\211\312#q\210 \203Me\202f\313W\203Y\314 \202f\313V\203e\315 \202f`b\210\316\317!\313V\203x\320\202y\321\322#\210\323p\310\"\211\203\214\324`\"\210)\325 )\207" [extra-test-exclusive extra-test-inclusive avoid-current buffer next-error-function reset nil buffer-name t next-error-find-buffer #[nil "\301=\207" [major-mode occur-mode] 2] 0 line-beginning-position line-end-position occur-find-match abs previous-single-property-change next-single-property-change "No more matches" get-buffer-window set-window-point occur-mode-goto-occurrence argp win] 5 (#$ . 29175) "p"]) (custom-declare-face 'match '((((class color) (min-colors 88) (background light)) :background "yellow") (((class color) (min-colors 88) (background dark)) :background "RoyalBlue3") (((class color) (min-colors 8) (background light)) :background "yellow" :foreground "black") (((class color) (min-colors 8) (background dark)) :background "blue" :foreground "white") (((type tty) (class mono)) :inverse-video t) (t :background "gray")) "Face used to highlight matches permanently." :group 'matching :version "22.1") #@224 *Default number of context lines included around `list-matching-lines' matches. A negative number means to include that many lines before the match. A positive number means to include that many lines both before and after. (custom-declare-variable 'list-matching-lines-default-context-lines '0 '(#$ . -30581) :type 'integer :group 'matching) (defalias 'list-matching-lines 'occur) #@139 *Face used by \[list-matching-lines] to show the text that matches. If the value is nil, don't highlight the matching portions specially. (custom-declare-variable 'list-matching-lines-face ''match '(#$ . -30969) :type 'face :group 'matching) #@133 *Face used by \[list-matching-lines] to show the names of buffers. If the value is nil, don't highlight the buffer names specially. (custom-declare-variable 'list-matching-lines-buffer-name-face ''underline '(#$ . -31218) :type 'face :group 'matching) #@178 *Text properties to discard when copying lines to the *Occur* buffer. The value should be a list of text properties to discard or t, which means to discard all text properties. (custom-declare-variable 'occur-excluded-properties ''(read-only invisible intangible field mouse-face help-echo local-map keymap yank-handler follow-link) '(#$ . -31477) :type '(choice (const :tag "All" t) (repeat symbol)) :group 'matching :version "22.1") (defalias 'occur-accumulate-lines #[(count &optional keep-props) "\212\306V\307\211\211\310!\204\210\f\203m\202o\204\210\f\203&\311\202'\312\\\313 \314  \203R\315\316!\203R\203R\317\n \320\321$\203R\322\323!\203R\323\n \"\210 \203s\321=\204s\n {\324\306G$\210)\202w\325\n \" B\f\203\202\312\202\203\311y\210\202 \237-\207" [count end beg result forwardp keep-props 0 nil zerop -1 1 line-beginning-position line-end-position boundp jit-lock-mode text-property-not-all fontified t fboundp jit-lock-fontify-now remove-list-of-text-properties buffer-substring-no-properties occur-excluded-properties str] 5]) (defalias 'occur-read-primary-args #[nil "@\304 \203\305\306\307 !\"\202\310\311\211\211\300 &\211\312\232\203$ \202%\n* \205-\313 !D\207" [regexp-history default input current-prefix-arg read-from-minibuffer format "List lines matching regexp (default %s): " query-replace-descr "List lines matching regexp: " nil "" prefix-numeric-value] 8]) #@440 Rename the current *Occur* buffer to *Occur: original-buffer-name*. Here `original-buffer-name' is the buffer name were Occur was originally run. When given the prefix argument, or called non-interactively, the renaming will not clobber the existing buffer(s) of that name, but use `generate-new-buffer-name' instead. You can add this to `occur-hook' if you always want a separate *Occur* buffer for each buffer where you invoke `occur'. (defalias 'occur-rename-buffer #[(&optional unique-p interactive-p) "r\305=\203 p\202\306\307!q\210\310\311\312\313 \211AA)@\314#\315Q \206%\f?\")\207" [major-mode occur-revert-arguments x unique-p interactive-p occur-mode get-buffer "*Occur*" rename-buffer "*Occur: " mapconcat buffer-name "/" "*"] 7 (#$ . 32924) "P\np"]) #@630 Show all lines in the current buffer containing a match for REGEXP. This function can not handle matches that span more than one line. Each line is displayed with NLINES lines before and after, or -NLINES before if NLINES is negative. NLINES defaults to `list-matching-lines-default-context-lines'. Interactively it is the prefix arg. The lines are shown in a buffer named `*Occur*'. It serves as a menu to find any of the occurrences in this buffer. \\[describe-mode] in that buffer will explain how. If REGEXP contains upper case characters (excluding those preceded by `\'), the matching is case-sensitive. (defalias 'occur #[(regexp &optional nlines) "\302 pC#\207" [regexp nlines occur-1] 4 (#$ . 33700) (occur-read-primary-args)]) #@248 Show all lines in buffers BUFS containing a match for REGEXP. This function acts on multiple buffers; otherwise, it is exactly like `occur'. When you invoke this command interactively, you must specify the buffer names that you want, one by one. (defalias 'multi-occur #[(bufs regexp &optional nlines) "\303 \n#\207" [regexp nlines bufs occur-1] 4 (#$ . 34464) (byte-code "\304\305p\306#C\307\304 \310=\203\311\202\312\307\306#\211\313\230\204+\314\300 \"\210\202 \315\316\"\237+\317 B\207" [bufs buf ido-ignore-item-temp-list read-buffer-function read-buffer "First buffer to search: " t nil ido-read-buffer "Next buffer to search (C-j to end): " "Next buffer to search (RET to end): " "" add-to-list mapcar get-buffer occur-read-primary-args] 4)]) #@233 Show all lines matching REGEXP in buffers specified by BUFREGEXP. Normally BUFREGEXP matches against each buffer's visited file name, but if you specify a prefix argument, it matches against the buffer name. See also `multi-occur'. (defalias 'multi-occur-in-matching-buffers #[(bufregexp regexp &optional allbufs) "\205\302 \303\304\303\305\306\307 \"\"#\207" [bufregexp regexp occur-1 nil delq mapcar #[(buf) "\203 \303 \304\n!\"\202\305\n!\205\303 \305\n!\"\205\n\207" [allbufs bufregexp buf string-match buffer-name buffer-file-name] 4] buffer-list] 8 (#$ . 35237) (byte-code "@\304\n\203\f\305\202 \306\307\211\211\300%\211\310\232\203 \202 *\311 B\207" [regexp-history default current-prefix-arg input read-from-minibuffer "List lines in buffers whose names match regexp: " "List lines in buffers whose filenames match regexp: " nil "" occur-read-primary-args] 7)]) (defalias 'occur-1 #[(regexp nlines bufs &optional buf-name) "\204\306\307\310\307\311\312 \"\"\311\313\n\"\235\203#r\314!q\210\315 \210)\316!r q\210\317 \210\320\211\321 \210\322%\n &\206A'(\205K\323%\320\")\307*+\320=?& ,\nG- G-Z.\324\325-\211\326U\203r\327\202s\330\331.!\203~\327\202\203\332\333.\"\331,!\203\216\334\202\223\332\335,\",\326U\203\236\327\202\237\336%&\210*%& E/,\337U\203\272\340 !\202\313\341 !\210 0\3201\342\307!\210\343\344!.\207" [buf-name bufs active-bufs occur-buf buffer-undo-list inhibit-read-only "*Occur*" nil delq mapcar #[(buf) "\301!\205\207" [buf buffer-live-p] 2] buffer-name get-buffer rename-uniquely get-buffer-create occur-mode t erase-buffer occur-engine isearch-no-upper-case-p message "Searched %d buffer%s%s; %s match%s for `%s'" 1 "" "s" zerop format " (%d killed)" "no" "%d" "es" 0 kill-buffer display-buffer set-buffer-modified-p run-hooks occur-hook regexp nlines list-matching-lines-default-context-lines case-fold-search list-matching-lines-buffer-name-face list-matching-lines-face occur-excluded-properties count bufcount diff occur-revert-arguments next-error-last-buffer buffer-read-only] 11]) (defalias 'occur-engine-add-prefix #[(lines) "\301\302\"\207" [lines mapcar #[(line) "\301\302Q\207" [line " :" "\n"] 3]] 3]) (defalias 'occur-engine #[(regexp buffers out-buf nlines case-fold-search title-face prefix-face match-face keep-props) "rq\210\306\307 \307\211\203 @\310\f!\203\n\306\311\306\307\211\211\211\312\313rq\210`);<=>?@ABCDr\fq\210 \204M\314\315!\203M \212eb\210m\204\271`A\316E\307\313#\211?\203\243DTD\306\224BC\317A?\"S\\C\212Bb\210\320 @\321 ?)\322 \211>B\307\223\210F\203\271\323\324!\203\271\203\271\325@?\326\313$\203\271\327\330!\203\271\330@?\"\210F\203\332G\313=\204\332@?{=\331\306=GG=$\210\202\342\332@?\"==G\306HIHIW\203\333E=H#\203\334\306\224\306\225\335\336J\205 \337JD\"=$\210\306\225\211H\202\354*\340\341\342\343C\"\335K\205)\344\345\313\346\347\350>\351BBBBBB\"#\341=\346\352C\350>\353\313\354\355& \341\356\350>#QLM\306U\203]L\202\204\340\357\360\361\362M!T[F\"A\237!LC\244M\306V\205\202\360\361MTF\"A!\244\"Nrq\210`Nc\210`OPM\306U\204\236\363c\210-?b\210?\203\263CTC\311y\210\202Qdb\210\202Q*\364D!\204\nD\\rq\210;b\210`\307OP\342\365D\211\311U\203\342\312\202\343\366E\367\f!%c\210`O\334PO\335Q\205\375\370QD\371\fD\"#\210*eb\210).\n A\211\204* \203\372 !\210\n+\207" [out-buf coding globalcount buffers buf #1=#:--cl-dolist-temp-- 0 nil buffer-live-p 1 "" t local-variable-p buffer-file-coding-system re-search-forward count-lines line-beginning-position line-end-position make-marker boundp jit-lock-mode text-property-not-all fontified fboundp jit-lock-fontify-now remove-list-of-text-properties buffer-substring-no-properties string-match add-text-properties append (occur-match t) face apply propertize format "%7d:" (font-lock-face prefix-face) occur-prefix mouse-face (highlight) occur-target (follow-link t help-echo "mouse-2: go to this occurrence") highlight follow-link help-echo "mouse-2: go to this occurrence" "\n" concat occur-engine-add-prefix occur-accumulate-lines abs "-------\n" zerop "%d match%s for \"%s\" in buffer: %s\n" "es" buffer-name font-lock-face occur-title set-buffer-file-coding-system headerpt inhibit-field-text-motion curstring marker endpt begpt origpt matchbeg lines matches regexp keep-props occur-excluded-properties start len match-face prefix-face out-line nlines data end beg title-face] 13]) #@40 Help message while in `query-replace'. (defconst query-replace-help "Type Space or `y' to replace one match, Delete or `n' to skip to next,\nRET or `q' to exit, Period to replace one match and exit,\nComma to replace but not move point immediately,\nC-r to enter recursive edit (\\[exit-recursive-edit] to get out again),\nC-w to delete match and recursive edit,\nC-l to clear the screen, redisplay, and offer same replacement again,\n! to replace all remaining matches with no more questions,\n^ to move point back to previous match,\nE to edit the replacement string" (#$ . 39767)) #@301 Keymap that defines the responses to questions in `query-replace'. The "bindings" in this map are not commands; they are answers. The valid answers include `act', `skip', `act-and-show', `exit', `act-and-exit', `edit', `delete-and-edit', `recenter', `automatic', `backup', `exit-prefix', and `help'. (defvar query-replace-map (byte-code "\301 \302\303\304#\210\302\305\306#\210\302\307\306#\210\302\310\306#\210\302\311\304#\210\302\312\306#\210\302\313\304#\210\302\314\306#\210\302\315\316#\210\302\317\316#\210\302\320\321#\210\302\322\323#\210\302\324\323#\210\302\325\323#\210\302\326\327#\210\302\330\331#\210\302\332\333#\210\302\334\335#\210\302\336\337#\210\302\340\341#\210\302\342\343#\210\302\344\343#\210\302\345\343#\210\302\346\343#\210\302\347\350#\210\302\351\350#\210\302\352\353#\210\302\354\353#\210)\207" [map make-sparse-keymap define-key " " act "" skip [delete] [backspace] "y" "n" "Y" "N" "e" edit-replacement "E" "," act-and-show "q" exit " " [return] "." act-and-exit "" edit "" delete-and-edit "\f" recenter "!" automatic "^" backup "" help [f1] [help] "?" "" quit "" "" exit-prefix [escape]] 4) (#$ . 40358)) #@374 Process a list (and any sub-lists), expanding certain symbols. Symbol Expands To N (match-string N) (where N is a string of digits) #N (string-to-number (match-string N)) & (match-string 0) #& (string-to-number (match-string 0)) # replace-count Note that these symbols must be preceeded by a backslash in order to type them using Lisp syntax. (defalias 'replace-match-string-symbols #[(n) ":\205s@:\203\302@!\210\202l@9\203l\303@!\304\305 \"\2030\306\307 !D\240\210\202k\304\310 \"\203G\307\306\307 \311\312O!DD\240\210\202k \313\230\203T\314\240\210\202k \315\230\203a\316\240\210\202k \317\230\203k\320\240\210)A\211\202\207" [n name replace-match-string-symbols symbol-name string-match "^[0-9]+$" match-string string-to-number "^#[0-9]+$" 1 nil "&" (match-string 0) "#&" (string-to-number (match-string 0)) "#" replace-count] 8 (#$ . 41540)]) (defalias 'replace-eval-replacement #[(expression replace-count) "\302!\211;\203 \202\303 \304\")\207" [expression replacement eval prin1-to-string t] 4]) #@268 Quote a replacement string. This just doubles all backslashes in REPLACEMENT and returns the resulting string. If REPLACEMENT is not a string, it is first passed through `prin1-to-string' with the `noescape' argument set. `match-data' is preserved across the call. (defalias 'replace-quote #[(replacement) "\302 \303\216\304\305\211 ;\203 \202\306 \307\"\307\211%*\207" [save-match-data-internal replacement match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) replace-regexp-in-string "\\\\" prin1-to-string t] 6 (#$ . 42614)]) (defalias 'replace-loop-through-replacements #[(data replace-count) "\303H U\203'\303 \304H\\I\210\305HA\305\n:\203!\n\202$\306HI\210)\305H@\207" [data replace-count next 0 1 2 3] 5]) #@169 Like `match-data', but markers in REUSE get invalidated. If NEW is non-nil, it is set and returned instead of fresh data, but coerced to the correct value of INTEGERS. (defalias 'replace-match-data #[(integers reuse &optional new) "\203\303!\210 =\203\n?\304 @!=\203\206!\305\n \306#\207" [new reuse integers set-match-data markerp match-data t] 4 (#$ . 43396)]) #@390 Make a replacement with `replace-match', editing `\?'. NEWTEXT, FIXEDCASE, LITERAL are just passed on. If NOEDIT is true, no check for `\?' is made to save time. MATCH-DATA is used for the replacement. In case editing is done, it is changed to use markers. The return value is non-nil if there has been no `\?' or NOEDIT was passed in. If LITERAL is set, no checking is done, anyway. (defalias 'replace-match-maybe-edit #[(newtext fixedcase literal noedit match-data) "\204+ \204+\305\306\307\n\"\203+\310\311\312\313\305\211\n\314%\314\224TB\315\316 \211#\"\316\202\n\317 !\210\312\n\f#\210 \207" [literal noedit newtext match-data fixedcase t string-match "\\(\\`\\|[^\\]\\)\\(\\\\\\\\\\)*\\(\\\\\\?\\)" read-string "Edit replacement string: " replace-match "" 3 replace-match-data nil set-match-data] 8 (#$ . 43777)]) #@578 Subroutine of `query-replace'. Its complexity handles interactive queries. Don't use this in your own program unless you want to query and set the mark just as `query-replace' does. Instead, write a simple loop like this: (while (re-search-forward "foo[ \t]+bar" nil t) (replace-match "foobar" nil nil)) which will run faster and probably do exactly what you want. Please see the documentation of `replace-match' to find out how to simulate `case-replace'. This function returns nil if and only if there were no matches to make, or the user didn't cancel the call. (defalias 'perform-replace #[(from-string replacements query-flag regexp-flag delimited-flag &optional repeat-count map start end) "\204 \n\203 \203\306\307\310 !!\210\f\205\" \205\"@\211\227\230?\f\205,@\211\227\230A?\2066A\311=A\203?\312\202@\313@\314\211\211\315\314\316\314\211\315\n\205W\317\320\321\322!B#'CDEFGHIJKLM NO\203\242\323OP]!DOP^b\210Q\324=\203\226\314Q\202\242Q\203\242\314R\325\326!\210S;\203\262SJ\314S\202\315S@;\203\315T\204\301\327T\330\331T\211S\211$BSU\203\350\312M\332A\203\340@\202\344\333@!\332QLV\203\360\314W\334 \210\335 \210\336\216H\203\244m\204\244D\203 `DY\204\244C:\203#CA@b\210\337\315KC#\202nC\203;MLD\315#\205n\337\315K\"\202n`TdW\205nD\203O`TDW\205n`X\327u\210MLD\315#\203h\337\315K\"\202mXb\210\314)\211K\203\244K@KA@U?\211E\205\242A?\206\242\340L!\205\242\341 \211Y@YA@U?\205\241Y)CZ\203\267\342K@KA@\343\314$\204\370S\203\314\344K!\210S@SAF\"J\n\204Z[ \204\367I\204\367\345K@KA@OPLU\206\363A\f&\210\346JN IK%IFTF)\202\370\335 \210\314\211\211\211\\]^__\204\207\344K!\210\345\316\224\316\225OPLU\2069A\f&\210\314`\347'\350@!\350J!#\210)\351 ]\344K!\210\331]!]\352]\"\211\\\353=\203\223\354\220\355\356A\203w\357\202x\360@\361J\362\321a!\260!\210rbq\210\363 )\221\210\202s\\\364=\203\243\314H\315_\202s\\\365=\203\340G\203\321G\211AG@\211c@b\210cA@^\337\315K\366c8#K)\202s\347\367!\210\370\371!\210\372\327!\210\202s\\\373=\203^\204\377\346JN IK%IFTF\315\211_^\202s\\\374=\2033^\204'\346JN IK%IFTF\314H\315\211_^\202s\\\375=\203_^\204s\346JN IK%IFTF\337\315K\"K\315^\202s\\\376=\203\211^\204~\346JN IK%IFTF\315_\314\315^\202s\\\377=\203\226\315_\202s\\\201g=\203\250\201g\314!\210\202s\\\201h=\203\355\201i d\337\314K\211#K\316\224b\210\212\201j\213\210)db\210d\314\211\223\210)A\203sE\203s\340L!\205\350\341 C\202s\\\201k=\2030\337\314K\211#K\201l\201mJ\"J\314I^\203\344K!\210\202*\346JN IK%I\315^\315_\202s\\\201n=\203Z\201o\360\315\211#\210\337\314K\"K\201p \210\212\201q \210)\315^\202s\201re\314H\201s\201t]!f\"f\315_V\203\\\201u>\204\314W\202`^\211\203\227\316\224\316\225pE\202\232\341\315!EGBG,\202\370)f\204\277\347\201vF\211\327U\203\272\360\202\275\201w#\210H\205\306G.\207" [map query-replace-map query-flag minibuffer-auto-raise case-fold-search case-replace raise-frame window-frame minibuffer-window literal re-search-forward search-forward nil t 0 apply propertize substitute-command-keys "Query replacing %s with %s: (\\\\[help] for help) " copy-marker lambda run-hooks deactivate-mark-hook 1 replace-loop-through-replacements vector "\\b" regexp-quote push-mark undo-boundary ((replace-dehighlight)) replace-match-data looking-at match-data text-property-not-all read-only set-match-data replace-highlight replace-match-maybe-edit message query-replace-descr read-event lookup-key help "*Help*" princ "Query replacing " "regexp " "" " with " ".\n\n" help-mode exit backup 2 "No previous match" ding no-terminate sit-for act act-and-exit act-and-show automatic skip from-string regexp-flag minibuffer-prompt-properties match-again limit nonempty-match replace-count stack keep-going noedit next-replacement real-match-data search-string search-function nocasify start end transient-mark-mode mark-active replacements repeat-count delimited-flag query-replace-lazy-highlight isearch-lazy-highlight-last-string opoint match query-replace-skip-read-only inhibit-read-only def key replaced done message-log-max query-replace-help standard-output elt opos this-command unread-command-events recenter edit point-marker ((recursive-edit)) edit-replacement read-string "Edit replacement string: " delete-and-edit replace-match replace-dehighlight recursive-edit mode-exited append listify-key-sequence (skip backup) "Replaced %d occurrence%s" "s"] 19 (#$ . 44620)]) (byte-code "\301B\302\301!\204\303\301\304\"\210\304\207" [current-load-list replace-overlay default-boundp set-default nil] 3) (defalias 'replace-highlight #[(match-beg match-end range-beg range-end string regexp case-fold) "\203# \203\306 \n p$\210\202#\307\n \"\310 \311\312#\210\310 \313\314#\210\f\205< \315\316\",\207" [query-replace-highlight replace-overlay match-beg match-end query-replace-lazy-highlight string move-overlay make-overlay overlay-put priority 1001 face query-replace nil isearch-lazy-highlight-new-loop regexp case-fold isearch-case-fold-search search-whitespace-regexp isearch-regexp isearch-string range-beg range-end] 5]) (defalias 'replace-dehighlight #[nil "\203\304!\210 \205\302\n!\210\305\211\207" [replace-overlay query-replace-lazy-highlight lazy-highlight-cleanup isearch-lazy-highlight-last-string delete-overlay nil] 2])