45 lines
1.6 KiB
HTML
45 lines
1.6 KiB
HTML
{{ $fig := newScratch }}
|
|
{{ if .Get "caption" }}
|
|
{{ $fig.Set "caption" (.Get "caption") }}
|
|
{{ else if .Get "alt" }}
|
|
{{ $fig.Set "caption" (.Get "alt") }}
|
|
{{ end }}
|
|
<!-- resolve absolute image path -->
|
|
{{ $permalink := $.Page.Permalink }}
|
|
{{ $image := .Get "src" }}
|
|
{{ $image_link_absolute := (findRE "^/" $image) }}
|
|
<figure {{ with .Get "class" }}class="{{.}}"{{ end }}>
|
|
{{ if .Get "link"}}
|
|
<a href="{{ .Get "link" }}"
|
|
{{ with .Get "target" }} target="{{ . }}"{{ end }}
|
|
{{ with .Get "rel" }} rel="{{ . }}"{{ end }}>
|
|
{{ end }}
|
|
<img
|
|
{{ if $image_link_absolute }}
|
|
src="{{ $image | absURL }}"
|
|
{{ else }}
|
|
src="{{ (printf "%s%s" $permalink $image) }}"
|
|
{{ end }}
|
|
{{ if .Get "alt" }}alt="{{ .Get "alt" | markdownify | plainify }}"
|
|
{{- else if .Get "caption" }}alt="{{ .Get "caption" | markdownify | plainify }}"
|
|
{{- end }}
|
|
{{ with .Get "align" }}align="{{ . }}"{{ end }}
|
|
width="{{ .Get "width" | default "100%"}}"
|
|
{{ with .Get "height" }}width="{{ . }}"{{ end }} />
|
|
{{ if .Get "link"}}</a>{{ end }}
|
|
<!-- caption and attr-->
|
|
{{ if ($fig.Get "caption") }}
|
|
<figcaption>
|
|
<span class="img--caption">
|
|
Figure {{ $.Page.Scratch.Get "fig" }}. {{ $fig.Get "caption" | markdownify | plainify }}
|
|
{{ if .Get "attr" }}
|
|
[{{- with .Get "attrlink"}}<a href="{{ . | markdownify }}">{{ end -}}
|
|
{{ .Get "attr" | markdownify }}
|
|
{{- if .Get "attrlink"}}</a>{{- end }}]
|
|
{{ end }}
|
|
</span>
|
|
</figcaption>
|
|
{{ end }}
|
|
</figure>
|
|
{{ .Page.Scratch.Add "fig" 1 }}
|
|
{{ $fig.Delete "caption"}}
|