commit cd71e96046587ae0b2297a3992db4c5b71a283c7 parent 627411f75fe98eb44cf286ca6c31c11de807c6c2 Author: Hayden Hamilton <hayden@hhvn.uk> Date: Sun, 7 Jun 2026 17:14:50 +0100 www/generate/breadcrumb to generate 'breadcrumb' links for a page Diffstat:
| A | www/generate/breadcrumb | | | 44 | ++++++++++++++++++++++++++++++++++++++++++++ |
1 file changed, 44 insertions(+), 0 deletions(-)
diff --git a/www/generate/breadcrumb b/www/generate/breadcrumb @@ -0,0 +1,44 @@ +#!/bin/rc + +uri = $1 # eg, '/hbspbar/log.html' +domain = $2 # eg, hhvn.uk +subdomain = $3 # eg, src +elems = `('/' $nl){echo $uri} + +if (~ $domain ()) { + domain = `hostname +} + +fn plink { + printf '<a href="%s">%s</a>' $1 $2 +} + +fn text { + printf '%s' $1 +} + +if (! ~ $subdomain ()) { + plink '/' $subdomain + text '.' + plink 'https://'^$domain $domain +} else { + plink '/' $domain +} + +curi = '' +for (e in $elems) { + # special case for stagit + if (~ $subdomain src && ~ $e log.html) { + exit 0 + } + + # we're done + if (~ $e index.html) { + exit 0 + } + + curi = $curi ^ '/' ^ $e + + text ' > ' + plink $curi `$nl{echo $e | sed 's/\.html$//'} +}