Příručka:$wgExternalDiffEngine
Obslužné nástroje a úložiště obsahu: $wgExternalDiffEngine | |
---|---|
Název externího rozdílového zdroje, který se má použít. |
|
Zavedeno od verze: | 1.6.0 (r12987) |
Odstraněno od verze: | stále se používá |
Povolené hodnoty: | (řetězec) nebo false |
Výchozí hodnota: | false |
Další nastavení: Podle abecedy | Podle funkce |
Podrobnosti
Název externího rozdílového zdroje, který se má použít, nebo false pro použití interního zdroje.
Možné hodnoty jsou:
false
- wikidiff2 , jiná implementace PHP, pokud je k dispozici.- jakýkoli jiný řetězec je považován za cestu k externímu spustitelnému souboru diff.
Následující hodnoty od MW 1.32 již nejsou podporovány:
Verze MediaWiki: | ≤ 1.32 |
'wikidiff2'
- rychlý rozdílový zdroj Wikimedie implementovaný jako modul PHP/HHVM.
Následující hodnoty od MW 1.27 již nejsou podporovány:
Verze MediaWiki: | ≤ 1.27 |
'wikidiff'
a'wikidiff3'
- považovány za false kvůli zpětné kompatibilitě.
Externí modul by měl vrátit HTML pro řádek tabulky obsahující čtyři sloupce (dva páry 'značka/obsah').
Ty lze sbalit do jednoho pro rozdílové formáty, které nevyžadují sloupce, např. <tr><td colspan="4"> … </td></tr>
Toto nastavení nahrazuje $wgUseExternalDiffEngine .
Příklad
To display diffs in the format of the common GNU diff
program, it is necessary to wrap that executable in a small script such as the following.
This is needed both to get the required HTML wrapper, and also because diff
returns non-zero when inputs don't match (which they generally don't for wiki changes).
- externaldiff.sh
#!/bin/bash echo "<tr><td colspan=4><pre>" # @todo This should also escape HTML. diff "$1" "$2" DIFFRET=$? echo "</pre></td></tr>" if [[ $DIFFRET -eq 1 ]]; then exit 0 else exit $DIFFRET fi
- LocalSettings.php
$wgDiffEngine = 'external'; $wgExternalDiffEngine = '/path/to/externaldiff.sh';