Merge branch 'vr/help-per-platform'
authorJunio C Hamano <gitster@pobox.com>
Thu, 21 Jun 2012 21:42:38 +0000 (14:42 -0700)
committerJunio C Hamano <gitster@pobox.com>
Thu, 21 Jun 2012 21:42:38 +0000 (14:42 -0700)
We used to always default to "man" format even on platforms where
"man" viewer is not widely available.

* vr/help-per-platform:
help: use HTML as the default help format on Windows

Makefile
builtin/help.c
index 62de0b42b95504cc5ae0719e27d7e4f6937cbebe..f62ca2aebb28758ea164b65dab7dff19ddd4c3e0 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -299,6 +299,10 @@ all::
 #
 # Define GIT_USER_AGENT if you want to change how git identifies itself during
 # network interactions.  The default is "git/$(GIT_VERSION)".
+#
+# Define DEFAULT_HELP_FORMAT to "man", "info" or "html"
+# (defaults to "man") if you want to have a different default when
+# "git help" is called without a parameter specifying the format.
 
 GIT-VERSION-FILE: FORCE
        @$(SHELL_PATH) ./GIT-VERSION-GEN
@@ -1242,6 +1246,7 @@ ifeq ($(uname_S),Windows)
        BLK_SHA1 = YesPlease
        NO_POSIX_GOODIES = UnfortunatelyYes
        NATIVE_CRLF = YesPlease
+       DEFAULT_HELP_FORMAT = html
 
        CC = compat/vcbuild/scripts/clink.pl
        AR = compat/vcbuild/scripts/lib.pl
@@ -1926,6 +1931,10 @@ GIT_USER_AGENT_CQ = "$(subst ",\",$(subst \,\\,$(GIT_USER_AGENT)))"
 GIT_USER_AGENT_CQ_SQ = $(subst ','\'',$(GIT_USER_AGENT_CQ))
 BASIC_CFLAGS += -DGIT_USER_AGENT='$(GIT_USER_AGENT_CQ_SQ)'
 
+ifdef DEFAULT_HELP_FORMAT
+BASIC_CFLAGS += -DDEFAULT_HELP_FORMAT='"$(DEFAULT_HELP_FORMAT)"'
+endif
+
 ALL_CFLAGS += $(BASIC_CFLAGS)
 ALL_LDFLAGS += $(BASIC_LDFLAGS)
 
index 43d3c84449a57ec7028acb663d4ab4bea134c97e..536d4fd46398645589f5ad8555684c0690ad8af7 100644 (file)
 #include "column.h"
 #include "help.h"
 
+#ifndef DEFAULT_HELP_FORMAT
+#define DEFAULT_HELP_FORMAT "man"
+#endif
+
 static struct man_viewer_list {
        struct man_viewer_list *next;
        char name[FLEX_ARRAY];
@@ -445,7 +449,9 @@ int cmd_help(int argc, const char **argv, const char *prefix)
        setup_git_directory_gently(&nongit);
        git_config(git_help_config, NULL);
 
-       if (parsed_help_format != HELP_FORMAT_NONE)
+       if (parsed_help_format == HELP_FORMAT_NONE)
+               help_format = parse_help_format(DEFAULT_HELP_FORMAT);
+       else
                help_format = parsed_help_format;
 
        alias = alias_lookup(argv[0]);