diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-05-06 03:01:54 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-05-06 03:01:54 +0000 |
commit | 0494175483c2d82f445ddca9cadb6ee6338e9f9c (patch) | |
tree | 336364dc245983722e34439ece449564e77ca286 /debian/lynx-dump-postprocess | |
parent | Adding upstream version 6.0.4-dfsg. (diff) | |
download | virtualbox-0494175483c2d82f445ddca9cadb6ee6338e9f9c.tar.xz virtualbox-0494175483c2d82f445ddca9cadb6ee6338e9f9c.zip |
Adding debian version 6.0.4-dfsg-7.debian/6.0.4-dfsg-7debian
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to '')
-rwxr-xr-x | debian/lynx-dump-postprocess | 51 |
1 files changed, 51 insertions, 0 deletions
diff --git a/debian/lynx-dump-postprocess b/debian/lynx-dump-postprocess new file mode 100755 index 00000000..644e49c0 --- /dev/null +++ b/debian/lynx-dump-postprocess @@ -0,0 +1,51 @@ +#!/usr/bin/perl + +# taken from the exim4 package + +open IN, '<&STDIN'; +#open IN, 'dump'; +{ + local $/; + $content=<IN>; +} +close IN; + +($title,$body,$links) = + ($content =~ + /^(.*)\n\s+_+\n\n + (\s+Table\ of\ Contents.*) + (References\n\n\s+1\..*)/sx); + +die unless ($title); + +print "$title\n".'-' x length($title)."\n\n"; + +# Sort out local links. +# The regex might not be entirely accurate. +foreach (split /\n/, $links) { + ($index, $url) = /^\s*(\d+)\. (.+)$/; + if ($url !~ /file:\/\/.*#.*$/) { + $links[$index] = $url; + } +} + +$linkno=0; +# Split paragraphs +foreach (split /\n(?:\s+_+\n)?\n/, $body) { + my $footnote = ''; + my $rest = $_; + while ( $rest =~ /^(.*?)\[(\d+)\](.*)$/s ) { + print $1; + if (defined $links[$2]) { + $linkno++; + print "[$linkno]"; + $footnote.=" $linkno. $links[$2]\n"; + } + $rest = $3; + } + print $rest; + print "\n\n"; + if ($footnote ne '') { + print "$footnote\n"; + } +} |