Deprecated: Use of MediaWiki\Parser\ParserOutput::getText was deprecated in MediaWiki 1.42. [Called from SMW\MediaWiki\Hooks\OutputPageParserOutput::getParserOutput in /home/jltryoen/www/MediaWiki/extensions/SemanticMediaWiki/src/MediaWiki/Hooks/OutputPageParserOutput.php at line 161] in /home/jltryoen/www/MediaWiki/includes/debug/MWDebug.php on line 386
« MediaWiki/Mes Extensions/SyntaxHighlight » : différence entre les versions — La FAQ de JLT

« MediaWiki/Mes Extensions/SyntaxHighlight » : différence entre les versions

Ligne 33 : Ligne 33 :
Voir {{weblink |link=https://pygments.org/docs/lexerdevelopment/}}
Voir {{weblink |link=https://pygments.org/docs/lexerdevelopment/}}
* Cloner la repository de pygments en local
* Cloner la repository de pygments en local
{{indent |Le site est {{githublink |link=pygments/pygments}}}}
*: Le site est {{githublink |link=pygments/pygments}}
{{syntaxhighlight |lang=git |code = git clone https://github.com/pygments/pygments.git}}
*: {{syntaxhighlight |lang=git |code = git clone https://github.com/pygments/pygments.git}}
* Ajouter le lexer souhaité sous le répertoire {{File |pygments/lexers}} en respectant bien les champs à remplir:<br>
* Ajouter le lexer souhaité sous le répertoire {{File |pygments/lexers}} en respectant bien les champs à remplir:<br>
*: example '''clearcase.py'''
*: example '''clearcase.py'''

Version du 19 février 2025 à 18:51


MediaWiki/Mes Extensions/SyntaxHighlight
Nom SyntaxHighlight
Lien Extension:SyntaxHighlight
Github  wikimedia/mediawiki-extensions-SyntaxHighlight_GeSHi

Description

Mise en forme de code

  MediaWiki/Mes_Extensions


Nouvelle version avec pygments

La nouvelle version utilise la librairie Pygments .
Elle permet d'ajouter un langage.
Pour cela il faut modifier la librarie utilisée écrite en python et disponible sur github.
J'ai ajouté le langage Clearcase

Je l'utilise au travers du modèle Modèle:Syntaxhighlight

Syntaxe

{{syntaxhighlight | lang=php|wfLoadExtension("SyntaxHighlight_GeSHi" );}}

Résultat

wfLoadExtension("SyntaxHighlight_GeSHi" );


Comment ajouter un "lexer" à l'outil pygments

Voir  https://pygments.org/docs/lexerdevelopment/

  • Cloner la repository de pygments en local
    Le site est   pygments/pygments
    git clone https://github.com/pygments/pygments.git
  • Ajouter le lexer souhaité sous le répertoire  pygments/lexers en respectant bien les champs à remplir:
    example clearcase.py
    class ClearcaseLexer(RegexLexer):
        """
        Lexer for (ba|k|z|)sh shell scripts.
        """
    
        name = 'Clearcase'
        mimetypes = ['application/text']
        filenames = ['*.clr']
        aliases = ['clearcase']
        url = 'https://fr.wikipedia.org/wiki/Rational_ClearCase'
        version_added = '2.19.1'