Add older versions of man pages + misc site improvements
This commit is contained in:
parent
2196b2fbd4
commit
436c5b5294
9 changed files with 192 additions and 23 deletions
36
docversions.pl
Executable file
36
docversions.pl
Executable file
|
|
@ -0,0 +1,36 @@
|
|||
#!/usr/bin/perl
|
||||
|
||||
# Adds version links to doc pages, assumption:
|
||||
#
|
||||
# /project/doc <- latest version
|
||||
# /project/doc/$x <- older versions, $x must start with a digit and '_' is replaced with a '.' for display.
|
||||
#
|
||||
use v5.36;
|
||||
|
||||
my $VER = qr{[0-9][^/]*};
|
||||
my $cur = shift;
|
||||
my $base = $cur =~ s{/$VER$}{}r;
|
||||
my %pages = map +($_ =~ s{^pub/}{}r =~ s{\.html$}{}r,1), @ARGV;
|
||||
my $links = '';
|
||||
|
||||
sub num($s) { $s =~ s/([0-9]+)/sprintf '%05d', $1/erg }
|
||||
|
||||
my @ver =
|
||||
sort { num($b) cmp num($a) }
|
||||
grep m{^(.+)/($VER)$} && $1 eq $base, keys %pages;
|
||||
|
||||
sub lnk($ver) {
|
||||
my $v = $ver eq $base ? 'latest' : $ver =~ s{^.+/($VER)$}{$1}r =~ s/_/./rg;
|
||||
$cur eq $ver ? "**$v**" : "[$v](/$ver)";
|
||||
}
|
||||
|
||||
$links = 'Version: '.join(' / ', map lnk($_), $base, @ver)."\n\n" if @ver;
|
||||
|
||||
my $firstsec = 1;
|
||||
while(<STDIN>) {
|
||||
if ($firstsec && /^#/) {
|
||||
$firstsec = 0;
|
||||
print $links;
|
||||
}
|
||||
print;
|
||||
};
|
||||
Loading…
Add table
Add a link
Reference in a new issue