[PATCH 2/5] builtin-help: make list_commands() a bit more generic
From: Miklos Vajna <hidden>
Date: 2016-06-15 22:45:04
Subsystem:
the rest · Maintainer:
Linus Torvalds
That function now takes two paramters to control the prefix of the listed commands, and a second parameter to specify the title of the table. This can be useful for listing not only all git commands, but specific ones, like merge strategies. Signed-off-by: Miklos Vajna <redacted> --- help.c | 18 ++++++++++-------- help.h | 1 + 2 files changed, 11 insertions(+), 8 deletions(-)
diff --git a/help.c b/help.c
index 08188f5..7a42517 100644
--- a/help.c
+++ b/help.c@@ -506,23 +506,25 @@ static unsigned int load_command_list(const char *prefix) return longest; } -static void list_commands(void) +void list_commands(const char *prefix, const char *title) { - unsigned int longest = load_command_list(NULL); + unsigned int longest = load_command_list(prefix); const char *exec_path = git_exec_path(); if (main_cmds.cnt) { - printf("available git commands in '%s'\n", exec_path); - printf("----------------------------"); - mput_char('-', strlen(exec_path)); + printf("available %s in '%s'\n", title, exec_path); + printf("----------------"); + mput_char('-', strlen(title) + strlen(exec_path)); putchar('\n'); pretty_print_string_list(&main_cmds, longest); putchar('\n'); } if (other_cmds.cnt) { - printf("git commands available from elsewhere on your $PATH\n"); - printf("---------------------------------------------------\n"); + printf("%s available from elsewhere on your $PATH\n", title); + printf("---------------------------------------"); + mput_char('-', strlen(title)); + putchar('\n'); pretty_print_string_list(&other_cmds, longest); putchar('\n'); }
@@ -702,7 +704,7 @@ int cmd_help(int argc, const char **argv, const char *prefix) if (show_all) { printf("usage: %s\n\n", git_usage_string); - list_commands(); + list_commands("git-", "git commands"); printf("%s\n", git_more_info_string); return 0; }
diff --git a/help.h b/help.h
index 73da8d6..0741662 100644
--- a/help.h
+++ b/help.h@@ -2,5 +2,6 @@ #define HELP_H int is_git_command(const char *s, const char *prefix); +void list_commands(const char *prefix, const char *title); #endif /* HELP_H */
--
1.6.0.rc0.14.g95f8.dirty