1
0

baseof.html 5.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118
  1. <!DOCTYPE html>
  2. <html lang="{{ .Site.Language.Lang }}">
  3. <head>
  4. <meta charset="utf-8">
  5. <meta name="viewport" content="width=device-width, initial-scale=1.0">
  6. <meta http-equiv="Content-Language" content="{{ .Site.Language.Lang }}">
  7. {{ with .Site.Params.author }}<meta name="author" content="{{ . }}">{{ end }}
  8. <meta name="description" content="{{ .Description | default (.Summary | default .Site.Params.description ) }}">
  9. <meta name="keywords" content="{{ (delimit .Keywords ",") | default .Site.Params.keywords }}">
  10. {{ template "_internal/twitter_cards.html" . }}
  11. {{ template "_internal/opengraph.html" . }}
  12. {{ if .Permalink }}
  13. <base href="{{ .Permalink }}">
  14. {{ end }}
  15. <title>{{ block "title" . }}{{ .Site.Title }}{{ end }}</title>
  16. {{ if .Permalink }}
  17. <link rel="canonical" href="{{ .Permalink }}">
  18. {{ end }}
  19. <link href="https://fonts.googleapis.com/css?family=Lato:400,700%7CMerriweather:300,700%7CSource+Code+Pro:400,700&display=swap" rel="stylesheet">
  20. <link rel="stylesheet" href="https://use.fontawesome.com/releases/v5.13.0/css/all.css" integrity="sha384-Bfad6CLCknfcloXFOyFnlgtENryhrpZCe29RTifKEixXQZ38WheV+i/6YWSzkz3V" crossorigin="anonymous">
  21. <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/normalize/8.0.1/normalize.min.css" integrity="sha256-l85OmPOjvil/SOvVt3HnSSjzF1TUMyT9eV0c2BzEGzU=" crossorigin="anonymous" />
  22. {{ if .Site.IsServer }}
  23. {{ $cssOpts := (dict "targetPath" "css/coder.css" "enableSourceMap" true ) }}
  24. {{ $styles := resources.Get "scss/coder.scss" | resources.ExecuteAsTemplate "style.coder.css" . | toCSS $cssOpts }}
  25. <link rel="stylesheet" href="{{ $styles.RelPermalink }}" media="screen">
  26. {{ else }}
  27. {{ $cssOpts := (dict "targetPath" "css/coder.css" ) }}
  28. {{ $styles := resources.Get "scss/coder.scss" | resources.ExecuteAsTemplate "style.coder.css" . | toCSS $cssOpts | minify | fingerprint }}
  29. <link rel="stylesheet" href="{{ $styles.RelPermalink }}" integrity="{{ $styles.Data.Integrity }}" crossorigin="anonymous" media="screen" />
  30. {{ end }}
  31. {{ if .Site.Params.rtl }}
  32. {{ if .Site.IsServer }}
  33. {{ $cssOpts := (dict "targetPath" "css/coder-rtl.css" "enableSourceMap" true ) }}
  34. {{ $styles := resources.Get "scss/coder-rtl.scss" | resources.ExecuteAsTemplate "style.coder-rtl.css" . | toCSS $cssOpts }}
  35. <link rel="stylesheet" href="{{ $styles.RelPermalink }}" media="screen">
  36. {{ else }}
  37. {{ $cssOpts := (dict "targetPath" "css/coder-rtl.css" ) }}
  38. {{ $styles := resources.Get "scss/coder-rtl.scss" | resources.ExecuteAsTemplate "style.coder-rtl.css" . | toCSS $cssOpts | minify | fingerprint }}
  39. <link rel="stylesheet" href="{{ $styles.RelPermalink }}" integrity="{{ $styles.Data.Integrity }}" crossorigin="anonymous" media="screen" />
  40. {{ end }}
  41. {{ end }}
  42. {{ if or (eq .Site.Params.colorscheme "auto") (eq .Site.Params.colorscheme "dark") }}
  43. {{ if .Site.IsServer }}
  44. {{ $cssOpts := (dict "targetPath" "css/coder-dark.css" "enableSourceMap" true ) }}
  45. {{ $styles := resources.Get "scss/coder-dark.scss" | resources.ExecuteAsTemplate "style.coder-dark.css" . | toCSS $cssOpts }}
  46. <link rel="stylesheet" href="{{ $styles.RelPermalink }}" media="screen">
  47. {{ else }}
  48. {{ $cssOpts := (dict "targetPath" "css/coder-dark.css" ) }}
  49. {{ $styles := resources.Get "scss/coder-dark.scss" | resources.ExecuteAsTemplate "style.coder-dark.css" . | toCSS $cssOpts | minify | fingerprint }}
  50. <link rel="stylesheet" href="{{ $styles.RelPermalink }}" integrity="{{ $styles.Data.Integrity }}" crossorigin="anonymous" media="screen" />
  51. {{ end }}
  52. {{ end }}
  53. {{ range .Site.Params.custom_css }}
  54. <link rel="stylesheet" href="{{ . | relURL }}" />
  55. {{ end }}
  56. {{ range .Site.Params.custom_scss }}
  57. {{/* We don't change the targetPath to because it's transparent to users */}}
  58. {{ if $.Site.IsServer }}
  59. {{ $cssOpts := (dict "enableSourceMap" true ) }}
  60. {{ $styles := resources.Get . | toCSS $cssOpts }}
  61. <link rel="stylesheet" href="{{ $styles.RelPermalink }}" media="screen">
  62. {{ else }}
  63. {{ $styles := resources.Get . | toCSS | minify | fingerprint }}
  64. <link rel="stylesheet" href="{{ $styles.RelPermalink }}" integrity="{{ $styles.Data.Integrity }}" crossorigin="anonymous" media="screen" />
  65. {{ end }}
  66. {{ end }}
  67. <link rel="icon" type="image/png" href="{{ .Site.Params.favicon_32 | default "/images/favicon-32x32.png" | absURL }}" sizes="32x32">
  68. <link rel="icon" type="image/png" href="{{ .Site.Params.favicon_16 | default "/images/favicon-16x16.png" | absURL }}" sizes="16x16">
  69. {{ range .AlternativeOutputFormats -}}
  70. {{ printf `<link rel="%s" type="%s" href="%s" title="%s" />` .Rel .MediaType.Type .Permalink $.Site.Title | safeHTML }}
  71. {{ end -}}
  72. {{ hugo.Generator }}
  73. </head>
  74. {{ $csClass := "colorscheme-light" }}
  75. {{ if eq .Site.Params.colorscheme "dark" }}
  76. {{ $csClass = "colorscheme-dark" }}
  77. {{ else if eq .Site.Params.colorscheme "auto" }}
  78. {{ $csClass = "colorscheme-auto" }}
  79. {{ end }}
  80. <body class="{{ $csClass }}{{ if .Site.Params.rtl }} rtl{{ end }}">
  81. <main class="wrapper">
  82. {{ partial "header.html" . }}
  83. <div class="content">
  84. {{ block "content" . }}{{ end }}
  85. </div>
  86. {{ partial "footer.html" . }}
  87. </main>
  88. {{ range .Site.Params.custom_js }}
  89. <script src="{{ . | relURL }}"></script>
  90. {{ end }}
  91. {{ template "_internal/google_analytics.html" . }}
  92. {{ if and .Site.Params.fathomAnalytics .Site.Params.fathomAnalytics.siteID }}
  93. {{- partial "analytics/fathom" . -}}
  94. {{ end }}
  95. </body>
  96. </html>