forked from google/docsy
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathtab.html
52 lines (48 loc) · 1.77 KB
/
tab.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
<!-- Make sure that we are enclosed within a tabpane shortcode block -->
{{ with $.Parent }}
{{- if ne $.Parent.Name "tabpane" -}}
{{- errorf "shortcode 'tab' must be used within a 'tabpane' block" -}}
{{- end -}}
{{- end -}}
{{ $header := "Tab" }}
{{ if and (not .IsNamedParams) (.Get 0) }}
{{ $header = (.Get 0) }}
{{ else }}
<!-- Prefill header if not given as named or unnamed parameter -->
{{ $header = default (printf "Tab %v" ( add $.Ordinal 1)) (.Get "header") }}
{{ end }}
<!-- store all tab info in dict tab -->
{{ $tab := dict "header" $header }}
{{ with $.Get "lang" }}
{{ $tab = merge $tab (dict "language" ($.Get "lang")) }}
{{ end }}
{{ with $.Get "highlight" }}
{{ $tab = merge $tab (dict "highlight" ($.Get "highlight")) }}
{{ end }}
{{ with $.Get "text" }}
{{ if ne ( printf "%T" . ) "bool" }}
{{- errorf "shortcode tab: parameter 'text' must be either true or false" -}}
{{ end }}
{{ $tab = merge $tab (dict "text" ($.Get "text")) }}
{{ end }}
{{ with $.Get "right" }}
{{ if ne ( printf "%T" . ) "bool" }}
{{- errorf "shortcode tab: parameter 'right' must be either true or false" -}}
{{ end }}
{{ $tab = merge $tab (dict "rightpush" ($.Get "right")) }}
{{ end }}
{{ with $.Get "disabled" }}
{{ if ne ( printf "%T" . ) "bool" }}
{{- errorf "shortcode tab: parameter 'disabled' must be either true or false" -}}
{{ end }}
{{ $tab = merge $tab (dict "disabled" ($.Get "disabled")) }}
{{ end }}
{{ with $.Inner }}
<!-- Trim any leading and trailing newlines from .Inner, this avoids
spurious lines during syntax highlighting -->
{{ $tab = merge $tab (dict "content" $.Inner ) }}
{{ end }}
<!-- add dict tab to parent's scratchpad -->
{{ with .Parent }}
{{- $.Parent.Scratch.SetInMap "tabs" (printf "%02v" $.Ordinal) $tab -}}
{{ end }}