aboutsummaryrefslogtreecommitdiffhomepage
path: root/docs/content/en/functions/transform/HighlightCodeBlock.md
blob: fa70456418f0a6d649a3680d02e4ca7743ea161f (plain)
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
---
title: transform.HighlightCodeBlock
description: Highlights code received in context within a code block render hook.
categories: [functions]
keywords: []
menu:
  docs:
    parent: functions
function:
  aliases: []
  returnType: highlight.HighlightResult 
  signatures: ['transform.HighlightCodeBlock CONTEXT [OPTIONS]']
relatedFunctions:
  - transform.CanHighlight
  - transform.Highlight
  - transform.HighlightCodeBlock
---

This function is only useful within a code block render hook.

Given the context passed into a code block render hook, `transform.HighlightCodeBlock` returns a `HighlightResult` object with two methods.

.Wrapped
: (`template.HTML`) Returns highlighted code wrapped in `<div>`, `<pre>`, and `<code>` elements. This is identical to the value returned by the transform.Highlight function.

.Inner
: (`template.HTML`) Returns highlighted code without any wrapping elements, allowing you to create your own wrapper.


```go-html-template
{{ $result := transform.HighlightCodeBlock . }}
{{ $result.Wrapped }}
```

To override the default [highlighting options]:

```go-html-template
{{ $options := merge .Options (dict "linenos" true) }}
{{ $result := transform.HighlightCodeBlock . $options }}
{{ $result.Wrapped }}
```

[highlighting options]: /functions/transform/highlight/#options