doctype html
include mixins.pug
block presets
- let hasSidenotes = false
- let hasComments = true
- let commentSubtitle = null
- let usesHtmx = false
- let linkIcons = true
- let siteName = tr("pan.baseSiteName")
- let og = true
- let licence = 'CC0'
- let snCounter = (x) => `${x}`
- let rootAttrs = {}
- let bodyAttrs = {}
- let langOverride = false
html(lang=`${langOverride && (langOverride.match(/^[a-z]+/)[0] == lang.match(/^[a-z]+/)[0]) ? langOverride : grimm.dict[lang].meta.code}`)&attributes(rootAttrs)
head
block head
meta(charset="utf-8")
meta(name="viewport", content="width=device-width, initial-scale=1.0")
block title
title #{title} | #{siteName}
link(rel="icon", href="/cosmetics/favicon.png")
link(rel="alternate" type="application/rss+xml" title="The Satyrs’ Forest 🍇 (changelog)" href="/new/feed.xml")
link(rel="alternate" type="application/rss+xml" title="The Garden 🌿 (blog)" href="/garden/feed")
if licence
link(rel="license", href="https://creativecommons.org/publicdomain/zero/1.0/legalcode")
block cosmetics
link(href="/cosmetics/style.css", rel="stylesheet")
script(src="/cosmetics/script.js")
if linkIcons
link(href="/cosmetics/links.css", rel="stylesheet")
if hasSidenotes
link(href="/cosmetics/sidenotes.css", rel="stylesheet")
script(src="/cosmetics/sidenotes.js")
if hasComments
link(href="/cosmetics/comments.css", rel="stylesheet")
if (hasComments || usesHtmx)
script(src="/cosmetics/htmx.js")
if og
meta(property="og:url", content=`https://${baseDomain}/${slug}`)
meta(property="og:type", content="website")
meta(property="og:title", content=`${title}` )
if thumbnail
if thumbnail === true
meta(property="og:image", content=`https://${baseDomain}/thumbnails/${translates}.jpg`)
meta(property="og:image:alt", content=`${thumbnailAlt}`)
else
meta(property="og:image", content=`https://${baseDomain}/${thumbnail}`)
meta(property="og:image:alt", content=`${thumbnailAlt}`)
if description
meta(property="og:description", content=`${description}`)
meta(property="og:site_name", content=`${siteName}`)
meta(property="og:locale", content=`${(langOverride && (langOverride.match(/^[a-z]+/)[0] == lang.match(/^[a-z]+/)[0]) ? langOverride : grimm.dict[lang].meta.code).replace("-","_")}`)
body&attributes(bodyAttrs)
block body
#body-container
block container
main
block main
block header
h1 #{title}
block translations
if translations.length > 1 || codexLink
include langs.pug
block content
p Text goes here, et cetera, et cetera...
block footer
include footer.pug
if hasComments
+comments(false, commentSubtitle)
if hasSidenotes
block sidenotes
aside#sidenotes