From f62076bac7bc749cced7fd69e4c59ed080bda1c9 Mon Sep 17 00:00:00 2001 From: eltrac Date: Sat, 31 Oct 2026 14:35:53 +0800 Subject: refactor templating; wider container for flat pages --- builder/base.scm | 10 ++++++---- builder/components.scm | 13 +------------ builder/includes.scm | 20 ++++++++++++++++++++ 3 files changed, 27 insertions(+), 16 deletions(-) create mode 100644 builder/includes.scm (limited to 'builder') diff --git a/builder/base.scm b/builder/base.scm index 3e83ac6..17b7967 100644 --- a/builder/base.scm +++ b/builder/base.scm @@ -1,6 +1,7 @@ (define-module (builder base) #:use-module (haunt site) #:use-module (builder components) + #:use-module (builder includes) #:use-module (json) #:export (base-template contained-template @@ -66,8 +67,9 @@ (define (page-template site metadata body) (base-template site (assq-ref metadata 'title) - (container (list `(main (@ (class "page prose")) - ,body) - `(footer (@ (style "margin: 2rem 0")) - ,(link "/" "← Back to homepage")))))) + `(div (@ (class "container wider")) + (main (@ (class "page prose")) ` + ,,body) + (footer (@ (style "margin: 2rem 0")) + ,(navigation))))) diff --git a/builder/components.scm b/builder/components.scm index 35d7bd8..4606acc 100644 --- a/builder/components.scm +++ b/builder/components.scm @@ -1,18 +1,7 @@ (define-module (builder components) - #:export (header badge prose small-prose linkbox + #:export (badge prose small-prose linkbox linkline slash link elink)) -(define (header name desc image) - `(header (@ (class "header h-card")) - (div (img (@ (src ,image) (class "header-image u-photo")))) - (div (@ (class "header-text")) - (h2 (@ (class "header-title")) - (a (@ (rel "me") (class "u-url") (href "/")) - "Hi, " - (span (@ (class "p-name")) ,name) - " here 👋")) - (div (@ (class "header-desc p-note")) ,desc)))) - (define (badge name icon link) `(a (@ (class "badge") (target "_blank") (href ,link)) (img (@ (src ,icon))) diff --git a/builder/includes.scm b/builder/includes.scm new file mode 100644 index 0000000..a0d5d01 --- /dev/null +++ b/builder/includes.scm @@ -0,0 +1,20 @@ +(define-module (builder includes) + #:use-module (builder components) + #:export (header footer navigation)) + +(define (header name desc image) + `(header (@ (class "header h-card")) + (div (img (@ (src ,image) (class "header-image u-photo")))) + (div (@ (class "header-text")) + (h2 (@ (class "header-title")) + (a (@ (rel "me") (class "u-url") (href "/")) + "Hi, " + (span (@ (class "p-name")) ,name) + " here 👋")) + (div (@ (class "header-desc p-note")) ,desc)))) + +(define (navigation) + `(nav ,(linkline + (slash "/elsewhere") + (slash "/uses") + (slash "/donates")))) -- cgit v1.2.3