perl: link between related or revised features
[sheet.git] / perl.plp
index c36f5e8cf75c0ba9eda2112ed5d121797270fb85..02d034869ae7f7ee89c0c9aa8cc3ae30f014df75 100644 (file)
--- a/perl.plp
+++ b/perl.plp
@@ -100,15 +100,18 @@ for my $vernum (reverse sort keys %{$info}) {
                        if ($attr->{experimental}) {
                                $title = sprintf '<span title="experimental::%s">%s</span>',
                                        $attr->{experimental}, $title;
+                               $attr->{name} //= $attr->{experimental};
                        }
                        if ($attr->{feature}) {
                                my $prefix = sprintf '<span title="%s">feature</span>',
                                        $attr->{feature};
                                $title = join ', ', $prefix, $title // ();
+                               $attr->{name} //= $attr->{feature};
                        }
-                       $desc .= sprintf ' <em class="ex">(%s)</em>', $title;
+                       $desc .= sprintf ' <em class="ex">(%s)</em>', $title if $title;
                }
-               say sprintf '<dt>%s<dd>%s', $topic, $desc || '<br/>';
+               my $ref = defined $attr->{name} && sprintf ' id="%s"', $attr->{name};
+               say sprintf '<dt%s>%s<dd>%s', $ref, $topic, $desc || '<br/>';
        }
        say sprintf '<dt>Unicode</dt><dd>v%s', $_ for $verrow->{unicode} || ();
        say '</dl>';