* lisp/progmodes/grep.el (grep-filter): Don't trip on partial lines.
This commit is contained in:
parent
914a0ae1ba
commit
c89be45f2e
2 changed files with 18 additions and 10 deletions
|
@ -1,5 +1,7 @@
|
|||
2011-05-12 Stefan Monnier <monnier@iro.umontreal.ca>
|
||||
|
||||
* progmodes/grep.el (grep-filter): Don't trip on partial lines.
|
||||
|
||||
* shell.el (shell-completion-vars): New function.
|
||||
(shell-mode):
|
||||
* simple.el (read-shell-command): Use it.
|
||||
|
|
|
@ -476,17 +476,23 @@ Set up `compilation-exit-message-function' and run `grep-setup-hook'."
|
|||
"Handle match highlighting escape sequences inserted by the grep process.
|
||||
This function is called from `compilation-filter-hook'."
|
||||
(save-excursion
|
||||
(let ((end (point-marker)))
|
||||
;; Highlight grep matches and delete marking sequences.
|
||||
(forward-line 0)
|
||||
(let ((end (point)))
|
||||
(goto-char compilation-filter-start)
|
||||
(while (re-search-forward "\033\\[01;31m\\(.*?\\)\033\\[[0-9]*m" end 1)
|
||||
(replace-match (propertize (match-string 1)
|
||||
'face nil 'font-lock-face grep-match-face)
|
||||
t t))
|
||||
;; Delete all remaining escape sequences
|
||||
(goto-char compilation-filter-start)
|
||||
(while (re-search-forward "\033\\[[0-9;]*[mK]" end 1)
|
||||
(replace-match "" t t)))))
|
||||
(forward-line 0)
|
||||
;; Only operate on whole lines so we don't get caught with part of an
|
||||
;; escape sequence in one chunk and the rest in another.
|
||||
(when (< (point) end)
|
||||
(setq end (copy-marker end))
|
||||
;; Highlight grep matches and delete marking sequences.
|
||||
(while (re-search-forward "\033\\[01;31m\\(.*?\\)\033\\[[0-9]*m" end 1)
|
||||
(replace-match (propertize (match-string 1)
|
||||
'face nil 'font-lock-face grep-match-face)
|
||||
t t))
|
||||
;; Delete all remaining escape sequences
|
||||
(goto-char compilation-filter-start)
|
||||
(while (re-search-forward "\033\\[[0-9;]*[mK]" end 1)
|
||||
(replace-match "" t t))))))
|
||||
|
||||
(defun grep-probe (command args &optional func result)
|
||||
(let (process-file-side-effects)
|
||||
|
|
Loading…
Add table
Reference in a new issue