projects
/
spider.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (from parent 1:
d575ecc
)
fix command searching
author
minima
<minima>
Mon, 21 Mar 2005 19:47:06 +0000
(19:47 +0000)
committer
minima
<minima>
Mon, 21 Mar 2005 19:47:06 +0000
(19:47 +0000)
perl/DXCommandmode.pm
patch
|
blob
|
history
perl/Spot.pm
patch
|
blob
|
history
diff --git
a/perl/DXCommandmode.pm
b/perl/DXCommandmode.pm
index 9b3b09e3f4e24572f5ee5e45462c09eff0d41346..95039af60ef5ef477ddc77333660a246610c830a 100644
(file)
--- a/
perl/DXCommandmode.pm
+++ b/
perl/DXCommandmode.pm
@@
-642,32
+642,33
@@
sub search
my @parts = split '/', $short_cmd;
my $dirfn;
my $curdir = $path;
my @parts = split '/', $short_cmd;
my $dirfn;
my $curdir = $path;
- my $p;
- my $i;
- my @lparts;
- for ($i = 0; $i < @parts; $i++) {
- my $p = $parts[$i];
+ while (my $p = shift @parts) {
opendir(D, $curdir) or confess "can't open $curdir $!";
my @ls = readdir D;
closedir D;
opendir(D, $curdir) or confess "can't open $curdir $!";
my @ls = readdir D;
closedir D;
- my $l;
- foreach $l (sort @ls) {
- next if $l =~ /^\./;
- if ($i < $#parts) { # we are dealing with directories
+
+ # if this isn't the last part
+ if (@parts) {
+ my $found;
+ foreach my $l (sort @ls) {
+ next if $l =~ /^\./;
if ((-d "$curdir/$l") && $p eq substr($l, 0, length $p)) {
dbg("got dir: $curdir/$l\n") if isdbg('command');
$dirfn .= "$l/";
$curdir .= "/$l";
if ((-d "$curdir/$l") && $p eq substr($l, 0, length $p)) {
dbg("got dir: $curdir/$l\n") if isdbg('command');
$dirfn .= "$l/";
$curdir .= "/$l";
+ $found++;
last;
}
last;
}
- } else { # we are dealing with commands
- @lparts = split /\./, $l;
- next if $lparts[$#lparts] ne $suffix; # only look for .$suffix files
+ }
+ # only proceed if we find the directory asked for
+ return () unless $found;
+ } else {
+ foreach my $l (sort @ls) {
+ next if $l =~ /^\./;
+ next unless $l =~ /\.$suffix$/;
if ($p eq substr($l, 0, length $p)) {
if ($p eq substr($l, 0, length $p)) {
- pop @lparts; # remove the suffix
- $l = join '.', @lparts;
- # chop $dirfn; # remove trailing /
+ $l =~ s/\.$suffix$//;
$dirfn = "" unless $dirfn;
$cmd_cache{$short_cmd} = join(',', ($path, "$dirfn$l")); # cache it
dbg("got path: $path cmd: $dirfn$l\n") if isdbg('command');
$dirfn = "" unless $dirfn;
$cmd_cache{$short_cmd} = join(',', ($path, "$dirfn$l")); # cache it
dbg("got path: $path cmd: $dirfn$l\n") if isdbg('command');
diff --git
a/perl/Spot.pm
b/perl/Spot.pm
index 7f9139cf8c9c0def2f5f4160cca7a202f0de9781..306bc282582e2b5b634df974f573848768c58f43 100644
(file)
--- a/
perl/Spot.pm
+++ b/
perl/Spot.pm
@@
-361,7
+361,7
@@
sub dup
$d = int ($d / 60);
$d *= 60;
$d = int ($d / 60);
$d *= 60;
- $by =~ s
/-\d+$//g
;
+ $by =~ s
|[-/]\d+$||
;
$freq = sprintf "%.1f", $freq; # normalise frequency
$call = substr($call, 0, $maxcalllth) if length $call > $maxcalllth;
$freq = sprintf "%.1f", $freq; # normalise frequency
$call = substr($call, 0, $maxcalllth) if length $call > $maxcalllth;