summaryrefslogtreecommitdiffhomepage
path: root/include/mkman
diff options
context:
space:
mode:
Diffstat (limited to 'include/mkman')
-rwxr-xr-xinclude/mkman39
1 files changed, 39 insertions, 0 deletions
diff --git a/include/mkman b/include/mkman
new file mode 100755
index 0000000..30250eb
--- /dev/null
+++ b/include/mkman
@@ -0,0 +1,39 @@
+#!/usr/local/bin/andy
+
+func dl link {
+ set man `basename $link
+ set dst out/man/$man
+
+ mkdir -p $dst
+ set name `echo $man | sed -E 's/(.*)\.(.)/\U\1(\2)/'
+ {
+ echo "header { div { h1 {-$name Manual Page}"
+ cat include/nav.gsp
+ echo "}} hr{}"
+ } | gsp -d | read head
+ curl -LSs $link
+ | mandoc -Thtml -Ostyle=/man/style.css
+ | awk -v head=$head '
+ !/^<body>/
+ /^<body>/ { print $0, head }
+ ' >!$dst/index.html
+
+ printf 'li {a href="%s" {-%s — %s}}\n' (
+ $man
+ `printf $name | tr A-Z a-z
+ `htmlq -t .Nd <$dst/index.html | tr -d \n | tr -s ' '
+ )
+}
+
+cd `dirname $args[0]
+cd ..
+
+if ! test -f src/man/links {
+ set argv0 `basename $args[0]
+ echo "$argv0: Links file does not exist" >/dev/stderr
+ exit 1
+}
+
+while read -d\n -n1 _ {
+ dl $_
+} <src/man/links | sort