]> scm.dxcluster.org Git - spider.git/commitdiff
fix users delete? messages, local::pcprot()
authorDirk Koopman <djk@tobit.co.uk>
Mon, 24 Jan 2022 23:52:17 +0000 (23:52 +0000)
committerDirk Koopman <djk@tobit.co.uk>
Mon, 24 Jan 2022 23:52:17 +0000 (23:52 +0000)
Changes
cmd/export_users.pl
perl/DXChannel.pm
perl/DXProt.pm
perl/DXUser.pm
perl/Messages
perl/cluster.pl

diff --git a/Changes b/Changes
index c3dcd6db890ec2b9bf0d98fa3f53449c28662743..a6e8b294dbe0631d33a582dd3c384824fb73091f 100644 (file)
--- a/Changes
+++ b/Changes
@@ -1,3 +1,8 @@
+24Jan22=======================================================================
+1. Change Local::pcprot() calling conventions to be the same as the rest of
+   software (see any 'sub handle_nn' function in DXProtHandle.pm.
+2. Corrected some interpolations in Messages. 
+3. Tried to make users file deletes and updates more stable.
 22Jan22=======================================================================
 1. Refine spot display to retain the ':' and also reduce the likelyhood of
    of misalignment by using the available space in the 39 characters more
index 62429ffebf2d2bcf7123dd727b036ac7b48d5b29..c9d7e7845887f261269c4c77ac7d535ce1d59c87 100644 (file)
@@ -8,14 +8,13 @@ my $line = shift;;
 return (1, $self->msg('e5')) unless $self->priv >= 9;
 
 $line ||= 'user_json';
-my ($fn, $flag) = split /\s+/, $line;
+my ($fn) = split /\s+/, $line;
 unless ($fn && $fn eq 'user_json') {
        $fn =~ s|[/\.]||g;
        $fn = "/tmp/$fn";
 }
-my $strip = $flag && $flag eq 'strip';
 
-my @out = DXUser::export($fn, $strip);
+my @out = DXUser::export($fn);
 
 return (1, @out);
 
index c4584ba7014d01a66a362febe1f3c62fde1bd893..7f4d996a34a98a60deaf987596fbdffb3d46600f 100644 (file)
@@ -771,6 +771,15 @@ sub error_handler
        $self->disconnect(1);
 }
 
+sub refresh_user
+{
+       my $call = shift;
+       my $user = shift;
+       return unless $call && $user && ref $user;
+       my $self = DXChannel::get($call);
+       $self->{user} = $user;
+       return $user;
+}
 
 sub isregistered
 {
index e1b1ea45b0fc5c3b87d01fdd6c767f4d17b6ec15..67dc56632d80b4d2e06abcb509daa2d239c7c71e 100644 (file)
@@ -429,14 +429,15 @@ sub normal
                }
        }
 
+       my $origin = $self->{call};
+
        if (defined &Local::pcprot) {
                my $r;
-               eval { $r = Local::pcprot($self, $pcno, $line, @field); };
+               eval { $r = Local::pcprot($self, $pcno, $line,  $origin, \@field); };
                return if $r;                   # i.e don't process it
        }
 
        # send it out for processing
-       my $origin = $self->{call};
        no strict 'subs';
        my $sub = "handle_$pcno";
 
index b5f56c2a442f1ab52de8af97b1fa855a6ae8d8e9..dd35c5e7aeeb268bbcc1706feb5a06ff2cc0a876 100644 (file)
@@ -20,6 +20,7 @@ use File::Copy;
 use Data::Structure::Util qw(unbless);
 use Time::HiRes qw(gettimeofday tv_interval);
 use IO::File;
+use DXChannel;
 use DXJSON;
 
 use strict;
@@ -304,6 +305,8 @@ sub put
        $lru->put($call, $self);
        my $ref = $self->encode;
        $dbm->put($call, $ref);
+       DXChannel::refresh_user($call, $ref);
+       return $ref;
 }
 
 
@@ -369,208 +372,6 @@ sub fields
 }
 
 
-#
-# export the database to an ascii file
-#
-
-sub export
-{
-       my $name = shift || 'user_json';
-       my $basic_info_only = shift;
-
-       my $fn = $name ne 'user_json' ? $name : "$main::local_data/$name";                       # force use of local
-       
-       # save old ones
-       copy $fn, "$fn.keep" unless -e "$fn.keep";
-       copy "$fn.ooooo", "$fn.backstop" unless -e "$fn,backstop";
-
-       move "$fn.oooo", "$fn.ooooo" if -e "$fn.oooo";
-       move "$fn.ooo", "$fn.oooo" if -e "$fn.ooo";
-       move "$fn.oo", "$fn.ooo" if -e "$fn.oo";
-       move "$fn.o", "$fn.oo" if -e "$fn.o";
-       move "$fn", "$fn.o" if -e "$fn";
-
-       
-       my $ta = [gettimeofday];
-       my $count = 0;
-       my $err = 0;
-       my $del = 0;
-       my $spurious = 0;
-       my $unlocked = 0;
-       my $old =  0;
-       my $ancient =  0;
-       my $nodes = 0;
-       my $renamed = 0;
-               
-       my $fh = new IO::File ">$fn" or return "cannot open $fn ($!)";
-       if ($fh) {
-               my $key = 0;
-               my $val = undef;
-               my $action;
-               my $t = scalar localtime;
-               print $fh q{#!/usr/bin/perl
-#
-# The exported userfile for a DXSpider System
-#
-# Input file: $filename
-#       Time: $t
-#
-                       
-package main;
-                       
-# search local then perl directories
-BEGIN {
-       umask 002;
-                               
-       # root of directory tree for this system
-       $root = "/spider"; 
-       $root = $ENV{'DXSPIDER_ROOT'} if $ENV{'DXSPIDER_ROOT'};
-       
-       unshift @INC, "$root/perl";     # this IS the right way round!
-       unshift @INC, "$root/local";
-       
-       # try to detect a lockfile (this isn't atomic but 
-       # should do for now
-       $lockfn = "$root/local_data/cluster.lck";       # lock file name
-       if (-e $lockfn) {
-               open(CLLOCK, "$lockfn") or die "Can't open Lockfile ($lockfn) $!";
-               my $pid = <CLLOCK>;
-               chomp $pid;
-               die "Lockfile ($lockfn) and process $pid exists - cluster must be stopped first\n" if kill 0, $pid;
-               close CLLOCK;
-       }
-}
-
-use SysVar;
-use DXUtil;
-use DXUser;
-use JSON;
-use Time::HiRes qw(gettimeofday tv_interval);
-package DXUser;
-
-our $json = JSON->new->canonical(1);
-
-my $ta = [gettimeofday];
-our $filename = "$main::local_data/users.v3j";
-my $exists = -e $filename ? "OVERWRITING" : "CREATING"; 
-print "perl user_json $exists $filename\n";
-
-del_file();
-init(2);
-%u = ();
-my $count = 0;
-my $err = 0;
-while (<DATA>) {
-       chomp;
-       my @f = split /\t/;
-       my $ref = decode($f[1]);
-       if ($ref) {
-               $ref->put();
-               $count++;
-       } else {
-               print "# Error: $f[0]\t$f[1]\n";
-               $err++
-       }
-}
-DXUser::sync(); DXUser::finish();
-my $diff = _diffms($ta);
-print "There are $count user records and $err errors in $diff mS\n";
-};
-               print $fh "__DATA__\n";
-
-        for ($action = R_FIRST; !$dbm->seq($key, $val, $action); $action = R_NEXT) {
-                       if (!is_callsign($key) || $key =~ /^0/) {
-                               my $eval = $val;
-                               my $ekey = $key;
-                               $eval =~ s/([\%\x00-\x1f\x7f-\xff])/sprintf("%%%02X", ord($1))/eg; 
-                               $ekey =~ s/([\%\x00-\x1f\x7f-\xff])/sprintf("%%%02X", ord($1))/eg;
-                               LogDbg('DXCommand', "Export Error1: invalid call '$key' => '$val'");
-                               eval {$dbm->del($key)};
-                           dbg(carp("Export Error1: delete $key => '$val' $@")) if $@;
-                               ++$err;
-                               next;
-                       }
-                       my $ref;
-                       eval {$ref = decode($val); };
-                       if ($ref) {
-                               my $t = $ref->{lastseen} if exists $ref->{lastseen};
-                               $t ||= $ref->{lastin} if exists $ref->{lastin};
-                               $t ||= $ref->{lastoper} if exists $ref->{lastoper};
-                               $t //= 0;
-                               
-                               if ($ref->is_user) {
-                                       if (!$ref->{priv} && $main::systime > $t + $tooold) {
-                                               unless (($ref->{lat} && $ref->{long}) || $ref->{qth} || $ref->{name} || $ref->{qra}) {
-                                                       LogDbg('DXCommand', sprintf("$ref->{call} deleted, empty and too Old at %s", difft($t, ' ')));
-                                                       ++$del;
-                                                       ++$old;
-                                                       eval {$dbm->del($key)};
-                                                       dbg(carp("Export Error2: delete '$key' => '$val' $@")) if $@;
-                                                       next;
-                                               }
-                                       }
-                                       if ($main::systime > $t + $veryold) {
-                                               LogDbg('DXCommand', sprintf("$ref->{call} deleted, POSITIVELY ANCIENT at %s", difft($t, ' ')));
-                                               ++$del;
-                                               ++$ancient;
-                                               eval {$dbm->del($key)};
-                                               dbg(carp("Export Error2: delete '$key' => '$val' $@")) if $@;
-                                               next;
-                                       }
-                                       if (exists $ref->{lockout} && $ref->{lockout} == 1 && exists $ref->{priv} && $ref->{priv} == 1) {
-                                               LogDbg('DXCommand', "$ref->{call} depriv'd and unlocked");
-                                               $ref->{lockout} = $ref->{priv} = 0;
-                                               $ref->put;
-                                               ++$unlocked;
-                                       }
-                                       if ($ref->is_node && $main::systime > $t + $veryold) {
-                                               LogDbg('DXCommand', sprintf("NODE $ref->{call} deleted (%s) old", difft($t, ' ')));
-                                               ++$del;
-                                               ++$nodes;
-                                               eval {$dbm->del($key)};
-                                               dbg(carp("Export Error2: delete '$key' => '$val' $@")) if $@;
-                                               next;
-                                       }
-                                       
-                                       my $normcall = normalise_call($key);
-                                       if ($normcall ne $key) {
-                                               # if the normalised call does not exist, create it from the duff call.
-                                               my $nref = DXUser::get_current($normcall);
-                                               unless ($nref) {
-                                                       $ref->{call} = $normcall;
-                                                       $ref->put;
-                                                       LogDbg('DXCommand', "DXProt: spurious call $key normalises to $normcall renaming $key -> $normcall");
-                                                       ++$renamed;
-                                               } 
-                                               LogDbg('DXCommand', "DXProt: spurious call $key (should be $normcall), removing");
-                                               eval {$dbm->del($key)};
-                                               dbg(carp("Export Error1: delete $key => '$val' $@")) if $@;
-                                               ++$spurious;
-                                               ++$del;
-                                               next;
-                                       }
-                               }
-                       } else {
-                               LogDbg('DXCommand', "Export Error3: '$key'\t" . carp($val) ."\n$@");
-                               eval {$dbm->del($key)};
-                               dbg(carp("Export Error3: delete '$key' => '$val' $@")) if $@;
-                               ++$err;
-                               next;
-                       }
-                       
-                       # only store users that are reasonably active or have useful information
-                       print $fh "$key\t" . encode($ref) . "\n";
-                       ++$count;
-               }
-       } 
-       $fh->close;
-
-       my $diff = _diffms($ta);
-       my $s = qq{Exported users to $fn - $count Users,  $del Deleted ($old empty \& too old, $ancient ancient, $nodes nodes, $spurious spurious), $renamed renamed, $unlocked Unlocked, $err Errors in $diff mS ('sh/log Export' for details)};
-       LogDbg('command', $s);
-       return $s;
-}
-
 #
 # group handling
 #
@@ -896,20 +697,285 @@ sub lastping
        return $b->{$call};     
 }
 
-#sub registered
-#{
-#      my $self = shift;
-#      my $val;
-#      if (defined $_[0]) {
-#              $val = unpad($_[0]);
-#              $self->{registered} = $val;
-#      }
-#      if (exists $self->{registered}) {
-#              $val = $self->{registered} // 0;
-#      }
-#      return $val // 0 ;                                      # to stop undef warnings
-#}
 
+#
+# export the database to an ascii file
+#
+
+sub export
+{
+       my $name = shift || 'user_json';
+
+       my $fn = $name ne 'user_json' ? $name : "$main::local_data/$name";                       # force use of local
+       
+       # save old ones
+       copy $fn, "$fn.keep" unless -e "$fn.keep";
+       copy "$fn.ooooo", "$fn.backstop" unless -e "$fn,backstop";
+
+       move "$fn.oooo", "$fn.ooooo" if -e "$fn.oooo";
+       move "$fn.ooo", "$fn.oooo" if -e "$fn.ooo";
+       move "$fn.oo", "$fn.ooo" if -e "$fn.oo";
+       move "$fn.o", "$fn.oo" if -e "$fn.o";
+       move "$fn", "$fn.o" if -e "$fn";
+
+       
+       my $ta = [gettimeofday];
+       my $count = 0;
+       my $err = 0;
+       my $del = 0;
+       my $spurious = 0;
+       my $unlocked = 0;
+       my $old =  0;
+       my $ancient =  0;
+       my $nodes = 0;
+       my $renamed = 0;
+
+       my %del;
+       
+       my $fh = new IO::File ">$fn" or return "cannot open $fn ($!)";
+       if ($fh) {
+               my $key = 0;
+               my $val = undef;
+               my $action;
+               my $t = scalar localtime;
+               print $fh export_preamble();
+               
+
+        for ($action = R_FIRST; !$dbm->seq($key, $val, $action); $action = R_NEXT) {
+                       if (!is_callsign($key) || $key =~ /^0/) {
+                               my $eval = $val;
+                               my $ekey = $key;
+                               $eval =~ s/([\%\x00-\x1f\x7f-\xff])/sprintf("%%%02X", ord($1))/eg; 
+                               $ekey =~ s/([\%\x00-\x1f\x7f-\xff])/sprintf("%%%02X", ord($1))/eg;
+                               LogDbg('DXCommand', "Export Error1: invalid call '$key' => '$val'");
+
+                               $del{$key} = $val;
+                               ++$err;
+                               next;
+                       }
+                       my $ref;
+                       eval {$ref = decode($val); };
+                       if ($ref) {
+                               my $t = $ref->{lastseen} if exists $ref->{lastseen};
+                               $t ||= $ref->{lastin} if exists $ref->{lastin};
+                               $t ||= $ref->{lastoper} if exists $ref->{lastoper};
+                               $t //= 0;
+                               
+                               if ($ref->is_user) {
+                                       if (!$ref->{priv} && $main::systime > $t + $tooold) {
+                                               unless (($ref->{lat} && $ref->{long}) || $ref->{qth} || $ref->{name} || $ref->{qra}) {
+                                                       LogDbg('DXCommand', sprintf("$ref->{call} deleted, empty and too Old at %s", difft($t, ' ')));
+                                                       ++$del;
+                                                       ++$old;
+                                                       $del{$key} = $val;
+                                                       next;
+                                               }
+                                       }
+                                       if ($main::systime > $t + $veryold) {
+                                               LogDbg('DXCommand', sprintf("$ref->{call} deleted, POSITIVELY ANCIENT at %s", difft($t, ' ')));
+                                               ++$del;
+                                               ++$ancient;
+                                               $del{$key} = $val;
+                                               next;
+                                       }
+                                       if (exists $ref->{lockout} && $ref->{lockout} == 1 && exists $ref->{priv} && $ref->{priv} == 1) {
+                                               LogDbg('DXCommand', "$ref->{call} depriv'd and unlocked");
+                                               $ref->{lockout} = $ref->{priv} = 0;
+                                               $ref->put;
+                                               ++$unlocked;
+                                       }
+                                       if ($ref->is_node && $main::systime > $t + $veryold) {
+                                               LogDbg('DXCommand', sprintf("NODE $ref->{call} deleted (%s) old", difft($t, ' ')));
+                                               ++$del;
+                                               ++$nodes;
+                                               $del{$key} = $val;
+                                               next;
+                                       }
+                                       
+                                       my $normcall = normalise_call($key);
+                                       if ($normcall ne $key) {
+                                               # if the normalised call does not exist, create it from the duff call.
+                                               my $nref = DXUser::get_current($normcall);
+                                               unless ($nref) {
+                                                       $ref->{call} = $normcall;
+                                                       $ref->put;
+                                                       LogDbg('DXCommand', "DXProt: spurious call $key normalises to $normcall renaming $key -> $normcall");
+                                                       ++$renamed;
+                                               } 
+                                               LogDbg('DXCommand', "DXProt: spurious call $key (should be $normcall), removing");
+                                               $del{$key} = $val;
+                                               ++$spurious;
+                                               ++$del;
+                                               next;
+                                       }
+                               }
+                       } else {
+                               LogDbg('DXCommand', "Export Error3: '$key'\t" . carp($val) ."\n$@");
+                               $del{$key} = $val;
+                               ++$err;
+                               next;
+                       }
+                       
+                       # only store users that are reasonably active or have useful information
+                       print $fh "$key\t" . encode($ref) . "\n";
+                       ++$count;
+               }
+       } 
+       $fh->close;
+       
+       while (my ($k, $v) = each %del) {
+               eval {$dbm->del($k)};
+               LogDbg('DXCommand', "Error deleting key: $k value: $v error: $@") if $@;
+       }
+
+       my $diff = _diffms($ta);
+       my $s = qq{Exported users to $fn - $count Users,  $del Deleted ($old empty \& too old, $ancient ancient, $nodes nodes, $spurious spurious), $renamed renamed, $unlocked Unlocked, $err Errors in $diff mS ('sh/log Export' for details)};
+       LogDbg('command', $s);
+       return ($s);
+}
+
+sub export_preamble
+{
+       return q{#!/usr/bin/perl
+#
+# The exported userfile for a DXSpider System
+#
+# Input file: $filename
+#       Time: $t
+#
+                       
+package main;
+                       
+# search local then perl directories
+BEGIN {
+       umask 002;
+                               
+       # root of directory tree for this system
+       $root = "/spider"; 
+       $root = $ENV{'DXSPIDER_ROOT'} if $ENV{'DXSPIDER_ROOT'};
+       
+       unshift @INC, "$root/perl";     # this IS the right way round!
+       unshift @INC, "$root/local";
+       
+       # try to detect a lockfile (this isn't atomic but 
+       # should do for now
+       $lockfn = "$root/local_data/cluster.lck";       # lock file name
+       if (-e $lockfn) {
+               open(CLLOCK, "$lockfn") or die "Can't open Lockfile ($lockfn) $!";
+               my $pid = <CLLOCK>;
+               chomp $pid;
+               die "Lockfile ($lockfn) and process $pid exists - cluster must be stopped first\n" if kill 0, $pid;
+               close CLLOCK;
+       }
+}
+
+use SysVar;
+use DXUtil;
+use DXUser;
+use DXChannel;
+use JSON;
+use Time::HiRes qw(gettimeofday tv_interval);
+package DXUser;
+
+our $json = JSON->new->canonical(1);
+
+my $ta = [gettimeofday];
+our $filename = "$main::local_data/users.v3j";
+my $exists = -e $filename ? "OVERWRITING" : "CREATING"; 
+print "perl user_json $exists $filename\n";
+
+del_file();
+init(2);
+%u = ();
+my $count = 0;
+my $err = 0;
+
+while (<DATA>) {
+       chomp;
+       my @f = split /\t/;
+       my $ref = decode($f[1]);
+       if ($ref) {
+               $ref->put();
+               $count++;
+       } else {
+               print "# Error: $f[0]\t$f[1]\n";
+               $err++
+       }
+}
+DXUser::sync(); DXUser::finish();
+my $diff = _diffms($ta);
+print "There are $count user records and $err errors in $diff mS\n";
+
+exit $err ? -1 : 0;
+
+__DATA__
+};
+
+}
+
+sub recover
+{
+       my $name = shift || 'recover_json';
+
+       my $fn = $name ne 'recover_json' ? $name : "$main::local_data/$name";                       # force use of local
+       
+       # save old ones
+       move "$fn.oooo", "$fn.ooooo" if -e "$fn.oooo";
+       move "$fn.ooo", "$fn.oooo" if -e "$fn.ooo";
+       move "$fn.oo", "$fn.ooo" if -e "$fn.oo";
+       move "$fn.o", "$fn.oo" if -e "$fn.o";
+       move "$fn", "$fn.o" if -e "$fn";
+
+       my $ta = [gettimeofday];
+       my $count = 0;
+       my $errs = 0;
+       my $total = 0;
+               
+       my $strings = "strings $filename";
+       my $ifh = new IO::File "$strings |" or return "cannot open input $filename ($!)";
+       my $fh = new IO::File ">$fn" or return "cannot open output $fn ($!)";
+       if ($ifh && $fh) {
+               my $key = 0;
+               my $val = undef;
+               my $action;
+               my $t = scalar localtime;
+               print $fh export_preamble();
+
+               my $call;
+               my $l;
+
+               my $last = '';
+               while (defined ($l = $ifh->getline)) {
+                       next unless  $l =~ /^{"call":"[-\d\w\/]+"/;
+                       dbg("recover: $l");
+                       $l =~ s/[^}]+$//;
+                       my $data = $l;
+                       if ($data) {
+                               my $v;
+                               
+                               eval{ $v = decode($data); };
+                               if ($@) {
+                                       ++$errs;
+                                       ++$total;
+                               } else {
+                                       next if $data eq $last;
+                                       print $fh  "$v->{call}\t$l\n";
+                                       ++$count;
+                                       ++$total;
+                                       $last = $l;
+                               }
+                       }
+               }
+       }
+       $fh->close;
+       $ifh->close;
+
+       my $diff = _diffms($ta);
+       my $s = qq{Recovered users to $fn - $count Users, $errs errors $total possible records read in $diff mS ('sh/log recover' for details)};
+       LogDbg('command', $s);
+       return ($s);
+}
+       
 1;
 __END__
 
index f3f6b585312968af6ddf6b5a7d00edf5ce62d152..c82c4ec5bb00a8aaa39c6396caa95d75258edddc 100644 (file)
@@ -23,11 +23,11 @@ package DXM;
                                badnode2 => q{$_[0] is now a good node},
                                badnode3 => q{List of Bad Nodes:-},
                                bbse1 => q{Please enter your BBS address,, set/bbs <your bbs address>},
-                               bbs => q{Your BBS Address is now "$_[0]"},
+                               bbs => q{Your BBS Address is now '$_[0]'},
                                beepoff => q{Beeps are now off},
                                beepon => q{Beeps are now on},
                                believes => q{Believe node $_[0] via $_[1]},
-                               believeu => q{Don't believe node $_[0] via $_[1]'},
+                               believeu => q{Don't believe node $_[0] via $_[1]},
                                buddya => q{$_[0] has been added to your buddies},
                                buddyu => q{$_[0] has been removed from your buddies},
                                call1 => q{Callsign lookup via $_[0]:},
@@ -39,7 +39,7 @@ package DXM;
                                conother => q{Sorry $_[0] you are connected to me on another port},
                                concluster => q{Sorry $_[0] you are already connected elsewhere on the cluster (on $_[1])},
                                contomany => q{Sorry $_[0] but you are already connected to $_[1] other nodes (on $_[2])},
-                               conscript => q{no connect script called "$_[0]" found in $main::root/connect},
+                               conscript => q{no connect script called '$_[0]' found in $main::root/connect},
                                confail => q{connection to $_[0] failed ($_[1])},
                                constart => q{connection to $_[0] started},
                                conbump => q{Reconnected as $_[0] at $_[1], this instance is disconnected},
@@ -90,8 +90,8 @@ package DXM;
                                e12 => q{Need a node callsign},
                                e13 => q{$_[0] is not a node},
                                e14 => q{First argument must be numeric and > 0},
-                               e15 => q{invalid qualifier "$_[0]"},
-                               e16 => q{File "$_[0]" exists},
+                               e15 => q{invalid qualifier '$_[0]'},
+                               e16 => q{File '$_[0]' exists},
                                e17 => q{Please don't use the words: @_ on here},
                                e18 => q{Cannot connect to $_[0] ($!)},
                                e19 => q{Invalid character(s) in line $_[0]},
@@ -120,7 +120,7 @@ package DXM;
                                echooff => q{Echoing disabled},
                                echow => q{*Echoing is currently disabled, set/echo to enable},
                                emaile1 => q{Please enter your email address, set/email <your e-mail address>},
-                               emaila => q{Your E-Mail Address is now "$_[0]"},
+                               emaila => q{Your E-Mail Address is now '$_[0]'},
                                email => q{E-mail address set to: $_[0]},
                                export1 => q{usage: export <msgno> <filename>},
                                export2 => q{$_[3] has error exporting msg $_[0] to $_[1] ($_[2])},
@@ -155,7 +155,7 @@ package DXM;
                                homenode2 => q{Home Node},
                                hnodee1 => q{Please enter your Home Node, set/homenode <your home DX Cluster>},
                                hnodee2 => q{Failed to set homenode on $_[0]},
-                               hnode => q{Your Homenode is now "$_[0]"},
+                               hnode => q{Your Homenode is now '$_[0]'},
                                init1 => q{sent initialisation message to $_[0]},
                                iso => q{$_[0] Isolated},
                                isou => q{$_[0] UnIsolated},
@@ -176,9 +176,9 @@ package DXM;
                                lh1 => q{$main::data/hop_table.pl doesn't exist},
                                local1 => q{Local},
                                loce1 => q{Please enter your location,, set/location <latitude longitude>},
-                               loce2 => q{Cannot recognise "$_[0]" as a Lat/Long (eg 52 20 N 0 16 E)},
+                               loce2 => q{Cannot recognise '$_[0]' as a Lat/Long (eg 52 20 N 0 16 E)},
                                loce3 => q{$_[0] is a QRA locator, please use: set/qra $_[0]},
-                               loc => q{Your Lat/Long is now "$_[0]"},
+                               loc => q{Your Lat/Long is now '$_[0]'},
                                location => q{Location},
                                lockout => q{$_[0] Locked out},
                                lockoutc => q{$_[0] Created and Locked out},
@@ -227,7 +227,7 @@ package DXM;
                                name1 => q{Name},
                                namee1 => q{Please enter your name, set/name <your name>},
                                namee2 => q{Can't find user $_[0]!},
-                               name => q{Your name is now "$_[0]"},
+                               name => q{Your name is now '$_[0]'},
                                nodea => q{$_[0] set as AK1A style Node},
                                nodeac => q{$_[0] created as AK1A style Node},
                                nodeb => q{$_[0] set as BBS},
@@ -276,14 +276,14 @@ package DXM;
                                pw4 => q{Passwords differ, password NOT changed},
                                qll => q{Please enter your location with set/location or set/qra},
                                qthe1 => q{Please enter your QTH, set/qth <your qth>},
-                               qth => q{Your QTH is now "$_[0]"},
+                               qth => q{Your QTH is now '$_[0]'},
                                qrae1 => q{Please enter your QRA locator, set/qra <qra locator> (eg set/qra JO02LQ)},
                                qrashe1 => q{Please enter a QRA locator, eg sh/qra JO02LQ or sh/qra JO02LQ IO93NS},
-                               qrae2 => q{Cannot recognise "$_[0]" as a QRA locator (eg JO02LQ)},
-                               qra => q{Your QRA Locator is now "$_[0]"},
+                               qrae2 => q{Cannot recognise '$_[0]' as a QRA locator (eg JO02LQ)},
+                               qra => q{Your QRA Locator is now '$_[0]'},
                                rbnusers => qq{RBN User List},
                                qsl1 => q{Call           Manager   Times  Last Time Seen      De},
-                               rcmdo => q{RCMD "$_[0]" sent to $_[1]},
+                               rcmdo => q{RCMD '$_[0]' sent to $_[1]},
                                read1 => q{Sorry, no new messages for you},
                                read2 => q{Msg $_[0] not found},
                                read3 => q{Msg $_[0] not available},
@@ -305,7 +305,7 @@ package DXM;
                                sethop2 => q{$_[0] hops set on $_[1]$_[2] for $_[3]'},
                                sethop3 => q{No hops set for $_[0]'},
                                showconf => q{Node         Callsigns},
-                               shu => q{"SHU" is not enough! you need to type at least "SHUT" to shutdown the node},
+                               shu => q{'SHU' is not enough! you need to type at least 'SHUT' to shutdown the node},
                                shutting => q{$main::mycall shutting down...},
                                skims => q{RBN/Skimming set to $_[1] for $_[0]},
                                sloc => q{Cluster lat $_[0] long $_[1], DON'T FORGET TO CHANGE YOUR DXVars.pm},
@@ -376,12 +376,12 @@ package DXM;
                                anns => q{Announce berichten AAN gezet voor $_[0]},
                                annu => q{Announce berichten UIT gezet voor $_[0]},
                                bbse1 => q{Geef je home bbs (mailbox),, set/bbs <home mailbox>},
-                               bbs => q{Je home bbs (mailbox) is nu "$_[0]"},
+                               bbs => q{Je home bbs (mailbox) is nu '$_[0]'},
                                beepoff => q{De beep staat nu UIT},
                                beepon => q{De beep staat nu AAN},
                                conother => q{Sorry $_[0] je bent reeds geconnect op een andere poort},
                                concluster => q{Sorry $_[0] je bent reeds op een ander cluster geconnect},
-                               conscript => q{Geen connectscript aangeroepen "$_[0]" gevonden in $main::root/connect},
+                               conscript => q{Geen connectscript aangeroepen '$_[0]' gevonden in $main::root/connect},
                                confail => q{Verbinding met $_[0] mislukt ($_[1])},
                                constart => q{Verbinding met $_[0] gestart},
                                disc1 => q{Gedisconnect door $_[0]},
@@ -403,17 +403,17 @@ package DXM;
                                e12 => q{Ik heb een node call nodig},
                                e13 => q{$_[0] is geen node},
                                emaile1 => q{Geef uw E-mail addres, set/email <uw e-mail addres>},
-                               emaila => q{Uw E-Mail addres is nu "$_[0]"},
+                               emaila => q{Uw E-Mail addres is nu '$_[0]'},
                                email => q{E-mail addres gezet op: $_[0]},
                                helpe1 => q{Help systeem niet beschikbaar, meld dit aan de sysop},
-                               helpe2 => q{Geen help beschikbaar over "$_[0]"},
+                               helpe2 => q{Geen help beschikbaar over '$_[0]'},
                                heres => q{Aanwezigheid AAN gezet voor $_[0]},
                                heade1 => q{Gebruik gemaakt van de $main::mycall coordinaten, overweeg een set/location of set/qra},
                                hereu => q{Aanwezigheid UIT gezet voor $_[0]},
                                homebbs => q{Uw Home mailbox is nu $_[0]},
                                homenode => q{Uw (Home) DX-Cluster is : $_[0]},
                                hnodee1 => q{Geef mij uw lokale (home) DX-cluster, set/homenode <DX-cluster>},
-                               hnode => q{Uw (home) DX-cluster is nu "$_[0]"},
+                               hnode => q{Uw (home) DX-cluster is nu '$_[0]'},
                                iso => q{$_[0] is geisoleerd (Isolated)},
                                isou => q{$_[0] is niet meer geisoleerd (UnIsolated)},
                                isoc => q{$_[0] gecreerd en geisoleerd (Isolated)},
@@ -422,8 +422,8 @@ package DXM;
                                lang => q{De taal zijn nu Nederlandse},
                                lh1 => q{$main::data/hop_table.pl bestaat niet},
                                loce1 => q{Geef uw coordinaten met, set/location <latitude longitude>},
-                               loce2 => q{Herken "$_[0]" niet als Lat/Long (vb 52 20 N 0 16 E)},
-                               loc => q{Uw Latitude en Longitude zijn nu "$_[0]"},
+                               loce2 => q{Herken '$_[0]' niet als Lat/Long (vb 52 20 N 0 16 E)},
+                               loc => q{Uw Latitude en Longitude zijn nu '$_[0]'},
                                lockout => q{$_[0] heeft geen toegang meer (Locked out)},
                                lockoutun => q{$_[0] heeft wederom toegang (Unlocked)},
                                m2 => q{$_[0] Informatie: $_[1]},
@@ -431,7 +431,7 @@ package DXM;
                                msgnew => q{Er is nieuwe post gearriveerd voor u},
                                namee1 => q{Geef aub uw naam met, set/name <uw naam>},
                                namee2 => q{Gebruiker $_[0] niet te vinden!},
-                               name => q{Uw naam is gezet op "$_[0]"},
+                               name => q{Uw naam is gezet op '$_[0]'},
                                node => q{$_[0] gezet als een AK1A stijl DX-cluster},
                                nodeu => q{$_[0] teruggezet naar gebruiker status},
                                nodec => q{$_[0] gecreeerd als AK1A stijl DX-cluster},
@@ -447,12 +447,12 @@ package DXM;
                                prx => q{$main::mycall >},
                                qll => q{Geef uw locator met set/location of set/qra},
                                qthe1 => q{Geef uw woonplaats met, set/qth <woonplaats>},
-                               qth => q{Uw QTH is nu "$_[0]"},
+                               qth => q{Uw QTH is nu '$_[0]'},
                                qrae1 => q{Geef uw QRA locator, set/qra <qra locator> (vb set/qra JO33FD)},
                                qrashe1 => q{Geef uw QRA locator, vbg sh/qra JO33FD of sh/qra JO33FD IO93NS},
-                               qrae2 => q{Ik herken "$_[0]" niet als een QRA locator (vb JO33FD)},
-                               qra => q{Uw QRA Locator is nu "$_[0]"},
-                               rcmdo => q{RCMD "$_[0]" verzonden naar $_[1]},
+                               qrae2 => q{Ik herken '$_[0]' niet als een QRA locator (vb JO33FD)},
+                               qra => q{Uw QRA Locator is nu '$_[0]'},
+                               rcmdo => q{RCMD '$_[0]' verzonden naar $_[1]},
                                read1 => q{Sorry, geen berichten voor u},
                                read2 => q{Bericht $_[0] niet gevonden},
                                read3 => q{Bericht $_[0] niet beschikbaar},
@@ -480,13 +480,13 @@ package DXM;
                                badnode2 => q{Le serveur $_[0] n'est maintenant plus en rejet},
                                badnode3 => q{Liste des serveurs en rejet :-},
                                bbse1 => q{Veuillez entrer l'adresse de votre BBS avec : set/bbs <votre_BBS>},
-                               bbs => q{Votre BBS est définie comme Ã©tant "$_[0]"},
+                               bbs => q{Votre BBS est définie comme Ã©tant '$_[0]'},
                                beepoff => q{Bips désactivés},
                                beepon => q{Bips activés},
                                call1 => q{Recherche de l'indicatif via $_[0]:},
                                conother => q{Désolé $_[0], vous Ãªtes déjà connecté sur un autre port},
                                concluster => q{Désolé $_[0], vous Ãªtes déjà connecté ailleurs au cluster (sur $_[1])},
-                               conscript => q{Pas de script de connexion "$_[0]" dans $main::root/connect !},
+                               conscript => q{Pas de script de connexion '$_[0]' dans $main::root/connect !},
                                confail => q{Echec de la connexion avec $_[0] ($_[1])},
                                constart => q{Etablissement de la connexion avec $_[0]},
                                deluser => q{L'utilisateur $_[0] a Ã©té supprimé},
@@ -507,7 +507,7 @@ package DXM;
                                disc1 => q{Déconnecté par $_[0]},
                                disc2 => q{Canal $_[0] déconnecté},
                                disc3 => q{Pas de canal, mais connexion $_[0] terminée},
-                               disc4 => q{Pas de canal ni de connexion mais "orphelin" $_[0] déconnecté},
+                               disc4 => q{Pas de canal ni de connexion mais 'orphelin' $_[0] déconnecté},
                                done => q{Terminé.},
                                dup => q{Désolé, ceci est un doublon.},
                                dx1 => q{La fréquence $_[0] est hors bande (voir show/band); syntaxe: DX [BY indicatif] fréquence indicatif remarques},
@@ -533,8 +533,8 @@ package DXM;
                                e12 => q{Il faut spécifier un indicatif de serveur !},
                                e13 => q{$_[0] n'est pas un serveur},
                                e14 => q{Le premier argument doit Ãªtre une valeur numérique > 0},
-                               e15 => q{Paramètre incorrect : "$_[0]"},
-                               e16 => q{Le fichier "$_[0]" existe déjà},
+                               e15 => q{Paramètre incorrect : '$_[0]'},
+                               e16 => q{Le fichier '$_[0]' existe déjà},
                                e17 => q{Prière de ne pas utiliser les mots : @_ ici !'},
                                e18 => q{Connexion impossible avec $_[0] ($!)},
                                e19 => q{Caractère non valide dans la ligne $_[0]},
@@ -559,7 +559,7 @@ package DXM;
                                echooff => q{Echo désactivé},
                                echow => q{L'écho est actuellement désactivé (set/echo pour l'activer)},
                                emaile1 => q{Veuillez entrer votre adresse e-mail avec : set/email <votre_adresse_e-mail>},
-                               emaila => q{Votre adresse e-mail est enregistrée comme Ã©tant "$_[0]"},
+                               emaila => q{Votre adresse e-mail est enregistrée comme Ã©tant '$_[0]'},
                                email => q{Adresse e-mail définie comme Ã©tant $_[0]},
                                export1 => q{Syntaxe: export <numéro_de_msg> <nom_de_fichier>},
                                export2 => q{$_[3] rencontre une erreur Ã  l'exportation du message $_[0] vers $_[1] ($_[2])},
@@ -589,7 +589,7 @@ package DXM;
                                homenode2 => q{Utilise},
                                hnodee1 => q{Veuillez entrer votre serveur cluster usuel (set/homenode <votre_serveur>)},
                                hnodee2 => q{Impossible de définir votre serveur usuel comme Ã©tant $_[0]},
-                               hnode => q{Votre serveur cluster usuel est défini comme Ã©tant "$_[0]"},
+                               hnode => q{Votre serveur cluster usuel est défini comme Ã©tant '$_[0]'},
                                init1 => q{Message d'initialisation envoyé Ã  $_[0]},
                                iso => q{$_[0] isolé},
                                isou => q{$_[0] n'est plus isolé},
@@ -608,9 +608,9 @@ package DXM;
                                lh1 => q{$main::data/hop_table.pl n'existe pas},
                                local1 => q{Local},
                                loce1 => q{Veuillez entrer vos coordonnées avec : set/location <latitude longitude>},
-                               loce2 => q{"$_[0]" n'est visiblement pas une latitude/longitude (ex: 46 20 N 6 12 E)},
+                               loce2 => q{'$_[0]' n'est visiblement pas une latitude/longitude (ex: 46 20 N 6 12 E)},
                                loce3 => q{$_[0] est un QTH locator, veuillez utiliser : set/qra $_[0]},
-                               loc => q{Votre latitude/longitude est enregistrée comme Ã©tant "$_[0]"},
+                               loc => q{Votre latitude/longitude est enregistrée comme Ã©tant '$_[0]'},
                                location => q{Coordonnées},
                                lockout => q{$_[0] exclus},
                                lockoutc => q{$_[0] créé et exclus},
@@ -650,7 +650,7 @@ package DXM;
                                name1 => q{Nom},
                                namee1 => q{Veuillez entrer votre nom avec : set/name <votre_nom>},
                                namee2 => q{Utilisateur $_[0] introuvable.},
-                               name => q{Votre nom est enregistré comme Ã©tant "$_[0]"},
+                               name => q{Votre nom est enregistré comme Ã©tant '$_[0]'},
                                nodea => q{$_[0] défini comme serveur de type AK1A},
                                nodeac => q{$_[0] créé comme serveur de type AK1A},
                                nodeb => q{$_[0] défini comme BBS},
@@ -684,7 +684,7 @@ package DXM;
                                pinge1 => q{Vous ne pouvez pas vous pinger vous-même !},
                                pingint => q{Intervalle de ping vers $_[0] fixé Ã  $_[1] secondes},
                                'pos' => q{Indicatif source : latitude $_[0] : longitude $_[1] : $_[2]},
-                               prs => q{Prompt défini comme Ã©tant "$_[0]"},
+                               prs => q{Prompt défini comme Ã©tant '$_[0]'},
                                pru => q{Prompt remis Ã  sa valeur par défaut},
                                priv => q{Niveau de privilège changé en $_[0]},
                                prx => q{$main::mycall >},
@@ -695,13 +695,13 @@ package DXM;
                                pw4 => q{Les mots de passe sont différents, changement PAS effectué},
                                qll => q{Veuillez entrer votre emplacement avec set/location ou set/qra},
                                qthe1 => q{Veuillez entrer votre QTH, set/qth <votre_qth>},
-                               qth => q{Votre QTH est enregistré comme Ã©tant "$_[0]"},
+                               qth => q{Votre QTH est enregistré comme Ã©tant '$_[0]'},
                                qrae1 => q{Veuillez entrer votre QRA locator, set/qra <qra_locator> (exemple : set/qra JN36BE)},
                                qrashe1 => q{Veuillez entrer un QRA locator, par exemple: sh/qra JN36BE or sh/qra JN36BE JO31NS},
-                               qrae2 => q{"$_[0]" n'est pas un QRA locator (exemple: JN36BE)},
-                               qra => q{Votre QRA Locator est enregistré comme Ã©tant "$_[0]"},
+                               qrae2 => q{'$_[0]' n'est pas un QRA locator (exemple: JN36BE)},
+                               qra => q{Votre QRA Locator est enregistré comme Ã©tant '$_[0]'},
                                qsl1 => q{Indicatif      Manager    Fois   Dernière annonce   Par},
-                               rcmdo => q{RCMD "$_[0]" envoyé Ã  $_[1]},
+                               rcmdo => q{RCMD '$_[0]' envoyé Ã  $_[1]},
                                read1 => q{Désolé, pas de nouveaux messages pour vous.},
                                read2 => q{Message $_[0] introuvable},
                                read3 => q{Message $_[0] non disponible},
@@ -723,7 +723,7 @@ package DXM;
                                sethop2 => q{$_[0] hops définis pour $_[1]$_[2] vers $_[3]'},
                                sethop3 => q{Pas de nombre de hops défini vers $_[0]'},
                                showconf => q{Serveur      Utilisateurs},
-                               shu => q{"SHU" ne suffit pas. Vous devez taper au moins "SHUT" pour arrêter le serveur !},
+                               shu => q{'SHU' ne suffit pas. Vous devez taper au moins 'SHUT' pour arrêter le serveur !},
                                shutting => q{$main::mycall en cours d'arrêt...},
                                sloc => q{Latitude du serveur $_[0], longitude $_[1]. N'OUBLIEZ PAS D'ADAPTER VOTRE DXVars.pm},
                                snode1 => q{Serveur     Type    Version},
@@ -794,7 +794,7 @@ package DXM;
                                badnode2 => q{Se aceptan spots del nodo $_[0], sale de la lista badnode},
                                badnode3 => q{Lista de nodos rechazados:},
                                bbse1 => q{Por favor introduce tu BBS, set/bbs <tu bbs>},
-                               bbs => q{Tu BBS es ahora "$_[0]"},
+                               bbs => q{Tu BBS es ahora '$_[0]'},
                                beepoff => q{Avisos sonoros desactivados},
                                beepon => q{Avisos sonoros activados},
                                believes => q{Creo en el nodo $_[0] via $_[1]},
@@ -808,7 +808,7 @@ package DXM;
                                chattoomany => q{Operación no permitida, actualmente estas en el canal $_[1], usa /chat $_[0]},
                                conother => q{Lo siento $_[0] ya estás conectado en otro puerto},
                                concluster => q{Lo siento $_[0] ya estás conectado en otro cluster},
-                               conscript => q{No hay ningún script que se llame "$_[0]" en $main::root/connect},
+                               conscript => q{No hay ningún script que se llame '$_[0]' en $main::root/connect},
                                confail => q{La conexión con $_[0] ha fallado ($_[1])},
                                constart => q{Se inicia la conexión a $_[0]},
                                conbump => q{Reconectado como $_[0] en $_[1], Esta sesión termina y se te desconecta},
@@ -856,8 +856,8 @@ package DXM;
                                e12 => q{Se necesita el indicativo del nodo},
                                e13 => q{$_[0] no es un nodo},
                                e14 => q{El primer argumento debe de ser numérico y > 0},
-                               e15 => q{calificador no válido "$_[0]"},
-                               e16 => q{El fichero "$_[0]" ya existe},
+                               e15 => q{calificador no válido '$_[0]'},
+                               e16 => q{El fichero '$_[0]' ya existe},
                                e17 => q{Por favor no uses la palabra: @_ aquí},
                                e18 => q{No se puede conectar con $_[0] ($!)},
                                e19 => q{Carácter no válido en la línea $_[0]},
@@ -883,7 +883,7 @@ package DXM;
                                echooff => q{Eco local desactivado},
                                echow => q{*Eco local desactivado, set/echo para activarlo},
                                emaile1 => q{Por favor introduce tu E-mail, set/email <tu E-mail>},
-                               emaila => q{Tu dirección E-mail es ahora "$_[0]"},
+                               emaila => q{Tu dirección E-mail es ahora '$_[0]'},
                                email => q{La dirección E-mail es ahora: $_[0]},
                                export1 => q{uso: export <número_mensaje> <nombre_fichero>},
                                export2 => q{$_[3] hubo un error exportando mensaje $_[0] a $_[1] ($_[2])},
@@ -914,12 +914,12 @@ package DXM;
                                homenode => q{Tu cluster habitual es ahora: $_[0]},
                                hnodee1 => q{Por favor introduce tu cluster habitual, set/homenode <Tu DX cluster>},
                                hnodee2 => q{Error al definir homenode en $_[0]},
-                               hnode => q{Tu nodo habitual es ahora "$_[0]"},
+                               hnode => q{Tu nodo habitual es ahora '$_[0]'},
                                init1 => q{Enviado mensaje de inicialización a $_[0]},
                                iso => q{El cluster $_[0] se pone en modo pasivo (Aislado)},
                                isou => q{El cluster $_[0] se pone en modo activo},
                                isoc => q{$_[0] creado y definido como pasivo (Aislado)},
-                               isoari => q{Existe un filtro de rutas "input" para $_[0]; clear/route input $_[0] primero},
+                               isoari => q{Existe un filtro de rutas 'input' para $_[0]; clear/route input $_[0] primero},
                                isoaro => q{Existe un filtro de rutas para $_[0]; clear/route $_[0] primero', },
                                isow => q{$_[0] está en modo aislado; unset/isolate $_[0] primero},
                                join => q{Entras en el grupo $_[0]},
@@ -933,9 +933,9 @@ package DXM;
                                lh1 => q{$main::data/hop_table.pl no existe},
                                local1 => q{Local},
                                loce1 => q{Por favor introduce tu posición, set/location <latitud longitud>},
-                               loce2 => q{No se reconoce "$_[0]" como una Lat/Long (ej: 52 20 N 0 16E)},
+                               loce2 => q{No se reconoce '$_[0]' como una Lat/Long (ej: 52 20 N 0 16E)},
                                loce3 => q{$_[0] es un QRA locator, por favor usa: set/qra $_[0]},
-                               loc => q{Tu Lat/Long es ahora "$_[0]"},
+                               loc => q{Tu Lat/Long es ahora '$_[0]'},
                                location => q{Location},
                                lockout => q{$_[0] Excluido del sistema},
                                lockoutc => q{$_[0] Creado y excluido del sistema},
@@ -981,7 +981,7 @@ package DXM;
                                name1 => q{Nombre},
                                namee1 => q{Por favor, introduce tu nombre con set/name <tu nombre>},
                                namee2 => q{No se encuentra el usuario $_[0]!},
-                               name => q{Tu nombre es "$_[0]"},
+                               name => q{Tu nombre es '$_[0]'},
                                nodea => q{$_[0] definido como nodo AK1A },
                                nodeac => q{$_[0] creado como nodo AK1A },
                                nodeb => q{$_[0] definido como BBS},
@@ -1026,13 +1026,13 @@ package DXM;
                                pw4 => q{Los passwords no coinciden, NO se han cambiado},
                                qll => q{Por favor introduce tu locator con set/location o set/qra},
                                qthe1 => q{Por favor introduce tu QTH, set/qth <tu qth>},
-                               qth => q{Tu QTH es ahora "$_[0]"},
+                               qth => q{Tu QTH es ahora '$_[0]'},
                                qrae1 => q{Por favor introduce tu QRA locator, set/qra <qra locator> (ej: set/qra JO02LQ)},
                                qrashe1 => q{Por favor introduce un QRA locator, ej sh/qra JO02LQ o sh/qra JO02LQ IO93NS},
-                               qrae2 => q{No se reconoce "$_[0]" como un QRA locator ( ej JO02LQ)},
-                               qra => q{Tu QRA Locator es ahora "$_[0]"},
+                               qrae2 => q{No se reconoce '$_[0]' como un QRA locator ( ej JO02LQ)},
+                               qra => q{Tu QRA Locator es ahora '$_[0]'},
                                qsl1 => q{Indicativo     Manager   Nº veces  Ãšltimo Spot      De},
-                               rcmdo => q{RCMD "$_[0]" enviado a $_[1]},
+                               rcmdo => q{RCMD '$_[0]' enviado a $_[1]},
                                read1 => q{Lo siento, no hay mensajes nuevos para ti},
                                read2 => q{Mensaje $_[0] no encontrado},
                                read3 => q{Mensaje $_[0] no disponible},
@@ -1054,7 +1054,7 @@ package DXM;
                                sethop2 => q{$_[0] hops set on $_[1]$_[2] para $_[3]},
                                sethop3 => q{No hay hops definidos para $_[0]},
                                showconf => q{Nodo         Indicativos},
-                               shu => q{"SHU" No es suficiente! Es necesario como mínimo escribir "SHUT" para apagar el cluster},
+                               shu => q{'SHU' No es suficiente! Es necesario como mínimo escribir 'SHUT' para apagar el cluster},
                                shutting => q{$main::mycall shutting down...},
                                sloc => q{Cluster lat $_[0] long $_[1], NO OLVIDES CAMBIAR TU DXVars.pm},
                                snode1 => q{Nodo Call   Sort    Versión},
@@ -1129,13 +1129,13 @@ package DXM;
                                badnode2 => q{$_[0] ist nun ein good node},
                                badnode3 => q{Liste der Bad Nodes:-},
                                bbse1 => q{Bitte die BBS Adresse eingeben,, set/bbs <your bbs address>},
-                               bbs => q{Deine BBS Adresse ist nun "$_[0]"},
+                               bbs => q{Deine BBS Adresse ist nun '$_[0]'},
                                beepoff => q{Beeps sind nun aus},
                                beepon => q{Beeps sind jetzt eingeschaltet},
                                call1 => q{Callsign lookup via $_[0]:},
                                conother => q{Sorry $_[0] Du bist zu diesem Cluster auf einem anderen Port connected},
                                concluster => q{Sorry $_[0] Du bist schon anderswo mit einem Cluster verbunden (on $_[1])},
-                               conscript => q{Kein connect script mit Namen "$_[0]" gefunden in $main::root/connect},
+                               conscript => q{Kein connect script mit Namen '$_[0]' gefunden in $main::root/connect},
                                confail => q{Verbindungsaufbau zu $_[0] misslungen ($_[1])},
                                constart => q{Verbindungsaufbau zu $_[0] gestartet},
                                deluser => q{User $_[0] wurde geloescht},
@@ -1182,8 +1182,8 @@ package DXM;
                                e12 => q{Brauche ein Node Rufzeichen},
                                e13 => q{$_[0] ist kein Node},
                                e14 => q{Erstes Argument muss eine Zahl und > 0 sein},
-                               e15 => q{Unguelitges Abfragekriterium "$_[0]"},
-                               e16 => q{Datei "$_[0]" existiert},
+                               e15 => q{Unguelitges Abfragekriterium '$_[0]'},
+                               e16 => q{Datei '$_[0]' existiert},
                                e17 => q{Bitte gebrauche dieses Wort: @_ nicht hier},
                                e18 => q{Kann nicht verbinden mit $_[0] ($!)},
                                e19 => q{Ungueltiger Character in der Zeile $_[0]},
@@ -1207,7 +1207,7 @@ package DXM;
                                echooff => q{Echo disabled},
                                echow => q{*Echo ist momentan disabled, set/echo zum aktivieren},
                                emaile1 => q{Bitte E-Mail Addresse eingeben, set/email <Deine e-mail Adresse>},
-                               emaila => q{Deine E-Mail Adresse ist nun "$_[0]"},
+                               emaila => q{Deine E-Mail Adresse ist nun '$_[0]'},
                                email => q{E-mail Adresse gesetzt auf: $_[0]},
                                export1 => q{Gebrauch: export <msgno> <dateiname>},
                                export2 => q{$_[3] has error exporting msg $_[0]to $_[1] ($_[2])},
@@ -1235,7 +1235,7 @@ package DXM;
                                homenode => q{Heimat-Node gesetzt auf: $_[0]},
                                hnodee1 => q{Bitte Heimat-Node eingeben, set/homenode <Dein Heimat DX Cluster>},
                                hnodee2 => q{Heimat-Node setzen ist misslungen $_[0]},
-                               hnode => q{Dein Heimat-Node ist nun "$_[0]"},
+                               hnode => q{Dein Heimat-Node ist nun '$_[0]'},
                                init1 => q{Initialisierungs-Nachricht gesendet an $_[0]},
                                iso => q{$_[0] Isoliert},
                                isou => q{$_[0] UnIsoliert},
@@ -1251,9 +1251,9 @@ package DXM;
                                lange2 => q{Fehler beim Setzen der Sprache auf $_[0]},
                                lh1 => q{$main::data/hop_table.pl existiert nicht},
                                loce1 => q{Bitte Deinen Standort eingeben, set/location <latitude longitude>},
-                               loce2 => q{Nicht anerkannt "$_[0]" als Lat/Long (z.B. 52 20 N 0 16 E)},
+                               loce2 => q{Nicht anerkannt '$_[0]' als Lat/Long (z.B. 52 20 N 0 16 E)},
                                loce3 => q{$_[0] ist ein QRA Locator, Gebrauch: set/qra $_[0]},
-                               loc => q{Dein Lat/Long ist nun "$_[0]"},
+                               loc => q{Dein Lat/Long ist nun '$_[0]'},
                                lockout => q{$_[0] ausgesperrt},
                                lockoutc => q{$_[0] erstellt und ausgesperrt},
                                lockoutun => q{$_[0] Aussperrung aufgehoben},
@@ -1291,7 +1291,7 @@ package DXM;
                                mone => q{Ueberwachung Enabled},
                                namee1 => q{Bitte Deinen Namen eingeben, set/name <Dein Name>},
                                namee2 => q{Kann User $_[0] nicht finden!},
-                               name => q{Dein Name ist jetzt "$_[0]"},
+                               name => q{Dein Name ist jetzt '$_[0]'},
                                nodea => q{$_[0] gesetzt als AK1A style Node},
                                nodeac => q{$_[0] erstellt als AK1A style Node},
                                nodeb => q{$_[0] gesetzt als BBS},
@@ -1321,7 +1321,7 @@ package DXM;
                                pinge1 => q{Du kannst Dich nicht selber pingen!},
                                pingint => q{Ping-Intervall zu $_[0] gesetzt auf $_[1] Sekunden},
                                'pos' => q{Von Rufzeichen: $_[0] Breite: $_[1] Laenge: $_[2]},
-                               prs => q{Prompt gesetzt auf "$_[0]"},
+                               prs => q{Prompt gesetzt auf '$_[0]'},
                                pru => q{Prompt jetzt zurueckgesetzt auf Default-Einstellung},
                                priv => q{Priviligierten Level geaendert auf $_[0]},
                                prx => q{$main::mycall >},
@@ -1332,12 +1332,12 @@ package DXM;
                                pw4 => q{Passwoerter differieren, Passwort NICHT geaendert},
                                qll => q{Bitte gib Deinen Standort als geograph. Koordinaten mit set/location oder als Maidenhead-Kenner mit set/qra ein},
                                qthe1 => q{Bitte gib Dein QTH ein mit set/qth <Dein qth>},
-                               qth => q{Dein QTH ist nun "$_[0]"},
+                               qth => q{Dein QTH ist nun '$_[0]'},
                                qrae1 => q{Bitte gib Deinen QRA Locator ein mit set/qra <qra locator> (z.B. set/qra JO44RK)},
                                qrashe1 => q{Bitte einen QRA Locator eingeben, z.B. sh/qra JO02LQ oder sh/qra JO02LQ IO93NS},
-                               qrae2 => q{Erkenne nicht "$_[0]" als einen QRA Locator (z.B. JO02LQ)},
-                               qra => q{Dein QRA Locator ist nun "$_[0]"},
-                               rcmdo => q{RCMD "$_[0]" gesendet an $_[1]},
+                               qrae2 => q{Erkenne nicht '$_[0]' als einen QRA Locator (z.B. JO02LQ)},
+                               qra => q{Dein QRA Locator ist nun '$_[0]'},
+                               rcmdo => q{RCMD '$_[0]' gesendet an $_[1]},
                                read1 => q{Sorry, keine neuen Nachrichten fuer Dich},
                                read2 => q{Msg $_[0] nicht gefunden},
                                read3 => q{Msg $_[0] nicht verfuegbar},
@@ -1357,7 +1357,7 @@ package DXM;
                                sethop1 => q{Gebrauch: set/hops <Rufzeichen> ann|spots|wwv|wcy <Anzahl der Hops>},
                                sethop2 => q{$_[0] hops gesetzt auf $_[1]$_[2] fuer $_[3]},
                                sethop3 => q{Keine hops gesetzt fuer $_[0]},
-                               shu => q{"SHU" genuegt nicht! Du musst mindestens "SHUT" eingeben, um den Node herunterzufahren},
+                               shu => q{'SHU' genuegt nicht! Du musst mindestens 'SHUT' eingeben, um den Node herunterzufahren},
                                shutting => q{$main::mycall shutting down...},
                                sloc => q{Cluster lat $_[0] long $_[1], Nicht vergessen die DXVars.pm zu aendern},
                                snode1 => q{Node Call   Sort    Version},
@@ -1408,13 +1408,13 @@ package DXM;
                                badnode2 => q{$_[0] e' un nodo attivo},
                                badnode3 => q{Lista dei nodi disabilitati:-},
                                bbse1 => q{Per favore inserisci l'indirizzo del tuo BBS con set/bbs <tuo bbs>},
-                               bbs => q{Il tuo BBS e' ora "$_[0]"},
+                               bbs => q{Il tuo BBS e' ora '$_[0]'},
                                beepoff => q{I beep sono disattivati},
                                beepon => q{I beep sono attivati},
                                call1 => q{Ricerca del nominativo via $_[0]:},
                                conother => q{Spiacente $_[0] sei connesso già su un'altra porta},
                                concluster => q{Spiacente $_[0] sei connesso già alla rete cluster (su $_[1])},
-                               conscript => q{nessuno script di connessione chiamato "$_[0]" trovato in $main::root/connect},
+                               conscript => q{nessuno script di connessione chiamato '$_[0]' trovato in $main::root/connect},
                                confail => q{connessione a $_[0] fallita ($_[1])},
                                constart => q{connessione a $_[0] iniziata},
                                deluser => q{L'utente $_[0] e' stato eliminato},
@@ -1456,8 +1456,8 @@ package DXM;
                                e12 => q{Inserire il nominativo di un nodo},
                                e13 => q{$_[0] non e' un nodo},
                                e14 => q{Il primo argomento deve essere numerico e > 0},
-                               e15 => q{qualificatore non valido "$_[0]"},
-                               e16 => q{Il file "$_[0]" esiste},
+                               e15 => q{qualificatore non valido '$_[0]'},
+                               e16 => q{Il file '$_[0]' esiste},
                                e17 => q{Non usare le parole: @_ qui'},
                                e18 => q{Impossibile connettere $_[0] ($!)},
                                e19 => q{Carattere non valido nella linea  $_[0]},
@@ -1476,7 +1476,7 @@ package DXM;
                                echooff => q{Echo disabilitato},
                                echow => q{*Echo e' al momento disabilitato, usa set/echo per abilitarlo},
                                emaile1 => q{Per favore inserisci il tuo indirizzo email con: set/email <indirizzo>},
-                               emaila => q{Il tuo indirizzo email e' ora "$_[0]"},
+                               emaila => q{Il tuo indirizzo email e' ora '$_[0]'},
                                email => q{Indirizzo email impostato a: $_[0]},
                                export1 => q{sintassi: export <num_mess> <nome_file>},
                                export2 => q{$_[3] ha problemi esportando i messaggi da $_[0] a $_[1] ($_[2])},
@@ -1504,7 +1504,7 @@ package DXM;
                                homenode => q{Home Node impostato a: $_[0]},
                                hnodee1 => q{Per piacere imposta il tuo Home Node con set/homenode <nominativo_cluster>},
                                hnodee2 => q{Impostazione dell'homenode fallita per $_[0]},
-                               hnode => q{Il tuo Homenode e' adesso "$_[0]"},
+                               hnode => q{Il tuo Homenode e' adesso '$_[0]'},
                                init1 => q{inizializzaione inviata a $_[0]},
                                iso => q{$_[0] Isolato},
                                isou => q{$_[0] non Isolato},
@@ -1519,9 +1519,9 @@ package DXM;
                                lange2 => q{impostazione lingua fallita per $_[0]'},
                                lh1 => q{$main::data/hop_table.pl non esiste},
                                loce1 => q{Per piacere inserisci la tua posizione, set/location <latitudine longitudine>},
-                               loce2 => q{Non riconosco "$_[0]" come Lat/Long (es 52 20 N 0 16 E)},
+                               loce2 => q{Non riconosco '$_[0]' come Lat/Long (es 52 20 N 0 16 E)},
                                loce3 => q{$_[0] e' una locatore QRA, usa: set/qra $_[0]},
-                               loc => q{I tuoi dati Lat/Long sono ora "$_[0]"},
+                               loc => q{I tuoi dati Lat/Long sono ora '$_[0]'},
                                lockout => q{$_[0] Bloccato},
                                lockoutc => q{$_[0] Creato e bloccato},
                                lockoutun => q{$_[0] Sbloccato},
@@ -1558,7 +1558,7 @@ package DXM;
                                mone => q{Monitor abilitato},
                                namee1 => q{Per favore inserisci con set/name <nome>},
                                namee2 => q{Impossibile trovare l'utente $_[0]!},
-                               name => q{Il tuo nome ora e' "$_[0]"},
+                               name => q{Il tuo nome ora e' '$_[0]'},
                                nodea => q{$_[0] impostato come nodo stile AK1A},
                                nodeac => q{$_[0] creato come nodo stile AK1A},
                                nodeb => q{$_[0] impostato come BBS},
@@ -1589,7 +1589,7 @@ package DXM;
                                pingint => q{Intervallo di ping per $_[0] impostato a $_[1] secondi},
                                'pos' => q{Dal nominativo: $_[0] Lat: $_[1] Long: $_[2]},
                                priv => q{Privilegi cambiati per $_[0]},
-                               prs => q{Prompt impostato a "$_[0]"},
+                               prs => q{Prompt impostato a '$_[0]'},
                                pru => q{Prompt reimpostato al predefinito},
                                prx => q{$main::mycall >},
                                pw0 => q{Inserisci la vecchia password: },
@@ -1599,12 +1599,12 @@ package DXM;
                                pw4 => q{Le password sono differenti, password NON cambiata},
                                qll => q{Per favore inserisci la tua località con set/location o set/qra},
                                qthe1 => q{Per favore inserisci il tuo QTH con set/qth <qth>},
-                               qth => q{Il tuo QTH e' adesso "$_[0]"},
+                               qth => q{Il tuo QTH e' adesso '$_[0]'},
                                qrae1 => q{Per favore inserisci il tuo locatore QRA con set/qra <locatore> (es set/qra JM77GF)},
                                qrashe1 => q{Please enter a QRA locator, eg sh/qra JO02LQ or sh/qra JO02LQ IO93NS},
-                               qrae2 => q{Non riconosco "$_[0]" come locatore QRA (es JM77GF)},
-                               qra => q{Il tuo locatore QRA e' adesso "$_[0]"},
-                               rcmdo => q{RCMD "$_[0]" spedito a $_[1]},
+                               qrae2 => q{Non riconosco '$_[0]' come locatore QRA (es JM77GF)},
+                               qra => q{Il tuo locatore QRA e' adesso '$_[0]'},
+                               rcmdo => q{RCMD '$_[0]' spedito a $_[1]},
                                rec => q{$_[0] records},
                                read1 => q{Spiacente, non ci sono nuovi messaggi per te},
                                read2 => q{Messaggio $_[0] non trovato},
@@ -1680,13 +1680,13 @@ package DXM;
                                badnode2 => q{$_[0] je nyni bezvadny nod},
                                badnode3 => q{Seznam zavadnych nodu:-},
                                bbse1 => q{Prosim zadej svou BBS adresu, set/bbs <tva bbs adresa>},
-                               bbs => q{Tva BBS adresa je nyni "$_[0]"},
+                               bbs => q{Tva BBS adresa je nyni '$_[0]'},
                                beepoff => q{Zvuky jsou nyni vypnuty},
                                beepon => q{Zvuky jsou nyni zapnuty},
                                call1 => q{Vyhledani znacky pres $_[0]:},
                                conother => q{Lituji $_[0], jses na me napojen na jinem portu},
                                concluster => q{Lituji $_[0], jses uz napojen nekde jinde na clusteru (na $_[1])},
-                               conscript => q{nebyl spusten connect skript "$_[0]" nalezen v $main::root/connect},
+                               conscript => q{nebyl spusten connect skript '$_[0]' nalezen v $main::root/connect},
                                confail => q{pripojeni na $_[0] selhalo ($_[1])},
                                constart => q{pripojeni na $_[0] bylo zahajeno},
                                deluser => q{Uzivatel $_[0] byl smazan},
@@ -1728,8 +1728,8 @@ package DXM;
                                e12 => q{Potrebuji znacku nodu},
                                e13 => q{$_[0] neni nod},
                                e14 => q{Prvni argument musi byt cislo vetsi nez 0},
-                               e15 => q{neplatny parametr "$_[0]"},
-                               e16 => q{Soubor "$_[0]" uz existuje},
+                               e15 => q{neplatny parametr '$_[0]'},
+                               e16 => q{Soubor '$_[0]' uz existuje},
                                e17 => q{Prosim nepouzivej zde toto slovo: @_'},
                                e18 => q{Nemohu se pripojit na $_[0] ($!)},
                                e19 => q{neplatny znak v radku  $_[0]},
@@ -1752,7 +1752,7 @@ package DXM;
                                echooff => q{Echo zakazano},
                                echow => q{*Echo je momentalne zakazano, pouzij set/echo k povoleni},
                                emaile1 => q{Prosim zadej svou e-mailovou adresu, set/email <tva emailova adresa>},
-                               emaila => q{Tva e-mailova adresa je nyni "$_[0]"},
+                               emaila => q{Tva e-mailova adresa je nyni '$_[0]'},
                                email => q{E-mailova adresa je nastavena na: $_[0]},
                                export1 => q{pouziti: export <cislo zpravy> <soubor>},
                                export2 => q{$_[3] hlasi chyby pri exportu zpravy $_[0] do $_[1] ($_[2])},
@@ -1780,7 +1780,7 @@ package DXM;
                                homenode => q{Domaci DXC nod je nastaven na: $_[0]},
                                hnodee1 => q{Prosim zadej svuj domaci DXC nod, set/homenode <tvuj domaci DX cluster>},
                                hnodee2 => q{Nastaveni domaciho nodu na $_[0] selhalo},
-                               hnode => q{Tvuj domaci nod je nyni "$_[0]"},
+                               hnode => q{Tvuj domaci nod je nyni '$_[0]'},
                                init1 => q{vyslana inicializacni zprava do $_[0]},
                                iso => q{$_[0] izolovan},
                                isou => q{$_[0] neni izolovan},
@@ -1795,9 +1795,9 @@ package DXM;
                                lange2 => q{selhalo nastaveni jazyka na $_[0]'},
                                lh1 => q{$main::data/hop_table.pl neexistuje},
                                loce1 => q{Prosim zadej svou polohu, set/location <sirka delka>},
-                               loce2 => q{Nemohu rozpoznat "$_[0]" jako sirka/delka (napr 52 20 N 0 16 E)},
+                               loce2 => q{Nemohu rozpoznat '$_[0]' jako sirka/delka (napr 52 20 N 0 16 E)},
                                loce3 => q{$_[0] je QRA lokator, prosim pouzij: set/qra $_[0]},
-                               loc => q{Tva poloha (sirka/delka) je nyni "$_[0]"},
+                               loc => q{Tva poloha (sirka/delka) je nyni '$_[0]'},
                                lockout => q{$_[0] zamknuto},
                                lockoutc => q{$_[0] vytvoreno a zamknuto},
                                lockoutun => q{$_[0] Odemceno},
@@ -1835,7 +1835,7 @@ package DXM;
                                mone => q{Monitoring je povolen},
                                namee1 => q{Prosim zadej sve jmeno, set/name <tve jmeno>},
                                namee2 => q{Nemohu najit uzivatele $_[0]!},
-                               name => q{Tve jmeno je nyni "$_[0]"},
+                               name => q{Tve jmeno je nyni '$_[0]'},
                                nodea => q{$_[0] nastaven jako nod typu AK1A},
                                nodeac => q{$_[0] vytvoren jako nod typu AK1A},
                                nodeb => q{$_[0] nastaven jako BBS},
@@ -1870,7 +1870,7 @@ package DXM;
                                pingint => q{Ping interval na $_[0] byl nastaven na $_[1] sekundy},
                                'pos' => q{Od znacky: $_[0] Sirka: $_[1] Delka: $_[2]},
                                pr2 => q{($_[0]) de $main::mycall $_[1] $_[2] >},
-                               prs => q{Prompt byl nastaven na "$_[0]"},
+                               prs => q{Prompt byl nastaven na '$_[0]'},
                                pru => q{Prompt byl vracen na default},
                                priv => q{Uroven prav byla zmenena na $_[0]},
                                prx => q{$main::mycall >},
@@ -1881,12 +1881,12 @@ package DXM;
                                pw4 => q{Hesla se lisi, heslo NEBYLO zmeneno},
                                qll => q{Prpsim zadej svou polohu s pomoci set/location nebo set/qra},
                                qthe1 => q{Prosim zadej sve QTH, set/qth <tve QTH>},
-                               qth => q{Tve QTH je nyni "$_[0]"},
+                               qth => q{Tve QTH je nyni '$_[0]'},
                                qrae1 => q{Prosim zadej svuj QRA lokator, set/qra <qra lokator> (napr set/qra JN79FM)},
                                qrashe1 => q{Prosim zadej QRA locator, napr sh/qra JN79FM nebo sh/qra JN79FM JN63GV},
-                               qrae2 => q{Nerozpoznal jsem "$_[0]" jako QRA lokator (napr JN79FM)},
-                               qra => q{Tvuj QRA lokator je nyni "$_[0]"},
-                               rcmdo => q{RCMD "$_[0]" bylo zaslano do $_[1]},
+                               qrae2 => q{Nerozpoznal jsem '$_[0]' jako QRA lokator (napr JN79FM)},
+                               qra => q{Tvuj QRA lokator je nyni '$_[0]'},
+                               rcmdo => q{RCMD '$_[0]' bylo zaslano do $_[1]},
                                read1 => q{Lituji, nemas zadne nove zpravy},
                                read2 => q{Zprava $_[0] nenalezena},
                                read3 => q{Msg $_[0] neni k dispozici},
@@ -1907,7 +1907,7 @@ package DXM;
                                sethop1 => q{pouziti: set/hops <znacka> ann|spots|wwv|wcy <pocet skoku>},
                                sethop2 => q{$_[0] skoku nastaveno na $_[1]$_[2] pro $_[3]'},
                                sethop3 => q{Zadny pocet skoku nastaven pro $_[0]'},
-                               shu => q{"SHU" nestaci, je treba alespon "SHUT" k vypnuti nodu},
+                               shu => q{'SHU' nestaci, je treba alespon 'SHUT' k vypnuti nodu},
                                shutting => q{$main::mycall se vypina...},
                                sloc => q{Cluster lat $_[0] long $_[1], NEZAPOMEN ZMENIT DXVars.pm},
                                snode1 => q{Nod  Znacka  Typ     Verze  },
@@ -1968,13 +1968,13 @@ package DXM;
                                badnode2 => q{$_[0]  agora um bom node},
                                badnode3 => q{Lista dos maus nodes:-},
                                bbse1 => q{Por favor escreva qual a sua BBS local,, set/bbs <a sua bbs local>},
-                               bbs => q{A sua bbs local  agora "$_[0]"},
+                               bbs => q{A sua bbs local  agora '$_[0]'},
                                beepoff => q{A campainha est desligada agora},
                                beepon => q{A campainha est ligada agora},
                                call1 => q{Indicativo fechado via $_[0]:},
                                conother => q{Desculpe $_[0] voc est ligado a mim noutra porta},
                                concluster => q{Desculpe $_[0] voc j est ligado em algum sitio no cluster (on $_[1])},
-                               conscript => q{nenhum script de ligao chamado "$_[0]" encontrado em $main::root/connect},
+                               conscript => q{nenhum script de ligao chamado '$_[0]' encontrado em $main::root/connect},
                                confail => q{ligao para $_[0] falhada ($_[1])},
                                constart => q{ligao para $_[0] comeada},
                                deluser => q{User $_[0] foi apagado},
@@ -2020,8 +2020,8 @@ package DXM;
                                e12 => q{Preciso de um indicativo de node},
                                e13 => q{$_[0] no  um node},
                                e14 => q{O primeiro argumento deve ser numrico e > 0},
-                               e15 => q{qualificador invlido "$_[0]"},
-                               e16 => q{O ficheiro "$_[0]" existe},
+                               e15 => q{qualificador invlido '$_[0]'},
+                               e16 => q{O ficheiro '$_[0]' existe},
                                e17 => q{Por favor no use as palavras: @_ aqui'},
                                e18 => q{No posso ligar a $_[0] ($!)},
                                e19 => q{Caracter invlido na linha $_[0]},
@@ -2046,7 +2046,7 @@ package DXM;
                                echooff => q{Eco desactivado},
                                echow => q{*O eco est actualmente desactivado, escreva set/echo para activar},
                                emaile1 => q{Por favor escreva o seu email, faa set/email <seu email>},
-                               emaila => q{O seu email  agora "$_[0]"},
+                               emaila => q{O seu email  agora '$_[0]'},
                                email => q{Email definido para: $_[0]},
                                export1 => q{uso: export <msgno> <nome de ficheiro>},
                                export2 => q{$_[3] houve um erro ao exportar a msg $_[0] para $_[1] ($_[2])},
@@ -2074,7 +2074,7 @@ package DXM;
                                homenode => q{Node local definido como: $_[0]},
                                hnodee1 => q{Por favor escreva o seu node local, set/homenode <o seu DX Cluster>},
                                hnodee2 => q{Falha ao definir o node local em $_[0]},
-                               hnode => q{O seu node local  agora "$_[0]"},
+                               hnode => q{O seu node local  agora '$_[0]'},
                                init1 => q{enviar mensagem de inicializao para $_[0]},
                                iso => q{$_[0] Isolado},
                                isou => q{$_[0] No isolado},
@@ -2091,9 +2091,9 @@ package DXM;
                                leave => q{a deixar o grupo $_[0]},
                                lh1 => q{$main::data/hop_table.pl no existe},
                                loce1 => q{Por favor diga as suas coordenadas,, set/location <latitude longitude>},
-                               loce2 => q{No reconhece "$_[0]" como uma Lat/Long (ex 52 20 N 0 16 E)},
+                               loce2 => q{No reconhece '$_[0]' como uma Lat/Long (ex 52 20 N 0 16 E)},
                                loce3 => q{$_[0]  um locator, por favor use: set/qra $_[0]},
-                               loc => q{A sua lat/long  agora "$_[0]"},
+                               loc => q{A sua lat/long  agora '$_[0]'},
                                lockout => q{$_[0] Fechado},
                                lockoutc => q{$_[0] Criado e fechado},
                                lockoutun => q{$_[0] Aberto},
@@ -2131,7 +2131,7 @@ package DXM;
                                mone => q{Monitorizao activada},
                                namee1 => q{Por favor escreva o seu nome, set/name <o seu nome>},
                                namee2 => q{No encontro o usurio $_[0]!},
-                               name => q{O seu nome  "$_[0]"},
+                               name => q{O seu nome  '$_[0]'},
                                nodea => q{$_[0] definido como um node tipo AK1A},
                                nodeac => q{$_[0] criado como um node tipo AK1A},
                                nodeb => q{$_[0] definido como BBS},
@@ -2165,7 +2165,7 @@ package DXM;
                                pinge1 => q{No pode fazer ping para si prprio!},
                                pingint => q{Intervalo de Ping em $_[0] definido para $_[1] segundos},
                                'pos' => q{Do indicativo: $_[0] Lat: $_[1] Long: $_[2]},
-                               prs => q{Prompt agora definida para "$_[0]"},
+                               prs => q{Prompt agora definida para '$_[0]'},
                                pru => q{Prompt agora regressou para a default},
                                priv => q{Nivel de privilgio alterado em $_[0]},
                                prx => q{$main::mycall >},
@@ -2176,13 +2176,13 @@ package DXM;
                                pw4 => q{As Passwordes diferem, a password NO foi alterada},
                                qll => q{Por favor escreva a sua localizao com set/location ou set/qra},
                                qthe1 => q{Por favor escreva o seu QTH, set/qth <o seu qth>},
-                               qth => q{O seu QTH  "$_[0]"},
+                               qth => q{O seu QTH  '$_[0]'},
                                qrae1 => q{Por favor escreva o seu locator, set/qra <locator> (ex set/qra IM58LP)},
                                qrashe1 => q{Por favor escreva o seu locator, ex sh/qra IM58LP ou sh/qra IM58LP IO93NS},
-                               qrae2 => q{No reconhece "$_[0]" como um locator (ex IM58LP)},
-                               qra => q{O seu locator  "$_[0]"},
+                               qrae2 => q{No reconhece '$_[0]' como um locator (ex IM58LP)},
+                               qra => q{O seu locator  '$_[0]'},
                                qsl1 => q{Call           Manager   Times  Last Time Seen      De},
-                               rcmdo => q{RCMD "$_[0]" enviado para $_[1]},
+                               rcmdo => q{RCMD '$_[0]' enviado para $_[1]},
                                read1 => q{Desculpe, nenhuma mensagem nova para voc},
                                read2 => q{Msg $_[0] no foi encontrada},
                                read3 => q{Msg $_[0] no est disponivel},
@@ -2203,7 +2203,7 @@ package DXM;
                                sethop1 => q{uso: set/hops <indicativo> ann|spots|wwv|wcy <nmero de saltos>},
                                sethop2 => q{$_[0] saltos definidos em $_[1]$_[2] por $_[3]'},
                                sethop3 => q{Nenhuns saltos definidos por $_[0]'},
-                               shu => q{"SHU" no  suficiente! voc precisa pelo menos de  "SHUT" para desligar o node},
+                               shu => q{'SHU' no  suficiente! voc precisa pelo menos de  'SHUT' para desligar o node},
                                shutting => q{$main::mycall a desligar...},
                                sloc => q{Cluster lat $_[0] long $_[1], NO ESQUECER DE ALTERAR O SEU DXVars.pm},
                                snode1 => q{Node Call   Sort    Verso},
index d471b71b8aba42fcdd77ae67a2e7493f9836010e..f96fbfea59722c6d2d88211604e7ca8f1878491e 100755 (executable)
@@ -176,8 +176,6 @@ use Fcntl ':flock';
 use POSIX ":sys_wait_h";
 use Web;
 
-use vars qw($version $build $gitversion $gitbranch);
-
 use strict;
 
 use Local;