Gentlemen, I have found the solution to your problem. Unbundle git-diff and $PAGER. Ask yourself, does diff(1) call $PAGER? No. That's because the Unix designers were smart enough not to glue everything together. Now's your chance to repent, as you haven't even yet mentioned $PAGER on the git-diff man page. Yes, do mention it: "EXAMPLES: git-diff|less" I.e., the user can page the output if he feels inclined, just like any other output. I mean one already has a wallet. The bank need not give the user one every time they make a withdraw. I mean here I am in emacs, and -*- mode: compilation; default-directory: "...coreutils/" -*- Compilation started at Thu Dec 18 03:15:14 git-diff WARNING: terminal is not fully functional^M ^M- (press RETURN) "It's all emacs' fault for emulating a tty too well"... no, it's all your fault for gumming things together. No I don't want my cookies with obligatory milk. I'll using git-diff|cat for now instead of complaining that emacs is all wrong. Even using git-diff|cat|less is better than messing with the LESS=F bug. Repent, whippersnappers! OK, doing test x$EMACS = xt && PAGER=cat in .bashrc. That will help for emacs' shell buffers, but not compilation mode buffers... "then just make a hook"... 13 hooks to combat one poor design choice. And one notices git-show is gummed up too. Hmm, looking in changelogs, we see * Error messages used to be sent to stderr, only to get hidden, when $PAGER was in use. They now are sent to stdout along with the command output to be shown in the $PAGER. Well, if you had left paging to the user, no one would have blamed you for making error messages disappear, and you could have left stderr as the elders intended. Wait, $ git-config --global core.pager "" Cool. Bye. -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html