--- ssg5 2020-11-25 08:59:18.576816576 +0100 +++ ssg5_article_list 2020-11-25 09:01:31.300155398 +0100 @@ -24,6 +24,7 @@ test -d "$1" || no_dir "$1" test -d "$2" || no_dir "$2" + src=$(readlink_f "$1") dst=$(readlink_f "$2") @@ -84,6 +85,7 @@ echo "$fs" | grep '\.html$' | render_html_files "$src" "$dst" "$title" + echo "$fs" | grep -Ev '\.md$|\.html$' | (cd "$src" && cpio -pu "$dst") fi @@ -100,6 +102,7 @@ test -n "$urls" && render_sitemap "$urls" "$base_url" "$date" > "$dst/sitemap.xml" + render_article_list "$urls" "$base_url" "$dst" "$src" print_status 'url' 'urls' "$urls" >&2 echo >&2 @@ -186,14 +189,15 @@ render_md_files_lowdown() { + # Check if the previous file has a date in it while read -r f do lowdown \ - -D html-skiphtml \ + --html-no-skiphtml \ + --html-no-escapehtml \ -d metadata \ -d autolink < "$1/$f" | - render_html_file "$3" \ - > "$2/${f%\.md}.html" + render_html_file "$3" > "$2/${f%\.md}.html" done } @@ -244,6 +248,20 @@ sed 's#^./##;s#.md$#.html#;s#/index.html$#/#' } +render_article_list() { + urls="$1" + base_url="$2" + items="" + for i in $1; do + if ! echo $i | grep -Eq "index|contact"; then + url="$i" + page_title=$(head -n 1 "$4/${i%\.html}.md" | cut -c 3-) + item="
  • ${page_title}
  • " + items=$items$item + fi + done + sed -i '' -e "s|||g" "$3/index.html" +} render_sitemap() { urls="$1"