summaryrefslogtreecommitdiffstats
path: root/layouts/partials/head.html
blob: 9f3ef76b2143fde3ae240f2e17be661b9bef6615 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no" />
<meta name="HandheldFriendly" content="True" />
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta http-equiv="Cache-Control" content="no-transform" />
<meta http-equiv="Cache-Control" content="no-siteapp" />
{{ hugo.Generator }}

{{ partial "favicon.html" . }}

{{ if .IsHome }}
<title>{{ .Site.Title }} - {{ .Site.Params.subTitle }}</title>
{{ else }}
<title>{{ .Title }} - {{ .Site.Title }}</title>
{{ end }}
<meta name="author" content="{{if .Params.author }}{{ .Params.author }}{{ else }}{{ .Site.Params.author }}{{ end }}" />
<meta name="description" content="{{if .Params.description }}{{ .Params.description }}{{ else }}{{ .Site.Params.description }}{{ end }}" />
{{ if .Params.tags }}
<meta name="keywords" content="{{ delimit .Params.tags ", " }}" />
{{ end }}

{{ template "_internal/opengraph.html" . }}
{{ template "_internal/twitter_cards.html" . }}
{{ partial "analytic-google.html" . }}

<!-- global css -->
{{ $options := (dict "targetPath" "css/main.min.css" "outputStyle" "compressed") }}
{{ $style := resources.Get "sass/main.scss" | resources.ToCSS $options | resources.Fingerprint }}
<link rel="stylesheet" href="{{ $style.Permalink }}" integrity="{{ $style.Data.Integrity }}" crossorigin="anonymous" />

{{ if .Site.Params.useCDN }}
<!-- global dependency -->
<script src="https://cdn.jsdelivr.net/npm/jquery@3.5.0/dist/jquery.min.js" integrity="sha256-xNzN2a4ltkB44Mc/Jz3pT4iU1cmeR0FkXs4pru/JxaQ=" crossorigin="anonymous"></script>
<script src="https://cdn.jsdelivr.net/npm/lazysizes@5.2.0/lazysizes.min.js" integrity="sha256-h2tMEmhemR2IN4wbbdNjj9LaDIjzwk2hralQwfJmBOE=" crossorigin="anonymous"></script>
<script src="https://cdn.jsdelivr.net/npm/@fortawesome/fontawesome-free@5.13.0/js/fontawesome.min.js" integrity="sha256-NP9NujdEzS5m4ZxvNqkcbxyHB0dTRy9hG13RwTVBGwo=" crossorigin="anonymous"></script>
<!-- optional katex math -->
{{ if or .Params.math .Site.Params.math }}
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/katex@0.11.1/dist/katex.min.css" integrity="sha384-zB1R0rpPzHqg7Kpt0Aljp8JPLqbXI3bhnPWROx27a9N0Ll6ZP/+DiW/UqRcLbRjq" crossorigin="anonymous" />
<script defer src="https://cdn.jsdelivr.net/npm/katex@0.11.1/dist/katex.min.js" integrity="sha384-y23I5Q6l+B6vatafAwxRu/0oK/79VlbSz7Q9aiSZUvyWYIYsd+qj+o24G5ZU2zJz" crossorigin="anonymous"></script>
<script defer src="https://cdn.jsdelivr.net/npm/katex@0.11.1/dist/contrib/auto-render.min.js" integrity="sha384-kWPLUVMOks5AQFrykwIup5lo0m3iMkkHrD0uJ4H5cjeGihAutqP0yW0J6dpFiVkI" crossorigin="anonymous" onload="renderMathInElement(document.body);"></script>
{{ end }}
{{ else }}
<!-- global dependency -->
{{ $jquery := resources.Get "js/jquery.min.js" | resources.Fingerprint }}
<script src="{{ $jquery.Permalink }}" integrity="{{ $jquery.Data.Integrity }}" crossorigin="anonymous"></script>
{{ $lazysizes := resources.Get "js/lazysizes.min.js" | resources.Fingerprint }}
<script src="{{ $lazysizes.Permalink }}" integrity="{{ $lazysizes.Data.Integrity }}" crossorigin="anonymous"></script>
{{ $fontawesome := resources.Get "js/fontawesome.min.js" | resources.Fingerprint }}
<script src="{{ $fontawesome.Permalink }}" integrity="{{ $fontawesome.Data.Integrity }}" crossorigin="anonymous"></script>
<!-- optional katex math -->
{{ if or .Params.math .Site.Params.math }}
{{ $katexCSS := resources.Get "css/katex.min.css" | resources.Fingerprint }}
<link rel="stylesheet" href="{{ $katexCSS.Permalink }}" integrity="{{ $katexCSS.Data.Integrity }}" crossorigin="anonymous" />
{{ $katexJS := resources.Get "js/katex.min.js" | resources.Fingerprint }}
<script defer src="{{ $katexJS.Permalink }}" integrity="{{ $katexJS.Data.Integrity }}" crossorigin="anonymous"></script>
{{ $katexRender := resources.Get "js/auto-render.min.js" | resources.Fingerprint }}
<script defer src="{{ $katexRender.Permalink }}" integrity="{{ $katexRender.Data.Integrity }}" crossorigin="anonymous" onload="renderMathInElement(document.body);"></script>
{{ end }}
{{ end }}

<!-- dev use -->
{{ if .Site.Params.webpChecker }}
{{ $webp := resources.Get "js/modernizr-webp.min.js" }}
<script src="{{ $webp.Permalink }}"></script>
{{ end }}