[feedgnuplot] 08/42: Simplified use of %options. I now use the global instead of passing it down
Dima Kogan
dkogan-guest at alioth.debian.org
Sun Oct 20 08:04:03 UTC 2013
This is an automated email from the git hooks/post-receive script.
dkogan-guest pushed a commit to tag v1.25
in repository feedgnuplot.
commit 756d934058d01cb7fda13c91f75f0dbf6e040b3c
Author: Dima Kogan <dima at secretsauce.net>
Date: Thu Sep 19 15:42:29 2013 -0700
Simplified use of %options. I now use the global instead of passing it down
---
bin/feedgnuplot | 72 +++++++++++++++++++++++++++----------------------------
1 file changed, 35 insertions(+), 37 deletions(-)
diff --git a/bin/feedgnuplot b/bin/feedgnuplot
index 2deac09..905af79 100755
--- a/bin/feedgnuplot
+++ b/bin/feedgnuplot
@@ -15,7 +15,7 @@ use Pod::Usage;
my $VERSION = 1.24;
my %options;
-interpretCommandline(\%options);
+interpretCommandline();
my $gnuplotVersion = getGnuplotVersion();
@@ -93,8 +93,6 @@ sub interpretCommandline
unshift @ARGV, shellwords shift @ARGV;
}
- my $options = shift;
-
# everything off by default:
# do not stream in the data by default
# point plotting by default.
@@ -111,7 +109,7 @@ sub interpretCommandline
$options{legend} = [];
$options{curvestyle} = [];
$options{histogram} = [];
- GetOptions($options, 'stream:s', 'domain!', 'dataid!', '3d!', 'colormap!', 'lines!', 'points!',
+ GetOptions(\%options, 'stream:s', 'domain!', 'dataid!', '3d!', 'colormap!', 'lines!', 'points!',
'circles', 'legend=s{2}', 'autolegend!', 'xlabel=s', 'ylabel=s', 'y2label=s', 'zlabel=s',
'title=s', 'xlen=f', 'ymin=f', 'ymax=f', 'xmin=f', 'xmax=f', 'y2min=f', 'y2max=f',
'zmin=f', 'zmax=f', 'y2=s@', 'curvestyle=s{2}', 'curvestyleall=s', 'extracmds=s@',
@@ -125,21 +123,21 @@ sub interpretCommandline
# handle various cmdline-option errors
- if ( $options->{help} )
+ if ( $options{help} )
{
pod2usage( -exitval => 0,
-verbose => 1, # synopsis and args
-output => \*STDOUT );
}
- if( $options->{version} )
+ if( $options{version} )
{
print "feedgnuplot version $VERSION\n";
exit 0;
}
# no global style if one isn't given
- $options->{curvestyleall} = '' unless defined $options->{curvestyleall};
+ $options{curvestyleall} = '' unless defined $options{curvestyleall};
# expand options that are given as comma-separated lists
for my $listkey (qw(histogram y2))
@@ -163,27 +161,27 @@ sub interpretCommandline
}
}
- if ( defined $options->{hardcopy} && defined $options->{stream} )
+ if ( defined $options{hardcopy} && defined $options{stream} )
{
print STDERR "Warning: since we're making a hardcopy, I'm disabling streaming\n";
- delete $options->{stream};
+ delete $options{stream};
}
# parse stream option. Allowed only numbers >= 0 or 'trigger'. After this code
- # $options->{stream} is
+ # $options{stream} is
# -1 for triggered replotting
# >0 for timed replotting
# undef if not streaming
- if(defined $options->{stream})
+ if(defined $options{stream})
{
# if no streaming period is given, default to 1Hz.
- $options->{stream} = 1 if $options->{stream} eq '';
+ $options{stream} = 1 if $options{stream} eq '';
- if( !looks_like_number $options->{stream} )
+ if( !looks_like_number $options{stream} )
{
- if($options->{stream} eq 'trigger')
+ if($options{stream} eq 'trigger')
{
- $options->{stream} = 0;
+ $options{stream} = 0;
}
else
{
@@ -192,57 +190,57 @@ sub interpretCommandline
}
}
- if ( $options->{stream} == 0 )
+ if ( $options{stream} == 0 )
{
- $options->{stream} = -1;
+ $options{stream} = -1;
}
- elsif ( $options->{stream} <= 0)
+ elsif ( $options{stream} <= 0)
{
print STDERR "--stream can only take in values >=0 or 'trigger'\n";
exit -1;
}
}
- if ($options->{colormap})
+ if ($options{colormap})
{
# colormap styles all curves with palette. Seems like there should be a way to do this with a
# global setting, but I can't get that to work
- $options->{curvestyleall} .= ' palette';
+ $options{curvestyleall} .= ' palette';
}
- if ( $options->{'3d'} )
+ if ( $options{'3d'} )
{
- if ( !$options->{domain} )
+ if ( !$options{domain} )
{
print STDERR "--3d only makes sense with --domain\n";
exit -1;
}
- if ( $options->{timefmt} )
+ if ( $options{timefmt} )
{
print STDERR "--3d makes no sense with --timefmt\n";
exit -1;
}
- if ( defined $options->{y2min} || defined $options->{y2max} || defined $options->{y2} )
+ if ( defined $options{y2min} || defined $options{y2max} || defined $options{y2} )
{
print STDERR "--3d does not make sense with --y2...\n";
exit -1;
}
- if ( defined $options->{xlen} )
+ if ( defined $options{xlen} )
{
print STDERR "--3d does not make sense with --xlen\n";
exit -1;
}
- if ( defined $options->{monotonic} )
+ if ( defined $options{monotonic} )
{
print STDERR "--3d does not make sense with --monotonic\n";
exit -1;
}
- if ( defined $options->{binwidth} || @{$options->{histogram}} )
+ if ( defined $options{binwidth} || @{$options{histogram}} )
{
print STDERR "--3d does not make sense with histograms\n";
exit -1;
@@ -250,22 +248,22 @@ sub interpretCommandline
}
else
{
- if ( $options->{timefmt} && !$options->{domain} )
+ if ( $options{timefmt} && !$options{domain} )
{
print STDERR "--timefmt makes sense only with --domain\n";
exit -1;
}
- if(!$options->{colormap})
+ if(!$options{colormap})
{
- if ( defined $options->{zmin} || defined $options->{zmax} || defined $options->{zlabel} )
+ if ( defined $options{zmin} || defined $options{zmax} || defined $options{zlabel} )
{
print STDERR "--zmin/zmax/zlabel only makes sense with --3d or --colormap\n";
exit -1;
}
}
- if ( defined $options->{square_xy} )
+ if ( defined $options{square_xy} )
{
print STDERR "--square_xy only makes sense with --3d\n";
exit -1;
@@ -288,19 +286,19 @@ sub interpretCommandline
}
# deal with timefmt
- if ( $options->{timefmt} )
+ if ( $options{timefmt} )
{
# I need to compute a regex to match the time field and I need to count how
# many whilespace-separated fields there are.
# strip leading and trailing whitespace
- $options->{timefmt} =~ s/^\s*//;
- $options->{timefmt} =~ s/\s*$//;
+ $options{timefmt} =~ s/^\s*//;
+ $options{timefmt} =~ s/\s*$//;
- my $Nfields = scalar split( ' ', $options->{timefmt});
- $options->{timefmt_Ncols} = $Nfields;
+ my $Nfields = scalar split( ' ', $options{timefmt});
+ $options{timefmt_Ncols} = $Nfields;
my $regex_str = join( '\s+', ('\S+') x $Nfields );
- $options->{timefmt_regex} = qr/$regex_str/;
+ $options{timefmt_regex} = qr/$regex_str/;
}
}
--
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/debian-science/packages/feedgnuplot.git
More information about the debian-science-commits
mailing list