summaryrefslogtreecommitdiff
path: root/Meta
diff options
context:
space:
mode:
authorBen Wiederhake <BenWiederhake.GitHub@gmx.de>2021-10-20 21:46:39 +0200
committerIdan Horowitz <idan.horowitz@gmail.com>2021-10-22 19:49:28 +0300
commit2e613db999a00b50ac8ab533c8820df27bc8a8da (patch)
tree9fa8ecebaddb3efd15eb76307185bfb138bec8d8 /Meta
parent7e52b6fa2464b41c5e67c57b023a9ad063eb61ca (diff)
downloadserenity-2e613db999a00b50ac8ab533c8820df27bc8a8da.zip
man.serenityos.org: Fix links to man(1), avoid unnecessary shells
This fixes the current bug at the end of less(1), which links to the wrong file ".html" instead of "man.html".
Diffstat (limited to 'Meta')
-rwxr-xr-xMeta/build-manpages-website.sh23
-rw-r--r--Meta/convert-markdown-links.lua1
2 files changed, 12 insertions, 12 deletions
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 "<!DOCTYPE html><html><head><title>Section ${section} - SerenityOS man pages</title></head><body>" > "${d}/index.html"
+ section_number="${section#man}"
+ echo "<!DOCTYPE html><html><head><title>Section ${section_number} - SerenityOS man pages</title></head><body>" > "${d}/index.html"
for f in "$d"/*; do
filename=$(basename "$f")
name="${filename%.html}"
if [[ "$filename" == "index.html" ]]; then
continue
fi
- echo "<a href=\"${filename}\"><p>${name}(${section})</p></a>" >> "${d}/index.html"
+ echo "<a href=\"${filename}\"><p>${name}(${section_number})</p></a>" >> "${d}/index.html"
done
echo "</body></html>" >> "$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