diff --git a/Meta/build-manpages-website.sh b/Meta/build-manpages-website.sh index 8074012472..56b4a1806c 100755 --- a/Meta/build-manpages-website.sh +++ b/Meta/build-manpages-website.sh @@ -18,7 +18,7 @@ fi for d in "${MAN_DIR}"*/; do dir_name=$(basename "$d") section="${dir_name/man}" - mkdir -p "output/${section}" + mkdir -p "output/${dir_name}" done # Convert markdown to html @@ -26,26 +26,27 @@ done # If you're here because your local results are different from the website: # Check that your pandoc version matches the pandoc-version specified in manpages.yaml. -find "${MAN_DIR}" -iname '*.md' -type f -exec sh -c '\ - relative_path="$(realpath --relative-to="${MAN_DIR}" $0)" \ - && stripped_path="${relative_path#man}" \ - && section="${stripped_path%%/*}" \ - && filename="${stripped_path#*/}" \ - && name="${filename%.md}" \ - && pandoc -f gfm -t html5 -s --lua-filter=Meta/convert-markdown-links.lua --metadata title="${name}(${section}) - SerenityOS man pages" -o "output/${section}/${name}.html" "${0}" \ -' {} \; +for md_file in "${MAN_DIR}"*/*.md; do + relative_path="$(realpath --relative-to="${MAN_DIR}" "${md_file}")" + section="${relative_path%%/*}" + section_number="${section#man}" + filename="${relative_path#*/}" + name="${filename%.md}" + pandoc -f gfm -t html5 -s --lua-filter=Meta/convert-markdown-links.lua --metadata title="${name}(${section_number}) - SerenityOS man pages" -o "output/${section}/${name}.html" "${md_file}" +done # Generate man page listings for d in output/*/; do section=$(basename "$d") - echo "Section ${section} - SerenityOS man pages" > "${d}/index.html" + section_number="${section#man}" + echo "Section ${section_number} - SerenityOS man pages" > "${d}/index.html" for f in "$d"/*; do filename=$(basename "$f") name="${filename%.html}" if [[ "$filename" == "index.html" ]]; then continue fi - echo "

${name}(${section})

" >> "${d}/index.html" + echo "

${name}(${section_number})

" >> "${d}/index.html" done echo "" >> "$d/index.html" done diff --git a/Meta/convert-markdown-links.lua b/Meta/convert-markdown-links.lua index 0f960e5656..0a1800b23d 100644 --- a/Meta/convert-markdown-links.lua +++ b/Meta/convert-markdown-links.lua @@ -1,5 +1,4 @@ function Link(el) el.target = string.gsub(el.target, "%.md", ".html") -- change .md to .html links - el.target = string.gsub(el.target, "man", "", 1) -- change man1/???.html to 1/???.html links return el end