DokuWiki

It's better when it's simple

User Tools

Site Tools


plugin:codeprettify

This is an old revision of the document!


Code Prettifier Plugin

Compatible with DokuWiki

Hrun, 2015-08-10, 2016-06-26, 2017-02-19

plugin syntax highlighting of source code snippets in wiki page using google-code-prettify (javascript module with CSS files)

Last updated on
2018-05-02
Provides
Syntax
Repository
Source
Conflicts with
syntaxhighlighter4

This extension has not been updated in over 2 years. It may no longer be maintained or supported and may have compatibility issues.

Similar to highlightjs, jquery-syntax, syntaxhighlighter3, syntaxhighlighter4

Tagged with code, syntaxhighlight

Installation

Search and install the plugin using the Extension Manager. Refer to plugin installation instructions.

Note: After updated to 2015-09-12 release, you can remove older “google-code-prettify” subfolder in this plugin directory.

Feature

This plugin enable syntax highlighting of code snippets in your page using Javascript code prettifier (former “google-code-prettify”). This plugin package includes subset of Javascript code prettifier, they are separately licensed under the Apache License, Version 2.0

  • You can configure Code Prettifier plugin to override DokuWiki built-in syntax <code> for code blocks.
  • you may use skin (css file) for code block.

Examples/Usage

  • Enclose code snippets using <Code> and </Code> tag to show it pretty-printed in wiki page.
  • Prettify module makes a best effort to guess the language but works best with C-like and HTML-like languages.
  • To specify language hint for Prettify, you can use
    1) <Code:ext> (file extension, you must put it just after “Code:” keyword) or
    2) <Code lang-ext> option.
  • For example, use <Code:css> or <Code lang-css> to specify that the code is Cascading Style Sheets (CSS).
  • use linenums or nolinenums option to turn on/off line numbering. You can add a colon and the number to the end of the option, eg. linenums:12 to specify start line number.
  • If you want to add title for code block, you can specify it after | that will be shown just above the code box.
<Code:php linenums:1 |Example #1 Our first PHP script: //hello.php//>
<html>
  <head>
  <title>PHP Test</title>
 </head>
 <body>
 <?php echo '<p>Hello World</p>'; ?> 
 </body>
</html>
</Code>

Example #1

Configuration and Settings

Config key Description
override override DokuWiki built-in syntax <code> for Code Blocks.
linenums enable line numbering implicitly.
url_loader url of prettify loader (default blank)
:!: obsoleted since 2015-09-12 release
url_prettify_handlers Base URL for prettify.js and optional language handler scripts
ex: https://cdn.rawgit.com/google/code-prettify/master/src/
(default blank)
:!: available in 2015-09-12 release
url_prettify_skins Base URL for color theme for code-prettify (css)
ex: https://cdn.rawgit.com/google/code-prettify/master/styles/
(default blank)
:!: available in 2015-09-12 release
lang_handlers additional langage handler (comma separated)
skin color theme/skin for code-prettify (CSS filename in code-prettify/styles/)

Detail information of the Javascript code prettifier is available from:

This plugin package contains some skins those found in Prettify Themes Gallery. You may set one of following css filename in the skin field.

  • desert.css
  • doxy.css
  • sons-of-obsidian.css
  • sunburst.css

Other color themes for Prettify will be found at http://jmblog.github.io/color-themes-for-google-code-prettify/

Development

Change Log from github repository

ToDo/Wish List

FAQ

Non-highlight code block

use <Code:none> or <Code lang-none> to prevent highlight code. Maybe useful to show error log output or console output.

<Code:none>
This is not any kind of code.
</Code>

Known Bugs and Issues

Discussion

Using current dokuwiki theme and prettifyer with <Code linenums> does print a linenumber only on every fifth. line.

To solve just add .prettyprint ol.linenums > li { list-style-type: decimal; } to lib/plugins/codeprettify/all.css

plugin/codeprettify.1527532900.txt.gz · Last modified: 2018-05-28 20:41 by Klap-in

Except where otherwise noted, content on this wiki is licensed under the following license: CC Attribution-Share Alike 4.0 International
CC Attribution-Share Alike 4.0 International Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki