summaryrefslogtreecommitdiff
path: root/themes/hugo-book/layouts/_default
diff options
context:
space:
mode:
authoraethrvmn <me@aethrvmn.gr>2025-08-30 13:17:32 +0000
committeraethrvmn <me@aethrvmn.gr>2025-08-30 13:17:32 +0000
commit1147a663e70aadb2578cbe601bc723d7cd939c5a (patch)
treeb5100d2031328be3cfd3e9ae62730436bd573e0f /themes/hugo-book/layouts/_default
parentadded .gitignore (diff)
added non-content
Diffstat (limited to 'themes/hugo-book/layouts/_default')
-rw-r--r--themes/hugo-book/layouts/_default/_markup/render-heading.html4
-rw-r--r--themes/hugo-book/layouts/_default/_markup/render-image.html19
-rw-r--r--themes/hugo-book/layouts/_default/_markup/render-link.html29
-rw-r--r--themes/hugo-book/layouts/_default/baseof.html83
-rw-r--r--themes/hugo-book/layouts/_default/list.html1
-rw-r--r--themes/hugo-book/layouts/_default/single.html1
6 files changed, 137 insertions, 0 deletions
diff --git a/themes/hugo-book/layouts/_default/_markup/render-heading.html b/themes/hugo-book/layouts/_default/_markup/render-heading.html
new file mode 100644
index 0000000..5439d20
--- /dev/null
+++ b/themes/hugo-book/layouts/_default/_markup/render-heading.html
@@ -0,0 +1,4 @@
+<h{{ .Level }} id="{{ .Anchor | safeURL }}">
+ {{ .Text | safeHTML }}
+ <a class="anchor" href="#{{ .Anchor | safeURL }}">#</a>
+</h{{ .Level }}>
diff --git a/themes/hugo-book/layouts/_default/_markup/render-image.html b/themes/hugo-book/layouts/_default/_markup/render-image.html
new file mode 100644
index 0000000..148cbaf
--- /dev/null
+++ b/themes/hugo-book/layouts/_default/_markup/render-image.html
@@ -0,0 +1,19 @@
+{{- if .Page.Site.Params.BookPortableLinks -}}
+ {{- template "portable-image" . -}}
+{{- else -}}
+ <img src="{{ .Destination | safeURL }}" alt="{{ .Text }}" {{ with .Title }}title="{{ . }}"{{ end }}/>
+{{- end -}}
+
+{{- define "portable-image" -}}
+ {{- $isRemote := or (in .Destination "://") (strings.HasPrefix .Destination "//") }}
+ {{- if not $isRemote }}
+ {{- $path := print .Page.File.Dir .Destination }}
+ {{- if strings.HasPrefix .Destination "/" }}
+ {{- $path = print "/static" .Destination }}
+ {{- end }}
+ {{- if not (fileExists $path) }}
+ {{- warnf "Image '%s' not found in '%s'" .Destination .Page.File }}
+ {{- end }}
+ {{- end }}
+ <img src="{{ .Destination | safeURL }}" alt="{{ .Text }}" {{ with .Title }}title="{{ . }}"{{ end }}/>
+{{- end -}}
diff --git a/themes/hugo-book/layouts/_default/_markup/render-link.html b/themes/hugo-book/layouts/_default/_markup/render-link.html
new file mode 100644
index 0000000..288d81c
--- /dev/null
+++ b/themes/hugo-book/layouts/_default/_markup/render-link.html
@@ -0,0 +1,29 @@
+{{- if .Page.Site.Params.BookPortableLinks -}}
+ {{- template "portable-link" . -}}
+{{- else -}}
+ <a href="{{ .Destination | safeURL }}"{{ with .Title}} title="{{ . }}"{{ end }}>{{ .Text | safeHTML }}</a>
+{{- end -}}
+
+{{- define "portable-link" -}}
+ {{- $destination := .Destination }}
+ {{- $isRemote := or (in .Destination ":") (strings.HasPrefix .Destination "//") }}
+ {{- $isFragment := strings.HasPrefix .Destination "#" }}
+ {{- if and (not $isRemote) (not $isFragment) }}
+ {{- $url := urls.Parse .Destination }}
+ {{- $path := strings.TrimSuffix "/_index.md" $url.Path }}
+ {{- $path = strings.TrimSuffix "/_index" $path }}
+ {{- $path = strings.TrimSuffix ".md" $path }}
+ {{- $page := .Page.GetPage $path }}
+ {{- if $page }}
+ {{- $destination = $page.RelPermalink }}
+ {{- if $url.Fragment }}
+ {{- $destination = print $destination "#" $url.Fragment }}
+ {{- end }}
+ {{- else if fileExists (print .Page.File.Dir .Destination) }}
+ <!-- Nothing -->
+ {{- else -}}
+ {{- warnf "Page '%s' not found in '%s'" .Destination .Page.File }}
+ {{- end }}
+ {{- end }}
+ <a href="{{ $destination | safeURL }}"{{ with .Title}} title="{{ . }}"{{ end }}>{{ .Text | safeHTML }}</a>
+{{- end -}}
diff --git a/themes/hugo-book/layouts/_default/baseof.html b/themes/hugo-book/layouts/_default/baseof.html
new file mode 100644
index 0000000..a6c4c07
--- /dev/null
+++ b/themes/hugo-book/layouts/_default/baseof.html
@@ -0,0 +1,83 @@
+<!DOCTYPE html>
+<html lang="{{ default .Site.Language.Lang .Site.LanguageCode }}" dir="{{ default "ltr" .Site.Language.LanguageDirection }}">
+<head>
+ {{ partial "docs/html-head" . }}
+ {{ partial "docs/inject/head" . }}
+</head>
+<body dir="{{ default "ltr" .Site.Language.LanguageDirection }}">
+ <input type="checkbox" class="hidden toggle" id="menu-control" />
+ <input type="checkbox" class="hidden toggle" id="toc-control" />
+ <main class="container flex">
+ <aside class="book-menu">
+ <div class="book-menu-content">
+ {{ template "menu" . }} <!-- Left menu Content -->
+ </div>
+ </aside>
+
+ <div class="book-page">
+ <header class="book-header">
+ {{ template "header" . }} <!-- Mobile layout header -->
+ </header>
+
+ {{ partial "docs/inject/content-before" . }}
+ {{ template "main" . }} <!-- Page Content -->
+ {{ partial "docs/inject/content-after" . }}
+
+ <footer class="book-footer">
+ {{ template "footer" . }} <!-- Footer under page content -->
+ {{ partial "docs/inject/footer" . }}
+ </footer>
+
+ {{ template "comments" . }} <!-- Comments block -->
+
+ <label for="menu-control" class="hidden book-menu-overlay"></label>
+ </div>
+
+ {{ if default true (default .Site.Params.BookToC .Params.BookToC) }}
+ <aside class="book-toc">
+ <div class="book-toc-content">
+ {{ template "toc" . }} <!-- Table of Contents -->
+ </div>
+ </aside>
+ {{ end }}
+ </main>
+
+ {{ partial "docs/inject/body" . }}
+</body>
+</html>
+
+{{ define "menu" }}
+ {{ partial "docs/menu" . }}
+{{ end }}
+
+{{ define "header" }}
+ {{ partial "docs/header" . }}
+
+ {{ if default true (default .Site.Params.BookToC .Params.BookToC) }}
+ <aside class="hidden clearfix">
+ {{ template "toc" . }}
+ </aside>
+ {{ end }}
+{{ end }}
+
+{{ define "footer" }}
+ {{ partial "docs/footer" . }}
+{{ end }}
+
+{{ define "comments" }}
+ {{ if and .Content (default true (default .Site.Params.BookComments .Params.BookComments)) }}
+ <div class="book-comments">
+ {{- partial "docs/comments" . -}}
+ </div>
+ {{ end }}
+{{ end }}
+
+{{ define "main" }}
+ <article class="markdown book-article">
+ {{- .Content -}}
+ </article>
+{{ end }}
+
+{{ define "toc" }}
+ {{ partial "docs/toc" . }}
+{{ end }}
diff --git a/themes/hugo-book/layouts/_default/list.html b/themes/hugo-book/layouts/_default/list.html
new file mode 100644
index 0000000..0dc8b68
--- /dev/null
+++ b/themes/hugo-book/layouts/_default/list.html
@@ -0,0 +1 @@
+{{ define "dummy" }}{{ end }}
diff --git a/themes/hugo-book/layouts/_default/single.html b/themes/hugo-book/layouts/_default/single.html
new file mode 100644
index 0000000..0dc8b68
--- /dev/null
+++ b/themes/hugo-book/layouts/_default/single.html
@@ -0,0 +1 @@
+{{ define "dummy" }}{{ end }}
Directive (EU) 2019/790, Article 4(3); all rights regarding Text and Data Mining (TDM) are reserved.