From 002b726a400a1dea16c0b59ae61527a1e55799fb Mon Sep 17 00:00:00 2001 From: Philip Oakley Date: Tue, 2 Apr 2013 23:39:51 +0100 Subject: builtin/help.c: add list_common_guides_help() function This implements what "help -g" introduced in the previous step does. Signed-off-by: Philip Oakley Signed-off-by: Junio C Hamano --- builtin/help.c | 36 +++++++++++++++++++++++++++++++++--- 1 file changed, 33 insertions(+), 3 deletions(-) (limited to 'builtin') diff --git a/builtin/help.c b/builtin/help.c index 03d432b19e..034c36c254 100644 --- a/builtin/help.c +++ b/builtin/help.c @@ -415,6 +415,37 @@ static void show_html_page(const char *git_cmd) open_html(page_path.buf); } +static struct { + const char *name; + const char *help; +} common_guides[] = { + { "attributes", "Defining attributes per path" }, + { "glossary", "A Git glossary" }, + { "ignore", "Specifies intentionally untracked files to ignore" }, + { "modules", "Defining submodule properties" }, + { "revisions", "Specifying revisions and ranges for Git" }, + { "tutorial", "A tutorial introduction to Git (for version 1.5.1 or newer)" }, + { "workflows", "An overview of recommended workflows with Git"}, +}; + +static void list_common_guides_help(void) +{ + int i, longest = 0; + + for (i = 0; i < ARRAY_SIZE(common_guides); i++) { + if (longest < strlen(common_guides[i].name)) + longest = strlen(common_guides[i].name); + } + + puts(_("The common Git guides are:\n")); + for (i = 0; i < ARRAY_SIZE(common_guides); i++) { + printf(" %s ", common_guides[i].name); + mput_char(' ', longest - strlen(common_guides[i].name)); + puts(_(common_guides[i].help)); + } + putchar('\n'); +} + int cmd_help(int argc, const char **argv, const char *prefix) { int nongit; @@ -432,9 +463,8 @@ int cmd_help(int argc, const char **argv, const char *prefix) list_commands(colopts, &main_cmds, &other_cmds); } - if (show_guides) { - /* do action - next patch */ - } + if (show_guides) + list_common_guides_help(); if (show_all || show_guides) { printf("%s\n", _(git_more_info_string)); -- cgit v1.2.3