TiddlyWiki5/plugins/tiddlywiki/highlight
Jermolene 4be5f0abe8 Switch highlight plugin under Node.js to use DOM rather than raw HTML
Hi @welford I wondered if you could kindly review this commit, since
you authored the original code? Before this commit, I was running into
a crash when running `prerelease-bld.sh` from
`build.jermolene.github.io`, caused by using raw HTML for the
highlighted block. Switching to the fake dom seems to fix things, but
I’d like a second pair of eyes.
2016-09-28 11:34:15 +01:00
..
files
TypeMappings.multids
highlightblock.js Switch highlight plugin under Node.js to use DOM rather than raw HTML 2016-09-28 11:34:15 +01:00
license.tid
plugin.info
readme.tid
styles.tid
usage.tid

readme.tid

title: $:/plugins/tiddlywiki/highlight/readme

This plugin provides syntax highlighting of code blocks using v8.8.0 of [[highlight.js|https://github.com/isagalaev/highlight.js]] from Ivan Sagalaev.

! Usage

When the plugin is installed it automatically applies highlighting to all codeblocks defined with triple backticks or with the CodeBlockWidget.

The language can optionally be specified after the opening triple braces:

<$codeblock code="""```css
 * { margin: 0; padding: 0; } /* micro reset */

html { font-size: 62.5%; }
body { font-size: 14px; font-size: 1.4rem; } /* =14px */
h1   { font-size: 24px; font-size: 2.4rem; } /* =24px */
```"""/>

If no language is specified highlight.js will attempt to automatically detect the language.

! Built-in Language Brushes

The plugin includes support for the following languages (referred to as "brushes" by highlight.js):

* apache
* bash
* coffeescript
* cpp
* cs
* css
* diff
* http
* ini
* java
* javascript
* json
* makefile
* markdown
* nginx
* objectivec
* perl
* php
* python
* ruby
* sql
* xml

You can also specify the language as a MIME content type (eg `text/html` or `text/css`). The mapping is accomplished via mapping tiddlers whose titles start with `$:/config/HighlightPlugin/TypeMappings/`.