mirror of
https://github.com/dillonzq/LoveIt.git
synced 2024-11-27 00:56:19 +01:00
46 lines
2.3 KiB
JSON
46 lines
2.3 KiB
JSON
{{- if .Site.Params.search -}}
|
|
{{- $index := slice -}}
|
|
{{- $pages := .Site.RegularPages -}}
|
|
{{- if .Site.Params.page.hiddenFromSearch -}}
|
|
{{- $pages = where $pages "Params.hiddenfromsearch" false -}}
|
|
{{- else -}}
|
|
{{- $pages = where $pages "Params.hiddenfromsearch" "!=" true -}}
|
|
{{- end -}}
|
|
{{- range $pages -}}
|
|
{{- $uri := .RelPermalink -}}
|
|
{{- if $.Site.Params.search.absoluteURL -}}
|
|
{{- $uri = .Permalink -}}
|
|
{{- end -}}
|
|
{{- $meta := dict "uri" $uri "title" .Title "tags" .Params.tags "categories" .Params.categories -}}
|
|
{{- $meta = .PublishDate.Format ($.Site.Params.dateFormat | default "2006-01-02") | dict "date" | merge $meta -}}
|
|
{{- with .Description -}}
|
|
{{- $index = $index | append (dict "content" . "objectID" $uri | merge $meta) -}}
|
|
{{- end -}}
|
|
{{- $params := .Params | merge $.Site.Params.page -}}
|
|
{{/* Extended Markdown syntax */}}
|
|
{{- $content := dict "content" .Content "ruby" $params.ruby "fraction" $params.fraction "fontawesome" $params.fontawesome | partial "function/content.html" -}}
|
|
{{/* Remove line number for code */}}
|
|
{{- $content = $content | replaceRE `<span class="lnt?"> *\d*\n?</span>` "" -}}
|
|
{{- range $i, $contenti := split $content "<h2 id=" -}}
|
|
{{- if gt $i 0 -}}
|
|
{{- $contenti = printf "<h2 id=%s" $contenti -}}
|
|
{{- end -}}
|
|
{{- range $j, $contentj := split $contenti "<h3 id=" -}}
|
|
{{- if gt $j 0 -}}
|
|
{{- $contentj = printf "<h3 id=%s" $contentj -}}
|
|
{{- end -}}
|
|
{{/* Plainify, unescape and remove (\n, \t) */}}
|
|
{{- $contentj = $contentj | plainify | htmlUnescape | replaceRE `[\n\t ]+` " " -}}
|
|
{{- if gt $.Site.Params.search.contentLength 0 -}}
|
|
{{- $contentj = substr $contentj 0 $.Site.Params.search.contentLength -}}
|
|
{{- end -}}
|
|
{{- if $contentj | and (ne $contentj " ") -}}
|
|
{{- $one := printf "%s:%d:%d" $uri $i $j | dict "content" $contentj "objectID" | merge $meta -}}
|
|
{{- $index = $index | append $one -}}
|
|
{{- end -}}
|
|
{{- end -}}
|
|
{{- end -}}
|
|
{{- end -}}
|
|
|
|
{{- $index | jsonify | safeJS -}}
|
|
{{- end -}}
|