allow =fields ranges in *.dbd.pod

This commit is contained in:
2025-06-18 10:15:34 -05:00
committed by Andrew Johnson
parent 51b57e0043
commit 37741efa38
12 changed files with 43 additions and 37 deletions
+6 -3
View File
@@ -222,11 +222,11 @@ sub rtypeToPod {
my ($rtyp, $dbd) = @_;
return map {
# Handle a 'fields' Pod directive
if (m/^ =fields \s+ (\w+ (?:\s* , \s* \w+ )* )/x) {
my @names = split /\s*,\s*/, $1;
if (m/^ =fields \s+ (\w+ (?:\s* [,-] \s* \w+ )* )/x) {
my @names = split /\s*,\s*|\s*(?=-)|(?<=-)\s*/, $1;
# Look up the named fields
my @fields = map {
my $field = $rtyp->field($_);
my $field = $_ eq '-' ? $_ : $rtyp->field($_);
die "Unknown field name '$_' in $infile POD\n"
unless $field;
$field;
@@ -256,6 +256,9 @@ sub rtypeToPod {
sub fieldTableRow {
my ($fld, $dbd) = @_;
if ($fld eq '-') {
return '<tr><td class="cell" colspan=8>&vellip;</td></tr>'."\n";
}
my $html = '<tr><td class="cell">';
$html .= $fld->name;
$html .= '</td><td class="cell">';
+6 -3
View File
@@ -164,11 +164,11 @@ sub rtypeToMD {
my ($rtyp, $dbd) = @_;
return map {
# Handle a 'fields' Pod directive
if (m/^ =fields \s+ (\w+ (?:\s* , \s* \w+ )* )/x) {
my @names = split /\s*,\s*/, $1;
if (m/^ =fields \s+ (\w+ (?:\s* [,-] \s* \w+ )* )/x) {
my @names = split /\s*,\s*|\s*(?=-)|(?<=-)\s*/, $1;
# Look up the named fields
my @fields = map {
my $field = $rtyp->field($_);
my $field = $_ eq '-' ? $_ : $rtyp->field($_);
die "Unknown field name '$_' in $infile POD\n"
unless $field;
$field;
@@ -195,6 +195,9 @@ sub rtypeToMD {
sub fieldTableRow {
my ($fld, $dbd) = @_;
if ($fld eq '-') {
return "| \x{22EE}".(" " x 83)."||||||||";
}
my @md;
push @md, sprintf("%-5s", $fld->name), sprintf("%-26s", $fld->attribute('prompt'));