simplify asciinema shortcode

This commit is contained in:
Balakrishnan Balasubramanian 2025-06-02 22:31:53 -04:00
parent a27278651e
commit f73d092a30

View File

@ -1,23 +1,16 @@
<div id='{{ .Get "key" }}_asciinema_cast'></div>
{{- $key := .Get "key" -}}
{{- /* Doc: https://docs.asciinema.org/manual/player/options/ */ -}}
{{- $opts := slice "cols" "rows" "autoPlay" "preload" "loop" "startAt" "speed"
"idleTimeLimit" "theme" "poster" "fit" "controls" "pauseOnMarkers"
"terminalFontSize" "terminalFontFamily" "terminalLineHeight" -}}
{{- /* Skipping option markers. It is an array. Not sure if possible to pass in
hugo. Embed directly in cast file */ -}}
<div id='{{ $key }}_asciinema_cast'></div>
<script>
{{- /* Doc: https://docs.asciinema.org/manual/player/options/ */ -}}
AsciinemaPlayer.create('casts/{{ .Get "key" }}.cast', document.getElementById('{{ .Get "key" }}_asciinema_cast'), {
{{- if .Get "cols" }}cols: "{{ .Get "cols" }}",{{ end }}
{{- if .Get "rows" }}rows: "{{ .Get "rows" }}",{{ end }}
{{- if .Get "autoPlay" }}autoPlay: "{{ .Get "autoPlay" }}",{{ end }}
{{- if .Get "preload" }}preload: "{{ .Get "preload" }}",{{ end }}
{{- if .Get "loop" }}loop: "{{ .Get "loop" }}",{{ end }}
{{- if .Get "startAt" }}startAt: "{{ .Get "startAt" }}",{{ end }}
{{- if .Get "speed" }}speed: "{{ .Get "speed" }}",{{ end }}
{{- if .Get "idleTimeLimit" }}idleTimeLimit: "{{ .Get "idleTimeLimit" }}",{{ end }}
{{- if .Get "theme" }}theme: "{{ .Get "theme" }}",{{ end }}
{{- if .Get "poster" }}poster: "{{ .Get "poster" }}",{{ end }}
{{- if .Get "fit" }}fit: "{{ .Get "fit" }}",{{ end }}
{{- if .Get "controls" }}controls: "{{ .Get "controls" }}",{{ end }}
{{- /* markers is an array. Not sure if possible to pass in hugo. Embed directly in cast file */ -}}
{{- if .Get "pauseOnMarkers" }}pauseOnMarkers: "{{ .Get "pauseOnMarkers" }}",{{ end }}
{{- if .Get "terminalFontSize" }}terminalFontSize: "{{ .Get "terminalFontSize" }}",{{ end }}
{{- if .Get "terminalFontFamily" }}terminalFontFamily: "{{ .Get "terminalFontFamily" }}",{{ end }}
{{- if .Get "terminalLineHeight" }}terminalLineHeight: "{{ .Get "terminalLineHeight" }}",{{ end }}
AsciinemaPlayer.create('casts/{{ $key }}.cast', document.getElementById('{{ $key }}_asciinema_cast'), {
{{- range $opts }}
{{- $opt := . -}}
{{- with $.Get $opt }}{{ $opt }}: "{{ . }}",{{- end -}}
{{- end -}}
});
</script>