diff --git a/docs/cmdline-opts/MANPAGE.md b/docs/cmdline-opts/MANPAGE.md index 1ba00c83c4..d9f550f515 100644 --- a/docs/cmdline-opts/MANPAGE.md +++ b/docs/cmdline-opts/MANPAGE.md @@ -26,6 +26,7 @@ Each file has a set of meta-data and a body of text. Mutexed: (space separated list of options this overrides) Requires: (space separated list of features this option requires) See-also: (space separated list of related options) + Redirect: (option name to use instead) Help: (short text for the --help output for this option) --- (end of meta-data) diff --git a/docs/cmdline-opts/gen.pl b/docs/cmdline-opts/gen.pl index 680031003a..ba405a4a61 100755 --- a/docs/cmdline-opts/gen.pl +++ b/docs/cmdline-opts/gen.pl @@ -10,6 +10,7 @@ my %optshort; my %optlong; my %helplong; my %arglong; +my %redirlong; # get the long name version, return the man page string sub manpageify { @@ -51,6 +52,7 @@ sub single { my $arg; my $mutexed; my $requires; + my $redirect; my $seealso; my $magic; # cmdline special option while() { @@ -84,6 +86,9 @@ sub single { elsif(/^Requires: (.*)/i) { $requires=$1; } + elsif(/^Redirect: (.*)/i) { + $redirect=$1; + } elsif(/^---/) { last; } @@ -109,21 +114,26 @@ sub single { } print ".IP \"$opt\"\n"; - my $o; - if($protocols) { - $o++; - print "($protocols) "; + if($redirect) { + my $l = manpageify($redirect); + print "Use $l instead!\n"; } - if(!$arg && !$mutexed && !$magic) { - $o++; - print "[Boolean] "; + else { + my $o; + if($protocols) { + $o++; + print "($protocols) "; + } + if(!$arg && !$mutexed && !$magic) { + $o++; + print "[Boolean] "; + } + if($magic) { + $o++; + print "[cmdline control] "; + } + print "\n" if($o); } - if($magic) { - $o++; - print "[cmdline control] "; - } - - print "\n" if($o); printdesc(@desc); undef @desc; @@ -231,7 +241,12 @@ sub listhelp { $opt .= " $arg"; } - printf " %-19s %s\n", $opt, $helplong{$f}; + my $line = sprintf " %-19s %s\n", $opt, $helplong{$f}; + + if(length($line) > 79) { + print STDERR "WARN: the --$long line is too long\n"; + } + print $line; } }