initial commit with stuff from arise
Some checks are pending
Deploy Arise to html branch / Deploy Arise (push) Waiting to run
Some checks are pending
Deploy Arise to html branch / Deploy Arise (push) Waiting to run
This commit is contained in:
commit
0faf445b39
62 changed files with 3401 additions and 0 deletions
51
lib/functions/subshell/build_toc.sh
Normal file
51
lib/functions/subshell/build_toc.sh
Normal file
|
|
@ -0,0 +1,51 @@
|
|||
#!/bin/bash
|
||||
#############
|
||||
# DESCRIPTION
|
||||
#############
|
||||
# Creates a table of contents at the location of the specified source file.
|
||||
#
|
||||
#############
|
||||
# Usage:
|
||||
# build_toc index.md
|
||||
|
||||
build_toc() (
|
||||
|
||||
# Throw the metadata header together and add the source file to the list of files to remove in cleanup
|
||||
toc_source=$(basename $1)
|
||||
cd $(dirname $1)
|
||||
get_page_metadata $toc_source
|
||||
echo "$(realpath $toc_source)" >> $removelist
|
||||
build_header index.html
|
||||
|
||||
# Add the title and start of the table for the TOC
|
||||
cat >> index.html <<EOF
|
||||
<h1>$title</h1>
|
||||
<p id="arise-toc">
|
||||
<table id="arise-toc-table">
|
||||
<tr class="arise-toc-tr">
|
||||
<th class="arise-toc-th">Date</th>
|
||||
<th class="arise-toc-th">Title</th>
|
||||
<th class="arise-toc-th">Description</th>
|
||||
</tr>
|
||||
EOF
|
||||
clear_metadata
|
||||
|
||||
# Make each entry into an individual table row. For now we're storing these in a temp file so that we can sort if after we're done generating all the entries in the TOC.
|
||||
toc_tmp="arise-toc-$RANDOM.tmp"
|
||||
find . -mindepth 2 -maxdepth 2 -type f -name 'index.md' | while read fname; do
|
||||
get_page_metadata $fname
|
||||
echo '<tr class="arise-toc-tr"><td class="arise-toc-td">'"$published_date"'</td><td class="arise-toc-td"><a href="'"$canonical_url"'">'"$title"'</a></td><td class="arise-toc-td">'"$description"'</td></tr>' >> $toc_tmp
|
||||
clear_metadata
|
||||
done
|
||||
|
||||
# Sort all of our contents by date so that they're not in random order
|
||||
sort -r $toc_tmp >> index.html
|
||||
rm $toc_tmp
|
||||
|
||||
# Final page bits
|
||||
cat >> index.html <<EOF
|
||||
</table>
|
||||
</p>
|
||||
EOF
|
||||
build_footer index.html
|
||||
)
|
||||
Loading…
Add table
Add a link
Reference in a new issue