From 81e61cda396da7eefb15dcf20b9e8be7ada37283 Mon Sep 17 00:00:00 2001 From: Daniel Stenberg Date: Wed, 16 Nov 2016 10:42:02 +0100 Subject: gen: support 'redirect' ... and warn for too long --help lines --- docs/cmdline-opts/MANPAGE.md | 1 + docs/cmdline-opts/gen.pl | 43 +++++++++++++++++++++++++++++-------------- 2 files changed, 30 insertions(+), 14 deletions(-) diff --git a/docs/cmdline-opts/MANPAGE.md b/docs/cmdline-opts/MANPAGE.md index 1ba00c83c..d9f550f51 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 680031003..ba405a4a6 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,22 +114,27 @@ sub single { } print ".IP \"$opt\"\n"; - my $o; - if($protocols) { - $o++; - print "($protocols) "; - } - if(!$arg && !$mutexed && !$magic) { - $o++; - print "[Boolean] "; + if($redirect) { + my $l = manpageify($redirect); + print "Use $l instead!\n"; } - if($magic) { - $o++; - print "[cmdline control] "; + 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); } - 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; } } -- cgit v1.2.3