diff --git a/layouts/shortcodes/figure.html b/layouts/shortcodes/figure.html index 18084d0..ded947a 100644 --- a/layouts/shortcodes/figure.html +++ b/layouts/shortcodes/figure.html @@ -1,50 +1,66 @@ +{{ $alt := .Get "alt" -}} +{{ $attr := .Get "attr" -}} +{{ $attrlink := .Get "attrlink" -}} +{{ $caption := .Get "caption" -}} +{{ $class := .Get "class" -}} +{{ $height := .Get "height" -}} +{{ $link := .Get "link" -}} +{{ $size := .Get "size" -}} +{{ $src := .Get "src" -}} +{{ $title := .Get "title" -}} +{{ $width := .Get "width" -}} {{ $maxwidth := .Site.Params.imageMaxWidth -}} {{ $realwidth := 0 -}} {{ $realheight := 0 -}} -{{ $width := 0 -}} -{{ $height := 0 -}} -{{ $height := 0 -}} -{{ if (fileExists (add "/static" (.Get "src"))) -}} - {{ with (imageConfig (add "/static" (.Get "src"))) -}} +{{ if (fileExists (add "/assets" $src)) -}} + {{ $original := resources.Get $src -}} + {{ if $size -}} + {{ $image := $original.Resize $size -}} + {{ $src = $image.RelPermalink -}} + {{ $width = $image.Width -}} + {{ $height = $image.Height -}} + {{ else -}} + {{ $src = $original.RelPermalink -}} + {{ $realwidth = $original.Width -}} + {{ $realheight = $original.Height -}} + {{ end -}} +{{ else if (fileExists (add "/static" $src)) -}} + {{ with (imageConfig (add "/static" $src)) -}} {{ $realwidth = .Width -}} {{ $realheight = .Height -}} - {{ $width = .Width -}} - {{ $height = .Height -}} {{ end -}} {{ end -}} -{{ if and (.Get "width") (.Get "height") -}} - {{ $width = (int (.Get "width")) -}} - {{ $height = (int (.Get "height")) -}} -{{ else if (.Get "width") -}} - {{ $width = (int (.Get "width")) -}} +{{ if and $width $height -}} + {{ $width = int $width -}} + {{ $height = int $height -}} +{{ else if $width -}} + {{ $width = int $width -}} + {{ $height = $realheight -}} {{ if and ($realwidth) (lt ($width) ($realwidth)) -}} {{ $height = (mul ($realheight) (div (add ($width) 0.0) ($realwidth))) -}} {{ $height = (math.Round $height) -}} {{ end -}} -{{ else if (.Get "height") -}} - {{ $height = (int (.Get "height")) -}} +{{ else if $height -}} + {{ $width = $realwidth -}} + {{ $height = int $height -}} {{ if and ($realheight) (lt ($height) ($realheight)) -}} {{ $width = (mul ($realwidth) (div (add ($height) 0.0) ($realheight))) -}} {{ $width = (math.Round $width) -}} {{ end -}} -{{ else if and ($maxwidth) (lt ($maxwidth) ($width)) -}} +{{ else if and ($maxwidth) (lt ($maxwidth) ($realwidth)) -}} {{ $width = ($maxwidth) -}} {{ $height = (mul ($realheight) (div (add ($width) 0.0) ($realwidth))) -}} {{ $height = (math.Round $height) -}} {{ end -}} -
-{{ with .Get "link" }}{{ end -}} - -{{- if .Get "link" }}{{ end }} -{{ if or (or (.Get "title") (.Get "caption" | markdownify)) (.Get "attr") -}} -
{{ if isset .Params "title" }} -

{{ .Get "title" }}

{{ end }} -{{ if or (.Get "caption") (.Get "attr") -}} -

-{{- .Get "caption" -}} -{{ with .Get "attrlink" }}{{ end }}{{ .Get "attr" | markdownify }}{{ if .Get "attrlink" }}{{ end -}} -

-{{ end -}} +
+{{ with $link }}{{ end -}} +{{ . }} +{{- if $link }}{{ end }} +{{ if or $title $caption $attr -}} +
+{{ with $title }}

{{ . }}

{{ end -}} +{{- $caption | markdownify }}{{ if and $caption $attr }} {{ end -}} +{{ with $attrlink }}{{ end }}{{ $attr | markdownify }}{{ if $attrlink }}{{ end -}}
{{ end -}}
diff --git a/layouts/shortcodes/img.html b/layouts/shortcodes/img.html new file mode 100644 index 0000000..98a07d3 --- /dev/null +++ b/layouts/shortcodes/img.html @@ -0,0 +1,50 @@ +{{ $alt := .Get "alt" -}} +{{ $class := .Get "class" -}} +{{ $height := .Get "height" -}} +{{ $size := .Get "size" -}} +{{ $src := .Get "src" -}} +{{ $width := .Get "width" -}} +{{ $maxwidth := .Site.Params.imageMaxWidth -}} +{{ $realwidth := 0 -}} +{{ $realheight := 0 -}} +{{ if (fileExists (add "/assets" $src)) -}} + {{ $original := resources.Get $src -}} + {{ if $size -}} + {{ $image := $original.Resize $size -}} + {{ $src = $image.RelPermalink -}} + {{ $width = $image.Width -}} + {{ $height = $image.Height -}} + {{ else -}} + {{ $src = $original.RelPermalink -}} + {{ $realwidth = $original.Width -}} + {{ $realheight = $original.Height -}} + {{ end -}} +{{ else if (fileExists (add "/static" $src)) -}} + {{ with (imageConfig (add "/static" $src)) -}} + {{ $realwidth = .Width -}} + {{ $realheight = .Height -}} + {{ end -}} +{{ end -}} +{{ if and $width $height -}} + {{ $width = int $width -}} + {{ $height = int $height -}} +{{ else if $width -}} + {{ $width = int $width -}} + {{ $height = $realheight -}} + {{ if and ($realwidth) (lt ($width) ($realwidth)) -}} + {{ $height = (mul ($realheight) (div (add ($width) 0.0) ($realwidth))) -}} + {{ $height = (math.Round $height) -}} + {{ end -}} +{{ else if $height -}} + {{ $width = $realwidth -}} + {{ $height = int $height -}} + {{ if and ($realheight) (lt ($height) ($realheight)) -}} + {{ $width = (mul ($realwidth) (div (add ($height) 0.0) ($realheight))) -}} + {{ $width = (math.Round $width) -}} + {{ end -}} +{{ else if and ($maxwidth) (lt ($maxwidth) ($realwidth)) -}} + {{ $width = ($maxwidth) -}} + {{ $height = (mul ($realheight) (div (add ($width) 0.0) ($realwidth))) -}} + {{ $height = (math.Round $height) -}} +{{ end -}} +{{ . }}