Code

Allow pager of diff command be enabled/disabled
authorAlex Riesen <raa.lkml@gmail.com>
Mon, 21 Jul 2008 21:28:49 +0000 (23:28 +0200)
committerJunio C Hamano <gitster@pobox.com>
Wed, 23 Jul 2008 18:14:47 +0000 (11:14 -0700)
See for example, status and show commands. Besides,
Documentation/RelNotes-1.6.0.txt mentions that pager.<cmd>
can be used to enable/disable paging behavior per command.

Signed-off-by: Alex Riesen <raa.lkml@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
builtin-diff.c
builtin.h

index faaa85a1d45ce6c5f398a44b1241f6325430918b..7ffea975059f9e13b07ca680e6707ffc14973f90 100644 (file)
@@ -296,7 +296,8 @@ int cmd_diff(int argc, const char **argv, const char *prefix)
         * If the user asked for our exit code then don't start a
         * pager or we would end up reporting its exit code instead.
         */
-       if (!DIFF_OPT_TST(&rev.diffopt, EXIT_WITH_STATUS))
+       if (!DIFF_OPT_TST(&rev.diffopt, EXIT_WITH_STATUS) &&
+           check_pager_config("diff") != 0)
                setup_pager();
 
        /*
index 0e605d4f4aa748c0b3c34aeb75a1b5a765114b12..f3502d305e4f65e9707fe8b738f64be6e49f7f84 100644 (file)
--- a/builtin.h
+++ b/builtin.h
@@ -18,6 +18,7 @@ extern int fmt_merge_msg(int merge_summary, struct strbuf *in,
        struct strbuf *out);
 extern int commit_tree(const char *msg, unsigned char *tree,
                struct commit_list *parents, unsigned char *ret);
+extern int check_pager_config(const char *cmd);
 
 extern int cmd_add(int argc, const char **argv, const char *prefix);
 extern int cmd_annotate(int argc, const char **argv, const char *prefix);