MediaWiki extensions for LiteratePrograms, a wiki for source code.
Fetching latest commit…
Cannot retrieve the latest commit at this time
This repository hosts MediaWiki extensions (tested against version 1.18.2) that are used to implement the special features of LiteratePrograms wiki, hosted at http://en.literateprograms.org/. CodeBlock: does formatting and syntax highlighting for code regions, including turning noweb links into anchor links between code sections. DownloadCode: Adds a "Download code" tab that can be used to weave together the code in an article using noweb and present it as a downloadable, compilable, source file. Also test-compiles the files to show compiler errors/warnings. ShowOnlyTo: A minor extension, used to hide certain text in pages from users who are not logged in. They are installed in the conventional manner, by simplying adding to your LocalSettings.php file: require_once( "$IP/extensions/CodeBlock/CodeBlock.php" ); require_once( "$IP/extensions/DownloadCode/DownloadCode.php" ); require_once( "$IP/extensions/ShowOnlyTo/ShowOnlyTo.php" ); $wgNowebPath = "/usr/local/noweb/noweb"; $wgDownloadCodeBanner = false; $wgDownloadCodeListAlternatives = false; The path to the noweb tool must be specified as above. On Debian/Ubuntu systems you can install noweb with: sudo apt-get install noweb The $wgDownloadCodeBanner option causes a large banner reading "Download code" to be printed at the bottom of each article. It was added to LiteratePrograms wiki because users were overlooking the Download code tab, but other sites may not want it so it's turned off by default. The $wgDownloadCodeListAlternatives option adds a list of links to other implementations in different programming languages. It assumes that your articles are titled in the form "Name (language)". It is off by default. Copyright Derrick Coetzee 2006-2012. Because extensions interact closely with MediaWiki, and because they are based on other extensions and samples, I am compelled to release these extensions under the GNU Public License (GPL) version 2, the full text of which can be read at: http://www.gnu.org/licenses/old-licenses/gpl-2.0.html It can also be found in the file COPYING included with this package.