diff options
author | amzrk2 | 2020-06-16 14:00:53 +0800 |
---|---|---|
committer | amzrk2 | 2020-06-16 14:00:53 +0800 |
commit | c42924047c6f654c4723746790e041f8907ed378 (patch) | |
tree | 9d826ac811c3861da8ce9e7938d35a3147f4db36 /layouts | |
parent | e7587236dbe98775315619d4f3b8d3f335001583 (diff) | |
download | hugo-theme-fuji-c42924047c6f654c4723746790e041f8907ed378.tar.gz hugo-theme-fuji-c42924047c6f654c4723746790e041f8907ed378.tar.bz2 hugo-theme-fuji-c42924047c6f654c4723746790e041f8907ed378.zip |
Searching now works
Diffstat (limited to 'layouts')
-rw-r--r-- | layouts/_default/index.json | 2 | ||||
-rw-r--r-- | layouts/_default/search.html | 29 | ||||
-rw-r--r-- | layouts/partials/post-meta.html | 2 | ||||
-rw-r--r-- | layouts/partials/scripts-end.html | 27 |
4 files changed, 33 insertions, 27 deletions
diff --git a/layouts/_default/index.json b/layouts/_default/index.json index bf08b0f..e582dda 100644 --- a/layouts/_default/index.json +++ b/layouts/_default/index.json @@ -1,5 +1,5 @@ {{- $.Scratch.Add "search" slice -}} {{- range (where .Site.RegularPages "Type" "in" .Site.Params.mainSections) -}} - {{- $.Scratch.Add "search" (dict "title" .Title "tags" .Params.tags "permalink" .Permalink) -}} + {{- $.Scratch.Add "search" (dict "title" .Title "tags" .Params.tags "content" .Plain "permalink" .Permalink "date" (.Date.Format "2006-01-02")) -}} {{- end -}} {{- $.Scratch.Get "search" | jsonify -}}
\ No newline at end of file diff --git a/layouts/_default/search.html b/layouts/_default/search.html index 0911f06..c37d6b9 100644 --- a/layouts/_default/search.html +++ b/layouts/_default/search.html @@ -3,14 +3,37 @@ <div class="page-info"> <form class="search-form" method="GET"> <div class="search-input"> - <input name="s" type="text" autocapitalize="off" autocomplete="off" autocorrect="off" + <input name="s" type="search" autocapitalize="off" autocomplete="off" autocorrect="off" spellcheck="false" /> - </div> - <div class="search-submit"> <button type="submit">SEARCH</button> </div> </form> </div> <!-- search result and template --> +<div class="search-result-info" style="display: none;"><span>搜索用时:[TIME] ms,找到 [NUM] 个结果</span></div> +<div class="search-result-info" style="display: none;"><span>搜索未找到结果</span></div> +<div class="search-result-info" style="display: none;"><span>无法获取索引</span></div> <div id="search-result"></div> +<script id="search-result-template" type="text/fuse-template"> + {{ "<% for(var i = 0; i < $data.length; i++){ %>" | safeHTML }} + <div class="post"> + <h3 class="post-item post-title-archive"> + <a href="<%= $data[i].item.permalink %>">{{ "<%= $data[i].item.title %>" | safeHTML }}</a> + </h3> + <div class="post-item post-meta-archive"> + <span><ion-icon name="today"></ion-icon> {{- "<%= $data[i].item.date %>" | safeHTML -}}</span> + <span> + <ion-icon name="pricetags"></ion-icon> + {{- "<% if ($data[i].item.tags && $data[i].item.tags.length > 0) { %>" | safeHTML -}} + {{- "<% for(var j = 0; j < $data[i].item.tags.length; j++){ %>" | safeHTML -}} + {{- "<%= $data[i].item.tags[j] %> " | safeHTML -}} + {{- "<% } %>" | safeHTML -}} + {{- "<% } else { %>" | safeHTML -}} + {{- i18n "postMetaNoTag" -}} + {{- "<% } %>" | safeHTML }} + </span> + </div> + </div> + {{ "<% } %>" | safeHTML }} +</script> {{ end }}
\ No newline at end of file diff --git a/layouts/partials/post-meta.html b/layouts/partials/post-meta.html index 5176053..3e366e7 100644 --- a/layouts/partials/post-meta.html +++ b/layouts/partials/post-meta.html @@ -1 +1 @@ -<span><ion-icon name="today"></ion-icon></ion-icon> {{ .Date.Format "2006-01-02" }}</span>{{ if .Site.Params.showWordCounter }}<span><ion-icon name="file-tray"></ion-icon> {{ .WordCount }}{{ i18n "postMetaWordCount" }}</span>{{ end }}{{ if .Site.Params.showReadTime }}<span><ion-icon name="stopwatch"></ion-icon> {{ .ReadingTime }}{{ i18n "postMetaReadingTime" }}</span>{{ end }}<span><ion-icon name="pricetags"></ion-icon> {{ if .Params.tags }}{{ range .Params.tags }}<a href="{{ "/tags/" | relURL }}{{ . | urlize}}">{{ . }}</a> {{ end }}{{ else }}{{ i18n "postMetaNoTag" }}{{ end }}</span>
\ No newline at end of file +<span><ion-icon name="today"></ion-icon> {{ .Date.Format "2006-01-02" }}</span>{{ if .Site.Params.showWordCounter }}<span><ion-icon name="file-tray"></ion-icon> {{ .WordCount }}{{ i18n "postMetaWordCount" }}</span>{{ end }}{{ if .Site.Params.showReadTime }}<span><ion-icon name="stopwatch"></ion-icon> {{ .ReadingTime }}{{ i18n "postMetaReadingTime" }}</span>{{ end }}<span><ion-icon name="pricetags"></ion-icon> {{ if .Params.tags }}{{ range .Params.tags }}<a href="{{ "/tags/" | relURL }}{{ . | urlize}}">{{ . }}</a> {{ end }}{{ else }}{{ i18n "postMetaNoTag" }}{{ end }}</span>
\ No newline at end of file diff --git a/layouts/partials/scripts-end.html b/layouts/partials/scripts-end.html index 69c5dca..2959beb 100644 --- a/layouts/partials/scripts-end.html +++ b/layouts/partials/scripts-end.html @@ -2,27 +2,8 @@ <script async nomodule src="https://cdn.jsdelivr.net/npm/ionicons@5.0.1/dist/ionicons/ionicons.js"></script> {{ if eq .Section "search" }} -<script src="https://cdn.jsdelivr.net/npm/fuse.js@6.1.0/dist/fuse.js"></script> -<!-- Search result template --> -<script src="https://cdn.jsdelivr.net/npm/art-template@4.13.2/lib/template-web.min.js"></script> -<script id="search-result-template" type="text/fuse-template"> - {{ "<% for(var i = 0; i < $data.length; i++){ %>" | safeHTML }} - <div class="post"> - <h3 class="post-item post-title-archive"> - <a href="<%= $data[i].item.permalink %>">{{ "<%= $data[i].item.title %>" | safeHTML }}</a> - </h3> - <div class="post-item post-meta-archive"> - {{ "<% if ($data[i].item.tags && $data[i].item.tags.length > 0) { %>" | safeHTML }} - {{ "<% for(var j = 0; j < $data[i].item.tags.length; j++){ %>" | safeHTML }} - {{ "<%= $data[i].item.tags[j] %>" | safeHTML }} - {{ "<% } %>" | safeHTML }} - {{ "<% } else { %>" | safeHTML }} - No Tag - {{ "<% } %>" | safeHTML }} - </div> - </div> - {{ "<% } %>" | safeHTML }} -</script> +<script defer src="https://cdn.jsdelivr.net/npm/fuse.js@6.1.0/dist/fuse.js"></script> +<script defer src="https://cdn.jsdelivr.net/npm/art-template@4.13.2/lib/template-web.min.js"></script> {{ else if eq .Section "archives" }} {{ else }} <script defer src="https://cdn.jsdelivr.net/npm/prismjs@1.20.0/components/prism-core.min.js"></script> @@ -37,6 +18,7 @@ <!-- prettier-ignore --> <script> // in-post aplayer + /* beautify preserve:start */ var aPlayer = new APlayer({ container: document.getElementById('post-aplayer'), theme: '#8f82bc', @@ -49,8 +31,9 @@ url: '{{ .playerURL }}', cover: '{{ .playerCover }}' }, - {{- end -}} + {{- end -}}] }); + /* beautify preserve:end */ // aplayer toc anchors fix // see https://github.com/MoePlayer/APlayer/issues/242#issuecomment-602471423 document.addEventListener('DOMContentLoaded', function () { |