#!/bin/sh # TODO: libmanpage.sh and manpages.sh duplicate a lot of logic set -e export LC_ALL=C SECTIONS="1 2 3 4 5 6 7 8 9" RELEASES="current nightly" if [ -z ${URL+x} ]; then URL=https://sortix.org/man/ fi if [ -z ${NIGHTLY_RELEASE_SITE+x} ]; then NIGHTLY_RELEASE_SITE=https://pub.sortix.org/sortix/release fi if [ -z ${SITE+x} ]; then SITE=../ fi if [ -z ${SUBDIR+x} ]; then SUBDIR=man fi if [ -z ${OFFICIAL+x} ]; then OFFICIAL="$SITE" fi if [ -z ${TEMPLATE+x} ]; then TEMPLATE="$SITE" fi if [ -z ${RELEASE+x} ]; then RELEASE="current" fi if [ -z ${RELEASE_STRING+x} ]; then if [ "$RELEASE" = current ]; then RELEASE_STRING="Sortix" else RELEASE_STRING="Sortix $RELEASE" fi fi if [ ! -e "ports.list" ]; then echo "$0: No ports.list in the current directory" >&2 exit 1 fi backwards() { echo "$1" | tr -cd / | sed 's,/,../,g' } tositeofficial() { BACKWARDS=$(backwards "$1") case "$OFFICIAL" in http*) echo "$OFFICIAL" ;; *) echo "$BACKWARDS$OFFICIAL" ;; esac } tositeroot() { echo "$(backwards "$1")$SITE" } frontpage() { tositeofficial "$1" | sed 's/^$/./g' } begin_html() { cat "$TEMPLATE/header.html" | sed "s|@title@|$1|g" } header() { cat << EOF
" } ep() { echo "
" } link() { cat << EOF $2$3