mirror of
https://github.com/thegeeklab/hugo-geekdoc.git
synced 2024-11-21 20:30:39 +00:00
rework search integration (#262)
This commit is contained in:
parent
00334dbfbf
commit
bbfc75ecb0
@ -1,5 +1,5 @@
|
||||
{{- $searchDataFile := printf "%s.searchdata.json" .Language.Lang -}}
|
||||
{{- $searchData := resources.Get "search/searchdata.json" | resources.ExecuteAsTemplate $searchDataFile . | resources.Minify -}}
|
||||
{{- $searchDataFile := printf "search/%s.data.json" .Language.Lang -}}
|
||||
{{- $searchData := resources.Get "search/data.json" | resources.ExecuteAsTemplate $searchDataFile . | resources.Minify -}}
|
||||
{
|
||||
"dataFile": {{ $searchData.RelPermalink | jsonify }},
|
||||
"indexConfig": {{ .Site.Params.GeekdocSearchConfig | jsonify }},
|
@ -23,22 +23,9 @@ markup:
|
||||
taxonomies:
|
||||
tag: tags
|
||||
|
||||
outputFormats:
|
||||
Search:
|
||||
name: "Search"
|
||||
mediaType: "application/json"
|
||||
# generated file: <baseName>.<mediaType."application/feed+json".suffixes[0]> = feed.json
|
||||
baseName: "searchconfig"
|
||||
isPlainText: false
|
||||
rel: "alternate"
|
||||
isHTML: false
|
||||
noUgly: true
|
||||
permalinkable: false
|
||||
|
||||
outputs:
|
||||
home:
|
||||
- HTML
|
||||
- SEARCH
|
||||
page:
|
||||
- HTML
|
||||
section:
|
||||
|
@ -32,19 +32,6 @@ enableRobotsTXT = true
|
||||
startLevel = 1
|
||||
endLevel = 9
|
||||
|
||||
[outputFormats.Search]
|
||||
name = "Search"
|
||||
mediaType = "application/json"
|
||||
baseName = "searchconfig"
|
||||
isPlainText = false
|
||||
rel = "alternate"
|
||||
isHTML = false
|
||||
noUgly = true
|
||||
permalinkable = false
|
||||
|
||||
[outputs]
|
||||
home = [ "HTML", "SEARCH" ]
|
||||
|
||||
[taxonomies]
|
||||
tag = "tags"
|
||||
|
||||
@ -83,8 +70,7 @@ home = [ "HTML", "SEARCH" ]
|
||||
# You can also specify this parameter per page in front matter.
|
||||
geekdocEditPath = "edit/main/exampleSite/content"
|
||||
|
||||
# (Optional, default true) Enables search function with flexsearch. To use the search you
|
||||
# have to ensure `outputFormats` and `outputs` are properly configured as well (see below).
|
||||
# (Optional, default true) Enables search function with flexsearch.
|
||||
# Index is built on the fly and might slow down your website.
|
||||
geekdocSearch = false
|
||||
|
||||
@ -162,23 +148,6 @@ markup:
|
||||
taxonomies:
|
||||
tag: tags
|
||||
|
||||
outputFormats:
|
||||
Search:
|
||||
name: "Search"
|
||||
mediaType: "application/json"
|
||||
# generated file: <baseName>.<mediaType."application/feed+json".suffixes[0]> = feed.json
|
||||
baseName: "searchconfig"
|
||||
isPlainText: false
|
||||
rel: "alternate"
|
||||
isHTML: false
|
||||
noUgly: true
|
||||
permalinkable: false
|
||||
|
||||
outputs:
|
||||
home:
|
||||
- HTML
|
||||
- SEARCH
|
||||
|
||||
params:
|
||||
# (Optional, default 6) Set how many table of contents levels to be showed on page.
|
||||
# Use false to hide ToC, note that 0 will default to 6 (https://gohugo.io/functions/default/)
|
||||
@ -214,8 +183,7 @@ params:
|
||||
# You can also specify this parameter per page in front matter.
|
||||
geekdocEditPath: edit/main/exampleSite/content
|
||||
|
||||
# (Optional, default true) Enables search function with flexsearch. To use the search you
|
||||
# have to ensure `outputFormats` and `outputs` are properly configured as well (see below).
|
||||
# (Optional, default true) Enables search function with flexsearch.
|
||||
# Index is built on the fly and might slow down your website.
|
||||
geekdocSearch: false
|
||||
|
||||
|
@ -69,19 +69,6 @@ To prepare your new site environment just a few steps are required:
|
||||
|
||||
[taxonomies]
|
||||
tag = "tags"
|
||||
|
||||
[outputFormats.Search]
|
||||
name = "Search"
|
||||
mediaType = "application/json"
|
||||
baseName = "searchconfig"
|
||||
isPlainText = false
|
||||
rel = "alternate"
|
||||
isHTML = false
|
||||
noUgly = true
|
||||
permalinkable = false
|
||||
|
||||
[outputs]
|
||||
home = [ "HTML", "SEARCH" ]
|
||||
```
|
||||
|
||||
5. Test your site.
|
||||
|
@ -1,3 +1,5 @@
|
||||
{{ if default true .Site.Params.GeekdocSearch }}
|
||||
<script defer src="{{ index (index .Site.Data.assets "search.js") "src" | relURL }}"></script>
|
||||
<script defer src="{{ index (index .Site.Data.assets "search.js") "src" | relURL }}"></script>
|
||||
{{- $searchConfig := resources.Get "search/config.json" | resources.ExecuteAsTemplate "search/config.json" . | resources.Minify -}}
|
||||
<!-- {{ $searchConfig.Permalink }} -->
|
||||
{{ end }}
|
||||
|
@ -24,7 +24,7 @@ document.addEventListener("DOMContentLoaded", function (event) {
|
||||
additionalProperties: false
|
||||
}
|
||||
|
||||
getJson("/searchconfig.json", function (searchConfig) {
|
||||
getJson("/search/config.min.json", function (searchConfig) {
|
||||
const configValidate = ajv.compile(configSchema)
|
||||
const valid = configValidate(searchConfig)
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user