Meta: Strip man prefix from generated man page directories

This commit is contained in:
Idan Horowitz 2021-05-04 22:24:13 +03:00 committed by Andreas Kling
parent d29f17e882
commit 8cc6372b14
Notes: sideshowbarker 2024-07-18 18:42:47 +09:00
2 changed files with 18 additions and 10 deletions

View file

@ -21,11 +21,19 @@ jobs:
- name: Prepare output directories - name: Prepare output directories
run: | run: |
for d in $MAN_DIR*/; do for d in $MAN_DIR*/; do
mkdir -p output/$(basename "$d") dir_name=$(basename "$d")
mkdir -p output/${dir_name/man}
done done
- name: Convert markdown to html - name: Convert markdown to html
run: | run: |
find $MAN_DIR -iname '*.md' -type f -exec sh -c 'relative=$(realpath --relative-to=$MAN_DIR $0) && pandoc -f gfm -t html5 -s -o output/${relative%.md}.html ${0}' {} \; cat << EOF > link-fixup.lua
function Link(el)
el.target = string.gsub(el.target, "%.md", ".html") -- fixup .md to .html links
el.target = string.gsub(el.target, "man", "", 1) -- fixup man1/???.html to 1/???.html links
return el
end
EOF
find $MAN_DIR -iname '*.md' -type f -exec sh -c 'relative_path=$(realpath --relative-to=$MAN_DIR $0) && stripped_path=${relative_path#man} && pandoc -f gfm -t html5 -s --lua-filter=link-fixup.lua -o output/${stripped_path%.md}.html ${0}' {} \;
- name: Generate man page listings - name: Generate man page listings
run: | run: |
for d in output/*/; do for d in output/*/; do

View file

@ -6,13 +6,13 @@
<body> <body>
<img src="banner.png" alt="SerenityOS"> <img src="banner.png" alt="SerenityOS">
<h1>SerenityOS man pages</h1> <h1>SerenityOS man pages</h1>
<a href="man1/"><p>Man 1</p></a> <a href="1/"><p>Man 1</p></a>
<a href="man2/"><p>Man 2</p></a> <a href="2/"><p>Man 2</p></a>
<a href="man3/"><p>Man 3</p></a> <a href="3/"><p>Man 3</p></a>
<a href="man4/"><p>Man 4</p></a> <a href="4/"><p>Man 4</p></a>
<a href="man5/"><p>Man 5</p></a> <a href="5/"><p>Man 5</p></a>
<a href="man6/"><p>Man 6</p></a> <a href="6/"><p>Man 6</p></a>
<a href="man7/"><p>Man 7</p></a> <a href="7/"><p>Man 7</p></a>
<a href="man8/"><p>Man 8</p></a> <a href="8/"><p>Man 8</p></a>
</body> </body>
</html> </html>