projects
/
spider.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
1. Do some range checking for spots and WWV in the future (got a WWV for Oct
[spider.git]
/
perl
/
CmdAlias.pm
diff --git
a/perl/CmdAlias.pm
b/perl/CmdAlias.pm
index e5f6686ab05811e500603b470364806f923809b0..a424f8e861ebb5a00cb15f415293be47bb8db3fa 100644
(file)
--- a/
perl/CmdAlias.pm
+++ b/
perl/CmdAlias.pm
@@
-41,34
+41,31
@@
use Carp;
use strict;
use strict;
-use vars qw(%alias $
cmd_mtime $localcmd_mtime $
fn $localfn);
+use vars qw(%alias $fn $localfn);
%alias = ();
%alias = ();
-$cmd_mtime = 1;
-$localcmd_mtime = 1;
-
$fn = "$main::cmd/Aliases";
$localfn = "$main::localcmd/Aliases";
$fn = "$main::cmd/Aliases";
$localfn = "$main::localcmd/Aliases";
-sub
checkfiles
+sub
load
{
{
- my $m = -M $fn;
-# print "m: $m oldmtime: $cmd_mtime\n";
- if ($m < $cmd_mtime) {
- do $fn;
+ my $ref = shift;
+ if (-e $localfn) {
+ do $localfn;
+ return ($@) if $@ && ref $ref;
+ confess $@ if $@;
+ return ();
+ }
+ do $fn;
+ return ($@) if $@ && ref $ref;
confess $@ if $@;
confess $@ if $@;
- $cmd_mtime = $m;
- $localcmd_mtime = 0;
- }
- if (-e $localfn) {
- $m = -M $localfn;
- if ($m < $localcmd_mtime) {
- do $localfn;
- confess $@ if $@;
- $localcmd_mtime = $m;
- }
- }
+ return ();
+}
+
+sub init
+{
+ load();
}
#
}
#
@@
-82,15
+79,13
@@
sub get_cmd
$let = lc $let;
$let = lc $let;
- checkfiles();
-
$ref = $alias{$let};
return undef if !$ref;
$n = @{$ref};
for ($i = 0; $i < $n; $i += 3) {
if ($s =~ /$ref->[$i]/i) {
$ref = $alias{$let};
return undef if !$ref;
$n = @{$ref};
for ($i = 0; $i < $n; $i += 3) {
if ($s =~ /$ref->[$i]/i) {
- my $ri = qq{\$ro = "$ref->[$i+1]"};
+ my $ri = qq{\$ro = "$ref->[$i+1]"};
my $ro;
eval $ri;
return $ro;
my $ro;
eval $ri;
return $ro;
@@
-110,16
+105,16
@@
sub get_hlp
$let = lc $let;
$let = lc $let;
- checkfiles();
-
$ref = $alias{$let};
return undef if !$ref;
$n = @{$ref};
for ($i = 0; $i < $n; $i += 3) {
if ($s =~ /$ref->[$i]/i) {
$ref = $alias{$let};
return undef if !$ref;
$n = @{$ref};
for ($i = 0; $i < $n; $i += 3) {
if ($s =~ /$ref->[$i]/i) {
- my $ri = qq{$ref->[$i+2]};
- return $ri;
+ my $ri = qq{\$ro = "$ref->[$i+2]"};
+ my $ro;
+ eval $ri;
+ return $ro;
}
}
return undef;
}
}
return undef;