mirror of
https://github.com/moparisthebest/curl
synced 2024-11-05 00:55:04 -05:00
gen: support 'redirect'
... and warn for too long --help lines
This commit is contained in:
parent
1ef1f10cab
commit
81e61cda39
@ -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)
|
||||
|
||||
|
@ -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(<F>) {
|
||||
@ -84,6 +86,9 @@ sub single {
|
||||
elsif(/^Requires: (.*)/i) {
|
||||
$requires=$1;
|
||||
}
|
||||
elsif(/^Redirect: (.*)/i) {
|
||||
$redirect=$1;
|
||||
}
|
||||
elsif(/^---/) {
|
||||
last;
|
||||
}
|
||||
@ -109,6 +114,11 @@ sub single {
|
||||
}
|
||||
|
||||
print ".IP \"$opt\"\n";
|
||||
if($redirect) {
|
||||
my $l = manpageify($redirect);
|
||||
print "Use $l instead!\n";
|
||||
}
|
||||
else {
|
||||
my $o;
|
||||
if($protocols) {
|
||||
$o++;
|
||||
@ -122,8 +132,8 @@ sub single {
|
||||
$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;
|
||||
}
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user