Prism Syntax Highlighter (detached)

0

Integrates the Prism Syntax Highlighting Library in WordPress. It is called detached, since the code examples are not stuffed into the rich text editor, together with all the other text

Version
Last updated
Active installations
WordPress Version
Tested up to
Rating
Total ratings
Tags
This plugin is outdated and might not be supported anymore.

Description

Integrates the Prism Syntax Highlighting Library in WordPress.

It is called detached, since the code examples are not stuffed into the rich text editor, together with all the
other texts and content, but they are added separately as custom fields and just referenced via short tags (like footnotes).

Check Other Notes for usage documentation.

The official development repository is hosted on Github.

Usage

The basic procedure is:

  1. Create a custom field and paste the code into it.
  2. Insert the [prism ...] shorttag in your code, where you want the code block to appear.

Shorttag

[prism key=".." language=".." line=".." line_offset=".." post=".."]
  • key: the name of the custom field, which contains the code (required)
  • language: the language to highlight
  • line: highlighted lines (for syntax, check the offical docs)
  • line_offset: the offset, with which the line numbering should start
  • post: if you want to include a code piece of another post, you can explicitly specify the post id here

Cached Assets loader

The plugin includes (from v1.3 on) a cached assets loader, so that all needed assets are concatenated into
one js and one css file to minimize the HTTP requests.
To make use of the cached assets loader, just create a directory /cache/ inside your plugin directory and make it writable for PHP.

Supported languages

Only the ones from the official PrismJS repository

  • bash (Bash Unix Shell)
  • c
  • clike
  • coffeescript
  • cpp (C++)
  • css
  • groovy
  • java
  • javascript
  • markup (like: xHTML, MathML, SVG, LaTeX, RSS, XML, OWL, etc.)
  • php
  • python
  • scss (Sassy CSS)
  • sql

Creating Custom Extensions

Please read the wiki page: Creating A Custom Extension.