header.html 4.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879
  1. <!DOCTYPE html>
  2. <html lang="{{ .Site.LanguageCode | default "en-us" }}">
  3. <head>
  4. <meta charset="utf-8">
  5. <meta name="viewport" content="width=device-width, initial-scale=1">
  6. <meta http-equiv="X-UA-Compatible" content="IE=edge">
  7. <meta name="theme" content="hugo-academic">
  8. {{ .Hugo.Generator }}
  9. {{ with .Site.Params.name }}<meta name="author" content="{{ . }}">{{ end }}
  10. {{ with .Site.Params.role }}<meta name="description" content="{{ . }}">{{ end }}
  11. {{/* Default to enabling highlighting, but allow the user to override it in .Params or .Site.Params.
  12. Use $.Scratch to store "highlight_enabled", so that we can read it again in footer.html. */}}
  13. {{ $.Scratch.Set "highlight_enabled" true }}
  14. {{ if isset .Params "highlight" }}
  15. {{ $.Scratch.Set "highlight_enabled" .Params.highlight }}
  16. {{ else if isset .Site.Params "highlight" }}
  17. {{ $.Scratch.Set "highlight_enabled" .Site.Params.highlight }}
  18. {{ end }}
  19. {{ if $.Scratch.Get "highlight_enabled" }}
  20. {{ $v := .Site.Params.highlight_version | default "9.9.0" }}
  21. {{ with .Site.Params.highlight_style }}
  22. <link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/{{ $v }}/styles/{{ . }}.min.css">
  23. {{ else }}
  24. <link rel="stylesheet" href="{{ "/css/highlight.min.css" | relURL }}">
  25. {{ end }}
  26. {{ end }}
  27. {{ if not .Site.Params.disable_sri }}
  28. {{ printf "<link rel=\"stylesheet\" href=\"https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/3.3.7/css/bootstrap.min.css\" integrity=\"%s\" crossorigin=\"anonymous\">" .Site.Data.sri.css.bootstrap | safeHTML }}
  29. {{ printf "<link rel=\"stylesheet\" href=\"https://cdnjs.cloudflare.com/ajax/libs/academicons/1.8.1/css/academicons.min.css\" integrity=\"%s\" crossorigin=\"anonymous\">" .Site.Data.sri.css.academicons | safeHTML }}
  30. {{ printf "<link rel=\"stylesheet\" href=\"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css\" integrity=\"%s\" crossorigin=\"anonymous\">" .Site.Data.sri.css.fontAwesome | safeHTML }}
  31. {{ else }}
  32. <link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/3.3.7/css/bootstrap.min.css">
  33. <link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/academicons/1.8.1/css/academicons.min.css">
  34. <link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css">
  35. {{ end }}
  36. {{/* We cannot use SRI with Google Fonts because the CSS is dynamically generated according to the user agent */}}
  37. {{- partial "css/parse_theme.css" . -}}
  38. {{- $scr := .Scratch -}}
  39. {{ with ($scr.Get "google_fonts") }}
  40. <link rel="stylesheet" href="//fonts.googleapis.com/css?family={{- . -}}">
  41. {{ end }}
  42. <link rel="stylesheet" href="{{ "styles.css" | relURL }}">
  43. {{ range .Site.Params.custom_css }}
  44. <link rel="stylesheet" href="{{ "/css/" | relURL }}{{ . }}">
  45. {{ end }}
  46. {{ if .Site.GoogleAnalytics }}
  47. <script>
  48. window.ga=window.ga||function(){(ga.q=ga.q||[]).push(arguments)};ga.l=+new Date;
  49. ga('create', '{{ .Site.GoogleAnalytics }}', 'auto');
  50. ga('require', 'eventTracker');
  51. ga('require', 'outboundLinkTracker');
  52. ga('require', 'urlChangeTracker');
  53. ga('send', 'pageview');
  54. </script>
  55. <script async src="//www.google-analytics.com/analytics.js"></script>
  56. {{ if not .Site.Params.disable_sri }}
  57. {{ printf "<script async src=\"https://cdnjs.cloudflare.com/ajax/libs/autotrack/2.4.1/autotrack.js\" integrity=\"%s\" crossorigin=\"anonymous\"></script>" .Site.Data.sri.js.autotrack | safeHTML }}
  58. {{ else }}
  59. <script async src="//cdnjs.cloudflare.com/ajax/libs/autotrack/2.4.1/autotrack.js"></script>
  60. {{ end }}
  61. {{ end }}
  62. <link rel="alternate" href="{{ .RSSLink | default .Site.RSSLink }}" type="application/rss+xml" title="{{ .Site.Title }}">
  63. <link rel="feed" href="{{ .RSSLink | default .Site.RSSLink }}" type="application/rss+xml" title="{{ .Site.Title }}">
  64. <link rel="icon" type="image/png" href="{{ "/img/icon.png" | relURL }}">
  65. <link rel="apple-touch-icon" type="image/png" href="{{ "/img/apple-touch-icon.png" | relURL }}">
  66. <link rel="canonical" href="{{ .Permalink }}">
  67. {{ partial "head_custom" . }}
  68. <title>{{ if not .IsHome }}{{ .Title }} | {{ end }}{{ .Site.Title }}</title>
  69. </head>
  70. <body id="top" data-spy="scroll" data-target="#navbar-main" data-offset="71">