Handboek MediaWiki/Extensies/SyntaxHighlight
SyntaxHighlight
[bewerken]SyntaxHighlight is een extensie waarmee code van programmeertalen overzichtelijk met kleuren van de originele programmeertaal kan worden weergegeven.
Installatie
[bewerken]Download de extensie van de Subversion repository en sla dit op in de volgende directory extensions\SyntaxHighlight_GeSHi van de wiki. Als je shell access tot de server hebt, kan je hetvolgende ingeven om de extensie te downloaden:
cd extensions svn co https://svn.wikimedia.org/svnroot/mediawiki/trunk/extensions/SyntaxHighlight_GeSHi
Of download de laatste stabiele versie GeSHi, en unzip het binnen de extensions\SyntaxHighlight_GeSHi directory. (Let op: het zip bestand maakt een sub-directory geshi/, and plaatst daar de geshi.php)
Als MediaWiki de Subversion omgeving gebruikt kan de geshi.php file ook gedownloaded worden van Subversion repository in SourceForge.net.
Voeg de volgende regel toe aan het eind van LocalSettings.php:
require_once("extensions/SyntaxHighlight_GeSHi/SyntaxHighlight_GeSHi.php");
Indien nodig, verander de volgende regel in SyntaxHighlight_GeSHi.class.php
zodat dat overeenkomt met de plaats van het geshi.php bestand in de wiki
require_once( 'geshi/geshi.php' );
Gebruik
[bewerken]Op de wikipagina kan je nu "syntaxhighlight" elementen gebruiken:
<syntaxhighlight lang="php"> <?php v = "string"; // initialisatievoorbeeld ?> html text <? echo v; // einde van de php code ?> </syntaxhighlight>
C# voorbeeld
[bewerken]<syntaxhighlight lang="csharp"> // Hello World in Microsoft C# ("C-Sharp"). using System; class HelloWorld { public static int Main(String[] args) { Console.WriteLine("Hello, World!"); return 0; } } </syntaxhighlight>
Dit levert op:
// Hello World in Microsoft C# ("C-Sharp").
using System;
class HelloWorld
{
public static int Main(String[] args)
{
Console.WriteLine("Hello, World!");
return 0;
}
}
PHP voorbeeld
[bewerken]<syntaxhighlight lang="php"> <?php // Hello World in PHP echo 'Hello World!'; ?> </syntaxhighlight>
Dit levert het volgende op:
<?php
// Hello World in PHP
echo 'Hello World!';
?>
Python voorbeeld
[bewerken]<syntaxhighlight lang="python"> def main(): print "Hello World!" if __name__ == '__main__': main() </syntaxhighlight>
Dit levert het volgende op:
def main():
print "Hello World!"
if __name__ == '__main__':
main()
Parameters
[bewerken]- lang: Definieert de programmeertaal
- line: Correspondeert met de enable_line_numbers methode bij GeSHi
- start: Correspondeert met de start_line_numbers_at methode bij GeSHi
- enclose: Correspondeert met de set_header_type methode bij GeSHi
- strict: Correspondeert met de enable_strict_mode methode bij GeSHi
Het effect en het gebruik van deze parameters kan nagelezen worden in GeSHi's documentatie (Engelstalig).
Ondersteunde programmeertalen
[bewerken]De volgende codes voor betreffende programmeertalen kunnen in de lang-parameter worden gebruikt:
|
|
|
|