1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40
|
function makeSection(file) {
section = file;
gsub(/^docs\/libs\//, "", section); # keep subpath under docs/libs/
sub(/\.md$/, "", section);
return section;
}
function printSection() {
print "### " SECTION;
print OUT "\n";
OUT = "";
}
BEGIN {
OUT = "";
SECTION = "";
PREVSECTION = "";
print "# Faust Libraries Index\n\n--------\n";
}
END {
}
# scan function names
/^### `\(/ {
SECTION = makeSection(FILENAME);
if (SECTION != PREVSECTION) { # scan file change
print "\n## " SECTION "\n";
PREVSECTION = SECTION;
}
gsub(/### `/, "", $0);
fun = $0;
gsub(/`/, "", fun);
link = fun;
gsub(/[\[\]\|\(\)\.]/, "", link); # remove () [] | and .
gsub(" ", "-", link); # replace space with -
print "[" fun "](" SECTION ".md#" tolower(link) ") ";
}
|