try theme hugo-bearcub - https://github.com/clente/hugo-bearcub
This commit is contained in:
parent
f4a8c002cc
commit
50448f8e02
119 changed files with 1735 additions and 9533 deletions
6
themes/hugo-bearcub/layouts/404.html
Normal file
6
themes/hugo-bearcub/layouts/404.html
Normal file
|
@ -0,0 +1,6 @@
|
|||
{{ define "title" }}404{{ end }}
|
||||
|
||||
{{ define "main" }}
|
||||
<h1>404</h1>
|
||||
<h2>ʕノ•ᴥ•ʔノ ︵ ┻━┻</h2>
|
||||
{{ end }}
|
|
@ -0,0 +1,6 @@
|
|||
<!-- https://github.com/jmooring/hugo-testing/blob/hugo-forum-topic-40998/layouts/_default/_markup/render-codeblock-katex.html -->
|
||||
{{ .Page.Store.Set "hasCodeBlock" true }}
|
||||
|
||||
<!-- https://www.veriphor.com/articles/code-block-render-hooks/ -->
|
||||
{{ $result := transform.HighlightCodeBlock . }}
|
||||
{{ $result.Wrapped }}
|
54
themes/hugo-bearcub/layouts/_default/baseof.html
Normal file
54
themes/hugo-bearcub/layouts/_default/baseof.html
Normal file
|
@ -0,0 +1,54 @@
|
|||
<!DOCTYPE html>
|
||||
<html lang="{{ with .Site.LanguageCode }}{{ . }}{{ else }}en-US{{ end }}">
|
||||
|
||||
<head>
|
||||
<meta http-equiv="X-Clacks-Overhead" content="GNU Terry Pratchett" />
|
||||
<meta charset="utf-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
||||
{{- partial "favicon.html" . -}}
|
||||
<title>{{- block "title" . }}{{ with .Title }}{{ . }} | {{ end }}{{ .Site.Title }}{{- end }}</title>
|
||||
|
||||
{{- partial "seo_tags.html" . -}}
|
||||
<meta name="referrer" content="no-referrer-when-downgrade" />
|
||||
|
||||
{{ $style := print (default "original" .Site.Params.themeStyle) ".css" | resources.Get | minify }}
|
||||
<link href="{{ $style.RelPermalink }}" rel="stylesheet">
|
||||
|
||||
{{ if (.Page.Store.Get "hasCodeBlock") }}
|
||||
{{ $syntax := resources.Get "syntax.css" | minify }}
|
||||
<link href="{{ $syntax.RelPermalink }}" rel="stylesheet">
|
||||
{{ end }}
|
||||
|
||||
{{ with .Params.style }}
|
||||
{{ $extra := resources.Get . | minify }}
|
||||
<link href="{{ $extra.RelPermalink }}" rel="stylesheet">
|
||||
{{ end }}
|
||||
|
||||
{{ with .OutputFormats.Get "rss" -}}
|
||||
{{ printf `<link rel="%s" type="%s" href="%s" title="%s" />` .Rel .MediaType.Type .Permalink $.Site.Title | safeHTML }}
|
||||
{{ end -}}
|
||||
|
||||
<!-- A partial to be overwritten by the user.
|
||||
Simply place a custom_head.html into
|
||||
your local /layouts/partials-directory -->
|
||||
{{- partial "custom_head.html" . -}}
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<header>
|
||||
{{- partial "header.html" . -}}
|
||||
</header>
|
||||
<main id="main-content">
|
||||
{{- block "main" . }}{{- end }}
|
||||
</main>
|
||||
<footer>
|
||||
{{- partial "footer.html" . -}}
|
||||
</footer>
|
||||
|
||||
<!-- A partial to be overwritten by the user.
|
||||
Simply place a custom_body.html into
|
||||
your local /layouts/partials-directory -->
|
||||
{{- partial "custom_body.html" . -}}
|
||||
</body>
|
||||
|
||||
</html>
|
36
themes/hugo-bearcub/layouts/_default/list.html
Normal file
36
themes/hugo-bearcub/layouts/_default/list.html
Normal file
|
@ -0,0 +1,36 @@
|
|||
{{ define "main" }}
|
||||
<content>
|
||||
{{ if .Data.Singular }}
|
||||
<h3 class="blog-filter">{{ i18n "filtering-for" }} "{{ .Title }}"</h3>
|
||||
{{ end }}
|
||||
<ul class="blog-posts">
|
||||
{{ range .Pages }}
|
||||
<li>
|
||||
<span>
|
||||
<i>
|
||||
<time datetime='{{ .Date.Format "2006-01-02" }}' pubdate>
|
||||
{{ .Date.Format (default "2006-01-02" .Site.Params.dateFormat) }}
|
||||
</time>
|
||||
</i>
|
||||
</span>
|
||||
{{ if .Params.link }}
|
||||
<a href="{{ .Params.link }}" target="_blank">{{ .Title }} ↪</a>
|
||||
{{ else }}
|
||||
<a href="{{ .RelPermalink }}">{{ .Title }}</a>
|
||||
{{ end }}
|
||||
</li>
|
||||
{{ else }}
|
||||
<li>
|
||||
{{ i18n "no-posts" }}
|
||||
</li>
|
||||
{{ end }}
|
||||
</ul>
|
||||
{{ if not .Data.Singular }}
|
||||
<div>
|
||||
{{ range .Site.Taxonomies.tags }}
|
||||
<a class="blog-tags" href="{{ .Page.RelPermalink }}">#{{ lower .Page.Title }}</a>
|
||||
{{ end }}
|
||||
</div>
|
||||
{{ end }}
|
||||
</content>
|
||||
{{ end }}
|
72
themes/hugo-bearcub/layouts/_default/rss.xml
Normal file
72
themes/hugo-bearcub/layouts/_default/rss.xml
Normal file
|
@ -0,0 +1,72 @@
|
|||
{{- /* Deprecate site.Author.email in favor of site.Params.author.email */}}
|
||||
{{- $authorEmail := "" }}
|
||||
{{- with site.Params.author }}
|
||||
{{- if reflect.IsMap . }}
|
||||
{{- with .email }}
|
||||
{{- $authorEmail = . }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
{{- else }}
|
||||
{{- with site.Author.email }}
|
||||
{{- $authorEmail = . }}
|
||||
{{- warnf "The author key in site configuration is deprecated. Use params.author.email instead." }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
|
||||
{{- /* Deprecate site.Author.name in favor of site.Params.author.name */}}
|
||||
{{- $authorName := "" }}
|
||||
{{- with site.Params.author }}
|
||||
{{- if reflect.IsMap . }}
|
||||
{{- with .name }}
|
||||
{{- $authorName = . }}
|
||||
{{- end }}
|
||||
{{- else }}
|
||||
{{- $authorName = . }}
|
||||
{{- end }}
|
||||
{{- else }}
|
||||
{{- with site.Author.name }}
|
||||
{{- $authorName = . }}
|
||||
{{- warnf "The author key in site configuration is deprecated. Use params.author.name instead." }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
|
||||
{{- $pctx := . }}
|
||||
{{- if .IsHome }}{{ $pctx = .Site }}{{ end }}
|
||||
{{- $pages := slice }}
|
||||
{{- if or $.IsHome $.IsSection }}
|
||||
{{- $pages = $pctx.RegularPages }}
|
||||
{{- else }}
|
||||
{{- $pages = $pctx.Pages }}
|
||||
{{- end }}
|
||||
{{- $limit := .Site.Config.Services.RSS.Limit }}
|
||||
{{- if ge $limit 1 }}
|
||||
{{- $pages = $pages | first $limit }}
|
||||
{{- end }}
|
||||
{{- printf "<?xml version=\"1.0\" encoding=\"utf-8\" standalone=\"yes\"?>" | safeHTML }}
|
||||
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/">
|
||||
<channel>
|
||||
<title>{{ if .IsHome }}{{ .Site.Title }}{{ else }}{{ with .Title }}{{ . }} on {{ end }}{{ .Site.Title }}{{ end }}</title>
|
||||
<link>{{ .Permalink }}</link>
|
||||
<description>Recent content {{ if not .IsHome }}{{ with .Title }}in {{ . }} {{ end }}{{ end }}on {{ .Site.Title }}</description>
|
||||
<generator>Hugo -- gohugo.io</generator>
|
||||
<language>{{ site.Language.LanguageCode }}</language>{{ with $authorEmail }}
|
||||
<managingEditor>{{.}}{{ with $authorName }} ({{ . }}){{ end }}</managingEditor>{{ end }}{{ with $authorEmail }}
|
||||
<webMaster>{{ . }}{{ with $authorName }} ({{ . }}){{ end }}</webMaster>{{ end }}{{ with .Site.Copyright }}
|
||||
<copyright>{{ . }}</copyright>{{ end }}{{ if not .Date.IsZero }}
|
||||
<lastBuildDate>{{ .Date.Format "Mon, 02 Jan 2006 15:04:05 -0700" | safeHTML }}</lastBuildDate>{{ end }}
|
||||
{{- with .OutputFormats.Get "RSS" }}
|
||||
{{ printf "<atom:link href=%q rel=\"self\" type=%q />" .Permalink .MediaType | safeHTML }}
|
||||
{{- end }}
|
||||
{{- range $pages }}
|
||||
<item>
|
||||
<title>{{ .Title }}</title>
|
||||
<link>{{ .Permalink }}</link>
|
||||
<pubDate>{{ .Date.Format "Mon, 02 Jan 2006 15:04:05 -0700" | safeHTML }}</pubDate>
|
||||
{{- with $authorEmail }}<author>{{ . }}{{ with $authorName }} ({{ . }}){{ end }}</author>{{ end }}
|
||||
<guid>{{ .Permalink }}</guid>
|
||||
<description>{{ .Summary | transform.XMLEscape | safeHTML }}</description>
|
||||
<content:encoded>{{ `<![CDATA[` | safeHTML }}{{ .Content | safeHTML }}{{ `]]>` | safeHTML }}</content:encoded>
|
||||
</item>
|
||||
{{- end }}
|
||||
</channel>
|
||||
</rss>
|
28
themes/hugo-bearcub/layouts/_default/single.html
Normal file
28
themes/hugo-bearcub/layouts/_default/single.html
Normal file
|
@ -0,0 +1,28 @@
|
|||
{{ define "main" }}
|
||||
{{ if not .Params.menu }}
|
||||
<h1>{{ .Title }}</h1>
|
||||
<p class="byline">
|
||||
<time datetime='{{ .Date.Format "2006-01-02" }}' pubdate>
|
||||
{{ .Date.Format (default "2006-01-02" .Site.Params.dateFormat) }}
|
||||
</time>
|
||||
{{ with .Params.author }}· {{.}}{{ end }}
|
||||
</p>
|
||||
{{ end }}
|
||||
<content>
|
||||
{{ .Content }}
|
||||
</content>
|
||||
<p>
|
||||
{{ range (.GetTerms "tags") }}
|
||||
<a class="blog-tags" href="{{ .RelPermalink }}">#{{ lower .LinkTitle }}</a>
|
||||
{{ end }}
|
||||
</p>
|
||||
{{ if not .Params.hideReply }}
|
||||
{{ with .Site.Params.author.email }}
|
||||
<p>
|
||||
<a href='mailto:{{ . }}?subject={{ i18n "email-subject" }}"{{ default $.Site.Title $.Page.Title }}"'>
|
||||
{{ i18n "email-reply" }} ↪
|
||||
</a>
|
||||
</p>
|
||||
{{ end }}
|
||||
{{ end }}
|
||||
{{ end }}
|
3
themes/hugo-bearcub/layouts/index.html
Normal file
3
themes/hugo-bearcub/layouts/index.html
Normal file
|
@ -0,0 +1,3 @@
|
|||
{{ define "main" }}
|
||||
{{ .Content }}
|
||||
{{ end }}
|
3
themes/hugo-bearcub/layouts/partials/custom_body.html
Normal file
3
themes/hugo-bearcub/layouts/partials/custom_body.html
Normal file
|
@ -0,0 +1,3 @@
|
|||
<!-- A partial to be overwritten by the user.
|
||||
Simply place a custom_body.html into
|
||||
your local /layouts/partials-directory -->
|
3
themes/hugo-bearcub/layouts/partials/custom_head.html
Normal file
3
themes/hugo-bearcub/layouts/partials/custom_head.html
Normal file
|
@ -0,0 +1,3 @@
|
|||
<!-- A partial to be overwritten by the user.
|
||||
Simply place a custom_head.html into
|
||||
your local /layouts/partials-directory -->
|
2
themes/hugo-bearcub/layouts/partials/favicon.html
Normal file
2
themes/hugo-bearcub/layouts/partials/favicon.html
Normal file
|
@ -0,0 +1,2 @@
|
|||
{{ with .Site.Params.favicon }}
|
||||
<link rel="shortcut icon" href="{{ absURL . }}" />{{ end }}
|
3
themes/hugo-bearcub/layouts/partials/footer.html
Normal file
3
themes/hugo-bearcub/layouts/partials/footer.html
Normal file
|
@ -0,0 +1,3 @@
|
|||
<small>
|
||||
{{ .Site.Copyright }} | {{ markdownify .Site.Params.madeWith }}
|
||||
</small>
|
4
themes/hugo-bearcub/layouts/partials/header.html
Normal file
4
themes/hugo-bearcub/layouts/partials/header.html
Normal file
|
@ -0,0 +1,4 @@
|
|||
<a class="skip-link" href="#main-content">{{ i18n "skip-link" }}</a>
|
||||
|
||||
<a href="{{ relURL .Site.Home.RelPermalink }}" class="title"><h1>{{ .Site.Title }}</h1></a>
|
||||
<nav>{{- partial "nav.html" . -}}</nav>
|
22
themes/hugo-bearcub/layouts/partials/nav.html
Normal file
22
themes/hugo-bearcub/layouts/partials/nav.html
Normal file
|
@ -0,0 +1,22 @@
|
|||
{{ range .Site.Menus.main.ByWeight }}
|
||||
<a href="{{ .URL }}">{{ .Name }}</a>
|
||||
{{ end }}
|
||||
<a href='{{ absURL "index.xml" }}'>RSS</a>
|
||||
|
||||
<!-- Convert this page's translations into a dict -->
|
||||
{{ $translations := dict }}
|
||||
{{ range .Translations }}
|
||||
{{ $translations = merge $translations (dict .Language.Lang .) }}
|
||||
{{ end }}
|
||||
|
||||
<!-- Create a link to every translation -->
|
||||
{{ range where .Site.Languages "Lang" "!=" .Page.Lang }}
|
||||
{{ with (index $translations .Lang) }}
|
||||
<a href="{{ .RelPermalink }}">{{ .Language.LanguageName }}</a>
|
||||
{{ else }}
|
||||
<!-- The complicated setup was necessary to make a grayed out link -->
|
||||
{{ if not .Params.hideUntranslated }}
|
||||
<a class="disabled" role="link" aria-disabled="true">{{ .LanguageName }}</a>
|
||||
{{ end }}
|
||||
{{ end }}
|
||||
{{ end }}
|
22
themes/hugo-bearcub/layouts/partials/seo_tags.html
Normal file
22
themes/hugo-bearcub/layouts/partials/seo_tags.html
Normal file
|
@ -0,0 +1,22 @@
|
|||
<!-- Primary Meta Tags -->
|
||||
<meta name="title" content="{{ with .Title }}{{ . }}{{ else }}{{ .Site.Title }}{{ end }}" />
|
||||
<meta name="description" content="{{ with .Description }}{{ . }}{{ else }}{{if .IsPage}}{{ .Summary }}{{ else }}{{ with .Site.Params.description }}{{ . }}{{ end }}{{ end }}{{ end }}" />
|
||||
<meta name="author" content="{{ with .Params.author }}{{ . }}{{ end }}" />
|
||||
<meta name="keywords" content="{{ if .IsPage}}{{ range $index, $tag := .Params.tags }}{{ $tag }},{{ end }}{{ else }}{{ range $plural, $terms := .Site.Taxonomies }}{{ range $term, $val := $terms }}{{ printf "%s," $term }}{{ end }}{{ end }}{{ end }}" />
|
||||
|
||||
<!-- Only generate social card if: -->
|
||||
<!-- - generateSocialCard = true -->
|
||||
<!-- - there aren't images set in frontmatter -->
|
||||
<!-- - page is of .Kind "page" -->
|
||||
{{ if and (and (default false .Site.Params.generateSocialCard) (not (isset .Params "images"))) (eq .Kind "page") }}
|
||||
{{ partial "social_card.html" . }}
|
||||
{{ else }}
|
||||
<!-- Open Graph / Facebook -->
|
||||
{{ template "_internal/opengraph.html" . }}
|
||||
|
||||
<!-- Twitter -->
|
||||
{{ template "_internal/twitter_cards.html" . }}
|
||||
|
||||
<!-- Microdata -->
|
||||
{{ template "_internal/schema.html" . }}
|
||||
{{ end }}
|
124
themes/hugo-bearcub/layouts/partials/social_card.html
Normal file
124
themes/hugo-bearcub/layouts/partials/social_card.html
Normal file
|
@ -0,0 +1,124 @@
|
|||
<!-- Dynamic social card generation -->
|
||||
{{ $font := resources.GetRemote "https://github.com/google/fonts/raw/main/ofl/firamono/FiraMono-Bold.ttf" }}
|
||||
{{ $fg := resources.Get "images/social_card_fg.png"}}
|
||||
{{ $bg := resources.Get "images/social_card_bg.png"}}
|
||||
|
||||
{{ if gt (len .Title) 45 }}
|
||||
{{ $fg = $fg.Filter (images.Text .Title (dict
|
||||
"font" $font
|
||||
"color" "#fafafa"
|
||||
"size" 95
|
||||
"linespacing" 16
|
||||
"x" 0
|
||||
"y" 0
|
||||
)) }}
|
||||
{{ else }}
|
||||
{{ $fg = $fg.Filter (images.Text .Title (dict
|
||||
"font" $font
|
||||
"color" "#fafafa"
|
||||
"size" 130
|
||||
"linespacing" 20
|
||||
"x" 0
|
||||
"y" 0
|
||||
)) }}
|
||||
{{ end }}
|
||||
|
||||
{{ $date := .Date.Format (default "2006-01-02" .Site.Params.dateFormat) }}
|
||||
{{ $author := (default $.Site.Params.author.name ($.Param "author") ) }}
|
||||
{{ $byline := (printf "%s | %s" $author $date) }}
|
||||
|
||||
{{ $fg = $fg.Filter (images.Text $byline (dict
|
||||
"font" $font
|
||||
"color" "#898a8d"
|
||||
"size" 60
|
||||
"linespacing" 30
|
||||
"x" 0
|
||||
"y" 425
|
||||
)) }}
|
||||
|
||||
{{ $card := $bg.Filter (images.Overlay $fg 112 140 ) }}
|
||||
{{ $card := $card.Resize "900x webp q100" }}
|
||||
|
||||
<!-- Open Graph / Facebook -->
|
||||
<!-- Source: https://github.com/gohugoio/hugo/blob/master/tpl/tplimpl/embedded/templates/opengraph.html -->
|
||||
<meta property="og:title" content="{{ .Title }}" />
|
||||
<meta property="og:description" content="{{ with .Description }}{{ . }}{{ else }}{{if .IsPage}}{{ .Summary }}{{ else }}{{ with .Site.Params.description }}{{ . }}{{ end }}{{ end }}{{ end }}" />
|
||||
<meta property="og:type" content="{{ if .IsPage }}article{{ else }}website{{ end }}" />
|
||||
<meta property="og:url" content="{{ .Permalink }}" />
|
||||
|
||||
<meta property="og:image" content="{{ $card.Permalink | absURL }}"/>
|
||||
|
||||
{{- if .IsPage }}
|
||||
{{- $iso8601 := "2006-01-02T15:04:05-07:00" -}}
|
||||
<meta property="article:section" content="{{ .Section }}" />
|
||||
{{ with .PublishDate }}<meta property="article:published_time" {{ .Format $iso8601 | printf "content=%q" | safeHTMLAttr }} />{{ end }}
|
||||
{{ with .Lastmod }}<meta property="article:modified_time" {{ .Format $iso8601 | printf "content=%q" | safeHTMLAttr }} />{{ end }}
|
||||
{{- end -}}
|
||||
|
||||
{{- with .Params.audio }}<meta property="og:audio" content="{{ . }}" />{{ end }}
|
||||
{{- with .Params.locale }}<meta property="og:locale" content="{{ . }}" />{{ end }}
|
||||
{{- with .Site.Params.title }}<meta property="og:site_name" content="{{ . }}" />{{ end }}
|
||||
{{- with .Params.videos }}{{- range . }}
|
||||
<meta property="og:video" content="{{ . | absURL }}" />
|
||||
{{ end }}{{ end }}
|
||||
|
||||
{{- /* If it is part of a series, link to related articles */}}
|
||||
{{- $permalink := .Permalink }}
|
||||
{{- $siteSeries := .Site.Taxonomies.series }}
|
||||
{{- if $siteSeries }}
|
||||
{{ with .Params.series }}{{- range $name := . }}
|
||||
{{- $series := index $siteSeries ($name | urlize) }}
|
||||
{{- range $page := first 6 $series.Pages }}
|
||||
{{- if ne $page.Permalink $permalink }}<meta property="og:see_also" content="{{ $page.Permalink }}" />{{ end }}
|
||||
{{- end }}
|
||||
{{ end }}{{ end }}
|
||||
{{- end }}
|
||||
|
||||
{{- $facebookAdmin := "" }}
|
||||
{{- with site.Params.social }}
|
||||
{{- if reflect.IsMap . }}
|
||||
{{- $facebookAdmin = .facebook_admin }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
|
||||
{{- /* Facebook Page Admin ID for Domain Insights */}}
|
||||
{{ with $facebookAdmin }}<meta property="fb:admins" content="{{ . }}" />{{ end }}
|
||||
|
||||
<!-- Twitter -->
|
||||
<!-- Source: https://github.com/gohugoio/hugo/blob/master/tpl/tplimpl/embedded/templates/twitter_cards.html -->
|
||||
<meta name="twitter:card" content="summary_large_image"/>
|
||||
<meta name="twitter:image" content="{{ $card.Permalink | absURL }}"/>
|
||||
<meta name="twitter:title" content="{{ .Title }}"/>
|
||||
<meta name="twitter:description" content="{{ with .Description }}{{ . }}{{ else }}{{if .IsPage}}{{ .Summary }}{{ else }}{{ with .Site.Params.description }}{{ . }}{{ end }}{{ end }}{{ end -}}"/>
|
||||
|
||||
{{- $twitterSite := "" }}
|
||||
{{- with site.Params.social }}
|
||||
{{- if reflect.IsMap . }}
|
||||
{{- $twitterSite = .twitter }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
|
||||
{{- with $twitterSite }}
|
||||
{{- $content := . }}
|
||||
{{- if not (strings.HasPrefix . "@") }}
|
||||
{{- $content = printf "@%v" $twitterSite }}
|
||||
{{- end }}
|
||||
<meta name="twitter:site" content="{{ $content }}"/>
|
||||
{{- end }}
|
||||
|
||||
<!-- Microdata -->
|
||||
<!-- Source: https://github.com/gohugoio/hugo/blob/master/tpl/tplimpl/embedded/templates/schema.html -->
|
||||
<meta itemprop="name" content="{{ .Title }}">
|
||||
<meta itemprop="description" content="{{ with .Description }}{{ . }}{{ else }}{{if .IsPage}}{{ .Summary }}{{ else }}{{ with .Site.Params.description }}{{ . }}{{ end }}{{ end }}{{ end }}">
|
||||
|
||||
{{- if .IsPage -}}
|
||||
{{- $iso8601 := "2006-01-02T15:04:05-07:00" -}}
|
||||
{{ with .PublishDate }}<meta itemprop="datePublished" {{ .Format $iso8601 | printf "content=%q" | safeHTMLAttr }} />{{ end}}
|
||||
{{ with .Lastmod }}<meta itemprop="dateModified" {{ .Format $iso8601 | printf "content=%q" | safeHTMLAttr }} />{{ end}}
|
||||
<meta itemprop="wordCount" content="{{ .WordCount }}">
|
||||
|
||||
<meta itemprop="image" content="{{ $card.Permalink | absURL }}"/>
|
||||
|
||||
<!-- Output all taxonomies as schema.org keywords -->
|
||||
<meta itemprop="keywords" content="{{ if .IsPage}}{{ range $index, $tag := .Params.tags }}{{ $tag }},{{ end }}{{ else }}{{ range $plural, $terms := .Site.Taxonomies }}{{ range $term, $val := $terms }}{{ printf "%s," $term }}{{ end }}{{ end }}{{ end }}" />
|
||||
{{- end -}}
|
3
themes/hugo-bearcub/layouts/robots.txt
Normal file
3
themes/hugo-bearcub/layouts/robots.txt
Normal file
|
@ -0,0 +1,3 @@
|
|||
User-agent: *
|
||||
Allow: /
|
||||
Sitemap: {{ "sitemap.xml" | absURL }}
|
29
themes/hugo-bearcub/layouts/shortcodes/absfigure.html
Normal file
29
themes/hugo-bearcub/layouts/shortcodes/absfigure.html
Normal file
|
@ -0,0 +1,29 @@
|
|||
<figure{{ with .Get "class" }} class="{{ . }}"{{ end }}>
|
||||
{{- if .Get "link" -}}
|
||||
<a href="{{ .Get "link" }}"{{ with .Get "target" }} target="{{ . }}"{{ end }}{{ with .Get "rel" }} rel="{{ . }}"{{ end }}>
|
||||
{{- end -}}
|
||||
<img src="{{ .Get "src" | absURL}}"
|
||||
{{- if or (.Get "alt") (.Get "caption") }}
|
||||
alt="{{ with .Get "alt" }}{{ . }}{{ else }}{{ .Get "caption" | markdownify| plainify }}{{ end }}"
|
||||
{{- end -}}
|
||||
{{- with .Get "width" }} width="{{ . }}"{{ end -}}
|
||||
{{- with .Get "height" }} height="{{ . }}"{{ end -}}
|
||||
{{- with .Get "loading" }} loading="{{ . }}"{{ end -}}
|
||||
/><!-- Closing img tag -->
|
||||
{{- if .Get "link" }}</a>{{ end -}}
|
||||
{{- if or (or (.Get "title") (.Get "caption")) (.Get "attr") -}}
|
||||
<figcaption>
|
||||
{{ with (.Get "title") -}}
|
||||
<h4>{{ . }}</h4>
|
||||
{{- end -}}
|
||||
{{- if or (.Get "caption") (.Get "attr") -}}<p>
|
||||
{{- .Get "caption" | markdownify -}}
|
||||
{{- with .Get "attrlink" }}
|
||||
<a href="{{ . }}">
|
||||
{{- end -}}
|
||||
{{- .Get "attr" | markdownify -}}
|
||||
{{- if .Get "attrlink" }}</a>{{ end }}</p>
|
||||
{{- end }}
|
||||
</figcaption>
|
||||
{{- end }}
|
||||
</figure>
|
5
themes/hugo-bearcub/layouts/shortcodes/highlight.html
Normal file
5
themes/hugo-bearcub/layouts/shortcodes/highlight.html
Normal file
|
@ -0,0 +1,5 @@
|
|||
<!-- https://github.com/jmooring/hugo-testing/blob/hugo-forum-topic-40998/layouts/_default/_markup/render-codeblock-katex.html -->
|
||||
{{ .Page.Store.Set "hasCodeBlock" true }}
|
||||
|
||||
<!-- https://github.com/gohugoio/hugo/blob/master/tpl/tplimpl/embedded/templates/shortcodes/highlight.html -->
|
||||
{{ if len .Params | eq 2 }}{{ highlight (trim .InnerDeindent "\n\r") (.Get 0) (.Get 1) }}{{ else }}{{ highlight (trim .InnerDeindent "\n\r") (.Get 0) "" }}{{ end }}
|
2
themes/hugo-bearcub/layouts/shortcodes/rawhtml.html
Normal file
2
themes/hugo-bearcub/layouts/shortcodes/rawhtml.html
Normal file
|
@ -0,0 +1,2 @@
|
|||
<!-- raw html -->
|
||||
{{.Inner}}
|
Loading…
Add table
Add a link
Reference in a new issue