summaryrefslogtreecommitdiffstats
path: root/podwrapper.sh.in
diff options
context:
space:
mode:
authorRichard W.M. Jones <rjones@redhat.com>2010-12-31 11:11:02 +0000
committerRichard W.M. Jones <rjones@redhat.com>2010-12-31 11:11:02 +0000
commit5c9e8a65fe89e5e6baca8651000885d8467356ff (patch)
tree5d5feee250de53281913a341293c7699cd73820d /podwrapper.sh.in
parentd71faf98624c1fb2c760e0e9f55205beb06b7644 (diff)
downloadlibguestfs-5c9e8a65fe89e5e6baca8651000885d8467356ff.tar.gz
libguestfs-5c9e8a65fe89e5e6baca8651000885d8467356ff.tar.xz
libguestfs-5c9e8a65fe89e5e6baca8651000885d8467356ff.zip
podwrapper: Fix up the HTML output so most inter-page links work.
Diffstat (limited to 'podwrapper.sh.in')
-rwxr-xr-xpodwrapper.sh.in19
1 files changed, 19 insertions, 0 deletions
diff --git a/podwrapper.sh.in b/podwrapper.sh.in
index bd710059..c7660547 100755
--- a/podwrapper.sh.in
+++ b/podwrapper.sh.in
@@ -182,4 +182,23 @@ if [ -n "$html_output" ]; then
--css "pod.css" --htmldir "$abs_top_builddir/html" \
< $tmpdir/full.pod > "$html_output".tmp
mv "$html_output".tmp "$html_output"
+
+ # Fix up some of the mess in the HTML output, mainly to make links
+ # between man pages work properly.
+
+ # Rewrite <em>manpage(n)</em> to <a href=...>manpage(n)</a> if
+ # there is a linkable manual page.
+ sed_cmd="sed"
+ for f in $(cd "$abs_top_builddir/html" && ls -1 *.html); do
+ b=$(basename $f .html)
+ m=$(echo $b | sed 's/\(.*\)\.\([1-9]\)$/\1(\2)/')
+ sed_cmd="$sed_cmd -e 's,<em>$m</em>,<a href=$f>$m</a>,g'"
+ done
+ echo $sed_cmd
+ eval $sed_cmd < "$html_output" > "$html_output".tmp
+ mv "$html_output".tmp "$html_output"
+
+ # Fix links like L<guestfs-foo(3)>
+ sed 's,<a href="#\([a-z]\+\)">guestfs-\1(\([1-9]\)),<a href="guestfs-\1.\2.html">guestfs-\1(\2),g' < "$html_output" > "$html_output".tmp
+ mv "$html_output".tmp "$html_output"
fi