diff options
author | Zdenek Kabelac <zkabelac@redhat.com> | 2021-04-15 20:00:09 +0200 |
---|---|---|
committer | Zdenek Kabelac <zkabelac@redhat.com> | 2021-04-19 14:37:08 +0200 |
commit | efd0939583484b85ddb8ed3ebb7cda0db51cf473 (patch) | |
tree | 9987e7b95d97a3714f2f85ecdee44e03d7cc182f | |
parent | 679116a9b859888a893de83236a8966063046f2b (diff) | |
download | lvm2-efd0939583484b85ddb8ed3ebb7cda0db51cf473.tar.gz |
man-generator: decorate optional option prefixes
Enhance man typography decoration of optional option
prefixes like --[raid]writebeind and use regular font to render []
as these are not part of the option name itself.
-rw-r--r-- | tools/command.c | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/tools/command.c b/tools/command.c index e776edaa2..556f22e95 100644 --- a/tools/command.c +++ b/tools/command.c @@ -2445,6 +2445,7 @@ static const char *_man_long_opt_name(const char *cmdname, int opt_enum) { static char long_opt_name[LONG_OPT_NAME_LEN]; const char *long_opt; + int i; memset(&long_opt_name, 0, sizeof(long_opt_name)); @@ -2481,6 +2482,25 @@ static const char *_man_long_opt_name(const char *cmdname, int opt_enum) break; } + if (strchr(long_opt, '[')) { + for (i = 0; i < sizeof(long_opt_name); ++long_opt, ++i) { + if (i < (sizeof(long_opt_name) - 8)) + switch(*long_opt) { + case '[': + strcpy(long_opt_name + i, "\\fP[\\fB"); + i += 6; + continue; + case ']': + strcpy(long_opt_name + i, "\\fP]\\fB"); + i += 6; + continue; + } + long_opt_name[i] = *long_opt; + } + long_opt_name[i] = 0; + return long_opt_name; + } + return long_opt; } |