You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
25 lines
580 B
25 lines
580 B
#!/usr/bin/env bash |
|
|
|
file="$1" |
|
|
|
getBlogSlug(){ |
|
echo "$1" | sed 's/^content\//\//' | sed 's/.md$/\//' | sed -E 's/[0-9]+-//' |
|
} |
|
|
|
info="$(sed -n '/---/,/---/p' "$file" | sed '/^$/,$d' | sed -n '1,/---/p' | sed '/^---$/d')" |
|
|
|
slug=$(getBlogSlug "$file") |
|
date="$(echo "$info" | yq -r .date)" |
|
title="$(echo "$info" | yq -r .title)" |
|
description="$(echo "$info" | yq -r .description)" |
|
|
|
echo "<article> |
|
<h2><a href='$slug'>$title</a></h2> |
|
<div class="article-details"> |
|
<div class="date"> |
|
$date |
|
</div> |
|
</div> |
|
<p>$description</p> |
|
<p><a href='$slug'>Read More</a></p> |
|
</article>"
|
|
|