kopia lustrzana https://github.com/Hamlib/Hamlib
Added support for set/get _split_vfo, _split_freq, and _split_mode,
power2mW and mW2power and tested with rigctld. Refactored regexps for user entry tests. git-svn-id: https://hamlib.svn.sourceforge.net/svnroot/hamlib/trunk@2825 7ae35d74-ebe9-4afe-98af-79ac388436b8Hamlib-1.2.11
rodzic
fb4f7258bc
commit
7adf24115f
|
@ -54,6 +54,7 @@ my %rig_caps = (); # Rig capabilities from \dump_caps
|
||||||
|
|
||||||
my $man = 0;
|
my $man = 0;
|
||||||
my $help = 0;
|
my $help = 0;
|
||||||
|
my $debug = 0;
|
||||||
my $user_in;
|
my $user_in;
|
||||||
my $ret_val;
|
my $ret_val;
|
||||||
|
|
||||||
|
@ -140,17 +141,16 @@ if (chk_opt($socket, 'CHKVFO')) {
|
||||||
|
|
||||||
# Interactive loop
|
# Interactive loop
|
||||||
do {
|
do {
|
||||||
my @cmd_str;
|
|
||||||
|
|
||||||
print "rigctld command: ";
|
print "rigctld command: ";
|
||||||
chomp($user_in = <>);
|
chomp($user_in = <>);
|
||||||
|
|
||||||
# F, \set_freq
|
# F, \set_freq
|
||||||
if ($user_in =~ /^F\s\d+\b$/ or $user_in =~ /^\\set_freq\s\d+\b$/) {
|
if ($user_in =~ /^(F|\\set_freq)\s+(\d+)\b$/) {
|
||||||
if ($rig_caps{'Can set frequency'} eq 'Y') {
|
if ($rig_caps{'Can set Frequency'} eq 'Y') {
|
||||||
# Get the entered frequency value
|
# Get the entered frequency value
|
||||||
@cmd_str = split(' ', $user_in);
|
print "Freq = $2\n" if $debug;
|
||||||
$ret_val = rig_cmd('set_freq', $vfo, $cmd_str[1]);
|
$ret_val = rig_cmd('set_freq', $vfo, $2);
|
||||||
|
|
||||||
unless ($ret_val eq $errstr{'RIG_OK'}) {
|
unless ($ret_val eq $errstr{'RIG_OK'}) {
|
||||||
errmsg ($ret_val);
|
errmsg ($ret_val);
|
||||||
|
@ -161,13 +161,13 @@ do {
|
||||||
}
|
}
|
||||||
|
|
||||||
# f, \get_freq
|
# f, \get_freq
|
||||||
elsif ($user_in =~ /^f\b$/ or $user_in =~ /^\\get_freq\b$/) {
|
elsif ($user_in =~ /^(f|\\get_freq)\b$/) {
|
||||||
if ($rig_caps{'Can get mode'} eq 'Y') {
|
if ($rig_caps{'Can get Frequency'} eq 'Y') {
|
||||||
# Query rig and process result
|
# Query rig and process result
|
||||||
$ret_val = rig_cmd('get_freq', $vfo);
|
$ret_val = rig_cmd('get_freq', $vfo);
|
||||||
|
|
||||||
if ($ret_val eq $errstr{'RIG_OK'}) {
|
if ($ret_val eq $errstr{'RIG_OK'}) {
|
||||||
print "Frequency: $rig_state{Frequency}\n\n";
|
print "Frequency: " . $rig_state{Frequency} . "\n\n";
|
||||||
} else {
|
} else {
|
||||||
errmsg ($ret_val);
|
errmsg ($ret_val);
|
||||||
}
|
}
|
||||||
|
@ -177,11 +177,11 @@ do {
|
||||||
}
|
}
|
||||||
|
|
||||||
# M, \set_mode
|
# M, \set_mode
|
||||||
elsif ($user_in =~ /^M\s[A-Z]+\s\d+\b$/ or $user_in =~ /^\\set_mode\s[A-Z]+\s\d+\b$/) {
|
elsif ($user_in =~ /^(M|\\set_mode)\s+([A-Z]+)\s+(\d+)\b$/) {
|
||||||
if ($rig_caps{'Can set mode'} eq 'Y') {
|
if ($rig_caps{'Can set Mode'} eq 'Y') {
|
||||||
# Get the entered mode and passband values
|
# Get the entered mode and passband values
|
||||||
@cmd_str = split(' ', $user_in);
|
print "Mode = $2, Passband = $3\n" if $debug;
|
||||||
$ret_val = rig_cmd('set_mode', $vfo, $cmd_str[1], $cmd_str[2]);
|
$ret_val = rig_cmd('set_mode', $vfo, $2, $3);
|
||||||
|
|
||||||
unless ($ret_val eq $errstr{'RIG_OK'}) {
|
unless ($ret_val eq $errstr{'RIG_OK'}) {
|
||||||
errmsg ($ret_val);
|
errmsg ($ret_val);
|
||||||
|
@ -192,15 +192,15 @@ do {
|
||||||
}
|
}
|
||||||
|
|
||||||
# m, \get_mode
|
# m, \get_mode
|
||||||
elsif ($user_in =~ /^m\b$/ or $user_in =~ /^\\get_mode\b$/) {
|
elsif ($user_in =~ /^(m|\\get_mode)\b$/) {
|
||||||
if ($rig_caps{'Can get mode'} eq 'Y') {
|
if ($rig_caps{'Can get Mode'} eq 'Y') {
|
||||||
|
|
||||||
# Do the same for the mode (reading the mode also returns the bandwidth)
|
# Do the same for the mode (reading the mode also returns the bandwidth)
|
||||||
$ret_val = rig_cmd('get_mode', $vfo);
|
$ret_val = rig_cmd('get_mode', $vfo);
|
||||||
|
|
||||||
if ($ret_val eq $errstr{'RIG_OK'}) {
|
if ($ret_val eq $errstr{'RIG_OK'}) {
|
||||||
print "Mode: $rig_state{Mode}\n";
|
print "Mode: " . $rig_state{Mode} . "\n";
|
||||||
print "Passband: $rig_state{Passband}\n\n";
|
print "Passband: " . $rig_state{Passband} . "\n\n";
|
||||||
} else {
|
} else {
|
||||||
errmsg ($ret_val);
|
errmsg ($ret_val);
|
||||||
}
|
}
|
||||||
|
@ -210,10 +210,10 @@ do {
|
||||||
}
|
}
|
||||||
|
|
||||||
# V, \set_vfo
|
# V, \set_vfo
|
||||||
elsif ($user_in =~ /^V\s[A-Za-z]+\b$/ or $user_in =~ /^\\set_vfo\s[A-Za-z]+\b$/) {
|
elsif ($user_in =~ /^(V|\\set_vfo)\s+([A-Za-z]+)\b$/) {
|
||||||
if ($rig_caps{'Can set vfo'} eq 'Y') {
|
if ($rig_caps{'Can set VFO'} eq 'Y') {
|
||||||
@cmd_str = split(' ', $user_in);
|
print "VFO = $2\n" if $debug;
|
||||||
$ret_val = rig_cmd('set_vfo', $cmd_str[1]); # $vfo not used!
|
$ret_val = rig_cmd('set_vfo', $2); # $vfo not used!
|
||||||
|
|
||||||
unless ($ret_val eq $errstr{'RIG_OK'}) {
|
unless ($ret_val eq $errstr{'RIG_OK'}) {
|
||||||
errmsg ($ret_val);
|
errmsg ($ret_val);
|
||||||
|
@ -224,12 +224,223 @@ do {
|
||||||
}
|
}
|
||||||
|
|
||||||
# v, \get_vfo
|
# v, \get_vfo
|
||||||
elsif ($user_in =~ /^v\b$/ or $user_in =~ /^\\get_vfo\b$/) {
|
elsif ($user_in =~ /^(v|\\get_vfo)\b$/) {
|
||||||
if ($rig_caps{'Can get vfo'} eq 'Y') {
|
if ($rig_caps{'Can get VFO'} eq 'Y') {
|
||||||
$ret_val = rig_cmd('get_vfo', $vfo);
|
$ret_val = rig_cmd('get_vfo', $vfo);
|
||||||
|
|
||||||
if ($ret_val eq $errstr{'RIG_OK'}) {
|
if ($ret_val eq $errstr{'RIG_OK'}) {
|
||||||
print "VFO: $rig_state{VFO}\n\n";
|
print "VFO: " . $rig_state{VFO} . "\n\n";
|
||||||
|
} else {
|
||||||
|
errmsg ($ret_val);
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
errmsg($errstr{'CTLD_ENIMPL'});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
# J, \set_rit
|
||||||
|
elsif ($user_in =~ /^(J|\\set_rit)\s+([+-]?\d+)\b$/) {
|
||||||
|
if ($rig_caps{'Can set RIT'} eq 'Y') {
|
||||||
|
print "RIT freq = $2\n" if $debug;
|
||||||
|
$ret_val = rig_cmd('set_rit', $vfo, $2);
|
||||||
|
|
||||||
|
unless ($ret_val eq $errstr{'RIG_OK'}) {
|
||||||
|
errmsg ($ret_val);
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
errmsg($errstr{'CTLD_ENIMPL'});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
# j, \get_rit
|
||||||
|
elsif ($user_in =~ /^(j|\\get_rit)\b$/) {
|
||||||
|
if ($rig_caps{'Can get RIT'} eq 'Y') {
|
||||||
|
$ret_val = rig_cmd('get_rit', $vfo);
|
||||||
|
|
||||||
|
if ($ret_val eq $errstr{'RIG_OK'}) {
|
||||||
|
print "RIT: " . $rig_state{RIT} . "\n\n";
|
||||||
|
} else {
|
||||||
|
errmsg ($ret_val);
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
errmsg($errstr{'CTLD_ENIMPL'});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
# Z, \set_xit
|
||||||
|
elsif ($user_in =~ /^(Z|\\set_xit)\s+([+-]?\d+)\b$/) {
|
||||||
|
if ($rig_caps{'Can set XIT'} eq 'Y') {
|
||||||
|
print "XIT freq = $2\n" if $debug;
|
||||||
|
$ret_val = rig_cmd('set_xit', $vfo, $2);
|
||||||
|
|
||||||
|
unless ($ret_val eq $errstr{'RIG_OK'}) {
|
||||||
|
errmsg ($ret_val);
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
errmsg($errstr{'CTLD_ENIMPL'});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
# z, \get_xit
|
||||||
|
elsif ($user_in =~ /^(z|\\get_xit)\b$/) {
|
||||||
|
if ($rig_caps{'Can get XIT'} eq 'Y') {
|
||||||
|
$ret_val = rig_cmd('get_xit', $vfo);
|
||||||
|
|
||||||
|
if ($ret_val eq $errstr{'RIG_OK'}) {
|
||||||
|
print "XIT: " . $rig_state{XIT} . "\n\n";
|
||||||
|
} else {
|
||||||
|
errmsg ($ret_val);
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
errmsg($errstr{'CTLD_ENIMPL'});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
# T, \set_ptt
|
||||||
|
elsif ($user_in =~ /^(T|\\set_ptt)\s+(\d)\b$/) {
|
||||||
|
if ($rig_caps{'Can set PTT'} eq 'Y') {
|
||||||
|
print "PTT = $2\n" if $debug;
|
||||||
|
$ret_val = rig_cmd('set_ptt', $vfo, $2);
|
||||||
|
|
||||||
|
unless ($ret_val eq $errstr{'RIG_OK'}) {
|
||||||
|
errmsg ($ret_val);
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
errmsg($errstr{'CTLD_ENIMPL'});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
# t, \get_ptt
|
||||||
|
elsif ($user_in =~ /^(t|\\get_ptt)\b$/) {
|
||||||
|
if ($rig_caps{'Can get PTT'} eq 'Y') {
|
||||||
|
$ret_val = rig_cmd('get_ptt', $vfo);
|
||||||
|
|
||||||
|
if ($ret_val eq $errstr{'RIG_OK'}) {
|
||||||
|
print "PTT: " . $rig_state{PTT} . "\n\n";
|
||||||
|
} else {
|
||||||
|
errmsg ($ret_val);
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
errmsg($errstr{'CTLD_ENIMPL'});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
# S, \set_split_vfo
|
||||||
|
elsif ($user_in =~ /^(S|\\set_split_vfo)\s+(\d)\s+([A-Za-z]+)\b$/) {
|
||||||
|
if ($rig_caps{'Can set Split VFO'} eq 'Y') {
|
||||||
|
print "split = $2, VFO = $3\n" if $debug;
|
||||||
|
$ret_val = rig_cmd('set_split_vfo', $vfo, $2, $3);
|
||||||
|
|
||||||
|
unless ($ret_val eq $errstr{'RIG_OK'}) {
|
||||||
|
errmsg ($ret_val);
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
errmsg($errstr{'CTLD_ENIMPL'});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
# s, \get_split_vfo
|
||||||
|
elsif ($user_in =~ /^(s|\\get_split_vfo)\b$/) {
|
||||||
|
if ($rig_caps{'Can get Split VFO'} eq 'Y') {
|
||||||
|
$ret_val = rig_cmd('get_split_vfo', $vfo);
|
||||||
|
|
||||||
|
if ($ret_val eq $errstr{'RIG_OK'}) {
|
||||||
|
print "Split: " . $rig_state{Split} . "\n";
|
||||||
|
print "TX VFO: " . $rig_state{'TX VFO'} . "\n\n";
|
||||||
|
} else {
|
||||||
|
errmsg ($ret_val);
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
errmsg($errstr{'CTLD_ENIMPL'});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
# I, \set_split_freq
|
||||||
|
elsif ($user_in =~ /^(I|\\set_split_freq)\s+(\d+)\b$/) {
|
||||||
|
if ($rig_caps{'Can set Split Freq'} eq 'Y') {
|
||||||
|
print "TX VFO freq = $2\n" if $debug;
|
||||||
|
$ret_val = rig_cmd('set_split_freq', $vfo, $2);
|
||||||
|
|
||||||
|
unless ($ret_val eq $errstr{'RIG_OK'}) {
|
||||||
|
errmsg ($ret_val);
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
errmsg($errstr{'CTLD_ENIMPL'});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
# i, \get_split_freq
|
||||||
|
elsif ($user_in =~ /^(i|\\get_split_freq)\b$/) {
|
||||||
|
if ($rig_caps{'Can get Split Freq'} eq 'Y') {
|
||||||
|
$ret_val = rig_cmd('get_split_freq', $vfo);
|
||||||
|
|
||||||
|
if ($ret_val eq $errstr{'RIG_OK'}) {
|
||||||
|
print "TX Frequency: " . $rig_state{'TX Frequency'} . "\n\n";
|
||||||
|
} else {
|
||||||
|
errmsg ($ret_val);
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
errmsg($errstr{'CTLD_ENIMPL'});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
# X, \set_split_mode
|
||||||
|
elsif ($user_in =~ /^(X|\\set_split_mode)\s+([A-Z]+)\s+(\d+)\b$/) {
|
||||||
|
if ($rig_caps{'Can set Split Mode'} eq 'Y') {
|
||||||
|
# Get the entered mode and passband values
|
||||||
|
print "TX Mode = $2, TX Passband = $3\n" if $debug;
|
||||||
|
$ret_val = rig_cmd('set_split_mode', $vfo, $2, $3);
|
||||||
|
|
||||||
|
unless ($ret_val eq $errstr{'RIG_OK'}) {
|
||||||
|
errmsg ($ret_val);
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
errmsg($errstr{'CTLD_ENIMPL'});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
# x, \get_split_mode
|
||||||
|
elsif ($user_in =~ /^(x|\\get_split_mode)\b$/) {
|
||||||
|
if ($rig_caps{'Can get Split Mode'} eq 'Y') {
|
||||||
|
|
||||||
|
# Do the same for the mode (reading the mode also returns the bandwidth)
|
||||||
|
$ret_val = rig_cmd('get_split_mode', $vfo);
|
||||||
|
|
||||||
|
if ($ret_val eq $errstr{'RIG_OK'}) {
|
||||||
|
print "TX Mode: " . $rig_state{'TX Mode'} . "\n";
|
||||||
|
print "TX Passband: " . $rig_state{'TX Passband'} . "\n\n";
|
||||||
|
} else {
|
||||||
|
errmsg ($ret_val);
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
errmsg($errstr{'CTLD_ENIMPL'});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
# 2, \power2mW
|
||||||
|
elsif ($user_in =~ /^(2|\\power2mW)\s+(\d\.\d+)\s+(\d+)\s+([A-Za-z]+)\b$/) {
|
||||||
|
if ($rig_caps{'Can get power2mW'} eq 'Y') {
|
||||||
|
print "Power = $2, freq = $3, VFO = $4\n" if $debug;
|
||||||
|
$ret_val = rig_cmd('power2mW', $2, $3, $4);
|
||||||
|
|
||||||
|
if ($ret_val eq $errstr{'RIG_OK'}) {
|
||||||
|
print "Power mW: " . $rig_state{'Power mW'} . "\n";
|
||||||
|
} else {
|
||||||
|
errmsg ($ret_val);
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
errmsg($errstr{'CTLD_ENIMPL'});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
# 4, \mW2power
|
||||||
|
elsif ($user_in =~ /^(4|\\mW2power)\s+(\d+)\s+(\d+)\s+([A-Za-z]+)\b$/) {
|
||||||
|
if ($rig_caps{'Can get mW2power'} eq 'Y') {
|
||||||
|
print "mW = $2, freq = $3, VFO = $4\n" if $debug;
|
||||||
|
$ret_val = rig_cmd('mW2power', $2, $3, $4);
|
||||||
|
|
||||||
|
if ($ret_val eq $errstr{'RIG_OK'}) {
|
||||||
|
print "Power [0.0..1.0]: " . $rig_state{'Power [0.0..1.0]'} . "\n";
|
||||||
} else {
|
} else {
|
||||||
errmsg ($ret_val);
|
errmsg ($ret_val);
|
||||||
}
|
}
|
||||||
|
@ -239,20 +450,20 @@ do {
|
||||||
}
|
}
|
||||||
|
|
||||||
# 1, \dump_caps
|
# 1, \dump_caps
|
||||||
elsif ($user_in =~ /^1\b$/ or $user_in =~ /^\\dump_caps\b$/) {
|
elsif ($user_in =~ /^(1|\\dump_caps)\b$/) {
|
||||||
$ret_val = dump_caps();
|
$ret_val = dump_caps();
|
||||||
|
|
||||||
if ($ret_val eq $errstr{'RIG_OK'}) {
|
if ($ret_val eq $errstr{'RIG_OK'}) {
|
||||||
print "Model: $rig_caps{'Caps dump for model'}\n";
|
print "Model: " . $rig_caps{'Caps dump for model'} . "\n";
|
||||||
print "Manufacturer: $rig_caps{'Mfg name'}\n";
|
print "Manufacturer: " . $rig_caps{'Mfg name'} . "\n";
|
||||||
print "Name: $rig_caps{'Model name'}\n\n";
|
print "Name: " . $rig_caps{'Model name'} . "\n\n";
|
||||||
} else {
|
} else {
|
||||||
errmsg ($ret_val);
|
errmsg ($ret_val);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
# ?, help
|
# ?, help
|
||||||
elsif ($user_in =~ /^\?$/ or $user_in =~ /^help\b$/i) {
|
elsif ($user_in =~ /^\?|^help\b$/) {
|
||||||
print <<EOF;
|
print <<EOF;
|
||||||
|
|
||||||
Commands are entered in the same format as described in the rigctld(8)
|
Commands are entered in the same format as described in the rigctld(8)
|
||||||
|
@ -313,20 +524,22 @@ sub rig_cmd {
|
||||||
$vfo = sprintf("%*s", 1 + length $vfo, $vfo);
|
$vfo = sprintf("%*s", 1 + length $vfo, $vfo);
|
||||||
} else { $vfo = ''; }
|
} else { $vfo = ''; }
|
||||||
|
|
||||||
if ($p1) {
|
if (defined $p1) {
|
||||||
$p1 = sprintf("%*s", 1 + length $p1, $p1);
|
$p1 = sprintf("%*s", 1 + length $p1, $p1);
|
||||||
} else { $p1 = ''; }
|
} else { $p1 = ''; }
|
||||||
|
|
||||||
if ($p2) {
|
if (defined $p2) {
|
||||||
$p2 = sprintf("%*s", 1 + length $p2, $p2);
|
$p2 = sprintf("%*s", 1 + length $p2, $p2);
|
||||||
} else { $p2 = ''; }
|
} else { $p2 = ''; }
|
||||||
|
|
||||||
if ($p3) {
|
if (defined $p3) {
|
||||||
$p3 = sprintf("%*s", 1 + length $p3, $p3);
|
$p3 = sprintf("%*s", 1 + length $p3, $p3);
|
||||||
} else { $p3 = ''; }
|
} else { $p3 = ''; }
|
||||||
print "\\$cmd$vfo$p1$p2$p3\n\n";
|
|
||||||
|
print '\\' . $cmd . $vfo . $p1 . $p2 . $p3 . "\n\n" if $debug;
|
||||||
|
|
||||||
# N.B. Terminate query commands with a newline, e.g. "\n" character.
|
# N.B. Terminate query commands with a newline, e.g. "\n" character.
|
||||||
print $socket "\\$cmd$vfo$p1$p2$p3\n";
|
print $socket '\\' . $cmd . $vfo . $p1 . $p2 . $p3 . "\n";
|
||||||
|
|
||||||
# rigctld echoes the command plus value(s) on "get" along with
|
# rigctld echoes the command plus value(s) on "get" along with
|
||||||
# separate lines for the queried value(s) and the Hamlib return value.
|
# separate lines for the queried value(s) and the Hamlib return value.
|
||||||
|
@ -465,21 +678,6 @@ sub chk_opt {
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
# Parse the command line for supported options. Print help text as needed.
|
|
||||||
sub argv_opts {
|
|
||||||
|
|
||||||
# Parse options and print usage if there is a syntax error,
|
|
||||||
# or if usage was explicitly requested.
|
|
||||||
GetOptions('help|?' => \$help,
|
|
||||||
man => \$man,
|
|
||||||
"port=i" => \$port,
|
|
||||||
"host=s" => \$host
|
|
||||||
) or pod2usage(2);
|
|
||||||
pod2usage(1) if $help;
|
|
||||||
pod2usage(-verbose => 2) if $man;
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
# FIXME: Better argument handling
|
# FIXME: Better argument handling
|
||||||
sub errmsg {
|
sub errmsg {
|
||||||
|
|
||||||
|
@ -495,6 +693,23 @@ sub errmsg {
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
# Parse the command line for supported options. Print help text as needed.
|
||||||
|
sub argv_opts {
|
||||||
|
|
||||||
|
# Parse options and print usage if there is a syntax error,
|
||||||
|
# or if usage was explicitly requested.
|
||||||
|
GetOptions('help|?' => \$help,
|
||||||
|
man => \$man,
|
||||||
|
"port=i" => \$port,
|
||||||
|
"host=s" => \$host,
|
||||||
|
debug => \$debug
|
||||||
|
) or pod2usage(2);
|
||||||
|
pod2usage(1) if $help;
|
||||||
|
pod2usage(-verbose => 2) if $man;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
# POD for pod2usage
|
# POD for pod2usage
|
||||||
|
|
||||||
__END__
|
__END__
|
||||||
|
@ -512,6 +727,7 @@ testctld.pl [options]
|
||||||
--port TCP Port of target `rigctld' process
|
--port TCP Port of target `rigctld' process
|
||||||
--help Brief help message
|
--help Brief help message
|
||||||
--man Full documentation
|
--man Full documentation
|
||||||
|
--debug Enable debugging output
|
||||||
|
|
||||||
=head1 DESCRIPTION
|
=head1 DESCRIPTION
|
||||||
|
|
||||||
|
@ -541,6 +757,10 @@ Prints a brief help message and exits.
|
||||||
|
|
||||||
Prints this manual page and exits.
|
Prints this manual page and exits.
|
||||||
|
|
||||||
|
=item B<--debug>
|
||||||
|
|
||||||
|
Enables debugging output to the console.
|
||||||
|
|
||||||
=back
|
=back
|
||||||
|
|
||||||
=cut
|
=cut
|
||||||
|
|
Ładowanie…
Reference in New Issue