Mercurial > emacs
changeset 57769:e663f6b659a6
(grep-regexp-alist): Move match highlighting
code to `grep-mode-font-lock-keywords'.
(grep-mode-font-lock-keywords): Delete grep markers instead
of making them invisible.
author | Juri Linkov <juri@jurta.org> |
---|---|
date | Thu, 28 Oct 2004 09:00:26 +0000 |
parents | 84cd4892a56e |
children | c7ff2d3a33ee |
files | lisp/progmodes/grep.el |
diffstat | 1 files changed, 14 insertions(+), 14 deletions(-) [+] |
line wrap: on
line diff
--- a/lisp/progmodes/grep.el Thu Oct 28 07:37:02 2004 +0000 +++ b/lisp/progmodes/grep.el Thu Oct 28 09:00:26 2004 +0000 @@ -1,7 +1,7 @@ ;;; grep.el --- run compiler as inferior of Emacs, parse error messages -;; Copyright (C) 1985, 86, 87, 93, 94, 95, 96, 97, 98, 1999, 2001, 02, 2004 -;; Free Software Foundation, Inc. +;; Copyright (C) 1985, 1986, 1987, 1993, 1994, 1995, 1996, 1997, 1998, 1999, +;; 2001, 2002, 2004 Free Software Foundation, Inc. ;; Author: Roland McGrath <roland@gnu.org> ;; Maintainer: FSF @@ -252,21 +252,12 @@ \\(?:-\\(?:\\([0-9]+\\)\\3\\)?\\.?\\([0-9]+\\)?\\)?[:) \t]" 1 (2 . 5) (4 . 6)) ("^\\(.+?\\)[:(]+\\([0-9]+\\)\\([:)]\\).*?\\(\033\\[01;41m\\)\\(.*?\\)\\(\033\\[00m\\)" 1 2 + ;; Calculate column positions (beg . end) of first grep match on a line ((lambda () (setq compilation-error-screen-columns nil) (- (match-beginning 5) (match-end 3) 8)) . - (lambda () (- (match-end 5) (match-end 3) 8))) - nil nil - (4 (list 'face nil 'invisible t 'intangible t)) - (5 (list 'face compilation-column-face)) - (6 (list 'face nil 'invisible t 'intangible t)) - ;; highlight other matches on the same line - ("\\(\033\\[01;41m\\)\\(.*?\\)\\(\033\\[00m\\)" - nil nil - (1 (list 'face nil 'invisible t 'intangible t)) - (2 (list 'face compilation-column-face) t) - (3 (list 'face nil 'invisible t 'intangible t)))) + (lambda () (- (match-end 5) (match-end 3) 8)))) ("^Binary file \\(.+\\) matches$" 1 nil nil 1)) "Regexp used to match grep hits. See `compilation-error-regexp-alist'.") @@ -294,7 +285,16 @@ ("^Grep \\(exited abnormally\\) with code \\([0-9]+\\).*" (0 '(face nil message nil help-echo nil mouse-face nil) t) (1 compilation-warning-face) - (2 compilation-line-face))) + (2 compilation-line-face)) + ;; Highlight grep matches and delete markers + ("\\(\033\\[01;41m\\)\\(.*?\\)\\(\033\\[00m\\)" + (2 compilation-column-face) + ((lambda (p)) + (progn + ;; Delete markers with `replace-match' because it updates + ;; the match-data, whereas `delete-region' would render it obsolete. + (replace-match "" t t nil 3) + (replace-match "" t t nil 1))))) "Additional things to highlight in grep output. This gets tacked on the end of the generated expressions.")