diff options
author | Nan Xiao <me@nanx.me> | 2020-11-23 01:13:20 +0300 |
---|---|---|
committer | Nan Xiao <me@nanx.me> | 2020-11-23 01:13:20 +0300 |
commit | 52e850ecd28b69c7c6702dfd7270ce5b0f169a98 (patch) | |
tree | bbde20730d7c686243125becd9d95e956b8f7aca /layouts | |
parent | 699cb6c95366277e50bd7a557d6e8feaa58a9663 (diff) |
major update to work with latest hugo
Diffstat (limited to 'layouts')
-rw-r--r-- | layouts/404.html | 14 | ||||
-rw-r--r-- | layouts/_default/baseof.html | 86 | ||||
-rw-r--r-- | layouts/_default/list.html | 23 | ||||
-rw-r--r-- | layouts/_default/section.html | 28 | ||||
-rw-r--r-- | layouts/_default/single.html | 41 | ||||
-rw-r--r-- | layouts/_default/taxonomy.html | 23 | ||||
-rw-r--r-- | layouts/blog/section.html | 30 | ||||
-rw-r--r-- | layouts/blog/single.html | 69 | ||||
-rw-r--r-- | layouts/index.html | 33 | ||||
-rw-r--r-- | layouts/partials/content.html | 6 | ||||
-rw-r--r-- | layouts/partials/disqus.html | 18 | ||||
-rw-r--r-- | layouts/partials/footer.html | 5 | ||||
-rw-r--r-- | layouts/partials/footer_mathjax.html | 4 | ||||
-rw-r--r-- | layouts/partials/header.html | 62 | ||||
-rw-r--r-- | layouts/partials/list.html | 10 | ||||
-rw-r--r-- | layouts/partials/utterances.html | 15 |
16 files changed, 361 insertions, 106 deletions
diff --git a/layouts/404.html b/layouts/404.html index 4e1891b..cf627bb 100644 --- a/layouts/404.html +++ b/layouts/404.html @@ -1,5 +1,9 @@ -{{ partial "header.html" . }} - <section id="not-found"> - <a href="{{ .Site.BaseURL }}">404</a> - </section> -{{ partial "footer.html" . }} +{{ define "main" }} +<div class="container"> + <div class="my-5 text-center"> + <h1 class="mt-5">404</h1> + <p class="mb-3">page not found</p> + <p><a href="{{ .Site.BaseURL }}">back to the homepage</a></p> + </div> +</div> +{{ end }}
\ No newline at end of file diff --git a/layouts/_default/baseof.html b/layouts/_default/baseof.html new file mode 100644 index 0000000..376c7e3 --- /dev/null +++ b/layouts/_default/baseof.html @@ -0,0 +1,86 @@ +<!doctype html> +<html lang="{{ .Site.LanguageCode }}"> + +<head> + <meta charset="utf-8"> + <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> + <title>{{ block "title" . }}{{ if .IsHome }} {{ .Site.Title }} {{ else }} {{ .Title }} - {{ .Site.Title }} {{ end }}{{ end }}</title> + <meta name="HandheldFriendly" content="True"> + <meta name="MobileOptimized" content="320"> + <meta name="referrer" content="no-referrer"> + <meta name="description" content="{{ .Description | default .Site.Params.description }}" /> + <meta property="og:site_name" content="{{ .Site.Title }}" /> + <meta property="og:locale" content="en_US" /> + <meta property="og:type" content="article" /> + <meta property="og:url" content="{{ .Permalink }}" /> + <meta property="og:title" content="{{ if .Title }}{{ .Title }}{{ else }}{{ .Site.Title }}{{ end }}" /> + <meta property="og:image" content="{{ .Site.BaseURL }}{{ .Params.meta_img | default .Site.Params.logofile }}" /> + <meta property="og:description" content="{{ .Description | default .Site.Params.description }}" /> + + <meta name="twitter:card" content="{{ .Params.cardtype | default "summary_large_image" }}" /> + {{ if .Site.Params.twitter }} + <meta name="twitter:site" content="@{{ .Site.Params.twitter }}"> + <meta name="twitter:creator" content="@{{ .Site.Params.twitter }}"> + {{ end }} + <meta name="twitter:title" content="{{ .Title | default .Site.Title }}" /> + <meta name="twitter:description" content="{{ .Description | default .Site.Params.description }}" /> + <meta name="twitter:image" content="{{ .Site.BaseURL }}{{ .Params.meta_img | default .Site.Params.logofile }}" /> + + <link rel="canonical" href="{{ .Permalink }}"> + + <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/4.5.2/css/bootstrap.min.css" integrity="sha512-MoRNloxbStBcD8z3M/2BmnT+rg4IsMxPkXaGh2zD6LGNNFE80W3onsAhRcMAMrSoyWL9xD7Ert0men7vR8LUZg==" crossorigin="anonymous" /> + + <link rel="stylesheet" href="{{ .Site.BaseURL }}css/custom.css" /> + + {{ if .Site.Params.highlightjs }} + <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.2.0/styles/github-gist.min.css" integrity="sha512-od7JLoOTxM8w/HSKGzP9Kexc20K9p/M2zxSWsd7H1e4Ctf+8SQFtCWEZnW5u6ul5ehSECa5QmOk9ju2nQMmlVA==" crossorigin="anonymous" /> + {{ end }} + + {{ if .Site.Params.progressively }} + <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/progressively/1.2.5/progressively.min.css" integrity="sha512-TdJkMXwjtS9Gb8rN919K1JVdUv2+q5YHsKXPtJGDP79t1Nd5oCZy5mFA6Nr85Dsp6wJ1SUQgOyHPDulLzTjDcQ==" crossorigin="anonymous" /> + {{ end }} + + <link rel="shortcut icon" + href="{{ if .Site.Params.faviconfile }}{{ .Site.Params.faviconfile | absURL }}{{ else }}{{ .Site.BaseURL }}images/favicon.png{{ end }}"> + + {{ if .Site.RSSLink }} + <link href="{{ .Site.RSSLink }}" rel="alternate" type="application/rss+xml" title="{{ .Site.Title }}" /> + {{ end }} +</head> + +<body> + {{ block "main" . }}{{ end }} + + {{/* + <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.5.1/jquery.slim.min.js" integrity="sha512-/DXTXr6nQodMUiq+IUJYCt2PPOUjrHJ9wFrqpJ3XkgPNOZVfMok7cRw6CSxyCQxXn6ozlESsSh1/sMCTF1rL/g==" crossorigin="anonymous"></script> + <script src="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/4.5.2/js/bootstrap.min.js" integrity="sha512-M5KW3ztuIICmVIhjSqXe01oV2bpe248gOxqmlcYrEzAvws7Pw3z6BK0iGbrwvdrUQUhi3eXgtxp5I8PDo9YfjQ==" crossorigin="anonymous"></script> + */}} + + {{ if .Site.Params.highlightjs }} + <script src="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.2.0/highlight.min.js" integrity="sha512-TDKKr+IvoqZnPzc3l35hdjpHD0m+b2EC2SrLEgKDRWpxf2rFCxemkgvJ5kfU48ip+Y+m2XVKyOCD85ybtlZDmw==" crossorigin="anonymous"></script> + {{ range .Site.Params.highlightjslanguages }} + <script src="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.2.0/languages/{{.}}.min.js" defer></script> + {{ end }} + <script> + window.addEventListener('load', function() { + hljs.initHighlighting(); + }, true); + </script> + {{ end }} + + {{ if .Site.Params.progressively }} + <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/progressively/1.2.5/progressively.min.css" integrity="sha512-TdJkMXwjtS9Gb8rN919K1JVdUv2+q5YHsKXPtJGDP79t1Nd5oCZy5mFA6Nr85Dsp6wJ1SUQgOyHPDulLzTjDcQ==" crossorigin="anonymous" /> + <script> + window.addEventListener('load', function() { + progressively.init({delay: 30, throttle: 50}); + }, true); + </script> + {{ end }} + + {{ template "_internal/google_analytics_async.html" . }} + {{ if .Site.Params.uselatex }} + {{ partial "footer_mathjax.html" . }} + {{ end }} +</body> + +</html> diff --git a/layouts/_default/list.html b/layouts/_default/list.html new file mode 100644 index 0000000..669763a --- /dev/null +++ b/layouts/_default/list.html @@ -0,0 +1,23 @@ +{{ define "main" }} +{{ partial "header" . }} + +<div class="content"> + <div class="container"> + <div class="row justify-content-center"> + <div class="col-sm-12 col-lg-8"> + <div class="mx-0 mx-md-4"> + <h1>Tags</h1> + <hr> + <ul> + {{ range .Site.Taxonomies.tags }} + <li><a href="{{ .Page.Permalink }}">{{ .Page.Title }}</a> {{ .Count }}</li> + {{ end }} + </ul> + </div> + </div> + </div> + </div> +</div> + +{{ partial "footer" . }} +{{ end }}
\ No newline at end of file diff --git a/layouts/_default/section.html b/layouts/_default/section.html new file mode 100644 index 0000000..82a2e4d --- /dev/null +++ b/layouts/_default/section.html @@ -0,0 +1,28 @@ +{{ define "main" }} + {{ partial "header" . }} + + <div class="content"> + <div class="container"> + <div class="row justify-content-center"> + <div class="col-sm-12 col-lg-8"> + <div class="markdown"> + {{ partial "content" . }} + </div> + + <div class="mx-0 mx-md-4 posts"> + <h1>Sections</h1> + <ul> + {{ range sort .Pages "Title" "asc" }} + <li> + <a href="{{ .Permalink }}"><span>{{ .Title }}</span></a> + </li> + {{ end }} + </ul> + </div> + </div> + </div> + </div> + </div> + + {{ partial "footer" . }} +{{ end }} diff --git a/layouts/_default/single.html b/layouts/_default/single.html index fef8f2c..694fc19 100644 --- a/layouts/_default/single.html +++ b/layouts/_default/single.html @@ -1,26 +1,19 @@ -{{ partial "header.html" . }} +{{ define "main" }} + {{ partial "header" . }} -<section id=content> - <h1>{{ if .Params.heading }} {{ .Params.heading }} {{ else }} {{ .Title }} {{ end }}</h1> + <div class="content"> + <div class="container"> + <div class="row justify-content-center"> + <div class="col-sm-12 col-lg-8"> + <h1 class="mx-0 mx-md-4">{{ .Title }}</h1> + <div class="markdown"> + {{ partial "content" . }} + </div> + </div> + </div> + </div> + </div> - <div id=sub-header> - {{ .Params.author }} · {{ .Date.Format (.Site.Params.dateform | default "2006/01/02") }} · {{ .ReadingTime }} minute read - </div> - - <div class="entry-content"> - {{ .Content }} - </div> - - <div id=links> - {{ if .PrevInSection }} - <a class="basic-alignment left" href="{{.PrevInSection.Permalink}}">« {{.PrevInSection.Title}}</a> - {{ end }} - {{ if .NextInSection }} - <a class="basic-alignment left" href="{{.NextInSection.Permalink}}">{{.NextInSection.Title}} »</a> - {{ end }} - </div> -</section> - -{{ partial "disqus.html" .}} - -{{ partial "footer.html" . }} + {{ partial "utterances.html" .}} + {{ partial "footer" . }} +{{ end }} diff --git a/layouts/_default/taxonomy.html b/layouts/_default/taxonomy.html new file mode 100644 index 0000000..698387d --- /dev/null +++ b/layouts/_default/taxonomy.html @@ -0,0 +1,23 @@ +{{ define "main" }} +{{ partial "header" . }} + +<div class="content"> + <div class="container"> + <div class="row justify-content-center"> + <div class="col-sm-12 col-lg-8"> + <div class="mx-0 mx-md-4"> + <h2>Posts about {{ .Title }}</h2> + <hr> + <ul> + {{ range .Data.Pages.ByPublishDate }} + {{ partial "list" . }} + {{ end }} + </ul> + </div> + </div> + </div> + </div> +</div> + +{{ partial "footer" . }} +{{ end }}
\ No newline at end of file diff --git a/layouts/blog/section.html b/layouts/blog/section.html new file mode 100644 index 0000000..d2df12b --- /dev/null +++ b/layouts/blog/section.html @@ -0,0 +1,30 @@ +{{ define "main" }} + {{ partial "header" . }} + + <div class="content"> + <div class="container"> + <div class="row justify-content-center"> + <div class="col-sm-12 col-lg-8"> + <div class="markdown"> + {{ partial "content" . }} + </div> + + <div class="mx-0 mx-md-4 posts"> + <h1>Blog</h1> + <hr> + <ul class="list-unstyled"> + {{ range .Data.Pages.GroupByDate "2006" "desc"}} + <li class="groupby">{{ .Key }}</li> + {{ range sort .Pages "Date" "desc" }} + {{ partial "list" . }} + {{ end }} + {{ end }} + </ul> + </div> + </div> + </div> + </div> + </div> + + {{ partial "footer" . }} +{{ end }} diff --git a/layouts/blog/single.html b/layouts/blog/single.html new file mode 100644 index 0000000..ad97756 --- /dev/null +++ b/layouts/blog/single.html @@ -0,0 +1,69 @@ +{{ define "main" }} +{{ partial "header" . }} + +<div class="content"> + <div class="container"> + <div class="row justify-content-center"> + <div class="col-sm-12 col-lg-8"> + <h1 class="mx-0 mx-md-4 blog-post-title">{{ .Title }}</h1> + + <div class="mb-md-4 meta"> + {{ if not .Params.noauthor }} + {{ if .Params.author }} + <span class="author" title="{{ .Params.Author }}"> + {{ .Params.author }} + </span> + {{ end }} + {{ end }} + + <span class="date middot" title='{{ .Date.Format "Mon Jan 2 2006 15:04:05 MST" }}'> + {{ .Date.Format "2006-01-02" }} + </span> + + <span class="reading-time middot"> + {{ .ReadingTime }} min read + </span> + + <div class="d-none d-md-inline tags"> + <ul class="list-unstyled d-inline"> + {{ range .Params.tags }} + <li class="d-inline middot"> + <a href="{{ "/tags/" | relLangURL }}{{ . | urlize }}">{{ . }}</a> + </li> + {{ end }} + </ul> + </div> + </div> + + <div class="markdown blog-post-content"> + {{ partial "content" . }} + </div> + + {{ if .Site.Params.posts_navigation }} + <div class="navigation"> + <div class="row"> + <div class="col-12 col-lg-6"> + {{ if .PrevInSection }} + <div class="mx-0 mx-md-4 mt-4 text-left"> + <a href="{{ .PrevInSection.Permalink }}">« {{ .PrevInSection.Title }}</a> + </div> + {{ end }} + </div> + <div class="col-12 col-lg-6"> + {{ if .NextInSection }} + <div class="mx-0 mx-md-4 mt-4 text-right"> + <a href="{{ .NextInSection.Permalink }}">{{ .NextInSection.Title }} »</a> + </div> + {{ end }} + </div> + </div> + </div> + {{ end }} + </div> + </div> + </div> +</div> + +{{ partial "utterances.html" .}} +{{ partial "footer" . }} +{{ end }}
\ No newline at end of file diff --git a/layouts/index.html b/layouts/index.html index 349f633..015e7ac 100644 --- a/layouts/index.html +++ b/layouts/index.html @@ -1,16 +1,23 @@ -{{ partial "header.html" . }} +{{ define "main" }} +{{ partial "header" . }} -<section id=content> - <ul class=posts_listing> - {{ range .Data.Pages.ByDate.Reverse }} - <li> - <h2><a href="{{ .Permalink }}">{{ .Title }}</a></h2> - <div id=date> - <time>{{ .Date.Format (.Site.Params.dateform | default "2006/01/02") }}</time> +<div class="content"> + <div class="container"> + <div class="row justify-content-center"> + <div class="col-sm-12 col-lg-8"> + + <div class="mx-0 mx-md-4 posts"> + {{ range .Data.Pages.GroupByDate "2006" "desc"}} + {{ range sort .Pages "Date" "desc" }} + {{ partial "list" . }} + {{ end }} + {{ end }} + </div> + + </div> </div> - </li> - {{ end }} - </ul> -</section> + </div> +</div> -{{ partial "footer.html" . }} +{{ partial "footer" . }} +{{ end }}
\ No newline at end of file diff --git a/layouts/partials/content.html b/layouts/partials/content.html new file mode 100644 index 0000000..b4af9e9 --- /dev/null +++ b/layouts/partials/content.html @@ -0,0 +1,6 @@ +{{ if .Site.Params.progressively }} + {{ $newImage := (print "<figure class=\"progressive\"><img class=\"progressive__img progressive--not-loaded\" data-progressive=\"" .Site.BaseURL "$1/$2\" src=\"" .Site.BaseURL "$1/low/$2\" alt=$3 $4></figure>") }} + {{ .Content | replaceRE "<img src=\"/(.*)\\/(.*)\" alt=(.*) (.*)>" $newImage | safeHTML }} +{{ else }} + {{ .Content }} +{{ end }} diff --git a/layouts/partials/disqus.html b/layouts/partials/disqus.html deleted file mode 100644 index 4c0a62e..0000000 --- a/layouts/partials/disqus.html +++ /dev/null @@ -1,18 +0,0 @@ -<section id="comments"> -<div id="disqus_thread"></div> -<script type="text/javascript"> - -(function() { - // Don't ever inject Disqus on localhost--it creates unwanted - // discussions from 'localhost:1313' on your Disqus account... - if (window.location.hostname == "localhost") - return; - - var dsq = document.createElement('script'); dsq.type = 'text/javascript'; dsq.async = true; - var disqus_shortname = '{{ .Site.DisqusShortname }}'; - dsq.src = '//' + disqus_shortname + '.disqus.com/embed.js'; - (document.getElementsByTagName('head')[0] || document.getElementsByTagName('body')[0]).appendChild(dsq); -})(); -</script> -<noscript>Please enable JavaScript to view the <a href="https://disqus.com/?ref_noscript">comments powered by Disqus.</a></noscript> -</section> diff --git a/layouts/partials/footer.html b/layouts/partials/footer.html index 97481ec..e69de29 100644 --- a/layouts/partials/footer.html +++ b/layouts/partials/footer.html @@ -1,5 +0,0 @@ - {{ template "_internal/google_analytics_async.html" . }} - {{ partial "footer_mathjax.html" . }} - -</body> -</html> diff --git a/layouts/partials/footer_mathjax.html b/layouts/partials/footer_mathjax.html index 7da95a1..191286e 100644 --- a/layouts/partials/footer_mathjax.html +++ b/layouts/partials/footer_mathjax.html @@ -1,4 +1,4 @@ -{{ if and (not .Params.disable_mathjax) (or (in (string .Content) "\\") (in (string .Content) "$")) }} +{{ if or (in (string .Content) "\\") (in (string .Content) "$") }} <script src="{{ "/js/math-code.js" | relURL }}"></script> -<script async src="{{ .Site.Params.MathJaxCDN | default "//cdnjs.cloudflare.com/ajax/libs" }}/mathjax/{{ .Site.Params.MathJaxVersion | default "2.7.1" }}/MathJax.js?config=TeX-MML-AM_CHTML"></script> +<script async src="{{ .Site.Params.MathJaxCDN | default "//cdnjs.cloudflare.com/ajax/libs" }}/mathjax/{{ .Site.Params.MathJaxVersion | default "2.7.5" }}/MathJax.js?config=TeX-MML-AM_CHTML"></script> {{ end }} diff --git a/layouts/partials/header.html b/layouts/partials/header.html index 74d2616..0164b90 100644 --- a/layouts/partials/header.html +++ b/layouts/partials/header.html @@ -1,40 +1,24 @@ -<!DOCTYPE html> -<html lang="{{ .Site.LanguageCode }}"> -<head> - <meta charset="utf-8"> - <meta http-equiv="X-UA-Compatible" content="chrome=1"> - <meta name="HandheldFriendly" content="True"> - <meta name="MobileOptimized" content="320"> - <meta name="viewport" content="width=device-width, initial-scale=1.0"> - <meta name="referrer" content="no-referrer"> - {{ if .Site.Params.description }}<meta name="description" content="{{ .Site.Params.description }}">{{ end }} +<div class="mt-xl header"> + <div class="container"> + <div class="row justify-content-center"> + <div class="col-auto"> + <a href="{{ .Site.BaseURL }}"> + <h1 class="name">{{ .Site.Params.sitename }}</h1> + </a> + </div> + </div> - <link rel="icon" type="image/png" href="/favicon.png"> - - <title> - {{ $url := replace .Permalink ( printf "%s" .Site.BaseURL) "" }} - {{ if eq $url "/" }} - {{ .Site.Title }} - {{ else }} - {{ if .Params.heading }} {{ .Params.heading }} {{ else }} {{ .Title }} {{ end }} - {{ end }} - </title> - <link rel="canonical" href="{{ .Permalink }}"> - - <link rel="stylesheet" href="{{ "/css/fonts.css" | relURL }}" /> - <link rel="stylesheet" href="{{ "/css/style.css" | relURL }}" /> - - {{ if .RSSLink }} - <link href="{{ .RSSLink }}" rel="alternate" type="application/rss+xml" title="{{ .Site.Title }}" /> - {{ end }} -</head> - -<body> -<section id=nav> - <h1><a href="/">{{ .Site.Params.sitename }}</a></h1> - <ul> - {{ range .Site.Menus.main }} - <li><a href="{{ .URL }}">{{ .Name }}</a></li> - {{ end }} - </ul> -</section> + <div class="row justify-content-center"> + <ul class="nav nav-primary"> + {{ range .Site.Menus.primary.ByWeight }} + <li class="nav-item"> + <a class="nav-link{{ if .Identifier }} text-{{ .Identifier }}{{ end }}" href="{{ .URL }}"> + {{ .Pre }} + {{ .Name }} + </a> + </li> + {{ end }} + </ul> + </div> + </div> +</div>
\ No newline at end of file diff --git a/layouts/partials/list.html b/layouts/partials/list.html new file mode 100644 index 0000000..ed18462 --- /dev/null +++ b/layouts/partials/list.html @@ -0,0 +1,10 @@ +<ul class="list-unstyled"> + {{ range .Data.Pages.ByDate.Reverse }} + <li> + <h2 class="meta-title"><a href="{{ .Permalink }}">{{ .Title }}</a></h2> + <div class="meta-date"> + <time>{{ .Date.Format (.Site.Params.dateform | default "2006/01/02") }}</time> + </div> + </li> + {{ end }} +</ul>
\ No newline at end of file diff --git a/layouts/partials/utterances.html b/layouts/partials/utterances.html new file mode 100644 index 0000000..9a4228b --- /dev/null +++ b/layouts/partials/utterances.html @@ -0,0 +1,15 @@ +<section id="comments"> + <div class="py-3 content"> + <div class="container"> + <div class="row justify-content-center"> + <div class="col-sm-12 col-lg-8"> + <div class="comments"> + <script src="https://utteranc.es/client.js" repo="{{ .Site.Params.commentsrepo }}" + issue-term="pathname" label="comment" theme="github-light" crossorigin="anonymous" async> + </script> + </div> + </div> + </div> + </div> + </div> +</section>
\ No newline at end of file |