Skip to content

Commit 5f6848a

Browse files
committed
hugo: add support for code block titles
Signed-off-by: David Karlsson <[email protected]>
1 parent f1777ac commit 5f6848a

File tree

1 file changed

+36
-31
lines changed

1 file changed

+36
-31
lines changed
Lines changed: 36 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -1,36 +1,41 @@
1-
<div class="group relative">
2-
<button x-data="{ code: '{{encoding.Base64Encode .Inner}}', copying: false }"
3-
class="absolute right-3 top-3 z-20 text-gray-light-300 dark:text-gray-dark-600" title="Copy" @click="window.navigator.clipboard.writeText(atob(code).replaceAll(/^\$\s*/gm, ''));
4-
copying = true;
5-
setTimeout(() => copying = false, 2000);">
6-
<span :class="{ 'group-hover:block' : !copying }" class="icon-svg hidden">{{ partialCached "icon" "content_copy" "content_copy" }}</span>
7-
<span :class="{ 'group-hover:block' : copying }" class="icon-svg hidden">{{ partialCached "icon" "check_circle" "check_circle" }}</span>
8-
</button>
9-
{{ $lang := .Type | default "text" }} {{ $result := transform.Highlight .Inner
10-
$lang .Options }}
11-
<div class="syntax-light dark:syntax-dark">
12-
{{ with .Attributes.collapse }}
13-
<div x-data="{ collapse: true }" class="relative scroll-mt-20 overflow-clip"
14-
x-init="$watch('collapse', value => $root.scrollIntoView({ behavior: 'smooth'}))">
15-
<div x-show="collapse"
16-
class="to-transparent absolute z-10 flex h-32 w-full flex-col-reverse items-center overflow-clip bg-gradient-to-t from-background-light to-75% bg-cover pb-4 dark:from-background-dark">
17-
<button @click="collapse = false"
18-
class="flex items-center rounded-full bg-blue-light px-2 text-sm text-white dark:bg-blue-dark-400">
19-
<span>Show more</span>
20-
<span class="icon-svg">{{ partialCached "icon" "expand_more" "expand_more" }}</span>
21-
</button>
1+
<div class="scroll-mt-20" x-data x-ref="root">
2+
{{ with .Attributes.title }}
3+
<div class="text-sm -mb-3 text-gray-light dark:text-gray-dark">{{ . }}</div>
4+
{{ end }}
5+
<div class="group relative">
6+
<button x-data="{ code: '{{encoding.Base64Encode .Inner}}', copying: false }"
7+
class="absolute right-3 top-3 z-20 text-gray-light-300 dark:text-gray-dark-600" title="Copy" @click="window.navigator.clipboard.writeText(atob(code).replaceAll(/^\$\s*/gm, ''));
8+
copying = true;
9+
setTimeout(() => copying = false, 2000);">
10+
<span :class="{ 'group-hover:block' : !copying }" class="icon-svg hidden">{{ partialCached "icon" "content_copy" "content_copy" }}</span>
11+
<span :class="{ 'group-hover:block' : copying }" class="icon-svg hidden">{{ partialCached "icon" "check_circle" "check_circle" }}</span>
12+
</button>
13+
{{ $lang := .Type | default "text" }} {{ $result := transform.Highlight .Inner
14+
$lang .Options }}
15+
<div class="syntax-light dark:syntax-dark">
16+
{{ with .Attributes.collapse }}
17+
<div x-data="{ collapse: true }" class="relative overflow-clip"
18+
x-init="$watch('collapse', value => $refs.root.scrollIntoView({ behavior: 'smooth'}))">
19+
<div x-show="collapse"
20+
class="to-transparent absolute z-10 flex h-32 w-full flex-col-reverse items-center overflow-clip bg-gradient-to-t from-background-light to-75% bg-cover pb-4 dark:from-background-dark">
21+
<button @click="collapse = false"
22+
class="flex items-center rounded-full bg-blue-light px-2 text-sm text-white dark:bg-blue-dark-400">
23+
<span>Show more</span>
24+
<span class="icon-svg">{{ partialCached "icon" "expand_more" "expand_more" }}</span>
25+
</button>
26+
</div>
27+
<div :class="{ 'h-32': collapse }">
28+
{{ $result }}
29+
<button @click="collapse = true" x-show="!collapse"
30+
class="mx-auto -mt-4 flex items-center rounded-b-lg bg-blue-light px-2 text-sm text-white dark:bg-blue-dark-400">
31+
<span>Hide</span>
32+
<span class="icon-svg">{{ partialCached "icon" "expand_less" "expand_less" }}</span>
33+
</button>
34+
</div>
2235
</div>
23-
<div :class="{ 'h-32': collapse }">
36+
{{ else }}
2437
{{ $result }}
25-
<button @click="collapse = true" x-show="!collapse"
26-
class="mx-auto -mt-4 flex items-center rounded-b-lg bg-blue-light px-2 text-sm text-white dark:bg-blue-dark-400">
27-
<span>Hide</span>
28-
<span class="icon-svg">{{ partialCached "icon" "expand_less" "expand_less" }}</span>
29-
</button>
30-
</div>
38+
{{ end }}
3139
</div>
32-
{{ else }}
33-
{{ $result }}
34-
{{ end }}
3540
</div>
3641
</div>

0 commit comments

Comments
 (0)