From: Junio C Hamano Date: Thu, 21 Oct 2010 22:53:36 GMT Subject: Re: [PATCH] fix color.pager = false with "git diff" Message-ID: <7vzku7rwcv.fsf@alter.siamese.dyndns.org> In-Reply-To: <20101021150244.GA18426@sigill.intra.peff.net> Jeff King writes: > The color code makes a decision early on about whether to > use colors based on the config and whether we are using a > pager. For the most part, this works, because if we are > using a pager, we will start it more or less immediately. > > In the case of diff, however, we delay starting the pager in > case --exit-code is being used. If this happens, then the > color code makes the wrong decision (because it doesn't > yet realize we are using a pager), and we need to correct > the decision after deciding whether to use a pager. > > Signed-off-by: Jeff King > --- > Original discussion here: > > http://thread.gmane.org/gmane.comp.version-control.git/89599 > > I have mixed feelings on this one. It's kind of a hack. A more elegant > solution would be totally rewriting the color code to check for the > pager at first output. > > In favor of this patch: > > 1. It fixes a real bug. > > 2. Perfect is the enemy of the good, and I don't care enough about > this case to refactor the color code. Hmm, with "[color] pager = false", what should $ git diff --color do?