GNU bug report logs - #30686
How to color matched region but also show the nearby context noncolored in characters or words?

Previous Next

Package: grep;

Reported by: Peng Yu <pengyu.ut <at> gmail.com>

Date: Sat, 3 Mar 2018 04:05:01 UTC

Severity: normal

Tags: notabug

Done: Bob Proulx <bob <at> proulx.com>

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: help-debbugs <at> gnu.org (GNU bug Tracking System)
To: Peng Yu <pengyu.ut <at> gmail.com>
Subject: bug#30686: closed (Re: bug#30686: How to color matched region but
 also show the nearby context noncolored in characters or words?)
Date: Sun, 04 Mar 2018 01:27:02 +0000
[Message part 1 (text/plain, inline)]
Your bug report

#30686: How to color matched region but also show the nearby context noncolored in characters or words?

which was filed against the grep package, has been closed.

The explanation is attached below, along with your original report.
If you require more details, please reply to 30686 <at> debbugs.gnu.org.

-- 
30686: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=30686
GNU Bug Tracking System
Contact help-debbugs <at> gnu.org with problems
[Message part 2 (message/rfc822, inline)]
From: Bob Proulx <bob <at> proulx.com>
To: Peng Yu <pengyu.ut <at> gmail.com>
Cc: 30686-done <at> debbugs.gnu.org
Subject: Re: bug#30686: How to color matched region but also show the nearby
 context noncolored in characters or words?
Date: Sat, 3 Mar 2018 18:26:28 -0700
tags 30686 + notabug
thanks

Peng Yu wrote:
> I am looking for a feature similar to -A -B -C but not based on lines,
> but based on characters or even words. Is it possible with the current
> version of grep?
>
> In the following example, I'd like to show the matched region as well
> as 3 characters before and after it. But the 3 characters before and
> after the match is also showed.
> 
> grep --color -o -P '.{0,3}a.{0,3}' <<< '+++++++++++++++++a++++++++++++++++++++'

Those three characters before and after as you say are also part of
the pattern and are also part of the match.  If you want to then only
color a subset in a second grep you can always do that.

  grep -o -P '.{0,3}a.{0,3}' <<< '+++++++++++++++++a++++++++++++++++++++' | grep --color 'a'
  +++a+++
     ^ only the 'a' is highlighted

Bob

[Message part 3 (message/rfc822, inline)]
From: Peng Yu <pengyu.ut <at> gmail.com>
To: bug-grep <at> gnu.org
Subject: How to color matched region but also show the nearby context
 noncolored in characters or words?
Date: Fri, 2 Mar 2018 22:04:01 -0600
Hi,

I am looking for a feature similar to -A -B -C but not based on lines,
but based on characters or even words. Is it possible with the current
version of grep?

In the following example, I'd like to show the matched region as well
as 3 characters before and after it. But the 3 characters before and
after the match is also showed.

grep --color -o -P '.{0,3}a.{0,3}' <<< '+++++++++++++++++a++++++++++++++++++++'

-- 
Regards,
Peng



This bug report was last modified 7 years and 175 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.