diff options
| author | Joe Mou <dev@mou.fo> | 2026-09-04 21:26:21 -0400 |
|---|---|---|
| committer | Joe Mou <dev@mou.fo> | 2026-09-04 21:49:59 -0400 |
| commit | 3fd91017f05714fb5c049d662ae00dc31203485b (patch) | |
| tree | f33466d43994da205c8081782c73639a25ca4f5b /views/tree.eta | |
| parent | ae000d743ef54368d21596d590e1acc0d90b370e (diff) | |
Split the page shell out of the repository layout
layout.eta was two things at once: the HTML shell every page needs and
the repository chrome around it. owner.eta, being the one page that is
not about a repository, could use neither and carried its own copy of
the shell, which had drifted -- its footer named no build commit and
did not link to the original page on GitHub.
The shell moves to views/layouts/base.eta, taking its title and any
deferred scripts as layout data, and the chrome to views/layouts/repo.eta,
a layout over it that adds the clone commands, nav, search box, and the
"/" shortcut that focuses it. Repository pages point at repo.eta and
render as before; owner.eta uses base.eta directly and so gains the
footer it was missing.
Templates now live in more than one directory, so scripts/build.ts walks
views/ recursively and keys each template by its path underneath it.
Names crossing a directory are written from the views root
("/layouts/base.eta"), the one form both Eta's filesystem resolver and
the precompiled resolver in worker.ts agree on; siblings stay relative.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Ba5p88cWtCq42vf3uweweL
Diffstat (limited to 'views/tree.eta')
| -rw-r--r-- | views/tree.eta | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/views/tree.eta b/views/tree.eta index 41ded06..fabf5b9 100644 --- a/views/tree.eta +++ b/views/tree.eta @@ -1,3 +1,3 @@ -<% layout("./layout.eta"); it.searchType = "code" %> +<% layout("/layouts/repo.eta"); it.searchType = "code" %> <%~ include("./_tree.eta", it) %> |
