From bf8297543935fbcf3e608d38246e5435b3afbc77 Mon Sep 17 00:00:00 2001 From: Marc Vertes Date: Mon, 23 Jun 2025 22:41:02 +0200 Subject: Improve HTML generation --- build.sh | 73 ++++++++++++++++++++++++++-------------------------------------- 1 file changed, 29 insertions(+), 44 deletions(-) (limited to 'build.sh') diff --git a/build.sh b/build.sh index 166eeba..be30116 100755 --- a/build.sh +++ b/build.sh @@ -1,36 +1,10 @@ #!/bin/sh -header=' - - -' - md2html() { # Usage: # md2html file.md > file.html # Options: -v esc=false to not escape html -awk ' + awk ' function newblock(nblock) { if (text) print "<" block ">" text "" @@ -192,44 +166,55 @@ awk ' newblock() while (nl > 0) print "" - }' "$1" + }' "$@" } genhtml() ( cd "$1" || return - . ./meta.sh + . ./meta exec 1>index.html # Header - echo "" - echo "" - echo "" - echo "$title" - [ "$description" ] && echo "" - echo "$header" - [ "$1" != . ] && echo "$blog_title
" + cat <<- EOT + + + $title + + + + EOT # Body + [ "$1" != . ] && echo "$blog_title
" # pandoc *.md - for f in *.md; do - [ -f "$f" ] && md2html "$f" - done + md2html *.md # Footer - [ "$1" != . ] && echo "
From: $author, $date" + [ "$1" = . ] && return + echo "
From: $author, $date. Feedback" ) +urlenc() { + while [ -n "$1" ]; do + set -- "${1#?}" "${1%${1#?}}" + case $2 in + ([-._~0-9A-Za-z]) printf %c "$2" ;; + (*) printf %%%02x "'$2" ;; + esac + done + echo +} + for d in *; do [ -d "$d" ] && genhtml "$d" done genhtml . -# Fix for mastodon. -sed '/mstdn/s/href=/rel="me" href=/' index.html >xx && mv xx index.html # Put a license in index footer. -echo '
' >>index.html +' >>index.html -- cgit v1.2.3