;ELC   
;;; Compiled
;;; in Emacs version 29.3
;;; with all optimizations.



(byte-code "\300\301!\210\302\303\304\305\306\307\310\301&\210\311\312\313\314\315DD\316\310\303\317\320&\210\311\321\313\314\322DD\323\310\303\317\324&\210\311\325\313\314\326DD\327\310\303\317\320&\210\311\330\313\314\331DD\332\310\303\317\333&\207" [require grep custom-declare-group wgrep nil "Customize wgrep" :prefix "wgrep-" :group custom-declare-variable wgrep-change-readonly-file funcall function #[0 "\300\207" [nil] 1 #1=""] "Non-nil means to enable change read-only files." :type boolean wgrep-enable-key #[0 "\300\207" [""] 1 #1#] "This variable will be obsoleted in the future release.\nKey to enable `wgrep-mode'." string wgrep-auto-save-buffer #[0 "\300\207" [nil] 1 #1#] "Non-nil means do `basic-save-buffer' automatically while `wgrep-finish-edit'." wgrep-too-many-file-length #[0 "\300\207" [10] 1 #1#] "Number to detect as too many files." number] 8)#@37 Hooks to run when setting up wgrep.
(defvar wgrep-setup-hook nil (#$ . 962))
(defvar wgrep-mode-map nil)
(defvar wgrep-readonly-state nil)
(make-variable-buffer-local 'wgrep-readonly-state)
(defvar wgrep-prepared nil)
(make-variable-buffer-local 'wgrep-prepared)
(defvar wgrep-sibling-buffer nil)
(make-variable-buffer-local 'wgrep-sibling-buffer)
(defvar wgrep-original-mode-map nil)
(make-variable-buffer-local 'wgrep-original-mode-map)
(defvar wgrep-inhibit-modification-hook nil)#@68 Internal use `wgrep-auto-save-buffer' or too many file is editing.
(defvar wgrep-auto-apply-disk nil (#$ . 1451))
(defvar wgrep-acceptable-modes nil)
(make-obsolete 'wgrep-acceptable-modes nil "2.1.1")
(defconst wgrep-null-file-separator-header-regexp "\\(?1:[^ \n]+\\)\\(?: \\)\\(?3:[0-9]+\\):")
(defconst wgrep-colon-file-separator-header-regexp "\\(?1:[^\n:]+?[^\n/:]\\):[	 ]*\\(?3:[1-9][0-9]*\\)[	 ]*:")
(defconst wgrep-default-line-header-regexp "^\\(?:\\(?1:[^ \n]+\\)\\(?: \\)\\(?3:[0-9]+\\):\\|\\(?1:[^\n:]+?[^\n/:]\\):[	 ]*\\(?3:[1-9][0-9]*\\)[	 ]*:\\)")
(define-error 'wgrep-error "wgrep error")#@141 Regexp that match to line header of grep result.

That capture 1: filename 3: line-number
End of this match equals start of file contents.

(defvar wgrep-line-file-regexp wgrep-default-line-header-regexp (#$ . 2063))#@405 This function parse line oriented command output and set following properties.
`wgrep-line-filename', `wgrep-line-number', `wgrep-ignore' and
`wgrep-construct-filename-property' function construct the property name with
`wgrep-line-filename' and the value is same. This property is used for searching
 correct point of filename.
Not like `wgrep-header&footer-parser' should not set `read-only' property.
(defvar wgrep-results-parser 'wgrep-parse-command-results (#$ . 2286))#@97 This function should set text properties `read-only' and `wgrep-header' to
non editable region.
(defvar wgrep-header&footer-parser 'wgrep-prepare-header&footer (#$ . 2766))#@18 

(fn STRING CS)
(defalias 'wgrep-string-replace-bom #[514 "\302\303!\"@\304\305	\"\206 \306 \307\203/ \310\"\211\262\203/ \311\"\203/ \312\313\225\307O\"\207\207" [auto-coding-regexp-alist grep-program rassq coding-system-base find-operation-coding-system call-process terminal-coding-system nil encode-coding-string string-match decode-coding-string 0] 9 (#$ . 2944)])
(defalias 'wgrep-delete-whole-line #[0 "\300 \300\301!|\207" [line-beginning-position 2] 3])#@13 

(fn LINE)
(defalias 'wgrep-goto-line #[257 "eb\210\211Sy\207" [] 2 (#$ . 3425)])
(defalias 'wgrep-process-exited-p #[0 "\300p!\211?\206 \301!\302=\207" [get-buffer-process process-status exit] 3])#@13 

(fn FILE)
(defalias 'wgrep-check-file #[257 "\300!\204\f \301\302\303C\"\210\304!?\205 \301\302\305C\"\207" [file-exists-p signal wgrep-error "File does not exist." file-writable-p "File is not writable."] 4 (#$ . 3631)])#@16 

(fn BEG END)
(defalias 'wgrep-cleanup-overlays #[514 "\300\"\211\205 \211@\301\302\"\203 \303!\210A\266\202\202 \207" [overlays-in overlay-get wgrep delete-overlay] 7 (#$ . 3863)])#@16 

(fn BEG END)
(defalias 'wgrep-make-overlay #[514 "\300\301\211\302%\303\304\302#\210\207" [make-overlay nil t overlay-put wgrep] 8 (#$ . 4059)])
(defalias 'wgrep-file-overlays #[0 "\214~\210\300\301ed\"\211\203! \211@\302\303\"\203 \211B\262A\266\202\202 \210\211\237)\207" [nil overlays-in overlay-get wgrep] 6])
(defalias 'wgrep-edit-field-overlays #[0 "\300\301ed\"\211\203 \211@\302\303\"\203 \211B\262A\266\202\202 \210\304\305\"\207" [nil overlays-in overlay-get wgrep-changed sort #[514 "\300!\300!W\207" [overlay-start] 5 "\n\n(fn X Y)"]] 6])#@17 

(fn FILENAME)
(defalias 'wgrep-construct-filename-property #[257 "\300\301\302\"!\207" [intern format "wgrep-fn-%s"] 5 (#$ . 4636)])#@20 

(fn FILE NUMBER)
(defalias 'wgrep-goto-grep-line #[514 "`\300!\301\211\3022X eb\210\303`\"\211\262\203S \211b\210m\204 \304\305 \306\"\211\262\2030 \230\203 \203M \304`\307\"\303`\307\"=\203K \211b\210\310\302\311\"\210\266\312y\210\202 b\210\3010\207" [wgrep-construct-filename-property nil found next-single-property-change get-text-property line-beginning-position wgrep-line-filename wgrep-line-number throw t 1] 11 (#$ . 4777)])#@20 

(fn FILE NUMBER)
(defalias 'wgrep-get-old-text #[514 "\205 \301!\205 rq\210\302\"\205 \303`\304 \")\207" [wgrep-sibling-buffer buffer-live-p wgrep-goto-grep-line buffer-substring-no-properties line-end-position] 5 (#$ . 5234)])
(defalias 'wgrep-to-original-mode #[0 "\303\304!\210\305\306\307\310#\210\311!\210\312\313!\210\313\310\211\207" [wgrep-original-mode-map buffer-undo-list buffer-read-only kill-local-variable query-replace-skip-read-only remove-hook after-change-functions wgrep-after-change-function t use-local-map set-buffer-modified-p nil] 4])
(defalias 'wgrep-goto-first-found #[0 "\300d\301\"\211\203\f \211b\210\207eb\210`\207" [previous-single-property-change wgrep-header] 3])
(defalias 'wgrep-goto-end-of-found #[0 "\300e\301\"\211\203\f \211b\210\207db\210d\207" [next-single-property-change wgrep-footer] 3])#@39 Cleanup temp buffer in *grep* buffer.
(defalias 'wgrep-cleanup-temp-buffer #[0 "p\301 \211\203 \211@r\211q\210=\203 \302!\210)A\266\202\202 \266\303\211\207" [wgrep-sibling-buffer buffer-list kill-buffer nil] 5 (#$ . 6084)])
(defalias 'wgrep-clone-to-temp-buffer #[0 "\301 \210p\302\303!\211\304\305\301\306\307$\210\310ed#\210r\211q\210)\207" [wgrep-sibling-buffer wgrep-cleanup-temp-buffer generate-new-buffer " *wgrep temp* " add-hook kill-buffer-hook nil t append-to-buffer] 7])#@14 

(fn STATE)
(defalias 'wgrep-set-readonly-area #[257 "\303\211\304\211\211\212e\262\305\306\"\211\262\203H \305\306\"\262\307\310	$\210\307S\311\303$\210\2062 `Sf\312=\203B \307S\310	$\210\211\262\202 e\262\305\313\"\211\262\203~ \305\313\"\262\307\310	$\210\206h `Sf\312=\203x \307S\310	$\210\211\262\202K \305e\314\"\206\206 d\211\206\213 `Sf\312=\203\233 \307S\310\n$\210)\210\211*\207" [wgrep-inhibit-modification-hook inhibit-read-only wgrep-readonly-state t nil next-single-property-change wgrep-line-filename put-text-property read-only rear-nonsticky 10 wgrep-ignore wgrep-footer] 12 (#$ . 6585)])
(defalias 'wgrep-prepare-context #[0 "\214\301 \302 }\210eb\210 \266\202)\207" [wgrep-results-parser wgrep-goto-first-found wgrep-goto-end-of-found] 4])#@43 

(fn FILENAME LINE DIRECTION FPROP FLEN)
(defalias 'wgrep-prepare-context-while #[1285 "\\\300!y\210\301\302\303#!\205N \304\224\304\225\305 \306 \307\310$\210\307\311	$\210\307\211	\\\n$\210\312\313#\210y\210\\\262\266\202\n \207" [regexp-quote looking-at format "^%s[- ]%d-" 0 line-beginning-position line-end-position put-text-property wgrep-line-filename wgrep-line-number remove-text-properties (wgrep-ignore)] 16 (#$ . 7391)])
(defalias 'wgrep-parse-command-results #[0 "\301 m?\205\200 \302!\203q \303\304!\305\306\307!!\310\224\310\225\311!G\312\313#\2049 \314!\203l \315\316	#\203l \317\320	$\210\317\321$\210\317\211\\	$\210\212\322\323%)\210\322\304%\210\323y\210\266\202z \317\324 \325 \326\316$\210\304y\210\202 \207" [wgrep-line-file-regexp make-hash-table looking-at match-string-no-properties 1 string-to-number match-string 3 0 wgrep-construct-filename-property gethash nil file-exists-p puthash t put-text-property wgrep-line-filename wgrep-line-number wgrep-prepare-context-while -1 line-beginning-position line-end-position wgrep-ignore] 13])
(defalias 'wgrep-current-file-and-linum #[0 "\212\300y\210\301`\302\"\301`\303\"\205 \211\205 D\266\202)\207" [0 get-text-property wgrep-line-filename wgrep-line-number] 4])
(defalias 'wgrep-restore-from-temp-buffer #[0 "\203A \304!\203A p\305 i`\306\211\307\310 \210rq\210\311ed#)\210eb\210\2038 \312\313\"\2038 \314!\204= d^b\210\315 +\207\316\317!\207" [wgrep-sibling-buffer buffer-read-only wgrep-inhibit-modification-hook inhibit-read-only buffer-live-p wgrep-current-file-and-linum t nil erase-buffer append-to-buffer apply wgrep-goto-grep-line move-to-column wgrep-cleanup-temp-buffer message "Error! Saved buffer is unavailable."] 9])
(defalias 'wgrep-prepare-to-edit #[0 "?\205  \212\306\211\307\f\206 \310\305!\205  \210\311 \210\306\211,\207" [wgrep-prepared buffer-read-only wgrep-inhibit-modification-hook inhibit-read-only wgrep-header&footer-parser wgrep-header/footer-parser t nil boundp wgrep-prepare-context] 3])
(defalias 'wgrep-prepare-header&footer #[0 "\300\211eb\210e\262\301y\210`\262\302\303\304$\210\302\305\304$\210db\210\306y\210\307\310\304#\205A `\262d\262\205A \302\303\304$\210\302\311\304$\207" [nil 4 put-text-property read-only t wgrep-header -1 re-search-backward "^$" wgrep-footer] 7])#@14 

(fn STATE)
(defalias 'wgrep-set-header&footer-read-only #[257 "\302\211\303e\304\"\211\203 \305e\306$\210\210\303e\307\"\211\205\" \305d\306$*\207" [wgrep-inhibit-modification-hook inhibit-read-only t next-single-property-change wgrep-header put-text-property read-only wgrep-footer] 7 (#$ . 9788)])#@28 

(fn &optional START END)
(defalias 'wgrep-editing-overlay #[512 "\206 \300 \206\f \301 \302\211\211\211\211b\210\300 \262b\210\301 \262\3032G \304\"\211\205D \211@\305\306\"\203= \211\262\307\303\"\210A\266\202\202( \2620\210\203` \310!^\262\311!]\262\202f \262\262b\210\204y \203y 	U\204\364 \312`\313\"\203\364 \314`\313\302$\312`\313\"\312`\315\"\316\"\302b\210\317 \262	\204\343 \320\"\321\"\262\322\323#\210\322\324#\210\322\325#\210\322\306\326#\210\322\327\330#\210\322\331\326#\210\322\332#\266\202\354 \333\n#\210\322\n\334#\266\207" [line-beginning-position line-end-position nil done overlays-in overlay-get wgrep-changed throw overlay-start overlay-end get-text-property wgrep-line-filename next-single-property-change wgrep-line-number buffer-substring-no-properties point-marker wgrep-get-old-text wgrep-make-overlay overlay-put wgrep-contents-begin wgrep-filename wgrep-linum t priority 0 evaporate wgrep-old-text move-overlay wgrep-edit-text] 19 (#$ . 10102)])#@28 

(fn BEG END LENG-BEFORE)
(defalias 'wgrep-after-change-function #[771 "\203 \301\207edU\203 \302ed\"\207\303\"\207" [wgrep-inhibit-modification-hook nil wgrep-cleanup-overlays wgrep-put-change-face] 6 (#$ . 11165)])#@16 

(fn BEG END)
(defalias 'wgrep-put-change-face #[514 "\212\300 \301\302\"\216\303\"\211?\206( \304\305\"\304\306\"\230\203# \307!\202( \310\311\312#*\207" [match-data make-closure #[0 "\301\300\302\"\207" [V0 set-match-data t] 3] wgrep-editing-overlay overlay-get wgrep-old-text wgrep-edit-text delete-overlay overlay-put face wgrep-face] 8 (#$ . 11393)])
(defalias 'wgrep-display-physical-data #[0 "\300\301!\203 \302 \205 \303 \207\304\207" [derived-mode-p image-mode image-get-display-property image-mode-as-text nil] 2])#@34 

(fn OV FACE &optional MESSAGE)
(defalias 'wgrep-set-result #[770 "\300\301#\210\300\302\303#\210\300\304#\207" [overlay-put face priority 1 wgrep-reject-message] 7 (#$ . 11933)])#@11 

(fn OV)
(defalias 'wgrep-put-done-result #[257 "\300\301\"\207" [wgrep-set-result wgrep-done-face] 4 (#$ . 12124)])#@22 

(fn OV ERROR-DATA)
(defalias 'wgrep-put-reject-result #[514 "\300\301\302#\303\304#\207" [mapconcat #[257 "\300\301\"\207" [format "%s"] 4 "\n\n(fn X)"] " " wgrep-set-result wgrep-reject-face] 7 (#$ . 12248)])#@26 

(fn EDITOR ERROR-DATA)
(defalias 'wgrep-put-reject-result-all #[514 "A\211\205 \211@\3008\301\"\266A\266\202\202 \207" [3 wgrep-put-reject-result] 8 (#$ . 12469)])
(defalias 'wgrep-after-save-hook #[0 "\300\301\302\303#\210\304 \211\205 \211@\305!\210A\266\202\202 \207" [remove-hook after-save-hook wgrep-after-save-hook t wgrep-file-overlays delete-overlay] 4])#@50 *Highlight the changes in the file

(fn BEG END)
(defalias 'wgrep-put-overlay-to-file-buffer #[514 "\3002- \301\"\211\203' \211@\302\303\"\203  \304#\210\305\300\"\210A\266\202\202 \210\306\"0\307\310\311#\210\307\312\313#\210\314\315\316\317\320$\210\207" [done overlays-in overlay-get wgrep move-overlay throw wgrep-make-overlay overlay-put face wgrep-file-face priority 0 add-hook after-save-hook wgrep-after-save-hook nil t] 8 (#$ . 12852)])#@11 

(fn OV)
(defalias 'wgrep-let-destructive-overlay #[257 "\300\211\205 \211@\301\302C#\210A\266\202\202 \207" [(modification-hooks insert-in-front-hooks insert-behind-hooks) overlay-put #[642 "\205 \300!\207" [delete-overlay] 5 "\n\n(fn OV AFTER-P &rest IGNORE)"]] 7 (#$ . 13316)])#@17 

(fn NEW-TEXT)
(defalias 'wgrep-replace-to-new-line #[257 "\300 \301 |\210`c\210`\302\"\303!\207" [line-beginning-position line-end-position wgrep-put-overlay-to-file-buffer wgrep-let-destructive-overlay] 6 (#$ . 13611)])
(defalias 'wgrep-flush-whole-line #[0 "\300\301 \302 \"\210\303 \207" [wgrep-put-overlay-to-file-buffer line-beginning-position line-end-position wgrep-delete-whole-line] 3])
(defalias 'wgrep-gather-editor #[0 "\301\302 \211\203\223 \211@\303!b\210\304y\210\303!\305!=\204\214 \306`\307\"\203\214 \306`\307\"\306`\310\"\311`\307\301\312 $\313\"\314\315\"\314\316\"\301\3172y \320\303	!\305\n!\"\211\203i \211@\314\321\"\203b \211\262\322\317\323\"\210A\266\202\202M \210\324\305\n!\"\262\325\321\323#0\210\f\257D\nB\262\n\266A\266\202\202 \210\211\237\207" [default-directory nil wgrep-edit-field-overlays overlay-start 0 overlay-end get-text-property wgrep-line-filename wgrep-line-number next-single-property-change line-end-position expand-file-name overlay-get wgrep-old-text wgrep-edit-text done overlays-in wgrep-result throw t wgrep-make-overlay overlay-put] 16])
(defalias 'wgrep-compute-transaction #[0 "\300 \301\211\211\2032 \211@\211@A\302\"\211\204\" C\262\211B\262\211\303A\"\241\266A\266\202\202 \210\237\262\211\203b \211@\211@\3041T \305!\210B\211\2620\266\202[ \306A\"\266A\266\202\2028 \210\211\237\207" [wgrep-gather-editor nil assoc append (wgrep-error) wgrep-check-file wgrep-put-reject-result-all] 12])#@14 

(fn EDITS)
(defalias 'wgrep-compute-linum-to-marker #[257 "\211\211\205 \211@\211@\300!\210\301 \240\266A\266\202\202 \207" [wgrep-goto-line point-marker] 6 (#$ . 15125)])#@15 

(fn EDITOR)
(defalias 'wgrep-commit-edits #[257 "\211@A\306!\210\307\310\211\203U \211@\211@A@\3118\3128\3138\3141G \204- \262\315#\210\316!\210\317!\210T\211\262\n0\266\202N \320A\"\266A\266\202\202 \210\n\203v \307U\204v \203j \321 \210\202v \f\322ed\310\323%)\210)D\207" [wgrep-change-readonly-file inhibit-read-only wgrep-auto-apply-disk buffer-file-name buffer-file-coding-system coding-system-for-write wgrep-compute-linum-to-marker 0 nil 2 3 4 (error) wgrep-apply-change wgrep-put-done-result delete-overlay wgrep-put-reject-result basic-save-buffer write-region no-msg] 16 (#$ . 15310)])#@15 

(fn EDITOR)
(defalias 'wgrep-commit-file #[257 "\211@\303!\211\203 \211\202& \203# \304\305!r\211q\210\306!)\210\211\262\202& \307!\310\311#\216r\211q\210\214~\210\312 \210	\204N \n\203N \313\314\315\316 \"C\"\210\317\320D\202Q \321!+\207" [wgrep-auto-apply-disk wgrep-change-readonly-file buffer-read-only get-file-buffer generate-new-buffer "*TMP <wgrep>*" insert-file-contents find-file-noselect make-closure #[0 "\n\205\f \301?\205\f \303\300!\207" [V0 V1 wgrep-auto-apply-disk kill-buffer] 2] wgrep-display-physical-data wgrep-put-reject-result-all format "Buffer \"%s\" is read-only." buffer-name 0 nil wgrep-commit-edits] 9 (#$ . 15946)])#@127 The changes in the *grep* buffer are applied to the file.
NEW may be nil this means deleting whole line.

(fn MARKER OLD NEW)
(defalias 'wgrep-apply-change #[771 "b\210\301 U\203& \211\203& \302\303\"\203& \304\"\262\203& \304\"\262\305\306 \307 \"\230\2047 \310\311\312C\"\210\203? \313!\207\314 \207" [buffer-file-coding-system point-min-marker coding-system-get :bom wgrep-string-replace-bom buffer-substring-no-properties line-beginning-position line-end-position signal wgrep-error "Buffer was changed after grep." wgrep-replace-to-new-line wgrep-flush-whole-line] 8 (#$ . 16610)])
(custom-declare-face 'wgrep-face '((((class color) (background dark)) (:background "SlateGray1" :foreground "Black")) (((class color) (background light)) (:background "ForestGreen" :foreground "white")) (t nil)) "*Face used for the changed text in the grep buffer." :group 'wgrep)
(custom-declare-face 'wgrep-delete-face '((((class color) (background dark)) (:background "SlateGray1" :foreground "pink")) (((class color) (background light)) (:background "ForestGreen" :foreground "pink")) (t nil)) "*Face used for the deleted whole line in the grep buffer." :group 'wgrep)
(custom-declare-face 'wgrep-file-face '((((class color) (background dark)) (:background "gray30" :foreground "white")) (((class color) (background light)) (:background "ForestGreen" :foreground "white")) (t nil)) "*Face used for the changed text in the file buffer." :group 'wgrep)
(custom-declare-face 'wgrep-reject-face '((((class color) (background dark)) (:foreground "HotPink" :weight bold)) (((class color) (background light)) (:foreground "Red" :weight bold)) (t nil)) "*Face used for the line in the grep buffer that can not be applied to\na file." :group 'wgrep)
(custom-declare-face 'wgrep-done-face '((((class color) (background dark)) (:foreground "LightSkyBlue")) (((class color) (background light)) (:foreground "Blue")) (t nil)) "*Face used for the line in the grep buffer that can be applied to a file." :group 'wgrep)
(defalias 'wgrep-maybe-echo-error-at-point #[0 "\301 ?\205< \3022, \303\304 \305 \"\211\205) \211@\306\307\"\203\" \310\302\"\210A\266\202\202 \2620\211\205: \311\312\313\306\307\"\")\262\207" [message-log-max current-message found overlays-in line-beginning-position line-end-position overlay-get wgrep-reject-message throw nil message "%s"] 6])#@124 Apply changes to file buffers.
These changes are not immediately saved to disk unless
`wgrep-auto-save-buffer' is non-nil.
(defalias 'wgrep-finish-edit #[0 "\304 \211G\305\306	\203 \307\202 \nV\203 \310\311!\203 \307\203V @\312!\211@A@\211\2038 \313!b\210\306y\210\\\262A\262\305\314\315	G#)\210\316\307!\266\202 \317 \210\320 \210\321\322\"\323 \211\204} \306U\203t \314\324!\266\202\202\225 \314\325\"\266\202\202\225 \211G\326U\203\215 \314\327\"\266\202\202\225 \314\330G#\266\202)\207" [wgrep-auto-apply-disk wgrep-auto-save-buffer wgrep-too-many-file-length message-log-max wgrep-compute-transaction nil 0 t y-or-n-p "Edited files are too many. Apply the changes to disk with non-confirmation?" wgrep-commit-file overlay-start message "Writing %d files, %d files are left..." redisplay wgrep-cleanup-temp-buffer wgrep-to-original-mode format "(%d changed)" wgrep-edit-field-overlays "(No changes to be performed)" "Successfully finished. %s" 1 "There is an unapplied change. %s" "There are %d unapplied changes. %s"] 11 (#$ . 18980) nil])#@26 Return to original mode.
(defalias 'wgrep-exit #[0 "\300 \203 \301\302\303p\"!\203 \304 \207\305 \207" [buffer-modified-p y-or-n-p format "Buffer %s modified; save changes? " wgrep-finish-edit wgrep-abort-changes] 4 (#$ . 20061) nil])#@50 Discard all changes and return to original mode.
(defalias 'wgrep-abort-changes #[0 "\300ed\"\210\301 \210\302 \210\303\304!\207" [wgrep-cleanup-overlays wgrep-restore-from-temp-buffer wgrep-to-original-mode message "Changes discarded"] 3 (#$ . 20303) nil])#@65 Remove changes in the region between BEG and END.

(fn BEG END)
(defalias 'wgrep-remove-change #[514 "\301\"\210\302\211\207" [mark-active wgrep-cleanup-overlays nil] 5 (#$ . 20566) "r"])#@37 Remove changes in the whole buffer.
(defalias 'wgrep-remove-all-change #[0 "\300ed\"\207" [wgrep-cleanup-overlays] 3 (#$ . 20762) nil])#@455 Toggle read-only area to remove a whole line.

See the following example: you obviously don't want to edit the first line.
If grep matches a lot of lines, it's hard to edit the grep buffer.
After toggling to editable, you can call
`delete-matching-lines', `delete-non-matching-lines'.

Example:
----------------------------------------------
./.svn/text-base/some.el.svn-base:87:(hoge)
./some.el:87:(hoge)
----------------------------------------------

(defalias 'wgrep-toggle-readonly-area #[0 "\301 ?\302!\210\303!\210\304!\210\203 \305\306!\207\305\307!\207" [wgrep-readonly-state buffer-modified-p wgrep-set-readonly-area wgrep-set-header&footer-read-only set-buffer-modified-p message "Removing the whole line is now disabled." "Removing the whole line is now enabled."] 4 (#$ . 20904) nil])#@107 Change to wgrep mode.

When the *grep* buffer is huge, this might freeze your Emacs
for several minutes.

(defalias 'wgrep-change-to-wgrep-mode #[0 "\304 \204	 \305\306!\210\307 \210\310\311!\210\312\300!\210\311\313\314\315\316\311$\210\313\317\320\316\311$\210\321	!\210\322 \210\323 \210\316\324 \210\325\326 !\210\316\327\330\331\332!\"\207" [query-replace-skip-read-only wgrep-mode-map buffer-read-only buffer-undo-list wgrep-process-exited-p error "Active process working" wgrep-prepare-to-edit wgrep-set-readonly-area t make-local-variable add-hook after-change-functions wgrep-after-change-function nil post-command-hook wgrep-maybe-echo-error-at-point use-local-map buffer-disable-undo wgrep-clone-to-temp-buffer buffer-enable-undo set-buffer-modified-p wgrep-edit-field-overlays message "%s" substitute-command-keys "Press \\[wgrep-finish-edit] when finished or \\[wgrep-abort-changes] to abort changes."] 5 (#$ . 21714) nil])#@38 Save the buffers that wgrep changed.
(defalias 'wgrep-save-all-buffers #[0 "\300\301 \211\203( \211@r\211q\210\302 \211\203 \303 \203 \304 \210T\262)\210A\266\202\202 \210\211\300U\2033 \305\306!\207\211\307U\203= \305\310!\207\305\311\"\207" [0 buffer-list wgrep-file-overlays buffer-modified-p basic-save-buffer message "No buffer has been saved." 1 "Buffer has been saved." "%d buffers have been saved."] 5 (#$ . 22659) nil])#@88 Mark as delete to current line.
This change will be applied when \[wgrep-finish-edit].
(defalias 'wgrep-mark-deletion #[0 "\212\301 \211\204 \302\303!\210\3041/ \305\306\307#\210\310\311\312\"\313!|\210\305\314\315#)\266\2030\2023 \210\316!)\207" [wgrep-inhibit-modification-hook wgrep-editing-overlay error "Not a grep result" (error) overlay-put wgrep-edit-text nil t overlay-get wgrep-contents-begin overlay-end face wgrep-delete-face delete-overlay] 8 (#$ . 23100) nil])
(byte-code "\204= \301 \302\303\304#\210\302\305\306#\210\302\307\304#\210\302\310\311#\210\302\312\313#\210\302\314\304#\210\302\315\316#\210\302\317\320#\210\302\321\322#\210\301\207" [wgrep-mode-map make-sparse-keymap define-key "" wgrep-finish-edit "" wgrep-mark-deletion "" "" wgrep-toggle-readonly-area "" wgrep-remove-change "" "" wgrep-remove-all-change "" wgrep-abort-changes "" wgrep-exit] 5)
(defalias 'wgrep-setup-internal #[0 "\302 \303	\304#\210\305ed\"\210\306\307\310\311#\210\312\313!\207" [wgrep-original-mode-map wgrep-enable-key current-local-map define-key wgrep-change-to-wgrep-mode wgrep-cleanup-overlays remove-hook post-command-hook wgrep-maybe-echo-error-at-point t run-hooks wgrep-setup-hook] 4])#@26 Setup wgrep preparation.
(defalias 'wgrep-setup #[0 "\305\300!\203# \203# 	\242\211;\205 \306\307\"\262\203# \310\303!\210\n\202) \310\303!\210\f\311 \207" [grep-use-null-filename-separator compilation-arguments wgrep-null-file-separator-header-regexp wgrep-line-file-regexp wgrep-colon-file-separator-header-regexp boundp string-match "[ 	]--null[ 	]" make-local-variable wgrep-setup-internal] 4 (#$ . 24345)])
(add-hook 'grep-setup-hook 'wgrep-setup)
(defalias 'wgrep-unload-function #[0 "\300\301\302\"\207" [remove-hook grep-setup-hook wgrep-setup] 3])
(provide 'wgrep)
