WordPress.org

Ready to get started?Download WordPress

Plugin Directory

Goodbye Syntax Highlighter

Say goodbye to plugins like SyntaxHighlighter Evolved and WP-Syntax (NEW!) and hello to [highlight.js](http://softwaremaniacs.org/soft/highlight/en/).

For years I've used Alex Gorbatchev's SyntaxHighlighter. It has served me well over the years. When I moved to WordPress I tried various plugins based on the library, such SyntaxHighlighter Evolved.

I've decided to start blogging using Markdown. Making this move I needed to find a way to highlight various bits of source code in an easy way. There are many nice libraries that make this a snap, such as google-code-prettify or highlight.js. In the end I decided to go with highlight.js, for the simple reason that it is automatic, working flawlessly with Markdown's code syntax output.

Great, but my existing source code examples use SyntaxHighlighter's style for code blocks (using <pre class="brush: ruby;" />, for example). I could have converted things in a few ways:

  • Change the database
  • Write a JS script to convert the <pre /> structure to <pre><code /></pre>
  • Write a JS script to call highlight.js' highlightBlock method
  • Write a WP plugin and reformat things easily Ding Ding Ding

So there you have it. This WordPress plugin will go through and process your SyntaxHighlighter style blocks into ones that highlight.js works with out-of-the-box. It will also add the language that you have specified with the brush class and add it as a class on the <code /> element (following the HTML5 recommendation). Nothing is changed in the DB, so if you decide to go back to SyntaxHighlighter, you can without any issues.

GeSHi

This plugin now supports conversion of GeSHi style code blocks! Now you can move from plugins such as WP-Syntax and WP-GeSHi-Highlight to highlight.js.

GeSHi uses the syntax that is close to SyntaxHighlighter, except instead of putting the language in the class attribute, it uses the lang attribute. Similar to the SyntaxHighligher conversion, it will go through and process your GeSHi style blocks into ones that highlight.js works with out-of-the-box. It will also add the language that you have specified with the lang attribute and add it as a class on the <code /> element.

Requires: 3.1 or higher
Compatible up to: 3.5.2
Last Updated: 2013-2-11
Downloads: 1,859

Ratings

5 stars
5 out of 5 stars

Support

Got something to say? Need help?

Compatibility

+
=
Not enough data

0 people say it works.
0 people say it's broken.

100,1,1