On Sat, May 12, 2018 at 02:08:48PM +0900, Junio C Hamano wrote:
> Taylor Blau <[email protected]> writes:
>
> >> $ git grep -v second
> >> $ git grep --not -e second
> >>
> >> may hit all lines in this message (except for the obvious two
> >> lines), but we cannot say which column we found a hit. I am
> >> wondering if it is too grave a sin to report "the whole line is what
> >> satisfied the criteria given" and say the match lies at column #1.
> >
> > I think that is sensible. I previously was opposed to this because I
> > thought that it would be too difficult to script around the 'sometimes
> > we have columns but other times not' and 'I gave --column' but have to
> > check whether or not they are really there.
>
> I am not sure if you really got what I meant. I am suggesting that
> "git grep -v --column second" should report that the entire line has
> hit for each and every line that does not have "second" on it, which
> is a good answer and eliminate "sometimes there is column answer (or
> answer to -o query) and sometimes not" at the same time.
I re-read your note and understand more clearly now what your suggestion
is. To ensure that we're in agreement, do you mean:
1. '--column -v' will _never_ give a column, but will never die(),
either
2. '--column --[and | or | not]' will never give a column, but will
also never die(), either.
I think that _those_ semantics are sensible, and I apologize for
misinterpreting your original note.
> > In other terms:
> >
> > * not giving '--column' will _never_ give a column,
> > * '--column --invert' will _always_ die(), and
> > * '--column --[and | or | not]' will _never_ give a column.
>
> So this is completely opposite from what I would have expected. to
> somebody who said "I think that is sensible." over there.
Thanks,
Taylor