JS Syntax Highlighter Re-released as Donationware
Earlier this week a new version of the JavaScript Syntax Highlighter by Alex Gorbatchev was released. This 2.0 version is a bit thin on new features and supported languages but does have a new home and, significantly, has been released as donationware.
History of the Project
The syntax highlighter started life as the dp.SyntaxHighlighter in 2004 and was hosted at dreamprojections.com1.
In May 2007 the 1.5 version was released and the syntax highlighter was moved onto Google Code2 with some good improvements. The 1.5.1 version was released in August 2007 with some bug fixes3, and this was the last release before the new 2.0 version this week.
In between the 1.5 versions and the 2.0 version there has been very little activity. Bug reports and support for more languages were posted but there was very little response from Alex Gorbatchev and the project seem stagnate4.
Popularity
The syntax highlighter became fairly popular and is used on the site for the YUI JavaScript Library5 and on the Mozilla Developer Center6.
There has also been plugins developed to implement the highlighter in Wordpress7, and I have developed a plugin for TWiki8 and Foswiki9 that integrates version 1.5.1 of the syntax highlighter into these platforms.
The New License
The 2.0 version of the syntax highlighter is released under the GNU Lesser General Public License, as was the 1.5 release. However the 2.0 version has one major exception to the license which classes the software as donationware. This is the quote from the website:
SyntaxHighlighter is donationware. You are allowed to download, modify and distribute the source code in accordance with LGPL 2.1 license, however if you are using SyntaxHighlighter 2.0 on your site or including it in your product, you must donate.10
Whilst many open source software developers ask for donations, this exception seems to suggest you must donate to Alex Gorbatchev if you want to use the highlighter on their site. There is no set amount that you need to donate, with Alex just stating that “you’d at least buy me a beer”11.
So while we are free to upgrade any plugins for Wordpress or Foswiki to the 2.0 version, any site that used it would be forced to pay for it. From my point of view, there is no way I would think of using the 2.0 version with this restriction. While many users may be happy to donate, by using it in my Foswiki plugin I would be forcing everyone to donate to use the plugin.
Summary
The JS Syntax Highlighter is a nice piece of software, but with the new release it is no longer free to use on your site or in a product. Since the 2.0 version has no big improvements over the 1.5 version released two years ago it would be hard justify paying for it, unless you really want to donate.
There are also many other client side syntax highlighters, such as SHJS, Prettify and JUSH, and since the 1.5 version is open source it would be possible to fork the software and continue development on it. So for me there really does not seem to be any incentive to pay for a client side syntax highlighter.
Links
Way Back Machine: http://web.archive.org/web/20050306062439/http://www.dreamprojections.com/syntaxhighlighter/ ↩︎
http://code.google.com/p/syntaxhighlighter/wiki/Version_1_5 ↩︎
http://code.google.com/p/syntaxhighlighter/wiki/Version_1_5_1 ↩︎
Issues list on Google Code: http://code.google.com/p/syntaxhighlighter/issues/list ↩︎
Syntax Highlighter on YUI Home Page (still using version 1.3): http://developer.yahoo.com/yui/connection/ ↩︎
Syntax Highlighter on the Mozilla Developer Center (using version 1.5.1): https://developer.mozilla.org/en/New_in_JavaScript_1.7 ↩︎
Syntax Highlighter Plus plugin for Wordpress: http://wordpress.org/extend/plugins/syntaxhighlighter-plus/ ↩︎
DpSyntaxHighlighter plugin for TWiki: http://twiki.org/cgi-bin/view/Plugins/DpSyntaxHighlighterPlugin ↩︎
DpSyntaxHighlighter plugin for Foswiki: http://foswiki.org/Extensions/DpSyntaxHighlighterPlugin ↩︎
SyntaxHighlighter license: http://alexgorbatchev.com/wiki/SyntaxHighlighter#License ↩︎
SyntaxHighlighter donate page: http://alexgorbatchev.com/wiki/SyntaxHighlighter:Donate ↩︎