diff options
Diffstat (limited to 'layouts')
| -rw-r--r-- | layouts/docs/baseof.html | 4 | ||||
| -rw-r--r-- | layouts/partials/docs/html-head.html | 1 | ||||
| -rw-r--r-- | layouts/partials/docs/nav-filetree.html | 55 | ||||
| -rw-r--r-- | layouts/partials/docs/shared.html | 11 | 
4 files changed, 39 insertions, 32 deletions
| diff --git a/layouts/docs/baseof.html b/layouts/docs/baseof.html index a71bd59..4119888 100644 --- a/layouts/docs/baseof.html +++ b/layouts/docs/baseof.html @@ -1,9 +1,9 @@  <!DOCTYPE html> +<!-- {{ partial "docs/shared" }} -->  <html>  <head>    {{ partial "docs/html-head" . }}    {{ partial "docs/inject/head" . }} -  <title>{{ block "title" . }} {{- .Site.Title -}} {{ end }}</title>  </head>  <body> @@ -27,7 +27,7 @@        <div class="pure-g">          <div class="pure-u book-page markdown"> -          {{ block "main" . }} {{- .Content -}} {{ end }} +          {{- .Content -}}          </div>          {{ $showToC := default (default true .Site.Params.BookShowToC) .Params.bookshowtoc }}          {{ if and ($showToC) (.Page.TableOfContents) }} diff --git a/layouts/partials/docs/html-head.html b/layouts/partials/docs/html-head.html index ecf8a4c..e77c218 100644 --- a/layouts/partials/docs/html-head.html +++ b/layouts/partials/docs/html-head.html @@ -1,5 +1,6 @@  <meta charset="UTF-8">  <meta name="viewport" content="width=device-width, initial-scale=1.0"> +<title>{{- template "title" .  }} | {{ .Site.Title -}}</title>  <link href="https://fonts.googleapis.com/css?family=Roboto+Mono|Roboto:300,400,700" rel="stylesheet">  <link href="/css/pure-min.css" rel="stylesheet"> diff --git a/layouts/partials/docs/nav-filetree.html b/layouts/partials/docs/nav-filetree.html index c5ecfc8..7c80ae2 100644 --- a/layouts/partials/docs/nav-filetree.html +++ b/layouts/partials/docs/nav-filetree.html @@ -1,15 +1,5 @@ -{{ $bookSection := default "docs" .Site.Params.BookSection  }} -{{ if eq $bookSection "*" }} -  {{ .Scratch.Set "BookSections" .Site.Sections }} -{{ else }} -  {{ $bookSections := where .Site.Sections "Section" $bookSection }} -  {{ .Scratch.Set "BookSections" $bookSections }} - -  {{ if eq (len $bookSections) 1 }} -    {{ $singleSection := index $bookSections 0 }} -    {{ .Scratch.Set "BookSections" $singleSection.Sections }} -  {{ end }} -{{ end }} +<!-- Put configured sections list to .Scratch --> +{{ template "book-get-root-section" . }}  <ul>    {{ range .Scratch.Get "BookSections" }} @@ -20,7 +10,15 @@  <!-- Single section of menu (recursive) -->  {{ define "book-section" }}    <li {{ if .Section.Params.booktopsection }}class="book-nav-section"{{ end }}> -    {{ template "book-heading" .Section }} + +    {{ with .Section}} +      {{- if .Content -}} +        <a href="{{ .RelPermalink }}">{{- template "title" . -}}</a> +      {{- else -}} +        {{- template "title" . -}} +      {{- end -}} +    {{ end }} +      <ul>        {{ range .Section.Sections }}          {{ template "book-section" (dict "Section" . "CurrentPage" $.CurrentPage) }} @@ -28,7 +26,7 @@        {{ range .Section.Pages }}          <li>            <a href="{{ .RelPermalink }}" class="{{ if eq $.CurrentPage .Permalink }}active{{ end }}"> -            {{ default .Title (.File | humanize | title) }} +            {{- template "title" . -}}            </a>          </li>        {{ end }} @@ -36,21 +34,18 @@    </li>  {{ end }} -<!-- Menu Heading --> -{{ define "book-heading" }} - -  {{ $sections := split (trim .Dir "/") "/" }} -  {{ $title := index ($sections | last 1) 0 | humanize | title }} -  {{ $title := default .Title $title }} - -  {{ if .Content }} -  <a href="{{ .RelPermalink }}"> -    {{- $title -}}  -  </a> +{{ define "book-get-root-section" }} +  <!-- Complex logic to guess page title without .Title specified --> +  {{ $bookSection := default "docs" .Site.Params.BookSection  }} +  {{ if eq $bookSection "*" }} +    {{ .Scratch.Set "BookSections" .Site.Sections }}    {{ else }} -  <a> -    {{- $title -}} -  </a> -  {{ end }} +    {{ $bookSections := where .Site.Sections "Section" $bookSection }} +    {{ .Scratch.Set "BookSections" $bookSections }} -{{ end }} +    {{ if eq (len $bookSections) 1 }} +      {{ $singleSection := index $bookSections 0 }} +      {{ .Scratch.Set "BookSections" $singleSection.Sections }} +    {{ end }} +  {{ end }} +{{ end }}
\ No newline at end of file diff --git a/layouts/partials/docs/shared.html b/layouts/partials/docs/shared.html new file mode 100644 index 0000000..f7ba182 --- /dev/null +++ b/layouts/partials/docs/shared.html @@ -0,0 +1,11 @@ +<!-- These templates contains some more complex logic and shared between partials--> +{{ define "title" }} +  {{- if .Pages -}} +    {{ $sections := split (trim .Dir "/") "/" }} +    {{ $title := index ($sections | last 1) 0 | humanize | title }} +    {{- default .Title $title -}} +  {{- else -}} +    {{ $title :=  .File | humanize | title }} +    {{- default .Title $title -}} +  {{- end -}} +{{ end }} | 
