{"thread":{"id":"16777","subject":"Re: git-diff should not fire up $PAGER, period!","startedAt":"2008-12-18T02:18:38Z","lastAt":"2008-12-18T03:22:31Z","messageCount":3,"participants":["Mike Coleman","Junio C Hamano","Johannes Schindelin"],"isPatch":false,"patchVersion":null,"patchTotal":null},"messages":[{"id":"98212","messageId":"3c6c07c20812171818k6b6e3555ja991e20d74d8291b@mail.gmail.com","threadId":"16777","inReplyTo":null,"subject":"Re: git-diff should not fire up $PAGER, period!","fromName":"Mike Coleman","fromEmail":"tutufan@gmail.com","sentAt":"2008-12-18T02:18:38Z","receivedAt":"2008-12-18T02:18:38Z","isPatch":false,"sender":{"key":"tutufan@gmail.com","avatar":null},"body":"It's so cold here my car wouldn't start this morning, so I feel\nfortunate to have these flames to keep me warm!  :-)\n\n\nI still find git-diff's unsolicited invocation of $PAGER a bit\njarring, but I also find that I like it.  It has a sort of Windows-ish\nfeel to it (am I straying from the true path?).  It's convenient,\nthough honestly \"git-diff|l\" would only be two extra characters.  From\na UI perspective, the oddest thing about it is that all (not, in\nfact?) of the other git programs which might also produce lengthy\noutput *don't* invoke $PAGER--git-status particularly comes to mind.\nThere are a large number of Unix programs that would be more\nconvenient if their output was automatically paged, but I'm not sure\nit'd be better if they were all changed to do this.  (The best analog\nI can think of where this seems desirable is man(1).)\n\nTo me, the most important nugget from the original complaint was that\ngit-diff sends its error messages to stdout.  I understand why it\nmight be done, but I'd worry about losing the stderr diagnostic for a\ncommand that matters.  [I've been playing around with this for a few\nminutes trying to see errors going to stdout and I can't reproduce\nit--I wonder if they really do.]\n\n\nRegarding the emacs complaint, as an emacs user I'd say I'm not\nsurprised this didn't quite work right.  In the particular case of the\ncompilation buffer, I wonder if the solution isn't to just unset TERM,\nthe existence of which (together with the fact that there's a pty)\ncould be taken as an invitation for the subordinate process to start\ndoing awful raw-terminal things.  (Similar logic applies to the\nDISPLAY variable.)  Like Junio, I also eschew doing terminal emulation\ninside of emacs.\n\nGood evening from the icy midwest,\nMike\n"},{"id":"98213","messageId":"7vy6yei5ha.fsf@gitster.siamese.dyndns.org","threadId":"16777","inReplyTo":"3c6c07c20812171818k6b6e3555ja991e20d74d8291b@mail.gmail.com","subject":"Re: git-diff should not fire up $PAGER, period!","fromName":"Junio C Hamano","fromEmail":"gitster@pobox.com","sentAt":"2008-12-18T02:26:09Z","receivedAt":"2008-12-18T02:26:09Z","isPatch":false,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"\"Mike Coleman\" <tutufan@gmail.com> writes:\n\n> To me, the most important nugget from the original complaint was that\n> git-diff sends its error messages to stdout.  I understand why it\n> might be done, but I'd worry about losing the stderr diagnostic for a\n> command that matters.  [I've been playing around with this for a few\n> minutes trying to see errors going to stdout and I can't reproduce\n> it--I wonder if they really do.]\n\nThey indeed did but it has hopefully been fixed.  See a833502 (pager: do\nnot dup2 stderr if it is already redirected, 2008-12-15).\n\n> ...  Like Junio, I also eschew doing terminal emulation\n> inside of emacs.\n\nCome to think of it, it may have been from you that I picked up the trick\nof setting PAGER to cat inside an Emacs environment.\n\n> Good evening from the icy midwest,\n\nGood evening from rainy and chilly SoCal.\n"},{"id":"98219","messageId":"alpine.DEB.1.00.0812180419090.14632@racer","threadId":"16777","inReplyTo":"3c6c07c20812171818k6b6e3555ja991e20d74d8291b@mail.gmail.com","subject":"Re: git-diff should not fire up $PAGER, period!","fromName":"Johannes Schindelin","fromEmail":"johannes.schindelin@gmx.de","sentAt":"2008-12-18T03:22:31Z","receivedAt":"2008-12-18T03:22:31Z","isPatch":false,"sender":{"key":"johannes.schindelin@gmx.de","avatar":"https://avatars.githubusercontent.com/u/127790?v=4"},"body":"Hi,\n\nOn Wed, 17 Dec 2008, Mike Coleman wrote:\n\n> I still find git-diff's unsolicited invocation of $PAGER a bit\n> jarring, but I also find that I like it.\n\nIt might have its reason in that it follows the common flow, where \ninteractive use of _any_ diff program is _just useless_ unless piped to a \npager.\n\nAnd no, redirecting to a file is not interactive.\n\nCan we please stop with those bogus and pointless, not to mention \nuninformed, discussions about design decisions that have been verified to \nbe useful, or at least not harmful in any way, for a _long_, _long_ time?\n\nThe git list is high volume already, but at least so far it was high \nsignal/noise ratio.\n\nLet's keep it that way,\nDscho\n"}]}