Here is a replacement for the jn/maint-fix-pager series currently in pu. As for the previous version, the point is to fix the breakage from dec543 (am -i, git-svn: use "git var GIT_PAGER", 2009-10-30) reported at http://thread.gmane.org/gmane.comp.version-control.git/139831 I also added some new tests to make sure pagination works in other ways. In this version, patches 1-5 are the same fixes as before, with commit messages tweaked to take into account feedback from the previous round. You can see what they fix by using 'git svn log' and the '(v)iew' option of 'git am --interactive', which both stopped paginating output in commit dec543. You can see what they don’t break by running some other command such as 'git log' in circumstances where its output is not supposed to be paginated. The test in patch 6 has some fixes that didn’t make it to pu last time. To avoid risk of spewing useless output to /dev/tty, the tests requiring a terminal only run with the --verbose option. Patch 7 is the one I am most interested in feedback about. It allows automatic runs of tests without a real terminal by creating its own pty as needed. But it might be a portability nightmare: is posix_openpt widely available? Will open("/dev/ptmx", ...) do just as well most places? And how important is it that these tests run on the most obscure platforms? Because these questions are still up in the air for me, I do not think patch 7 is suitable for use outside pu yet. What I would most like to hear is that /dev/ptmx works often enough, because that is a condition that can be tested for at runtime without adding complication to the Makefile. But if that is not the case, there are other options. Jonathan Nieder (7): Fix 'git var' usage synopsis Make 'git var GIT_PAGER' always print the configured pager git.1: Clarify the behavior of the --paginate option git svn: Fix launching of pager am: Fix launching of pager tests: Add tests for automatic use of pager t7006-pager: if stdout is not a terminal, make a new one .gitignore | 1 + Documentation/git-var.txt | 2 +- Documentation/git.txt | 8 ++- Makefile | 6 ++ builtin-var.c | 4 +- cache.h | 2 +- git-am.sh | 5 +- git-sh-setup.sh | 13 ++++ git-svn.perl | 9 ++- pager.c | 6 +- t/t7006-pager.sh | 171 +++++++++++++++++++++++++++++++++++++++++++++ test-terminal.c | 62 ++++++++++++++++ 12 files changed, 274 insertions(+), 15 deletions(-) create mode 100644 t/t7006-pager.sh create mode 100644 test-terminal.c -- 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