9th August 2024 at 7:46am
Introduction
The codeblock widget renders text in <pre>
and <code>
blocks, causing it to be
displayed monospace. A language may optionally be specified using the
language attribute, however syntax highlighting will only be used if the
Highlight Plugin is installed.
Content and Attributes
The content of the <$codeblock>
widget is ignored.
Attribute | Description |
---|---|
code | Contents of the block to render as code |
language | Programming language for syntax highlighting |
The language
attribute accepts either:
- a Highlight.js language code (see https://highlightjs.org/demo for a list)
- a MIME type (eg,
text/html
orimage/svg+xml
)
Examples
Here is an example embedding the contents of a tiddler as a code block.
<$codeblock code={{$:/editions/tw5.com/macro-examples/say-hi}} />
That renders as:
\define sayhi(name:"Bugs Bunny",address:"Rabbit Hole Hill")
Hi, I'm $name$ and I live in $address$.
\end
A codeblock may also specify a language.
<$codeblock code="SELECT * FROM users WHERE deleted = false" language="sql" />
That renders as:
SELECT * FROM users WHERE deleted = false