- layouts/docs/single.html: docs section layout with sidebar nav + TOC - layouts/paper/single.html: essay layout with byline, abstract, tags - layouts/vault/single.html: vault layout with sidebar nav + front-matter prev/next - content/papers/on-semantic-html.md: 'On Semantic HTML as Agent Interface' - content/papers/on-sessional-continuity.md: 'On Sessional Continuity' All layouts use partial nav.html for dynamic menus. Paper layout uses data-paper, data-abstract, data-byline, data-role=tag-cloud. 36 pages build clean, paper pages live at /papers/. Closes: asw#14, asw#10
119 lines
3.5 KiB
HTML
119 lines
3.5 KiB
HTML
{{ define "main" }}
|
|
{{ partial "nav.html" . }}
|
|
|
|
<main>
|
|
<div data-layout="docs">
|
|
|
|
{{/* ── Left sidebar ─────────────────────────────────────────────── */}}
|
|
|
|
<aside>
|
|
{{- $menuName := .Site.Params.vault_menu | default "vault" -}}
|
|
<nav aria-label="Vault documentation" data-nav="sidebar">
|
|
|
|
{{- $menu := index .Site.Menus $menuName -}}
|
|
{{- if $menu -}}
|
|
|
|
{{- range $menu -}}
|
|
{{- if .HasChildren -}}
|
|
<small>{{ .Name }}</small>
|
|
<ul>
|
|
{{- range .Children -}}
|
|
<li>
|
|
<a href="{{ .URL }}"
|
|
{{- if $.IsMenuCurrent $menuName . }} aria-current="page"{{ end -}}>
|
|
{{- .Name -}}
|
|
</a>
|
|
</li>
|
|
{{- end -}}
|
|
</ul>
|
|
{{- else -}}
|
|
<ul>
|
|
<li>
|
|
<a href="{{ .URL }}"
|
|
{{- if $.IsMenuCurrent $menuName . }} aria-current="page"{{ end -}}>
|
|
{{- .Name -}}
|
|
</a>
|
|
</li>
|
|
</ul>
|
|
{{- end -}}
|
|
{{- end -}}
|
|
|
|
{{- else -}}
|
|
|
|
{{/* Fallback: list direct pages of the current section */}}
|
|
{{- with .CurrentSection -}}
|
|
<small>{{ .Title }}</small>
|
|
<ul>
|
|
{{- range .RegularPages -}}
|
|
<li>
|
|
<a href="{{ .RelPermalink }}"
|
|
{{- if eq .RelPermalink $.RelPermalink }} aria-current="page"{{ end -}}>
|
|
{{- .LinkTitle -}}
|
|
</a>
|
|
</li>
|
|
{{- end -}}
|
|
</ul>
|
|
{{- end -}}
|
|
|
|
{{- end -}}
|
|
|
|
</nav>
|
|
</aside>
|
|
|
|
|
|
{{/* ── Main content ──────────────────────────────────────────────── */}}
|
|
|
|
<article>
|
|
|
|
{{- if .Description -}}
|
|
<hgroup>
|
|
<h1>{{ .Title }}</h1>
|
|
<p>{{ .Description }}</p>
|
|
</hgroup>
|
|
{{- else -}}
|
|
<h1>{{ .Title }}</h1>
|
|
{{- end }}
|
|
|
|
{{ .Content }}
|
|
|
|
{{/* ── Prev / Next — from front matter, not Hugo section order ── */}}
|
|
{{- $prevURL := index .Params "prev-url" -}}
|
|
{{- $prevTitle := index .Params "prev-title" -}}
|
|
{{- $nextURL := index .Params "next-url" -}}
|
|
{{- $nextTitle := index .Params "next-title" -}}
|
|
{{- if or $prevURL $nextURL -}}
|
|
<div data-role="prev-next">
|
|
{{- if $prevURL -}}
|
|
<a href="{{ $prevURL }}" rel="prev">
|
|
<small>← Previous</small>
|
|
<span>{{ $prevTitle }}</span>
|
|
</a>
|
|
{{- end -}}
|
|
{{- if and $nextURL $nextTitle -}}
|
|
<a href="{{ $nextURL }}" rel="next">
|
|
<small>Next →</small>
|
|
<span>{{ $nextTitle }}</span>
|
|
</a>
|
|
{{- end -}}
|
|
</div>
|
|
{{- end -}}
|
|
|
|
</article>
|
|
|
|
|
|
{{/* ── Right TOC ────────────────────────────────────────────────── */}}
|
|
|
|
{{- with .TableOfContents -}}
|
|
<aside data-toc>
|
|
<small>On this page</small>
|
|
{{ . }}
|
|
</aside>
|
|
{{- end -}}
|
|
|
|
</div>
|
|
</main>
|
|
|
|
<footer>
|
|
<small><a href="/">{{ .Site.Title }}</a> · {{ now.Format "2006" }}</small>
|
|
</footer>
|
|
{{ end }}
|