WP-Syntax provides clean syntax highlighting for embedding source code within pages or posts.
Wrap code blocks with <pre lang="LANGUAGE" line="1"> and </pre> where "LANGUAGE" is a GeSHi supported
language syntax. See below for a full list of supported languages.
The line attribute is optional.
Example 1: PHP, no line numbers
<pre lang="php">
<div id="foo">
<?php
function foo() {
echo "Hello World!\\n";
}
?>
</div>
</pre>
Example 2: Java, with line numbers
<pre lang="java" line="1">
public class Hello {
public static void main(String[] args) {
System.out.println("Hello World!");
}
}
</pre>
Example 3: Ruby, with line numbers starting at 18
<pre lang="ruby" line="18">
class Example
def example(arg1)
return "Hello: " + arg1.to_s
end
end
</pre>
Example 4: If your code already has html entities escaped, use escaped="true" as an option
<pre lang="xml" escaped="true">
<xml>Hello</xml>
</pre>
Example 5: PHP, with line numbers and highlighting a specific line
<pre lang="php" line="1" highlight="3">
<div id="foo">
<?php
function foo() {
echo "Hello World!\\n";
}
?>
</div>
</pre>
Example 6: PHP, with a caption (file and/or file path of the source file)
<pre lang="php" src"https://github.com/shazahm1/Connections/blob/master/connections.php">
<div id="foo">
<?php
function foo() {
echo "Hello World!\\n";
}
?>
</div>
</pre>
The following languages are most supported in the lang attribute:
abap, actionscript, actionscript3, ada, apache, applescript, apt_sources, asm, asp, autoit, avisynth, bash, bf, bibtex, blitzbasic, bnf, boo, c, c_mac, caddcl, cadlisp, cil, cfdg, cfm, cmake, cobol, cpp-qt, cpp, csharp, css, d, dcs, delphi, diff, div, dos, dot, eiffel, email, erlang, fo, fortran, freebasic, genero, gettext, glsl, gml, bnuplot, groovy, haskell, hq9plus, html4strict, idl, ini, inno, intercal, io, java, java5, javascript, kixtart, klonec, klonecpp, latex, lisp, locobasic, lolcode lotusformulas, lotusscript, lscript, lsl2, lua, m68k, make, matlab, mirc, modula3, mpasm, mxml, mysql, nsis, oberon2, objc, ocaml-brief, ocaml, oobas, oracle11, oracle8, pascal, per, pic16, pixelbender, perl, php-brief, php, plsql, povray, powershell, progress, prolog, properties, providex, python, qbasic, rails, rebol, reg, robots, ruby, sas, scala, scheme, scilab, sdlbasic, smalltalk, smarty, sql, tcl, teraterm, text, thinbasic, tsql, typoscript, vb, vbnet, verilog, vhdl, vim, visualfoxpro, visualprolog, whitespace, whois, winbatch, xml, xorg_conf, xpp, z80
See the GeSHi Documentation for a full list of supported languages.
(Bold languages just highlight the more popular ones.)
WP-Syntax colors code using the default GeSHi colors. It also uses inline
styling to make sure that code highlights still work in RSS feeds. It uses a
default wp-syntax.css stylesheet for basic layout. To customize your styling,
copy the default wp-content/plugins/wp-syntax/wp-syntax.css to your theme's
template directory and modify it. If a file named wp-syntax.css exists in
your theme's template directory, this stylesheet is used instead of the default.
This allows theme authors to add their own customizations as they see fit.
WP-Syntax supports a wp_syntax_init_geshi action hook to customize GeSHi
initialization settings. Blog owners can handle the hook in a hand-made plugin
or somewhere else like this:
<?php
add_action('wp_syntax_init_geshi', 'my_custom_geshi_styles');
function my_custom_geshi_styles(&$geshi)
{
$geshi->set_brackets_style('color: #000;');
$geshi->set_keyword_group_style(1, 'color: #22f;');
}
?>
This allows for a great possibility of different customizations. Be sure to review the GeSHi Documentation.
Requires: 3.0 or higher
Compatible up to: 3.5.1
Last Updated: 2013-2-10
Downloads: 246,931
2 of 3 support threads in the last two months have been resolved.
Got something to say? Need help?