Go to file
Derk-Jan Hartman 39f0b85229 Do not extend GeSHi class with private modifications
Our GeSHi class is intended for other extensions making use of GeSHi.
However other libraries or extensions can bring their own GeSHi to the
classloader. In those cases, we cannot find our private modifications
like $compatibleLexers on this class. Instead use
SyntaxHighlightGeSHiCompat for our privact modifications and keep GeSHi
closer to the original implementation.

Bug: T139594
Change-Id: I5c2ba9dfb08ec31f6b5cfd90083cbae0ae0ac3c4
2017-05-11 18:11:25 +00:00
i18n Localisation updates from https://translatewiki.net. 2017-04-29 23:28:19 +02:00
maintenance Remove duplicate values from the lexer list 2016-02-03 17:30:01 -08:00
modules Avoid background when the content is narrow 2017-04-27 18:38:55 +02:00
pygments Update pygments to 2.2 2017-04-27 15:10:16 +02:00
tests Update pygments to 2.2 2017-04-27 15:10:16 +02:00
.eslintrc.json build: Replace jshint/jscs with eslint 2016-11-19 13:56:05 +00:00
.gitignore Support local composer setup 2015-06-25 22:49:53 +00:00
.gitreview Whoops, track not trace 2016-10-24 17:03:53 -07:00
.stylelintrc Introduce stylelint 2016-05-19 17:44:00 +01:00
composer.json build: add jakub-onderka/php-console-highlighter 2017-05-05 21:40:02 +02:00
COPYING Add COPYING 2014-01-22 19:44:32 +00:00
extension.json Do not extend GeSHi class with private modifications 2017-05-11 18:11:25 +00:00
Gruntfile.js build: Re-use MessageDirs in banana conf 2017-01-23 14:10:18 +00:00
package.json build: Update eslint to 0.4.0 2017-05-04 21:59:49 +01:00
phpcs.xml Update mediawiki-codesniffer and parallel-lint settings 2015-09-29 01:45:26 +02:00
README Support local composer setup 2015-06-25 22:49:53 +00:00
ResourceLoaderGeSHiVisualEditorModule.php Do not extend GeSHi class with private modifications 2017-05-11 18:11:25 +00:00
SyntaxHighlight_GeSHi.ace.php Convert SyntaxHighlight names to Ace names 2016-10-31 14:13:36 +01:00
SyntaxHighlight_GeSHi.class.php Do not extend GeSHi class with private modifications 2017-05-11 18:11:25 +00:00
SyntaxHighlight_GeSHi.compat.php Do not extend GeSHi class with private modifications 2017-05-11 18:11:25 +00:00
SyntaxHighlight_GeSHi.lexers.php Update pygments to 2.2 2017-04-27 15:10:16 +02:00
SyntaxHighlight_GeSHi.php Add php code sniffer to SyntaxHighlight_GeSHi 2015-09-27 21:16:58 +02:00

This extension allows source code to be syntax highlighted on the wiki pages.
This README file might be out of date, have a look at the extension page
for updated informations:

    https://www.mediawiki.org/wiki/Extension:SyntaxHighlight_GeSHi

== Requirements ==

This version of the extension has been tested with Pygments 1.6, 2.0.2 and
MediaWiki 1.25 as of 2015-06-19. To get releases of this extension compatible
with earlier versions of MediaWiki, visit:

    https://www.mediawiki.org/wiki/Special:ExtensionDistributor/SyntaxHighlight_GeSHi

== Installation ==

First, you will need to ensure that this extension's Composer-managed
dependencies are available. In the extension directory, run 'composer update'.

Next, Add this line to your LocalSettings.php:

    wfLoadExtension( 'SyntaxHighlight_GeSHi' );

By default, this extension will use a bundled copy of Pygments 2.0.2. If you
would like to use a different copy of the library, you can set
$wgPygmentizePath to point to the path to the 'pygmentize' binary.

== Usage ==

On the wiki page, you can now use "source" elements:

<source lang="php">
<?php
    v = "string";    // sample initialization
?>
html text
<?php
    echo v;         // end of php code
?>
</source>

== Parameters ==

For details information of these parameters, see the documentation of Pygments'
HtmlFormatter at <http://pygments.org/docs/formatters/#HtmlFormatter>.

* lang;		Defines the language.
* line;		Corresponds to linenos="inline" option.
* start;	Corresponds to linenostart opion.
* enclose;  If set to "none", corresponds to the nowrap=1 option.
* inline;   Corresponds to the nowrap=1 option.
* highlight;    Corresponds to hl_lines option (comma separated).

== Note ==

Pygments is generous about creating HTML elements: highlighting large blocks of
code can easily generate enough of them to crash a browser. As a guard, syntax
highlighting is turned off for code fragments larger than 100 kB.