Code Style Mediawiki
Lors de l'écriture de ce wiki, des extraits de code devaient être présentés. Le plugin SyntaxHighlight GeSHi
a été trouvé afin de mettre en place la coloration synthaxique.
Attention, celui-ci a été intégré dans Mediawiki à partir de la version 1.21.X. A partir de ces versions, il n'est donc plus nécessaire de le téléchargé et de le référencé dans l'instance.
Sommaire
Votre avis
Current user rating: 52/100 (1 votes)
|
|
Version < 1.21.X
Installation
Le plugin utilisé est disponible sur le site: http://qbnz.com/highlighter
Le plugin a été téléchargé directement depuis MediaWiki à l'adresse: http://www.mediawiki.org/wiki/Extension:SyntaxHighlight_GeSHi.
Une fois téléchargé, celui ci est décompressé via la commande tar dans le répertoire /var/datas/mediawiki/extensions
.
Puis, il faut le rendre disponible, comme indiqué en introduction de la page des plugins, en créant le lien sous /var/lib/mediawiki/extensions
.
#sudo ln -s /var/datas/mediawiki/extensions/SyntaxHighlight_GeSHi /var/lib/mediawiki/extensions/SyntaxHighlight_GeSHi #sudo chown -h www-data:www-data /var/lib/mediawiki/extensions/SyntaxHighlight_GeSHi
Le fichier /etc/mediawiki/LocalSettings.php
est ensuite modifié afin d'ajouter:
require_once("$IP/extensions/SyntaxHighlight_GeSHi/SyntaxHighlight_GeSHi.php");
Une deuxième installation a été réalisé en téléchargeant le package depuis: http://sourceforge.net/projects/geshi/files.
Le répertoire geshi/docs a été supprimé par la commande:
#sudo rm -rf /var/lib/mediawiki/extensions/SyntaxHighlight_GeSHi/geshi/docs
Dans la documentation, il est indiqué que l'on peut utiliser la syntaxe <syntaxhighlight>...</syntaxhighlight> ou <source></source>. Or la première syntaxe ne semble pas fonctionner de base. Pour cela, il faut changer le fichier /var/lib/mediawiki/extensions/SyntaxHighlight_GeSHi/SyntaxHighlight_GeSHi.php, pour déclarer le nouveau nom de balise.
Code original:
/**
* Register parser hook
*/
function efSyntaxHighlight_GeSHiSetup() {
global $wgParser;
$wgParser->setHook( 'source', array( 'SyntaxHighlight_GeSHi', 'parserHook' ) );
return true;
}
Code modifié:
/**
* Register parser hook
*/
function efSyntaxHighlight_GeSHiSetup() {
global $wgParser;
$wgParser->setHook( 'source', array( 'SyntaxHighlight_GeSHi', 'parserHook' ) );
$wgParser->setHook( 'syntaxhighlight', array( 'SyntaxHighlight_GeSHi', 'parserHook' ) );
return true;
}
CSS
Sur ce wiki, la CSS a été modifiée pour le plugin afin d'afficher un cadre sur et un fond grisé sur les codes sources. Pour cela, la page MediaWiki:Geshi.css
a été modifiée pour modifier la définition de la CSS autogénérée. Le contenu du fichier est le suivant:
.bash.source-bash .de1{
background-color:#EEEDED;
border:1px solid;
}
.css.source-css .de1{
background-color:#EEEDED;
border:1px solid;
}
.html4strict.source-html4strict .de1{
background-color:#EEEDED;
border:1px solid;
}
.java.source-java .de1{
background-color:#EEEDED;
border:1px solid;
}
.php.source-php .de1{
background-color:#EEEDED;
border:1px solid;
}
.plsql.source-plsql .de1{
background-color:#EEEDED;
border:1px solid;
}
.sql.source-sql .de1{
background-color:#EEEDED;
border:1px solid;
}
.text.source-text .de1{
background-color:#EEEDED;
border:1px solid;
}
.xml.source-xml .de1 {
background-color:#EEEDED;
border:1px solid;
}
Package installé
Plugin installé: Geshi_plugin.tar.gz
Version >= 1.21.X
Activation
Le plugin étant disponible dans les sources de MediaWiki, il n'est plus nécessaire de l'installer. Toutefois, il est toujours nécessaire de le référencer dans le fichier LocalSettings.php
, dans le cadre de cette installation fichier /etc/mediawiki/LocalSettings.php
.
require_once("$IP/extensions/SyntaxHighlight_GeSHi/SyntaxHighlight_GeSHi.php");
Voir aussi
Documentation officielle: http://www.mediawiki.org/wiki/Extension:SyntaxHighlight_GeSHi