mirror of
https://github.com/13hannes11/hugo-coder-timeline.git
synced 2024-09-04 00:50:58 +02:00
Merge branch 'master' of https://github.com/luizdepra/hugo-coder into luizdepra-master
This commit is contained in:
6
layouts/_default/_markup/render-heading.html
Normal file
6
layouts/_default/_markup/render-heading.html
Normal file
@@ -0,0 +1,6 @@
|
||||
<h{{ .Level }} id="{{ .Anchor | safeURL }}">
|
||||
{{ .Text | safeHTML }}
|
||||
<a class="heading-link" href="#{{ .Anchor | safeURL }}">
|
||||
<i class="fa fa-link" aria-hidden="true"></i>
|
||||
</a>
|
||||
</h{{ .Level }}>
|
||||
@@ -4,26 +4,27 @@
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<meta http-equiv="Content-Language" content="{{ .Site.Language.Lang }}">
|
||||
{{ if .Site.Params.csp }}
|
||||
{{ partial "csp.html" . }}
|
||||
{{ end }}
|
||||
|
||||
{{ with .Site.Params.author }}<meta name="author" content="{{ . }}">{{ end }}
|
||||
{{ with .Site.Params.description }}<meta name="description" content="{{ . }}">{{ end }}
|
||||
{{ with .Site.Params.keywords }}<meta name="keywords" content="{{ . }}">{{ end }}
|
||||
<meta name="description" content="{{ .Description | default (.Summary | default .Site.Params.description ) }}">
|
||||
<meta name="keywords" content="{{ (delimit .Keywords ",") | default .Site.Params.keywords }}">
|
||||
|
||||
{{ template "_internal/twitter_cards.html" . }}
|
||||
{{ template "_internal/opengraph.html" . }}
|
||||
|
||||
{{ if .Permalink }}
|
||||
<base href="{{ .Permalink }}">
|
||||
{{ end }}
|
||||
<title>{{ block "title" . }}{{ .Site.Title }}{{ end }}</title>
|
||||
|
||||
{{ if .Permalink }}
|
||||
<link rel="canonical" href="{{ .Permalink }}">
|
||||
{{ end }}
|
||||
|
||||
<link rel="preconnect" href="https://fonts.gstatic.com">
|
||||
<link href="https://fonts.googleapis.com/css?family=Lato:400,700%7CMerriweather:300,700%7CSource+Code+Pro:400,700&display=swap" rel="stylesheet">
|
||||
<link rel="stylesheet" href="https://use.fontawesome.com/releases/v5.11.2/css/all.css" integrity="sha384-KA6wR/X5RY4zFAHpv/CnoG2UW1uogYfdnP67Uv7eULvTveboZJg0qUpmJZb5VqzN" crossorigin="anonymous" />
|
||||
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/normalize/8.0.1/normalize.min.css" integrity="sha256-l85OmPOjvil/SOvVt3HnSSjzF1TUMyT9eV0c2BzEGzU=" crossorigin="anonymous" />
|
||||
<link rel="preload" href="/fonts/forkawesome-webfont.woff2?v=1.1.7" as="font" type="font/woff2" crossorigin>
|
||||
|
||||
{{ if .Site.IsServer }}
|
||||
{{ $cssOpts := (dict "targetPath" "css/coder.css" "enableSourceMap" true ) }}
|
||||
@@ -47,7 +48,7 @@
|
||||
{{ end }}
|
||||
{{ end }}
|
||||
|
||||
{{ if or (eq .Site.Params.colorscheme "auto") (eq .Site.Params.colorscheme "dark") }}
|
||||
{{ if or (eq .Site.Params.colorScheme "auto") (eq .Site.Params.colorScheme "dark") }}
|
||||
{{ if .Site.IsServer }}
|
||||
{{ $cssOpts := (dict "targetPath" "css/coder-dark.css" "enableSourceMap" true ) }}
|
||||
{{ $styles := resources.Get "scss/coder-dark.scss" | resources.ExecuteAsTemplate "style.coder-dark.css" . | toCSS $cssOpts }}
|
||||
@@ -59,15 +60,11 @@
|
||||
{{ end }}
|
||||
{{ end }}
|
||||
|
||||
{{ range .Site.Params.custom_css }}
|
||||
{{ range .Site.Params.customCSS }}
|
||||
<link rel="stylesheet" href="{{ . | relURL }}" />
|
||||
{{ end }}
|
||||
|
||||
{{ range .Site.Params.custom_js }}
|
||||
<script src="{{ . | relURL }}"></script>
|
||||
{{ end }}
|
||||
|
||||
{{ range .Site.Params.custom_scss }}
|
||||
{{ range .Site.Params.customSCSS }}
|
||||
{{/* We don't change the targetPath to because it's transparent to users */}}
|
||||
{{ if $.Site.IsServer }}
|
||||
{{ $cssOpts := (dict "enableSourceMap" true ) }}
|
||||
@@ -79,23 +76,34 @@
|
||||
{{ end }}
|
||||
{{ end }}
|
||||
|
||||
<link rel="icon" type="image/png" href="{{ .Site.Params.favicon_32 | default "/images/favicon-32x32.png" | absURL }}" sizes="32x32">
|
||||
<link rel="icon" type="image/png" href="{{ .Site.Params.favicon_16 | default "/images/favicon-16x16.png" | absURL }}" sizes="16x16">
|
||||
<link rel="icon" type="image/png" href="{{ .Site.Params.favicon_32 | default "/images/favicon-32x32.png" | relURL }}" sizes="32x32">
|
||||
<link rel="icon" type="image/png" href="{{ .Site.Params.favicon_16 | default "/images/favicon-16x16.png" | relURL }}" sizes="16x16">
|
||||
|
||||
<link rel="apple-touch-icon" href="{{ .Site.Params.touchicon | default "/images/apple-touch-icon.png" | relURL }}">
|
||||
<link rel="apple-touch-icon" sizes="180x180" href="{{ .Site.Params.touchicon | default "/images/apple-touch-icon.png" | relURL }}">
|
||||
|
||||
{{ range .AlternativeOutputFormats -}}
|
||||
{{ printf `<link rel="%s" type="%s" href="%s" title="%s" />` .Rel .MediaType.Type .Permalink $.Site.Title | safeHTML }}
|
||||
{{ printf `<link rel="%s" type="%s" href="%s" title="%s" />` .Rel .MediaType.Type .RelPermalink $.Site.Title | safeHTML }}
|
||||
{{ end -}}
|
||||
|
||||
{{ if .Site.Params.enableTwemoji }}
|
||||
<script defer src="https://twemoji.maxcdn.com/v/13.0.1/twemoji.min.js"
|
||||
integrity="sha384-5f4X0lBluNY/Ib4VhGx0Pf6iDCF99VGXJIyYy7dDLY5QlEd7Ap0hICSSZA1XYbc4" crossorigin="anonymous"></script>
|
||||
{{ end }}
|
||||
|
||||
{{ hugo.Generator }}
|
||||
</head>
|
||||
|
||||
{{ $csClass := "colorscheme-light" }}
|
||||
{{ if eq .Site.Params.colorscheme "dark" }}
|
||||
{{ if eq .Site.Params.colorScheme "dark" }}
|
||||
{{ $csClass = "colorscheme-dark" }}
|
||||
{{ else if eq .Site.Params.colorscheme "auto" }}
|
||||
{{ else if eq .Site.Params.colorScheme "auto" }}
|
||||
{{ $csClass = "colorscheme-auto" }}
|
||||
{{ end }}
|
||||
<body class="{{ $csClass }}{{ if .Site.Params.rtl }} rtl{{ end }}">
|
||||
<body class="{{ $csClass }}{{ if .Site.Params.rtl }} rtl{{ end }}"
|
||||
onload="{{ if .Site.Params.enableTwemoji }} twemoji.parse(document.body); {{ end }}"
|
||||
>
|
||||
{{ partial "float" . }}
|
||||
<main class="wrapper">
|
||||
{{ partial "header.html" . }}
|
||||
|
||||
@@ -106,12 +114,41 @@
|
||||
{{ partial "footer.html" . }}
|
||||
</main>
|
||||
|
||||
{{ if not .Site.Params.hideColorSchemeToggle }}
|
||||
{{ if .Site.IsServer }}
|
||||
{{ $script := resources.Get "js/dark-mode.js" }}
|
||||
<script src="{{ $script.RelPermalink }}"></script>
|
||||
{{ else }}
|
||||
{{ $script := resources.Get "js/dark-mode.js" | minify | fingerprint }}
|
||||
<script src="{{ $script.RelPermalink }}"></script>
|
||||
{{ end }}
|
||||
{{ end }}
|
||||
|
||||
{{ range .Site.Params.customJS }}
|
||||
<script src="{{ . | relURL }}"></script>
|
||||
{{ end }}
|
||||
|
||||
{{ template "_internal/google_analytics.html" . }}
|
||||
|
||||
{{ if and .Site.Params.fathomAnalytics .Site.Params.fathomAnalytics.siteID }}
|
||||
{{- partial "analytics/fathom" . -}}
|
||||
{{ end }}
|
||||
|
||||
{{ if and .Site.Params.plausibleAnalytics .Site.Params.plausibleAnalytics.domain }}
|
||||
{{- partial "analytics/plausible" . -}}
|
||||
{{ end }}
|
||||
|
||||
{{ if and .Site.Params.goatCounter .Site.Params.goatCounter.code }}
|
||||
{{- partial "analytics/goatcounter" . -}}
|
||||
{{ end }}
|
||||
|
||||
{{ if and .Site.Params.cloudflare .Site.Params.cloudflare.token }}
|
||||
{{- partial "analytics/cloudflare" . -}}
|
||||
{{ end }}
|
||||
|
||||
{{ if and .Site.Params.matomo .Site.Params.matomo.serverURL }}
|
||||
{{- partial "analytics/matomo" . -}}
|
||||
{{ end }}
|
||||
</body>
|
||||
|
||||
</html>
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
{{ define "title" }}
|
||||
{{- if eq .Kind "taxonomy" -}}
|
||||
{{- if eq .Kind "term" -}}
|
||||
{{- i18n .Data.Singular | title -}}
|
||||
{{- print ": " -}}
|
||||
{{- end -}}
|
||||
|
||||
@@ -3,4 +3,5 @@
|
||||
{{ end }}
|
||||
{{ define "content" }}
|
||||
{{ partial "page.html" . }}
|
||||
{{ partial "posts/math.html" . }}
|
||||
{{ end }}
|
||||
|
||||
4
layouts/partials/analytics/cloudflare.html
Normal file
4
layouts/partials/analytics/cloudflare.html
Normal file
@@ -0,0 +1,4 @@
|
||||
<!-- Cloudflare Web Analytics -->
|
||||
<script defer src='https://static.cloudflareinsights.com/beacon.min.js'
|
||||
data-cf-beacon='{"token": "{{ $.Site.Params.cloudflare.token }}"}'></script>
|
||||
<!-- End Cloudflare Web Analytics -->
|
||||
2
layouts/partials/analytics/goatcounter.html
Normal file
2
layouts/partials/analytics/goatcounter.html
Normal file
@@ -0,0 +1,2 @@
|
||||
<script data-goatcounter="https://{{ $.Site.Params.goatCounter.code }}.goatcounter.com/count"
|
||||
async src="//gc.zgo.at/count.js"></script>
|
||||
13
layouts/partials/analytics/matomo.html
Normal file
13
layouts/partials/analytics/matomo.html
Normal file
@@ -0,0 +1,13 @@
|
||||
<script type="application/javascript">
|
||||
var _paq = window._paq = window._paq || [];
|
||||
/* tracker methods like "setCustomDimension" should be called before "trackPageView" */
|
||||
_paq.push(['trackPageView']);
|
||||
_paq.push(['enableLinkTracking']);
|
||||
(function() {
|
||||
var u="https://{{ $.Site.Params.matomo.serverURL }}/";
|
||||
_paq.push(['setTrackerUrl', u+'matomo.php']);
|
||||
_paq.push(['setSiteId', '{{ $.Site.Params.matomo.siteID | default "1" }}']);
|
||||
var d=document, g=d.createElement('script'), s=d.getElementsByTagName('script')[0];
|
||||
g.async=true; g.src=u+'matomo.js'; s.parentNode.insertBefore(g,s);
|
||||
})();
|
||||
</script>
|
||||
1
layouts/partials/analytics/plausible.html
Normal file
1
layouts/partials/analytics/plausible.html
Normal file
@@ -0,0 +1 @@
|
||||
<script async defer data-domain="{{ .Site.Params.plausibleAnalytics.domain }}" src="https://{{ .Site.Params.plausibleAnalytics.serverURL | default "plausible.io" }}/js/plausible.js"></script>
|
||||
1
layouts/partials/csp.html
Normal file
1
layouts/partials/csp.html
Normal file
@@ -0,0 +1 @@
|
||||
{{ printf `<meta http-equiv="Content-Security-Policy" content="upgrade-insecure-requests; block-all-mixed-content; default-src 'self'; child-src %s; font-src %s; form-action %s; frame-src %s; img-src %s; object-src %s; style-src %s; script-src %s; prefetch-src %s;">` (delimit .Site.Params.csp.childsrc " ") (delimit .Site.Params.csp.fontsrc " ") (delimit .Site.Params.csp.formaction " ") (delimit .Site.Params.csp.framesrc " ") (delimit .Site.Params.csp.imgsrc " ") (delimit .Site.Params.csp.objectsrc " ") (delimit .Site.Params.csp.stylesrc " ") (delimit .Site.Params.csp.scriptsrc " ") (delimit .Site.Params.csp.prefetchsrc " ") | safeHTML }}
|
||||
7
layouts/partials/float.html
Normal file
7
layouts/partials/float.html
Normal file
@@ -0,0 +1,7 @@
|
||||
{{ if not .Site.Params.hideColorSchemeToggle }}
|
||||
<div class="float-container">
|
||||
<a id="dark-mode-toggle" class="colorscheme-toggle">
|
||||
<i class="fa fa-adjust fa-fw" aria-hidden="true"></i>
|
||||
</a>
|
||||
</div>
|
||||
{{ end }}
|
||||
@@ -1,7 +1,7 @@
|
||||
{{ if not .Site.Params.hideFooter | default false }}
|
||||
<footer class="footer">
|
||||
<section class="container">
|
||||
{{ with .Site.Params.footercontent | safeHTML }}
|
||||
{{ with .Site.Params.footerContent | safeHTML }}
|
||||
<p>{{ . }}</p>
|
||||
{{ end }}
|
||||
{{ if not .Site.Params.hideCopyright }}
|
||||
@@ -10,7 +10,7 @@
|
||||
{{ .Site.Params.since }} -
|
||||
{{ end }}
|
||||
{{ now.Year }}
|
||||
{{ with .Site.Params.Author }} {{ . }} {{ end }}
|
||||
{{ with .Site.Params.author }} {{ . }} {{ end }}
|
||||
{{ end }}
|
||||
{{ if not .Site.Params.hideCredits }}
|
||||
{{ if not .Site.Params.hideCopyright }} · {{ end }}
|
||||
|
||||
@@ -4,34 +4,36 @@
|
||||
{{ .Site.Title }}
|
||||
</a>
|
||||
{{ if or .Site.Menus.main .Site.IsMultiLingual }}
|
||||
<input type="checkbox" id="menu-toggle" />
|
||||
<label class="menu-button float-right" for="menu-toggle"><i class="fas fa-bars"></i></label>
|
||||
<ul class="navigation-list">
|
||||
{{ with .Site.Menus.main}}
|
||||
{{ range sort . }}
|
||||
<li class="navigation-item">
|
||||
<a class="navigation-link" href="{{ .URL | absLangURL }}">{{ .Name }}</a>
|
||||
</li>
|
||||
{{ end }}
|
||||
{{ end }}
|
||||
{{ if .Site.IsMultiLingual }}
|
||||
{{ $node := . }}
|
||||
{{ .Scratch.Set "separator" true }}
|
||||
{{ range .Translations }}
|
||||
{{ if ne $.Site.Language .Language }}
|
||||
{{ if $node.Scratch.Get "separator" }}
|
||||
<li class="navigation-item menu-separator">
|
||||
<span>|</span>
|
||||
</li>
|
||||
{{ $node.Scratch.Set "separator" false }}
|
||||
{{ end }}
|
||||
<input type="checkbox" id="menu-toggle" />
|
||||
<label class="menu-button float-right" for="menu-toggle">
|
||||
<i class="fa fa-bars fa-fw" aria-hidden="true"></i>
|
||||
</label>
|
||||
<ul class="navigation-list">
|
||||
{{ with .Site.Menus.main}}
|
||||
{{ range sort . }}
|
||||
<li class="navigation-item">
|
||||
<a href="{{ .Permalink }}">{{ .Language.LanguageName }}</a>
|
||||
<a class="navigation-link" href="{{ .URL | relLangURL }}">{{ .Name }}</a>
|
||||
</li>
|
||||
{{ end }}
|
||||
{{ end }}
|
||||
{{ end }}
|
||||
</ul>
|
||||
{{ if .Site.IsMultiLingual }}
|
||||
{{ $node := . }}
|
||||
{{ .Scratch.Set "separator" true }}
|
||||
{{ range (default .Site.Home.AllTranslations .Translations) }}
|
||||
{{ if ne $.Site.Language .Language }}
|
||||
{{ if $node.Scratch.Get "separator" }}
|
||||
<li class="navigation-item menu-separator">
|
||||
<span>|</span>
|
||||
</li>
|
||||
{{ $node.Scratch.Set "separator" false }}
|
||||
{{ end }}
|
||||
<li class="navigation-item">
|
||||
<a href="{{ .Permalink }}">{{ .Language.LanguageName }}</a>
|
||||
</li>
|
||||
{{ end }}
|
||||
{{ end }}
|
||||
{{ end }}
|
||||
</ul>
|
||||
{{ end }}
|
||||
</section>
|
||||
</nav>
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
<section class="container centered">
|
||||
<div class="about">
|
||||
{{ if and (isset .Site.Params "avatarurl") (not (isset .Site.Params "gravatar")) }}
|
||||
{{ with .Site.Params.avatarurl }}
|
||||
{{ with .Site.Params.avatarURL }}
|
||||
<div class="avatar"><img src="{{ . | relURL }}" alt="avatar"></div>
|
||||
{{ end }}
|
||||
{{ end }}
|
||||
@@ -15,13 +15,13 @@
|
||||
{{ range sort . "weight" }}
|
||||
{{ if .icon }}
|
||||
<li>
|
||||
<a href="{{ .url }}" aria-label="{{ .name }}" {{ if .rel }}rel="{{ .rel }}"{{ end }} {{ if .target }}target="{{ .target }}"{{ end }} {{ if .type }}type="{{ .type }}"{{ end }}>
|
||||
<a href="{{ .url | safeURL }}" aria-label="{{ .name }}" {{ if .rel }}rel="{{ .rel }}"{{ end }} {{ if .target }}target="{{ .target }}"{{ end }} {{ if .type }}type="{{ .type }}"{{ end }}>
|
||||
<i class="{{ .icon }}" aria-hidden="true"></i>
|
||||
</a>
|
||||
</li>
|
||||
{{ else }}
|
||||
<li>
|
||||
<a href="{{ .url }}" aria-label="{{ .name }}" {{ if .rel }}rel="{{ .rel }}"{{ end }} {{ if .target }}target="{{ .target }}"{{ end }}>{{ .name }}</a>
|
||||
<a href="{{ .url | safeURL }}" aria-label="{{ .name }}" {{ if .rel }}rel="{{ .rel }}"{{ end }} {{ if .target }}target="{{ .target }}"{{ end }}>{{ .name }}</a>
|
||||
</li>
|
||||
{{ end }}
|
||||
{{ end }}
|
||||
|
||||
@@ -1,18 +1,20 @@
|
||||
<section class="container list">
|
||||
<h1 class="title">
|
||||
{{- if eq .Kind "taxonomy" -}}
|
||||
{{- i18n .Data.Singular | title -}}
|
||||
{{- print ": " -}}
|
||||
{{- end -}}
|
||||
<a class="title-link" href="{{ .Permalink | safeURL }}">
|
||||
{{- if eq .Kind "term" -}}
|
||||
{{- i18n .Data.Singular | title -}}
|
||||
{{- print ": " -}}
|
||||
{{- end -}}
|
||||
|
||||
{{- .Title -}}
|
||||
{{- .Title -}}
|
||||
</a>
|
||||
</h1>
|
||||
{{ .Content }}
|
||||
<ul>
|
||||
{{ range .Paginator.Pages }}
|
||||
<li>
|
||||
<span class="date">{{ .Date.Format (.Site.Params.dateFormat | default "January 2, 2006" ) }}</span>
|
||||
<a class="title" href="{{ .Params.ExternalLink | default .RelPermalink }}">{{ .Title }}</a>
|
||||
<a class="title" href="{{ .Params.externalLink | default .RelPermalink }}">{{ .Title }}</a>
|
||||
</li>
|
||||
{{ end }}
|
||||
</ul>
|
||||
|
||||
@@ -1,7 +1,11 @@
|
||||
<section class="container page">
|
||||
<article>
|
||||
<header>
|
||||
<h1>{{ .Title }}</h1>
|
||||
<h1 class="title">
|
||||
<a class="title-link" href="{{ .Permalink | safeURL }}">
|
||||
{{ .Title }}
|
||||
</a>
|
||||
</h1>
|
||||
</header>
|
||||
|
||||
{{ .Content }}
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
{{- if and (isset .Site.Params "commentourl") (not (eq .Site.Params.commentoUrl "" )) (eq (.Params.disable_comments | default false) false) -}}
|
||||
{{- if and (isset .Site.Params "commentourl") (not (eq .Site.Params.commentoURL "" )) (eq (.Params.disableComments | default false) false) -}}
|
||||
<div id="commento"></div>
|
||||
<script src="{{ .Site.Params.commentoUrl }}/js/commento.js"></script>
|
||||
<script src="{{ .Site.Params.commentoURL }}/js/commento.js"></script>
|
||||
{{- end -}}
|
||||
|
||||
@@ -1,3 +1,3 @@
|
||||
{{- if and (not (eq (.Site.DisqusShortname | default "") "")) (eq (.Params.disable_comments | default false) false) -}}
|
||||
{{- if and (not (eq (.Site.DisqusShortname | default "") "")) (eq (.Params.disableComments | default false) false) -}}
|
||||
{{ template "_internal/disqus.html" . }}
|
||||
{{- end -}}
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
{{- if or (.Params.math) (.Site.Params.math) -}}
|
||||
<script src="https://polyfill.io/v3/polyfill.min.js?features=es6"></script>
|
||||
<script type="text/javascript" async src="https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js"></script>
|
||||
<script src="https://cdn.jsdelivr.net/npm/mathjax@3/es5/startup.js" id="MathJax-script"></script>
|
||||
{{/* The file is already minified */}}
|
||||
<script id="MathJax-script" async src="https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js"></script>
|
||||
<script>
|
||||
MathJax = {
|
||||
tex: {
|
||||
@@ -18,9 +18,13 @@
|
||||
</script>
|
||||
{{- end -}}
|
||||
{{- if or (.Params.katex) (.Site.Params.katex) -}}
|
||||
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/katex@0.10.1/dist/katex.min.css" integrity="sha384-dbVIfZGuN1Yq7/1Ocstc1lUEm+AT+/rCkibIcC/OmWo5f0EA48Vf8CytHzGrSwbQ" crossorigin="anonymous">
|
||||
<script defer src="https://cdn.jsdelivr.net/npm/katex@0.10.1/dist/katex.min.js" integrity="sha384-2BKqo+exmr9su6dir+qCw08N2ZKRucY4PrGQPPWU1A7FtlCGjmEGFqXCv5nyM5Ij" crossorigin="anonymous"></script>
|
||||
<script defer src="https://cdn.jsdelivr.net/npm/katex@0.10.1/dist/contrib/auto-render.min.js" integrity="sha384-kWPLUVMOks5AQFrykwIup5lo0m3iMkkHrD0uJ4H5cjeGihAutqP0yW0J6dpFiVkI" crossorigin="anonymous"
|
||||
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/katex@0.12.0/dist/katex.min.css"
|
||||
integrity="sha384-AfEj0r4/OFrOo5t7NnNe46zW/tFgW6x/bCJG8FqQCEo3+Aro6EYUG4+cU+KJWu/X" crossorigin="anonymous">
|
||||
{{/* The loading of KaTeX is deferred to speed up page rendering */}}
|
||||
<script defer src="https://cdn.jsdelivr.net/npm/katex@0.12.0/dist/katex.min.js"
|
||||
integrity="sha384-g7c+Jr9ZivxKLnZTDUhnkOnsh30B4H0rpLUpJ4jAIKs4fnJI+sEnkvrMWph2EDg4" crossorigin="anonymous"></script>
|
||||
<script defer src="https://cdn.jsdelivr.net/npm/katex@0.12.0/dist/contrib/auto-render.min.js"
|
||||
integrity="sha384-mll67QQFJfxn0IYznZYonOWZ644AWYC+Pt2cHqMaRhXVrursRwvLnLaebdGIlYNa" crossorigin="anonymous"
|
||||
onload="renderMathInElement(document.body,
|
||||
{
|
||||
delimiters: [
|
||||
@@ -30,6 +34,5 @@
|
||||
{left: '\\[', right: '\\]', display: true}
|
||||
]
|
||||
}
|
||||
);">
|
||||
</script>
|
||||
);"></script>
|
||||
{{- end -}}
|
||||
|
||||
@@ -5,14 +5,19 @@
|
||||
{{ $name := . | urlize }}
|
||||
{{ $series := index $.Site.Taxonomies.series $name }}
|
||||
{{ if gt (len $series.Pages) 1 }}
|
||||
<h3>See also in {{ . }}</h3>
|
||||
<h3 id="{{ i18n "see_also" | default "See also in" | anchorize }}-{{ anchorize . | safeURL }}">
|
||||
{{ i18n "see_also" | default "See also in" }} {{ . }}
|
||||
<a class="heading-link" href="#{{ i18n "see_also" | default "See also in" | anchorize }}-{{ anchorize . | safeURL }}">
|
||||
<i class="fa fa-link" aria-hidden="true"></i>
|
||||
</a>
|
||||
</h3>
|
||||
<nav>
|
||||
<ul>
|
||||
{{ $maxItems := $.Site.Params.maxSeeAlsoItems | default 5 }}
|
||||
{{ range first (add $maxItems 1) $series.Pages }}
|
||||
{{ if ne .RelPermalink $currentPageUrl }}
|
||||
<li>
|
||||
<a href="{{ .Params.ExternalLink | default .RelPermalink }}">{{ .Title }}</a>
|
||||
<a href="{{ .Params.externalLink | default .RelPermalink }}">{{ .Title }}</a>
|
||||
</li>
|
||||
{{ end }}
|
||||
{{ end }}
|
||||
|
||||
@@ -1,11 +0,0 @@
|
||||
{{- if isset .Site.Params "utteranc" -}}
|
||||
{{- if and (isset .Site.Params.utteranc "repo") (not (eq .Site.Params.utteranc.repo "" )) (eq (.Params.disable_comments | default false) false) -}}
|
||||
<script src="https://utteranc.es/client.js"
|
||||
repo= "{{ .Site.Params.utteranc.repo }}"
|
||||
issue-term="{{ default "title" .Site.Params.utteranc.issueTerm }}"
|
||||
theme="{{ default "github-light" .Site.Params.utteranc.theme }}"
|
||||
crossorigin="anonymous"
|
||||
async>
|
||||
</script>
|
||||
{{- end -}}
|
||||
{{- end -}}
|
||||
12
layouts/partials/posts/utterances.html
Normal file
12
layouts/partials/posts/utterances.html
Normal file
@@ -0,0 +1,12 @@
|
||||
{{- if isset .Site.Params "utterances" -}}
|
||||
{{- if and (isset .Site.Params.utterances "repo") (not (eq .Site.Params.utterances.repo "" )) (eq (.Params.disable_comments | default false) false) -}}
|
||||
<script src="https://utteranc.es/client.js"
|
||||
repo= "{{ .Site.Params.utterances.repo }}"
|
||||
issue-term="{{ default "title" .Site.Params.utterances.issueTerm }}"
|
||||
{{ if isset .Site.Params.utterances "label" }}label="{{ .Site.Params.utterances.label }}"{{ end }}
|
||||
theme="{{ default "github-light" .Site.Params.utterances.theme }}"
|
||||
crossorigin="anonymous"
|
||||
async>
|
||||
</script>
|
||||
{{- end -}}
|
||||
{{- end -}}
|
||||
9
layouts/partials/taxonomy/authors.html
Normal file
9
layouts/partials/taxonomy/authors.html
Normal file
@@ -0,0 +1,9 @@
|
||||
<div class="authors">
|
||||
<i class="fa fa-user" aria-hidden="true"></i>
|
||||
{{- range $index, $el := . -}}
|
||||
{{- if gt $index 0 }}
|
||||
<span class="separator">•</span>
|
||||
{{- end }}
|
||||
<a href="{{ ( printf "authors/%s/" ( . | urlize ) ) | relLangURL }}">{{ . }}</a>
|
||||
{{- end -}}
|
||||
</div>
|
||||
@@ -1,5 +1,5 @@
|
||||
<div class="categories">
|
||||
<i class="fas fa-folder"></i>
|
||||
<i class="fa fa-folder" aria-hidden="true"></i>
|
||||
{{- range $index, $el := . -}}
|
||||
{{- if gt $index 0 }}
|
||||
<span class="separator">•</span>
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
<div class="tags">
|
||||
<i class="fas fa-tag"></i>
|
||||
<i class="fa fa-tag" aria-hidden="true"></i>
|
||||
{{- range $index, $el := . -}}
|
||||
{{- if gt $index 0 }}
|
||||
<span class="separator">•</span>
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
<li>
|
||||
<span class="date">{{ .Date.Format (.Site.Params.dateFormat | default "January 2, 2006" ) }}</span>
|
||||
<a class="title" href="{{ .Params.ExternalLink | default .RelPermalink }}">{{ .Title }}</a>
|
||||
<a class="title" href="{{ .Params.externalLink | default .RelPermalink }}">{{ .Title }}</a>
|
||||
</li>
|
||||
|
||||
@@ -1,10 +1,14 @@
|
||||
{{ define "title" }}
|
||||
{{ .Title }} · {{ .Site.Title }}
|
||||
{{ title (i18n (lower .Title)) | default .Title }} · {{ .Site.Title }}
|
||||
{{ end }}
|
||||
{{ define "content" }}
|
||||
<section class="container list">
|
||||
<h1 class="title">{{ .Title }}</h1>
|
||||
|
||||
<h1 class="title">
|
||||
<a class="title-link" href="{{ .Permalink | safeURL }}">
|
||||
{{ title (i18n (lower .Title)) | default .Title }}
|
||||
</a>
|
||||
</h1>
|
||||
{{ .Content }}
|
||||
<ul>
|
||||
{{- range .Paginator.Pages -}}
|
||||
{{- .Render "li" -}}
|
||||
|
||||
@@ -7,29 +7,34 @@
|
||||
<article>
|
||||
<header>
|
||||
<div class="post-title">
|
||||
<h1 class="title">{{ .Title }}</h1>
|
||||
<h1 class="title">
|
||||
<a class="title-link" href="{{ .Permalink | safeURL }}">
|
||||
{{ .Title }}
|
||||
</a>
|
||||
</h1>
|
||||
</div>
|
||||
<div class="post-meta">
|
||||
<div class="date">
|
||||
<span class="posted-on">
|
||||
<i class="fas fa-calendar"></i>
|
||||
<i class="fa fa-calendar" aria-hidden="true"></i>
|
||||
<time datetime='{{ .Date.Format "2006-01-02T15:04:05Z07:00" }}'>
|
||||
{{ .Date.Format (.Site.Params.dateFormat | default "January 2, 2006" ) }}
|
||||
</time>
|
||||
</span>
|
||||
<span class="reading-time">
|
||||
<i class="fas fa-clock"></i>
|
||||
<i class="fa fa-clock-o" aria-hidden="true"></i>
|
||||
{{ i18n "reading_time" .ReadingTime }}
|
||||
</span>
|
||||
</div>
|
||||
{{ with .Page.Params.Authors }}{{ partial "taxonomy/authors.html" . }}{{ end }}
|
||||
{{ with .Page.Params.Categories }}{{ partial "taxonomy/categories.html" . }}{{ end }}
|
||||
{{ with .Page.Params.Tags }}{{ partial "taxonomy/tags.html" . }}{{ end }}
|
||||
</div>
|
||||
</header>
|
||||
|
||||
<div>
|
||||
{{ if .Params.featured_image }}
|
||||
<img src='{{ .Params.featured_image }}' alt="Featured image"/>
|
||||
{{ if .Params.featuredImage }}
|
||||
<img src='{{ .Params.featuredImage }}' alt="Featured image"/>
|
||||
{{ end }}
|
||||
{{ .Content }}
|
||||
</div>
|
||||
@@ -39,7 +44,7 @@
|
||||
{{ partial "posts/series.html" . }}
|
||||
{{ partial "posts/disqus.html" . }}
|
||||
{{ partial "posts/commento.html" . }}
|
||||
{{ partial "posts/utteranc.html" . }}
|
||||
{{ partial "posts/utterances.html" . }}
|
||||
</footer>
|
||||
</article>
|
||||
|
||||
|
||||
Reference in New Issue
Block a user