Initial commit
This commit is contained in:
63
themes/reveal-hugo/layouts/shortcodes/slide.html
Normal file
63
themes/reveal-hugo/layouts/shortcodes/slide.html
Normal file
@ -0,0 +1,63 @@
|
||||
{{- $scratch := .Scratch -}}
|
||||
{{- $scratch.Set "slides" slice -}}
|
||||
{{- $content := .Get "content" -}}
|
||||
{{- if $content -}}
|
||||
{{- $lookup := split $content "." }}
|
||||
{{ $markdownContent := .Page.Site.Data }}
|
||||
{{- range $dataPath := $lookup -}}
|
||||
{{- $markdownContent = index $markdownContent $dataPath -}}
|
||||
{{- end -}}
|
||||
{{- $html := $markdownContent | markdownify -}}
|
||||
{{- $html := replace $html "<hr>" "<hr />" -}}
|
||||
{{- $slides := split $html "<hr />" -}}
|
||||
{{- range $slides -}}
|
||||
{{- $scratch.Add "slides" . -}}
|
||||
{{- end -}}
|
||||
{{- else -}}
|
||||
{{- $scratch.Add "slides" "" -}}
|
||||
{{- end -}}
|
||||
{{- $params := . -}}
|
||||
{{- $noPrefix := slice "id" "class" -}}
|
||||
{{- $noOutput := slice "content" "template" -}}
|
||||
{{- $template := $params.Get "template" -}}
|
||||
{{- if $template -}}
|
||||
{{- $scratch.Add "templateParams" slice -}}
|
||||
{{- with $.Site.Params.reveal_hugo.templates -}}
|
||||
{{- $scratch.Add "templateParams" . -}}
|
||||
{{- end -}}
|
||||
{{- if ne $.Page.File.LogicalName "_index.md" -}}
|
||||
{{- $scratch.Add "templateParams" ($.Site.GetPage $.Page.Section).Params.reveal_hugo.templates -}}
|
||||
{{- end -}}
|
||||
{{- with $.Page.Params.reveal_hugo.templates -}}
|
||||
{{- $scratch.Add "templateParams" . -}}
|
||||
{{- end -}}
|
||||
{{- $scratch.Add "templateParams" (slice $.Page.Params.reveal_hugo.templates) -}}
|
||||
{{- $templateParams := $scratch.Get "templateParams" }}
|
||||
{{- range $templateParams -}}
|
||||
{{- if (ne . nil) -}}
|
||||
{{- range $key, $value := (index . $template) -}}
|
||||
{{- $scratch.SetInMap "template" $key $value | safeHTMLAttr -}}
|
||||
{{- end -}}
|
||||
{{- end -}}
|
||||
{{- end -}}
|
||||
{{- end -}}
|
||||
{{- range $sindex, $svalue := $scratch.Get "slides" }}
|
||||
<section data-noprocess data-shortcode-slide
|
||||
{{- if $template -}}
|
||||
{{- range $key, $value := ($scratch.Get "template") }}
|
||||
{{- $attrName := cond (in $noPrefix $key) $key (delimit (slice "data" $key) "-") }}
|
||||
{{ $attrName | safeHTMLAttr }}="{{ $value }}"
|
||||
{{- end }}
|
||||
data-template="{{ $template }}"
|
||||
{{- end -}}
|
||||
{{- range $key, $value := $.Params -}}
|
||||
{{- if not (in $noOutput $key) -}}
|
||||
{{- $attrName := cond (in $noPrefix $key) $key (delimit (slice "data" $key) "-") }}
|
||||
{{ $attrName | safeHTMLAttr }}="{{ $value }}"
|
||||
{{- end -}}
|
||||
{{- end -}}>
|
||||
{{ $svalue | safeHTML }}
|
||||
{{- if ne $sindex (sub (len ($scratch.Get "slides")) 1) -}}
|
||||
</section>
|
||||
{{- end -}}
|
||||
{{- end -}}
|
Reference in New Issue
Block a user