hey guess what i figured out some unix 101 stuff about how to redirect input and output, and used HEREDOC with ed to inline my edits and transformations to index.md to create the rss feeds for episodes and journal entries!
76 lines
2.0 KiB
Makefile
76 lines
2.0 KiB
Makefile
# show all commands
|
|
default:
|
|
just --list --unsorted
|
|
|
|
# build htmls
|
|
html:
|
|
make
|
|
|
|
# dev
|
|
dev:
|
|
ls src/*.md | entr just html
|
|
|
|
# copy assets to www
|
|
assets:
|
|
cp assets/* www/
|
|
|
|
alias all := up
|
|
# upload it
|
|
up: html rss
|
|
rsync -azP --exclude=.git www/* tilde:public_html/clericthief/
|
|
|
|
# make episodes rss
|
|
episoderss:
|
|
#!/usr/bin/env zsh
|
|
echo "<rss version=\"2.0\"><channel><title>cleric + thief</title>" > www/episodes.xml
|
|
echo "<link>http://tilde.town/~dozens/clericthief/index.html</link><description>adventures of iofi and maddox</description><atom:link rel=\"self\" type=\"application/rss+xml\" href=\"http://tilde.town/~dozens/clericthief/episodes.xml\"/>" >> www/episodes.xml
|
|
ed -s << HEREDOC src/index.md | recfmt -f templates/blogitem.rec.template | m4 >> www/episodes.xml
|
|
/BEGIN/ka
|
|
/END/kb
|
|
1,'ad
|
|
'b,d
|
|
%s/^- //
|
|
%s,<time>\(.*\)</time>,time: \1|,
|
|
%s, - \[\(.*\)\],title: \1|,
|
|
%s,(\(.*\))$,source: \1|link: \1|,
|
|
%s/html/md/
|
|
%s/|/\\
|
|
/g
|
|
,w /dev/stdout
|
|
Q
|
|
HEREDOC
|
|
echo '</channel></rss>' >> www/episodes.xml
|
|
|
|
# make journal rss
|
|
journalrss:
|
|
#!/usr/bin/env zsh
|
|
echo "<rss version=\"2.0\"><channel><title>cleric + thief</title>" > www/journal.xml
|
|
echo "<link>http://tilde.town/~dozens/clericthief/index.html</link><description>behind the scenes of cleric + thief</description><atom:link rel=\"self\" type=\"application/rss+xml\" href=\"http://tilde.town/~dozens/clericthief/journal.xml\"/>" >> www/journal.xml
|
|
ed -s !'markdown src/journal.md' << HEREDOC | recfmt -f templates/journalitem.rec.template | m4 >> www/journal.xml
|
|
/BEGIN/ka
|
|
/END/kb
|
|
1,'ad
|
|
'b,d
|
|
g/^<h2>/+s/^/note: /
|
|
v/^note/s/^/+ /
|
|
%s/+ <h2>/<h2>/
|
|
%s_^<h2><time>\(.*\)</time> - \(.*\)</h2>_\\
|
|
time: \1\\
|
|
title: \2_
|
|
g/^+ $/d
|
|
,w /dev/stdout
|
|
Q
|
|
HEREDOC
|
|
echo '</channel></rss>' >> www/journal.xml
|
|
|
|
# build all rss
|
|
rss: episoderss journalrss
|
|
|
|
# one random NPC
|
|
npc:
|
|
@recsel -P name,note -m 1 db/npc.rec
|
|
|
|
# one random plot thread
|
|
thread:
|
|
@recsel -P name,note -m 1 db/threads.rec
|