diff --git a/Meta/Websites/man.serenityos.org/add-anchors.lua b/Meta/Websites/man.serenityos.org/add-anchors.lua new file mode 100644 index 0000000000..18e7f8a046 --- /dev/null +++ b/Meta/Websites/man.serenityos.org/add-anchors.lua @@ -0,0 +1,14 @@ +function Header(header) + local level = header.level + local identifier = header.identifier + local anchor = pandoc.RawInline('html', '#') + + -- Create a list of inline elements containing the anchor and header content + local new_content = pandoc.List({anchor}) + for _, elem in ipairs(header.content) do + new_content:insert(elem) + end + + return pandoc.Header(level, new_content, identifier) + end + \ No newline at end of file diff --git a/Meta/build-manpages-website.sh b/Meta/build-manpages-website.sh index f46dece75d..6d2dd95709 100755 --- a/Meta/build-manpages-website.sh +++ b/Meta/build-manpages-website.sh @@ -42,6 +42,7 @@ for md_file in $(find "${MAN_DIR}" -iname '*.md' | ${SORT}); do pandoc -f gfm -t html5 -s \ -B Meta/Websites/man.serenityos.org/banner-preamble.inc \ --lua-filter=Meta/convert-markdown-links.lua \ + --lua-filter=Meta/Websites/man.serenityos.org/add-anchors.lua \ --metadata title="${name}(${section_number}) - SerenityOS man pages" \ -o "${output_file}" \ "${md_file}" &