diff options
author | Daniel Friesel <derf@finalrewind.org> | 2011-06-29 03:01:33 +0200 |
---|---|---|
committer | Daniel Friesel <derf@finalrewind.org> | 2011-06-29 03:01:33 +0200 |
commit | 329134383358e3a64a342cf02efe505a8f9b9425 (patch) | |
tree | 334d6b73b3f5ab3195589956f602e2250003302d | |
parent | afe352aaf71ebf3abb266e2268c3717c87de4773 (diff) |
efa: Show help upon Getopt::Long error as well
-rwxr-xr-x | bin/efa | 14 |
1 files changed, 8 insertions, 6 deletions
@@ -15,22 +15,24 @@ my $ignore_info = 'Fahrradmitnahme'; my $efa; my ( @from, @to, @via, $from_type, $to_type, $via_type ); my $opt = { - 'help' => \&show_help, - , + 'help' => sub { show_help(0) }, 'ignore-info' => \$ignore_info, 'from' => \@from, 'to' => \@to, - 'version' => sub { say "efa version $VERSION"; exit 0 }, - 'via' => \@via, + 'version' => sub { say "efa version $VERSION"; exit 0 }, + 'via' => \@via, }; binmode( STDOUT, ':encoding(utf-8)' ); binmode( STDERR, ':encoding(utf-8)' ); sub show_help { + my ($exit_status) = @_; + say 'Usage: efa [options] <from-city> <from-stop> <to-city> <to-stop>'; say 'See also: man efa'; - exit 0; + + exit $exit_status; } sub handle_efa_exception { @@ -122,7 +124,7 @@ GetOptions( via=s@{2} walk-speed|w=s }, -) or die("Please see perldoc -F $0\n"); +) or show_help(1); #>>> if ( not( @from and @to ) ) { if ( @ARGV == 4 ) { |