29 lines
587 B
Awk
29 lines
587 B
Awk
BEGIN {
|
|
filename = FILENAME
|
|
|
|
printf "# Sitemap\n\
|
|
This document is automatically generated. See:\n\
|
|
=> howto/website-generation.gmi\n"
|
|
}
|
|
|
|
FILENAME != filename {
|
|
filename = FILENAME
|
|
printf "\n"
|
|
}
|
|
|
|
/^#[^#]/ { sub("^#([ ]*)", "## "); print }
|
|
|
|
/^=>/ {
|
|
match($0, "^=>([ ]*)([^ ]*)")
|
|
|
|
link = substr($0, 3, RSTART + RLENGTH - 3)
|
|
description = substr($0, RSTART + RLENGTH, length($0))
|
|
|
|
sub("^([ ]*)", "", link)
|
|
sub("^([ ]*)", "", description)
|
|
|
|
link = relpath(ENVIRON["PWD"] "/src", resolvePath(ENVIRON["PWD"], getDirname(FILENAME) "/" link))
|
|
|
|
printf "=> %s %s\n", link, description
|
|
}
|