Statocles::Plugin::Highlight - Highlight code and configuration syntax
version 0.092
# --- Configuration # site.yml --- site: class: Statocles::Site args: plugins: highlight: $class: Statocles::Plugin::Highlight $args: style: default # --- Usage <%= highlight perl => begin %> print "Hello, World!\n"; <% end %>
This plugin adds the highlight helper function to all templates and content documents, allowing for syntax highlighting of source code and configuration blocks.
highlight
The style to use, which corresponds to a stylesheet file in your theme's /plugin/highlight directory without the trailing .css. Defaults to "default", which refers to the default.css file.
/plugin/highlight
.css
"default"
default.css
The styles included by default are:
default
solarized-light
solarized-dark
%= highlight $type => $content
Highlight the given $content using the given $type syntax.
$content
$type
The list of supported syntaxes are in the SUPPORTED SYNTAX section, below.
To highlight a block of code, use begin/end:
begin
end
%= highlight Perl => begin use strict; use warnings; print "Hello, World!\n"; % end
To highlight an included file, use the include helper:
%= highlight Perl => include 'test.pl'
The highlight function adds both pre and code tags.
pre
code
<p>This example Perl code prints the string "Hello, World" to the screen:</p> %= highlight Perl => 'print "Hello, World\n"'
We can override the style we want by passing in a -style option:
-style
%= highlight -style => 'solarized-dark', Perl => begin print "Hello, World!\n"; % end
Register this plugin with the site. Called automatically.
All of the syntax types supported by the Syntax::Highlight::Engine::Kate Perl module are supported by this module:
.desktop ferite PHP/PHP 4GL Fortran PicAsm 4GL-PER FreeBASIC Pike ABC GDL PostScript Ada GLSL POV-Ray AHDL GNU Assembler progress Alerts GNU Gettext Prolog ANSI C89 Haskell PureBasic Ansys HTML Python Apache Configuration IDL Quake Script Asm6502 ILERPG R Script ASP Inform RenderMan RIB AVR Assembler INI Files REXX AWK Intel x86 (NASM) RPM Spec BaseTest Java RSI IDL BaseTestchild Javadoc Ruby Bash JavaScript Sather BibTeX JavaScript/PHP Scheme C JSP scilab C# Kate File Template SGML C++ KBasic Sieve Cg LaTeX SML CGiS LDIF Spice ChangeLog Lex/Flex SQL Cisco LilyPond SQL (MySQL) Clipper Literate Haskell SQL (PostgreSQL) CMake Logtalk Stata ColdFusion LPC TaskJuggler Common Lisp Lua Tcl/Tk Component-Pascal M3U TI Basic CSS MAB-DB txt2tags CSS/PHP Makefile UnrealScript CUE Sheet Mason Velocity D Matlab Verilog Debian Changelog MIPS Assembler VHDL Debian Control Modula-2 VRML de_DE Music Publisher Wikimedia Diff nl WINE Config Doxygen Objective Caml x.org Configuration E Language Objective-C xHarbour Eiffel Octave XML Email Pascal xslt en_US Perl yacas Euphoria PHP (HTML) Yacc/Bison
The default, solarized-light, and solarized-dark styles are taken from the Highlight.js project, and are licensed under the BSD license.
The underlying syntax highlighter powering this plugin
Doug Bell <preaction@cpan.org>
This software is copyright (c) 2016 by Doug Bell.
This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.
To install Statocles, copy and paste the appropriate command in to your terminal.
cpanm
cpanm Statocles
CPAN shell
perl -MCPAN -e shell install Statocles
For more information on module installation, please visit the detailed CPAN module installation guide.