aboutsummaryrefslogtreecommitdiff
path: root/aux/workflow/public.sh
diff options
context:
space:
mode:
Diffstat (limited to 'aux/workflow/public.sh')
-rwxr-xr-xaux/workflow/public.sh38
1 files changed, 32 insertions, 6 deletions
diff --git a/aux/workflow/public.sh b/aux/workflow/public.sh
index f9f3b3d..2c8c36a 100755
--- a/aux/workflow/public.sh
+++ b/aux/workflow/public.sh
@@ -1,6 +1,9 @@
#!/bin/sh
set -eu
+TLD="$(cat aux/tld.txt)"
+. aux/lib.sh
+
PROJECT_UC=
while getopts 'n:N:m:o:l:' flag; do
case "$flag" in
@@ -39,19 +42,42 @@ assert_arg "${OUTDIR:-}" '-o OUTDIR'
assert_arg "${LANGS:-}" '-l LANGS'
PROJECT_UC="${PROJECT_UC:-$PROJECT}"
+
+alternates_for() {
+ ALTERNATES="$(mkstemp)"
+ lang="$1"
+ OUTNAME="$2"
+ for l in $LANGS; do
+ if [ "$l" = "$lang" ]; then
+ continue
+ fi
+ cat <<EOF >> "$ALTERNATES"
+<link rel="alternate" href="https://$TLD/$PROJECT/$l/$OUTNAME" hreflang="$l" />
+EOF
+ done
+ echo "$ALTERNATES"
+}
+
+
mkdir -p "$OUTDIR"
-sh aux/workflow/TODOs.sh -N "$PROJECT_UC" -n "$PROJECT" -m "$MAILING_LIST" -o "$OUTDIR"
+sh aux/workflow/TODOs.sh \
+ -N "$PROJECT_UC" -n "$PROJECT" -m "$MAILING_LIST" -o "$OUTDIR"
for lang in $LANGS; do
mkdir -p "$OUTDIR/$lang/"
- sh aux/workflow/commonmark.sh -N "$PROJECT" -t README -l "$lang" < "README.$lang.md" > "$OUTDIR/$lang/index.html"
- sh aux/workflow/commonmark.sh -N "$PROJECT" -t CHANGELOG -l "$lang" < "CHANGELOG.$lang.md" > "$OUTDIR/$lang/CHANGELOG.html"
- cp aux/workflow/favicon.svg aux/workflow/favicon.png "$OUTDIR/$lang"
+ sh aux/workflow/commonmark.sh \
+ -N "$PROJECT" -l "$lang" -t README \
+ -H "$(alternates_for "$lang" '')" \
+ < "README.$lang.md" > "$OUTDIR/$lang/index.html"
+ sh aux/workflow/commonmark.sh \
+ -N "$PROJECT" -l "$lang" -t CHANGELOG \
+ -H "$(alternates_for "$lang" 'CHANGELOG.html')" \
+ < "CHANGELOG.$lang.md" > "$OUTDIR/$lang/CHANGELOG.html"
+ ln -fs ../favicon.svg "$OUTDIR/$lang"
done
ln -fs en/index.html "$OUTDIR/index.html"
-ln -fs en/CHANGELOG.html "$OUTDIR/CHANGELOG.html"
-cp aux/workflow/favicon.svg aux/workflow/favicon.png "$OUTDIR"
+cp aux/workflow/favicon.svg "$OUTDIR"
sh aux/ci/report.sh -n "$PROJECT" -o "$OUTDIR"