Code

parse-options: never suppress arghelp if LITERAL_ARGHELP is set
authorJonathan Nieder <jrnieder@gmail.com>
Wed, 1 Dec 2010 23:31:36 +0000 (17:31 -0600)
committerJunio C Hamano <gitster@pobox.com>
Tue, 7 Dec 2010 22:19:32 +0000 (14:19 -0800)
commitb57c68a69e028cc41eb01404dc4446a463c0e464
tree99d40935f88471e16d0dd7f027000b5cd10d928d
parentc1f4ec9ef45232d6dbdea4c417a9d41eb8ad7f4f
parse-options: never suppress arghelp if LITERAL_ARGHELP is set

The PARSE_OPT_LITERAL_ARGHELP flag allows a program to override the
standard "<argument> for mandatory, [argument] for optional" markup in
its help message.  Extend it to override the usual "no text for
disallowed", too (for the PARSE_OPT_NOARG | PARSE_OPT_LITERAL_ARGHELP
case, which was previously meaningless), to be more intuitive.

The motivation is to allow update-index to correctly advertise

--cacheinfo <mode> <object> <path>
                      add the specified entry to the index

while abusing PARSE_OPT_NOARG to disallow the "sticked form"

--cacheinfo=<mode> <object> <path>

Noticed-by: Stephen Boyd <bebarino@gmail.com>
Signed-off-by: Jonathan Nieder <jrnieder@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
parse-options.c