hugo-book
This commit is contained in:
@@ -0,0 +1,4 @@
|
||||
<h{{ .Level }} id="{{ .Anchor | safeURL }}">
|
||||
{{ .Text | safeHTML }}
|
||||
<a class="anchor" href="#{{ .Anchor | safeURL }}">#</a>
|
||||
</h{{ .Level }}>
|
||||
19
themes/hugo-book/layouts/_default/_markup/render-image.html
Normal file
19
themes/hugo-book/layouts/_default/_markup/render-image.html
Normal file
@@ -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 -}}
|
||||
28
themes/hugo-book/layouts/_default/_markup/render-link.html
Normal file
28
themes/hugo-book/layouts/_default/_markup/render-link.html
Normal file
@@ -0,0 +1,28 @@
|
||||
{{- 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 "//") }}
|
||||
{{- if not $isRemote }}
|
||||
{{- $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 -}}
|
||||
83
themes/hugo-book/layouts/_default/baseof.html
Normal file
83
themes/hugo-book/layouts/_default/baseof.html
Normal file
@@ -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">
|
||||
{{- .Content -}}
|
||||
</article>
|
||||
{{ end }}
|
||||
|
||||
{{ define "toc" }}
|
||||
{{ partial "docs/toc" . }}
|
||||
{{ end }}
|
||||
1
themes/hugo-book/layouts/_default/list.html
Normal file
1
themes/hugo-book/layouts/_default/list.html
Normal file
@@ -0,0 +1 @@
|
||||
{{ define "dummy" }}{{ end }}
|
||||
1
themes/hugo-book/layouts/_default/single.html
Normal file
1
themes/hugo-book/layouts/_default/single.html
Normal file
@@ -0,0 +1 @@
|
||||
{{ define "dummy" }}{{ end }}
|
||||
Reference in New Issue
Block a user