| Ligne 18 : | Ligne 18 : | ||
Il est nécessaire aussi de configurer le binaire associé à pigments. Par défaut celui fourni par Mes Extensions/SyntaxHighlight ne fonctionne pas forcément; il a été généré sur une plateforme Linux avec une version de python assez récente.<br> | Il est nécessaire aussi de configurer le binaire associé à pigments. Par défaut celui fourni par Mes Extensions/SyntaxHighlight ne fonctionne pas forcément; il a été généré sur une plateforme Linux avec une version de python assez récente.<br> | ||
Pour ma part j'ai configurer ceci dans mon fichier LocalSettings.php | Pour ma part j'ai configurer ceci dans mon fichier {{File |LocalSettings.php}} | ||
{{ | {{syntaxhighlight |lang=php |code= | ||
if ( $isWindows ) { | if ( $isWindows ) { | ||
$wgPygmentizePath = "$IP/extensions/SyntaxHighlight_GeSHi/pygments/pygments/dist/__main__.exe"; | $wgPygmentizePath = "$IP/extensions/SyntaxHighlight_GeSHi/pygments/pygments/dist/__main__.exe"; | ||
| MediaWiki/Mes Extensions/SyntaxHighlight | |
|---|---|
| Nom | SyntaxHighlight |
| Lien | |
| Github | |
Mise en forme de code
MediaWiki/Mes_Extensions
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, voir ici Comment
J'ai ajouté le langage Clearcase
Je l'utilise au travers du modèle Modèle:Syntaxhighlight
Il est nécessaire aussi de configurer le binaire associé à pigments. Par défaut celui fourni par Mes Extensions/SyntaxHighlight ne fonctionne pas forcément; il a été généré sur une plateforme Linux avec une version de python assez récente.
Pour ma part j'ai configurer ceci dans mon fichier
LocalSettings.php
if ( $isWindows ) {
$wgPygmentizePath = "$IP/extensions/SyntaxHighlight_GeSHi/pygments/pygments/dist/__main__.exe";
} else {
$wgPygmentizePath = "/homez.913/jltryoen/python/pygments/pygmentize";
}
{{syntaxhighlight | lang=php|wfLoadExtension("SyntaxHighlight_GeSHi" );}}
wfLoadExtension("SyntaxHighlight_GeSHi" );
Voir
https://pygments.org/docs/lexerdevelopment/
git clone https://github.com/pygments/pygments.git
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'
python scripts/gen_mapfiles.py
pyinstaller --onefile __main__.py
#!/usr/bin/python3
# -*- coding: utf-8 -*-
import re
import sys
from pygments.cmdline import main
if __name__ == '__main__':
sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0])
sys.exit(main())
Python 3.7.3 (default, Mar 23 2024, 16:12:05) Du coup j'ai du revenir en arrière sur la version de pygments, juste avant cette version: SHA-1: e7f50060fd644b17de8debbd2a5c259c64898d4f * Drop support for EOL Python 3.7 (#2601)
SHA-1: 276dcf8ae4af6e959e13ea6f63d9f5e7bc80ea48 * Update CHANGES git reset --hard 276dcf8ae4af6e959e13ea6f63d9f5e7bc80ea48
et rajouter mon fichier clearcase.py, relancer la commande de génération |