summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBrian Evans <grknight@gentoo.org>2018-11-20 10:53:43 -0500
committerBrian Evans <grknight@gentoo.org>2018-11-20 10:53:43 -0500
commit2330690643ff2fe01905f82eb7dc07358194c3b1 (patch)
treedd008f0b8308fa68cd48709e749f0421c10e8d5d
parentUpdate to MediaWikiLanguageExtensionBundle-2018.10 (diff)
downloadextensions-2330690643ff2fe01905f82eb7dc07358194c3b1.tar.gz
extensions-2330690643ff2fe01905f82eb7dc07358194c3b1.tar.bz2
extensions-2330690643ff2fe01905f82eb7dc07358194c3b1.zip
PipeEscape: update to REL_1_30
Signed-off-by: Brian Evans <grknight@gentoo.org>
-rw-r--r--PipeEscape/.gitignore22
-rw-r--r--PipeEscape/.gitreview6
-rw-r--r--PipeEscape/CODE_OF_CONDUCT.md1
-rw-r--r--PipeEscape/ExtPipeEsc.php32
-rw-r--r--PipeEscape/Gruntfile.js29
-rw-r--r--PipeEscape/PipeEscape.i18n.php370
-rw-r--r--PipeEscape/PipeEscape.php65
-rw-r--r--PipeEscape/composer.json55
-rw-r--r--PipeEscape/composer.lock275
-rw-r--r--PipeEscape/gitinfo.json1
-rw-r--r--PipeEscape/i18n/aln.json8
-rw-r--r--PipeEscape/i18n/ar.json8
-rw-r--r--PipeEscape/i18n/ast.json8
-rw-r--r--PipeEscape/i18n/be-tarask.json8
-rw-r--r--PipeEscape/i18n/br.json8
-rw-r--r--PipeEscape/i18n/bs.json8
-rw-r--r--PipeEscape/i18n/de.json9
-rw-r--r--PipeEscape/i18n/dsb.json8
-rw-r--r--PipeEscape/i18n/el.json8
-rw-r--r--PipeEscape/i18n/en.json10
-rw-r--r--PipeEscape/i18n/es.json9
-rw-r--r--PipeEscape/i18n/eu.json8
-rw-r--r--PipeEscape/i18n/fi.json9
-rw-r--r--PipeEscape/i18n/fr.json9
-rw-r--r--PipeEscape/i18n/gl.json8
-rw-r--r--PipeEscape/i18n/gsw.json8
-rw-r--r--PipeEscape/i18n/he.json8
-rw-r--r--PipeEscape/i18n/hil.json8
-rw-r--r--PipeEscape/i18n/hsb.json8
-rw-r--r--PipeEscape/i18n/hu.json8
-rw-r--r--PipeEscape/i18n/ia.json8
-rw-r--r--PipeEscape/i18n/id.json8
-rw-r--r--PipeEscape/i18n/it.json8
-rw-r--r--PipeEscape/i18n/ja.json8
-rw-r--r--PipeEscape/i18n/ko.json8
-rw-r--r--PipeEscape/i18n/ksh.json8
-rw-r--r--PipeEscape/i18n/la.json9
-rw-r--r--PipeEscape/i18n/lb.json8
-rw-r--r--PipeEscape/i18n/lij.json8
-rw-r--r--PipeEscape/i18n/mk.json8
-rw-r--r--PipeEscape/i18n/ms.json8
-rw-r--r--PipeEscape/i18n/nb.json8
-rw-r--r--PipeEscape/i18n/nl.json8
-rw-r--r--PipeEscape/i18n/nn.json9
-rw-r--r--PipeEscape/i18n/oc.json8
-rw-r--r--PipeEscape/i18n/pl.json8
-rw-r--r--PipeEscape/i18n/pms.json8
-rw-r--r--PipeEscape/i18n/pt-br.json8
-rw-r--r--PipeEscape/i18n/pt.json9
-rw-r--r--PipeEscape/i18n/qqq.json11
-rw-r--r--PipeEscape/i18n/roa-tara.json8
-rw-r--r--PipeEscape/i18n/ru.json8
-rw-r--r--PipeEscape/i18n/sk.json8
-rw-r--r--PipeEscape/i18n/sr-ec.json8
-rw-r--r--PipeEscape/i18n/sr-el.json4
-rw-r--r--PipeEscape/i18n/sv.json8
-rw-r--r--PipeEscape/i18n/tl.json8
-rw-r--r--PipeEscape/i18n/tr.json8
-rw-r--r--PipeEscape/i18n/uk.json8
-rw-r--r--PipeEscape/i18n/vi.json8
-rw-r--r--PipeEscape/i18n/zh-hans.json8
-rw-r--r--PipeEscape/package.json12
-rw-r--r--PipeEscape/version4
63 files changed, 872 insertions, 416 deletions
diff --git a/PipeEscape/.gitignore b/PipeEscape/.gitignore
new file mode 100644
index 00000000..c369f1e2
--- /dev/null
+++ b/PipeEscape/.gitignore
@@ -0,0 +1,22 @@
+node_modules/
+vendor/
+
+# Editors
+*.kate-swp
+*~
+\#*#
+.#*
+.*.swp
+.project
+.buildpath
+.classpath
+.settings
+cscope.files
+cscope.out
+*.orig
+## NetBeans
+nbproject*
+project.index
+## Sublime
+sublime-*
+sftp-config.json
diff --git a/PipeEscape/.gitreview b/PipeEscape/.gitreview
new file mode 100644
index 00000000..3589431b
--- /dev/null
+++ b/PipeEscape/.gitreview
@@ -0,0 +1,6 @@
+[gerrit]
+host=gerrit.wikimedia.org
+port=29418
+project=mediawiki/extensions/PipeEscape.git
+track=1
+defaultrebase=0
diff --git a/PipeEscape/CODE_OF_CONDUCT.md b/PipeEscape/CODE_OF_CONDUCT.md
new file mode 100644
index 00000000..d8e5d087
--- /dev/null
+++ b/PipeEscape/CODE_OF_CONDUCT.md
@@ -0,0 +1 @@
+The development of this software is covered by a [Code of Conduct](https://www.mediawiki.org/wiki/Code_of_Conduct).
diff --git a/PipeEscape/ExtPipeEsc.php b/PipeEscape/ExtPipeEsc.php
new file mode 100644
index 00000000..1270698f
--- /dev/null
+++ b/PipeEscape/ExtPipeEsc.php
@@ -0,0 +1,32 @@
+<?php
+
+class ExtPipeEsc {
+ private static $parserFunctions = array('!' => 'pipeChar');
+
+ public static function setup( &$parser ) {
+ // register each hook
+ foreach( self::$parserFunctions as $hook => $function )
+ $parser->setFunctionHook( $hook,
+ array( __CLASS__, $function ), Parser::SFH_OBJECT_ARGS );
+ return true;
+ }
+
+ public static function pipeChar( &$parser, $frame, $args ) {
+ $output = array_shift( $args );
+ // no parameters means we're done. spit out an empty string
+ if ( !isset( $output ) )
+ return '';
+ // expand the first argument
+ $output = $frame->expand( $output );
+ // get the rest of the arguments, expand each one, prefix each expansion
+ // with a pipe character, and append it to the output string.
+ for ( $arg = array_shift( $args );
+ isset( $arg );
+ $arg = array_shift( $args ) )
+ {
+ $output .= '|' . $frame->expand( $arg );
+ }
+ //return '<pre><nowiki>'. trim( $output ) . '</nowiki></pre>';
+ return trim( $output );
+ }
+}
diff --git a/PipeEscape/Gruntfile.js b/PipeEscape/Gruntfile.js
new file mode 100644
index 00000000..2db815fa
--- /dev/null
+++ b/PipeEscape/Gruntfile.js
@@ -0,0 +1,29 @@
+/*jshint node:true */
+module.exports = function ( grunt ) {
+ grunt.loadNpmTasks( 'grunt-jsonlint' );
+ grunt.loadNpmTasks( 'grunt-contrib-jshint' );
+ grunt.loadNpmTasks( 'grunt-banana-checker' );
+
+ grunt.initConfig( {
+ banana: {
+ all: 'i18n/'
+ },
+ jshint: {
+ all: [
+ '**/*.js',
+ '!node_modules/**',
+ '!vendor/**'
+ ]
+ },
+ jsonlint: {
+ all: [
+ '**/*.json',
+ '!node_modules/**',
+ '!vendor/**'
+ ]
+ }
+ } );
+
+ grunt.registerTask( 'test', [ 'jsonlint', 'banana', 'jshint' ] );
+ grunt.registerTask( 'default', 'test' );
+};
diff --git a/PipeEscape/PipeEscape.i18n.php b/PipeEscape/PipeEscape.i18n.php
deleted file mode 100644
index 78d7d3bc..00000000
--- a/PipeEscape/PipeEscape.i18n.php
+++ /dev/null
@@ -1,370 +0,0 @@
-<?php
-/**
- * Internationalisation file for extension PipeEscape.
- *
- * @file
- * @ingroup Extensions
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * @author David M. Sledge
- * @author Purodha Blissenbach, http://ksh.wikipedia.org/wiki/User:Purodha
- * @copyright Copyright © 2008 David M. Sledge
- * @license http://www.gnu.org/copyleft/gpl.html GNU General Public License 2.0 or later
- */
-
-$messages = array();
-
-/** English (English)
- * @author David M. Sledge
- * @author Purodha
- */
-$messages['en'] = array(
- # general messages
- 'pipeescape-desc' => 'Parser function <code>#!</code> for when you want a pipe character to be just a pipe character',
-);
-
-/** Message documentation (Message documentation)
- * @author Fryed-peach
- * @author Purodha
- */
-$messages['qqq'] = array(
- 'pipeescape-desc' => '{{desc|name=[[:mw:Extension:Pipe_Escape|Pipe_Escape]]}}',
-);
-
-/** Gheg Albanian (Gegë)
- * @author Mdupont
- */
-$messages['aln'] = array(
- 'pipeescape-desc' => 'funksion parser <code>#!</code> për kur të doni një karakter tub të jetë vetëm një karakter tub',
-);
-
-/** Arabic (العربية)
- * @author Meno25
- */
-$messages['ar'] = array(
- 'pipeescape-desc' => 'دالة محلل <code>#!</code> لعندما تريد حرف أنبوبة ليكون فقط حرف أنبوبة',
-);
-
-/** Asturian (asturianu)
- * @author Xuacu
- */
-$messages['ast'] = array(
- 'pipeescape-desc' => "Función del analizador sintácticu <code>#!</code> pa cuando se quier que'l caráuter de barra vertical «|» nun tenga significáu especial",
-);
-
-/** Belarusian (Taraškievica orthography) (беларуская (тарашкевіца)‎)
- * @author EugeneZelenko
- */
-$messages['be-tarask'] = array(
- 'pipeescape-desc' => 'Функцыя парсэра <code>#!</code>, якая сочыць, каб калі Вы жадаеце дадаць сымбаль «|», дадаваліся толькі сымбаль «|».',
-);
-
-/** Breton (brezhoneg)
- * @author Fulup
- */
-$messages['br'] = array(
- 'pipeescape-desc' => 'Arc\'hwel parser <code>#!</code> evit ensoc\'hañ arouezenn ur varrenn sonn "|" evel un arouezenn barrenn sonn hepmuiken',
-);
-
-/** Bosnian (bosanski)
- * @author CERminator
- */
-$messages['bs'] = array(
- 'pipeescape-desc' => 'Parserska funkcija <code>#!</code> kada želite da pipe znak bude isključivo samo pipe znak',
-);
-
-/** German (Deutsch)
- * @author Kghbln
- * @author Purodha
- */
-$messages['de'] = array(
- 'pipeescape-desc' => 'Ergänzt die Funktion <code>#!</code>, die als versteckter Parametertrenner genutzt werden kann',
-);
-
-/** Lower Sorbian (dolnoserbski)
- * @author Michawiki
- */
-$messages['dsb'] = array(
- 'pipeescape-desc' => 'Parserowa funkcija <code>#!</code>, joli coš znamješko | schowaś (znamješko | ma se jano pśedstajiś, bźez wósebneje funkcije)',
-);
-
-/** Greek (Ελληνικά)
- * @author Omnipaedista
- */
-$messages['el'] = array(
- 'pipeescape-desc' => 'Λεξιαναλυτική συνάρτηση <code>#!</code> για όταν θέλετε ένας χαρακτήρας pipe να είναι απλά ένας χαρακτήρας pipe',
-);
-
-/** Spanish (español)
- * @author Sanbec
- */
-$messages['es'] = array(
- 'pipeescape-desc' => 'Función del analizador sintáctico <code>#!</code> para insertar el carácter de barra vertical «|» como tal carácter y sin significado especial,',
-);
-
-/** Basque (euskara)
- * @author Theklan
- */
-$messages['eu'] = array(
- 'pipeescape-desc' => '<code>#!</code> parser funtzioa, karaktere hori zehazki karaktere hori izan dadila nahi duzunerako',
-);
-
-/** Finnish (suomi)
- * @author Cimon Avaro
- * @author Crt
- */
-$messages['fi'] = array(
- 'pipeescape-desc' => 'Jäsentimen toiminto <code>#!</code>, kun haluat putkimerkin olevan vain putkimerkki.',
-);
-
-/** French (français)
- * @author Grondin
- * @author Urhixidur
- */
-$messages['fr'] = array(
- 'pipeescape-desc' => 'Fonction de l’analyseur syntaxique <code>#!</code> pour insérer une barre verticale non-interprétée.',
-);
-
-/** Galician (galego)
- * @author Toliño
- */
-$messages['gl'] = array(
- 'pipeescape-desc' => 'Función analítica <code>#!</code> para cando queira un carácter punto que sexa só un carácter punto',
-);
-
-/** Swiss German (Alemannisch)
- * @author Als-Holder
- */
-$messages['gsw'] = array(
- 'pipeescape-desc' => 'Parserfunktion <code>#!</code> versteckt Parameter-Trenner',
-);
-
-/** Hebrew (עברית)
- * @author Rotemliss
- */
-$messages['he'] = array(
- 'pipeescape-desc' => 'הוראת מפענח <code>#!</code> למקרה שבו רוצים שתו מפריד אנכי (|) יהיה פשוט תו מפריד אנכי',
-);
-
-/** Hiligaynon (Ilonggo)
- * @author Tagimata
- */
-$messages['hil'] = array(
- 'pipeescape-desc' => 'Parser panksiyon <code>#!</code> para kada kilanlan nimo sang karakter tubo para mangin isa ka karakter tubo',
-);
-
-/** Upper Sorbian (hornjoserbsce)
- * @author Michawiki
- */
-$messages['hsb'] = array(
- 'pipeescape-desc' => 'Parserowa funkcija <code>#!</code>, jeli chceš znamješko | schować (znamješko | ma so jenož předstajić, bjez wosebiteje funkcije)',
-);
-
-/** Hungarian (magyar)
- * @author Glanthor Reviol
- */
-$messages['hu'] = array(
- 'pipeescape-desc' => '<code>#!</code> elemzőfüggvény, hogy szükség esetén a függőleges vonal (pipe) karaktert ne értelmezze speciálisan az elemző',
-);
-
-/** Interlingua (interlingua)
- * @author McDutchie
- */
-$messages['ia'] = array(
- 'pipeescape-desc' => 'Function del analysator syntactic <code>#!</code> pro inserer le character de barra vertical ("pipe") qua character simple.',
-);
-
-/** Indonesian (Bahasa Indonesia)
- * @author Bennylin
- */
-$messages['id'] = array(
- 'pipeescape-desc' => 'Fungsi parser <code>#!</code> jika Anda menginginkan karakter pipa sebagaimana adanya',
-);
-
-/** Italian (italiano)
- * @author Civvì
- */
-$messages['it'] = array(
- 'pipeescape-desc' => "Funzione parser <code>#!</code> per quando si desidera che il carattere ''pipe'' sia solo un carattere pipe",
-);
-
-/** Japanese (日本語)
- * @author Fryed-peach
- */
-$messages['ja'] = array(
- 'pipeescape-desc' => 'パイプ記号をパイプ記号のまま扱いたい場合のために、パーサー関数 <code>#!</code> を追加する',
-);
-
-/** Korean (한국어)
- * @author Kwj2772
- */
-$messages['ko'] = array(
- 'pipeescape-desc' => '파이프 문자가 파이프 문자로서의 역할만 하도록 할 때 사용하는 <code>#!</code> 파서 기능',
-);
-
-/** Colognian (Ripoarisch)
- * @author Purodha
- */
-$messages['ksh'] = array(
- 'pipeescape-desc' => 'Brengk de Paaserfunxjuhn <code>#!</code> en et Wiki, die der sängkrääschte Shtresh unmollesteet dorsch löht.',
-);
-
-/** Latin (Latina)
- * @author UV
- * @author purodha
- */
-$messages['la'] = array(
- 'pipeescape-desc' => 'Functio parseris <code>#!</code> qui protegit litteram | ne haec littera separet parametra',
-);
-
-/** Luxembourgish (Lëtzebuergesch)
- * @author Robby
- */
-$messages['lb'] = array(
- 'pipeescape-desc' => 'Parserfonctioun <code>#!</code> fir den Trenn-Parameter als normale Buchstaw ze benotzen',
-);
-
-/** Macedonian (македонски)
- * @author Bjankuloski06
- */
-$messages['mk'] = array(
- 'pipeescape-desc' => 'Парсерска функција <code>#!</code> која се користи кога сакате цртите да бидат само црти',
-);
-
-/** Malay (Bahasa Melayu)
- * @author Anakmalaysia
- */
-$messages['ms'] = array(
- 'pipeescape-desc' => 'Fungsi penghurai <code>#!</code> supaya aksara paip kekal sekadar aksara paip tanpa fungsi khas',
-);
-
-/** Norwegian Bokmål (norsk (bokmål)‎)
- * @author Nghtwlkr
- */
-$messages['nb'] = array(
- 'pipeescape-desc' => 'Tolkefunksjonen <code>#!</code> som lar «|»-tegnet bare være et «|»-tegn',
-);
-
-/** Dutch (Nederlands)
- * @author Siebrand
- */
-$messages['nl'] = array(
- 'pipeescape-desc' => 'Parserfunctie <code>#!</code> om een pipe-karakter gewoon een pipe-karakter te laten zijn',
-);
-
-/** Norwegian Nynorsk (norsk (nynorsk)‎)
- * @author Harald Khan
- * @author Njardarlogar
- */
-$messages['nn'] = array(
- 'pipeescape-desc' => 'Tolkefunksjon <code>#!</code> som lèt «|»-teiknet vera berre eit «|»-teikn.',
-);
-
-/** Occitan (occitan)
- * @author Cedric31
- */
-$messages['oc'] = array(
- 'pipeescape-desc' => 'Foncion parser <code>#!</code> per inserir lo caractèr pipe en tant que caractèr simple.',
-);
-
-/** Polish (polski)
- * @author Sp5uhe
- */
-$messages['pl'] = array(
- 'pipeescape-desc' => 'Funkcja parsera <code>#!</code> pozwalająca na użycie znaku pionowej kreski',
-);
-
-/** Piedmontese (Piemontèis)
- * @author Dragonòt
- */
-$messages['pms'] = array(
- 'pipeescape-desc' => 'Fonsion dël parser <code>#!</code> për quand it veule che un caràter "pipe" a sia mach un caràter "pipe"',
-);
-
-/** Portuguese (português)
- * @author Hamilton Abreu
- * @author Malafaya
- */
-$messages['pt'] = array(
- 'pipeescape-desc' => 'Função do analisador sintáctico <code>#!</code> para quando se pretende que uma barra vertical ("pipe") seja apenas uma barra vertical.',
-);
-
-/** Brazilian Portuguese (português do Brasil)
- * @author Eduardo.mps
- */
-$messages['pt-br'] = array(
- 'pipeescape-desc' => 'Função do analisador (parser) <code>#!</code> para quando se pretende que um caractere barra vertical ("pipe") seja apenas um caractere barra vertical.',
-);
-
-/** tarandíne (tarandíne)
- * @author Joetaras
- */
-$messages['roa-tara'] = array(
- 'pipeescape-desc' => "Funziona d'analisi <code>#!</code> pe quanne tu vuè ca 'nu carattere de ''pipe'' avène conziderate cumme a 'nu ''pipe''",
-);
-
-/** Russian (русский)
- * @author Александр Сигачёв
- */
-$messages['ru'] = array(
- 'pipeescape-desc' => 'Функция парсера <code>#!</code> предназначена для случаев, когда вы хотите использовать символ вертикальной черты просто как символ',
-);
-
-/** Slovak (slovenčina)
- * @author Helix84
- */
-$messages['sk'] = array(
- 'pipeescape-desc' => 'Funkciu syntaktického analyzátora <code>#!</code> použijete vtedy, keď chcete, aby bol znak rúry iba znakom rúry',
-);
-
-/** Serbian (Cyrillic script) (српски (ћирилица)‎)
- * @author Михајло Анђелковић
- */
-$messages['sr-ec'] = array(
- 'pipeescape-desc' => "Парсерска функција <code>#!</code> за случајеве када пајп-карактер ('|') треба да буде само то.",
-);
-
-/** Serbian (Latin script) (srpski (latinica)‎) */
-$messages['sr-el'] = array(
- 'pipeescape-desc' => "Parserska funkcija <code>#!</code> za slučajeve kada pajp-karakter ('|') treba da bude samo to.",
-);
-
-/** Swedish (svenska)
- * @author Najami
- */
-$messages['sv'] = array(
- 'pipeescape-desc' => 'Parserfunktionen <code>#!</code> låter "|"-tecknet bara vara ett "|"-tecken.',
-);
-
-/** Tagalog (Tagalog)
- * @author AnakngAraw
- */
-$messages['tl'] = array(
- 'pipeescape-desc' => 'Tungkulin ng banghay na <code>#!</code> para sa kung kailan mo naising maging isang panitik na tubo lamang ang isang panitik na tubo',
-);
-
-/** Turkish (Türkçe)
- * @author Vito Genovese
- */
-$messages['tr'] = array(
- 'pipeescape-desc' => 'Bir boru karakterinin sadece bir boru karakteri olmasını istediğiniz zamanlar için ayrıştırıcı fonksiyon <code>#!</code>',
-);
-
-/** Ukrainian (українська)
- * @author Prima klasy4na
- */
-$messages['uk'] = array(
- 'pipeescape-desc' => 'Функція парсера <code>#!</code> для випадків, коли ви хочете використовувати символ вертикальної риски тільки як символ',
-);
-
-/** Vietnamese (Tiếng Việt)
- * @author Vinhtantran
- */
-$messages['vi'] = array(
- 'pipeescape-desc' => 'Hàm cú pháp <code>#!</code> dùng khi bạn muốn một ký tự sổ dọc chỉ đơn thuần là một ký tự sổ dọc',
-);
-
diff --git a/PipeEscape/PipeEscape.php b/PipeEscape/PipeEscape.php
index 554afab3..586c41b3 100644
--- a/PipeEscape/PipeEscape.php
+++ b/PipeEscape/PipeEscape.php
@@ -13,61 +13,34 @@
* initial creation.
* @version 0.1.1
* i18n support.
+ * @version 2.0.0
+ * adaption to MediaWiki 1.26
*
* @todo
* allow alias names.
*/
-if ( !defined( 'MEDIAWIKI' ) )
-{
+if ( !defined( 'MEDIAWIKI' ) ) {
die( 'This file is a MediaWiki extension, it is not a valid entry point.' );
}
-$wgHooks[ 'ParserFirstCallInit' ][] = 'ExtPipeEsc::setup';
+$wgAutoloadClasses['ExtPipeEsc'] = __DIR__ . '/ExtPipeEsc.php';
+
$wgExtensionCredits[ 'parserhook' ][] = array(
- 'path' => __FILE__,
- 'author' => 'David M. Sledge',
- 'name' => 'Pipe Escape',
- 'version' => ExtPipeEsc::VERSION,
- 'url' => 'https://www.mediawiki.org/wiki/Extension:Pipe_Escape',
- 'descriptionmsg' => 'pipeescape-desc',
+ 'path' => __FILE__,
+ 'name' => 'Pipe Escape',
+ 'namemsg' => 'pipeescape-extensionname',
+ 'author' => array(
+ 'David M. Sledge',
+ 'Purodha Blissenbach',
+ ),
+ 'version' => '2.0.0',
+ 'url' => 'https://www.mediawiki.org/wiki/Extension:Pipe_Escape',
+ 'descriptionmsg' => 'pipeescape-desc',
+ 'license-name' => 'GPL-2.0+',
);
-$dir = dirname(__FILE__) . DIRECTORY_SEPARATOR;
-$wgExtensionMessagesFiles['PipeEscape'] = $dir . 'PipeEscape.i18n.php';
-$wgExtensionMessagesFiles['PipeEscapeMagic'] = $dir . 'PipeEscape.i18n.magic.php';
-
-class ExtPipeEsc
-{
- const VERSION = '0.1.1';
- private static $parserFunctions = array('!' => 'pipeChar');
+$wgMessagesDirs['PipeEscape'] = __DIR__ . '/i18n';
+$wgExtensionMessagesFiles['PipeEscapeMagic'] = __DIR__ . '/PipeEscape.i18n.magic.php';
- public static function setup( &$parser )
- {
- // register each hook
- foreach( self::$parserFunctions as $hook => $function )
- $parser->setFunctionHook( $hook,
- array( __CLASS__, $function ), SFH_OBJECT_ARGS );
- return true;
- }
-
- public static function pipeChar( &$parser, $frame, $args )
- {
- $output = array_shift( $args );
- // no parameters means we're done. spit out an empty string
- if ( !isset( $output ) )
- return '';
- // expand the first argument
- $output = $frame->expand( $output );
- // get the rest of the arguments, expand each one, prefix each expansion
- // with a pipe character, and append it to the output string.
- for ( $arg = array_shift( $args );
- isset( $arg );
- $arg = array_shift( $args ) )
- {
- $output .= '|' . $frame->expand( $arg );
- }
- //return '<pre><nowiki>'. trim( $output ) . '</nowiki></pre>';
- return trim( $output );
- }
-}
+$wgHooks[ 'ParserFirstCallInit' ][] = 'ExtPipeEsc::setup';
diff --git a/PipeEscape/composer.json b/PipeEscape/composer.json
new file mode 100644
index 00000000..c7d263e9
--- /dev/null
+++ b/PipeEscape/composer.json
@@ -0,0 +1,55 @@
+{
+ "name": "mediawiki/pipeescape",
+ "type": "mediawiki-extension",
+ "description": "The only standard solution to translate any kind of text with an avant-garde web interface within MediaWiki, including your documentation and software",
+ "keywords": [
+ "wiki",
+ "MediaWiki",
+ "extension",
+ "pipe character",
+ "Pipe Escape"
+ ],
+ "homepage": "https://www.mediawiki.org/wiki/Extension:Pipe_Escape",
+ "license": "GPL-2.0+",
+ "authors": [
+ {
+ "name": "David M. Sledge",
+ "role": "Original author"
+ },
+ {
+ "name": "Purodha Blissenbach",
+ "email": "purodha@tools.wmflabs.org",
+ "role": "Maintainer"
+ }
+ ],
+ "support": {
+ "issues": "https://phabricator.wikimedia.org/tag/mediawiki-extensions-pipeescape/",
+ "wiki": "https://www.mediawiki.org/wiki/Extension:Pipe_Escape",
+ "forum": "https://www.mediawiki.org/wiki/Extension_talk:Pipe_Escape",
+ "source": "https://git.wikimedia.org/summary/?r=mediawiki/extensions/PipeEscape.git"
+ },
+ "require": {
+ "php": ">=5.0.0",
+ "composer/installers": ">=1.0.1"
+ },
+ "autoload": {
+ "files": [
+ "PipeEscape.php"
+ ]
+ },
+ "config": {
+ "optimize-autoloader": true,
+ "prepend-autoloader": false
+ },
+ "suggest": {
+ },
+ "require-dev": {
+ "jakub-onderka/php-parallel-lint": "0.9.2",
+ "jakub-onderka/php-console-highlighter": "0.3.2"
+ },
+ "scripts": {
+ "test": [
+ "parallel-lint . --exclude vendor"
+ ]
+ }
+}
diff --git a/PipeEscape/composer.lock b/PipeEscape/composer.lock
new file mode 100644
index 00000000..07b7c69c
--- /dev/null
+++ b/PipeEscape/composer.lock
@@ -0,0 +1,275 @@
+{
+ "_readme": [
+ "This file locks the dependencies of your project to a known state",
+ "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies",
+ "This file is @generated automatically"
+ ],
+ "content-hash": "be3d63165fe32576d1989b6b090aee78",
+ "packages": [
+ {
+ "name": "composer/installers",
+ "version": "v1.5.0",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/composer/installers.git",
+ "reference": "049797d727261bf27f2690430d935067710049c2"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/composer/installers/zipball/049797d727261bf27f2690430d935067710049c2",
+ "reference": "049797d727261bf27f2690430d935067710049c2",
+ "shasum": ""
+ },
+ "require": {
+ "composer-plugin-api": "^1.0"
+ },
+ "replace": {
+ "roundcube/plugin-installer": "*",
+ "shama/baton": "*"
+ },
+ "require-dev": {
+ "composer/composer": "1.0.*@dev",
+ "phpunit/phpunit": "^4.8.36"
+ },
+ "type": "composer-plugin",
+ "extra": {
+ "class": "Composer\\Installers\\Plugin",
+ "branch-alias": {
+ "dev-master": "1.0-dev"
+ }
+ },
+ "autoload": {
+ "psr-4": {
+ "Composer\\Installers\\": "src/Composer/Installers"
+ }
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "MIT"
+ ],
+ "authors": [
+ {
+ "name": "Kyle Robinson Young",
+ "email": "kyle@dontkry.com",
+ "homepage": "https://github.com/shama"
+ }
+ ],
+ "description": "A multi-framework Composer library installer",
+ "homepage": "https://composer.github.io/installers/",
+ "keywords": [
+ "Craft",
+ "Dolibarr",
+ "Eliasis",
+ "Hurad",
+ "ImageCMS",
+ "Kanboard",
+ "Lan Management System",
+ "MODX Evo",
+ "Mautic",
+ "Maya",
+ "OXID",
+ "Plentymarkets",
+ "Porto",
+ "RadPHP",
+ "SMF",
+ "Thelia",
+ "WolfCMS",
+ "agl",
+ "aimeos",
+ "annotatecms",
+ "attogram",
+ "bitrix",
+ "cakephp",
+ "chef",
+ "cockpit",
+ "codeigniter",
+ "concrete5",
+ "croogo",
+ "dokuwiki",
+ "drupal",
+ "eZ Platform",
+ "elgg",
+ "expressionengine",
+ "fuelphp",
+ "grav",
+ "installer",
+ "itop",
+ "joomla",
+ "kohana",
+ "laravel",
+ "lavalite",
+ "lithium",
+ "magento",
+ "majima",
+ "mako",
+ "mediawiki",
+ "modulework",
+ "modx",
+ "moodle",
+ "osclass",
+ "phpbb",
+ "piwik",
+ "ppi",
+ "puppet",
+ "pxcms",
+ "reindex",
+ "roundcube",
+ "shopware",
+ "silverstripe",
+ "sydes",
+ "symfony",
+ "typo3",
+ "wordpress",
+ "yawik",
+ "zend",
+ "zikula"
+ ],
+ "time": "2017-12-29T09:13:20+00:00"
+ }
+ ],
+ "packages-dev": [
+ {
+ "name": "jakub-onderka/php-console-color",
+ "version": "0.1",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/JakubOnderka/PHP-Console-Color.git",
+ "reference": "e0b393dacf7703fc36a4efc3df1435485197e6c1"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/JakubOnderka/PHP-Console-Color/zipball/e0b393dacf7703fc36a4efc3df1435485197e6c1",
+ "reference": "e0b393dacf7703fc36a4efc3df1435485197e6c1",
+ "shasum": ""
+ },
+ "require": {
+ "php": ">=5.3.2"
+ },
+ "require-dev": {
+ "jakub-onderka/php-code-style": "1.0",
+ "jakub-onderka/php-parallel-lint": "0.*",
+ "jakub-onderka/php-var-dump-check": "0.*",
+ "phpunit/phpunit": "3.7.*",
+ "squizlabs/php_codesniffer": "1.*"
+ },
+ "type": "library",
+ "autoload": {
+ "psr-0": {
+ "JakubOnderka\\PhpConsoleColor": "src/"
+ }
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "BSD-2-Clause"
+ ],
+ "authors": [
+ {
+ "name": "Jakub Onderka",
+ "email": "jakub.onderka@gmail.com",
+ "homepage": "http://www.acci.cz"
+ }
+ ],
+ "time": "2014-04-08T15:00:19+00:00"
+ },
+ {
+ "name": "jakub-onderka/php-console-highlighter",
+ "version": "v0.3.2",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/JakubOnderka/PHP-Console-Highlighter.git",
+ "reference": "7daa75df45242c8d5b75a22c00a201e7954e4fb5"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/JakubOnderka/PHP-Console-Highlighter/zipball/7daa75df45242c8d5b75a22c00a201e7954e4fb5",
+ "reference": "7daa75df45242c8d5b75a22c00a201e7954e4fb5",
+ "shasum": ""
+ },
+ "require": {
+ "jakub-onderka/php-console-color": "~0.1",
+ "php": ">=5.3.0"
+ },
+ "require-dev": {
+ "jakub-onderka/php-code-style": "~1.0",
+ "jakub-onderka/php-parallel-lint": "~0.5",
+ "jakub-onderka/php-var-dump-check": "~0.1",
+ "phpunit/phpunit": "~4.0",
+ "squizlabs/php_codesniffer": "~1.5"
+ },
+ "type": "library",
+ "autoload": {
+ "psr-0": {
+ "JakubOnderka\\PhpConsoleHighlighter": "src/"
+ }
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "MIT"
+ ],
+ "authors": [
+ {
+ "name": "Jakub Onderka",
+ "email": "acci@acci.cz",
+ "homepage": "http://www.acci.cz/"
+ }
+ ],
+ "time": "2015-04-20T18:58:01+00:00"
+ },
+ {
+ "name": "jakub-onderka/php-parallel-lint",
+ "version": "v0.9.2",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/JakubOnderka/PHP-Parallel-Lint.git",
+ "reference": "2ead2e4043ab125bee9554f356e0a86742c2d4fa"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/JakubOnderka/PHP-Parallel-Lint/zipball/2ead2e4043ab125bee9554f356e0a86742c2d4fa",
+ "reference": "2ead2e4043ab125bee9554f356e0a86742c2d4fa",
+ "shasum": ""
+ },
+ "require": {
+ "php": ">=5.3.3"
+ },
+ "require-dev": {
+ "jakub-onderka/php-console-highlighter": "~0.3",
+ "nette/tester": "~1.3"
+ },
+ "suggest": {
+ "jakub-onderka/php-console-highlighter": "Highlight syntax in code snippet"
+ },
+ "bin": [
+ "parallel-lint"
+ ],
+ "type": "library",
+ "autoload": {
+ "classmap": [
+ "./"
+ ]
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "BSD-2-Clause"
+ ],
+ "authors": [
+ {
+ "name": "Jakub Onderka",
+ "email": "jakub.onderka@gmail.com"
+ }
+ ],
+ "description": "This tool check syntax of PHP files about 20x faster than serial check.",
+ "homepage": "https://github.com/JakubOnderka/PHP-Parallel-Lint",
+ "time": "2015-12-15T10:42:16+00:00"
+ }
+ ],
+ "aliases": [],
+ "minimum-stability": "stable",
+ "stability-flags": [],
+ "prefer-stable": false,
+ "prefer-lowest": false,
+ "platform": {
+ "php": ">=5.0.0"
+ },
+ "platform-dev": []
+}
diff --git a/PipeEscape/gitinfo.json b/PipeEscape/gitinfo.json
new file mode 100644
index 00000000..9b1525ee
--- /dev/null
+++ b/PipeEscape/gitinfo.json
@@ -0,0 +1 @@
+{"headSHA1": "caad444783798427c9d8e290dff5124b18d79447\n", "head": "caad444783798427c9d8e290dff5124b18d79447\n", "remoteURL": "https://gerrit.wikimedia.org/r/mediawiki/extensions/PipeEscape", "branch": "caad444783798427c9d8e290dff5124b18d79447\n", "headCommitDate": "1528229231"} \ No newline at end of file
diff --git a/PipeEscape/i18n/aln.json b/PipeEscape/i18n/aln.json
new file mode 100644
index 00000000..01e4339c
--- /dev/null
+++ b/PipeEscape/i18n/aln.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Mdupont"
+ ]
+ },
+ "pipeescape-desc": "funksion parser <code>#!</code> për kur të doni një karakter tub të jetë vetëm një karakter tub"
+}
diff --git a/PipeEscape/i18n/ar.json b/PipeEscape/i18n/ar.json
new file mode 100644
index 00000000..f1efeafc
--- /dev/null
+++ b/PipeEscape/i18n/ar.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Meno25"
+ ]
+ },
+ "pipeescape-desc": "دالة محلل <code>#!</code> لعندما تريد حرف أنبوبة ليكون فقط حرف أنبوبة"
+}
diff --git a/PipeEscape/i18n/ast.json b/PipeEscape/i18n/ast.json
new file mode 100644
index 00000000..e921b0b5
--- /dev/null
+++ b/PipeEscape/i18n/ast.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Xuacu"
+ ]
+ },
+ "pipeescape-desc": "Función del analizador sintácticu <code>#!</code> pa cuando se quier que'l caráuter de barra vertical «|» nun tenga significáu especial"
+}
diff --git a/PipeEscape/i18n/be-tarask.json b/PipeEscape/i18n/be-tarask.json
new file mode 100644
index 00000000..e5d74aa9
--- /dev/null
+++ b/PipeEscape/i18n/be-tarask.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "EugeneZelenko"
+ ]
+ },
+ "pipeescape-desc": "Функцыя парсэра <code>#!</code>, якая сочыць, каб калі Вы жадаеце дадаць сымбаль «|», дадаваліся толькі сымбаль «|»."
+}
diff --git a/PipeEscape/i18n/br.json b/PipeEscape/i18n/br.json
new file mode 100644
index 00000000..7d8172c3
--- /dev/null
+++ b/PipeEscape/i18n/br.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Fulup"
+ ]
+ },
+ "pipeescape-desc": "Arc'hwel parser <code>#!</code> evit ensoc'hañ arouezenn ur varrenn sonn \"|\" evel un arouezenn barrenn sonn hepmuiken"
+}
diff --git a/PipeEscape/i18n/bs.json b/PipeEscape/i18n/bs.json
new file mode 100644
index 00000000..f9bad553
--- /dev/null
+++ b/PipeEscape/i18n/bs.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "CERminator"
+ ]
+ },
+ "pipeescape-desc": "Parserska funkcija <code>#!</code> kada želite da pipe znak bude isključivo samo pipe znak"
+}
diff --git a/PipeEscape/i18n/de.json b/PipeEscape/i18n/de.json
new file mode 100644
index 00000000..13d2f285
--- /dev/null
+++ b/PipeEscape/i18n/de.json
@@ -0,0 +1,9 @@
+{
+ "@metadata": {
+ "authors": [
+ "Kghbln",
+ "Purodha"
+ ]
+ },
+ "pipeescape-desc": "Bringt die Funktion <code>#!</code>, durch die Parametertrenner als normaler Text genutzt werden können"
+}
diff --git a/PipeEscape/i18n/dsb.json b/PipeEscape/i18n/dsb.json
new file mode 100644
index 00000000..023b32d4
--- /dev/null
+++ b/PipeEscape/i18n/dsb.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Michawiki"
+ ]
+ },
+ "pipeescape-desc": "Parserowa funkcija <code>#!</code>, joli coš znamješko | schowaś (znamješko | ma se jano pśedstajiś, bźez wósebneje funkcije)"
+}
diff --git a/PipeEscape/i18n/el.json b/PipeEscape/i18n/el.json
new file mode 100644
index 00000000..acb57c88
--- /dev/null
+++ b/PipeEscape/i18n/el.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Omnipaedista"
+ ]
+ },
+ "pipeescape-desc": "Λεξιαναλυτική συνάρτηση <code>#!</code> για όταν θέλετε ένας χαρακτήρας pipe να είναι απλά ένας χαρακτήρας pipe"
+}
diff --git a/PipeEscape/i18n/en.json b/PipeEscape/i18n/en.json
new file mode 100644
index 00000000..f1619765
--- /dev/null
+++ b/PipeEscape/i18n/en.json
@@ -0,0 +1,10 @@
+{
+ "@metadata": {
+ "authors": [
+ "David M. Sledge",
+ "Purodha"
+ ]
+ },
+ "pipeescape-desc": "Parser function <code>#!</code> for when you want a pipe character to be just a pipe character",
+ "pipeescape-extensionname": "Pipe Escape"
+}
diff --git a/PipeEscape/i18n/es.json b/PipeEscape/i18n/es.json
new file mode 100644
index 00000000..b5e93ce8
--- /dev/null
+++ b/PipeEscape/i18n/es.json
@@ -0,0 +1,9 @@
+{
+ "@metadata": {
+ "authors": [
+ "Sanbec",
+ "Macofe"
+ ]
+ },
+ "pipeescape-desc": "Función del analizador sintáctico <code>#!</code> para insertar el carácter de barra vertical «|» como tal carácter y sin significado especial"
+}
diff --git a/PipeEscape/i18n/eu.json b/PipeEscape/i18n/eu.json
new file mode 100644
index 00000000..997fe016
--- /dev/null
+++ b/PipeEscape/i18n/eu.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Theklan"
+ ]
+ },
+ "pipeescape-desc": "<code>#!</code> parser funtzioa, karaktere hori zehazki karaktere hori izan dadila nahi duzunerako"
+}
diff --git a/PipeEscape/i18n/fi.json b/PipeEscape/i18n/fi.json
new file mode 100644
index 00000000..c6973e87
--- /dev/null
+++ b/PipeEscape/i18n/fi.json
@@ -0,0 +1,9 @@
+{
+ "@metadata": {
+ "authors": [
+ "Cimon Avaro",
+ "Crt"
+ ]
+ },
+ "pipeescape-desc": "Jäsentimen toiminto <code>#!</code>, kun haluat putkimerkin olevan vain putkimerkki."
+}
diff --git a/PipeEscape/i18n/fr.json b/PipeEscape/i18n/fr.json
new file mode 100644
index 00000000..3fe21648
--- /dev/null
+++ b/PipeEscape/i18n/fr.json
@@ -0,0 +1,9 @@
+{
+ "@metadata": {
+ "authors": [
+ "Grondin",
+ "Urhixidur"
+ ]
+ },
+ "pipeescape-desc": "Fonction de l’analyseur syntaxique <code>#!</code> pour insérer une barre verticale non-interprétée."
+}
diff --git a/PipeEscape/i18n/gl.json b/PipeEscape/i18n/gl.json
new file mode 100644
index 00000000..9d17239d
--- /dev/null
+++ b/PipeEscape/i18n/gl.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Toliño"
+ ]
+ },
+ "pipeescape-desc": "Función analítica <code>#!</code> para cando queira un carácter punto que sexa só un carácter punto"
+}
diff --git a/PipeEscape/i18n/gsw.json b/PipeEscape/i18n/gsw.json
new file mode 100644
index 00000000..785f4a8c
--- /dev/null
+++ b/PipeEscape/i18n/gsw.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Als-Holder"
+ ]
+ },
+ "pipeescape-desc": "Parserfunktion <code>#!</code> versteckt Parameter-Trenner"
+}
diff --git a/PipeEscape/i18n/he.json b/PipeEscape/i18n/he.json
new file mode 100644
index 00000000..4594c627
--- /dev/null
+++ b/PipeEscape/i18n/he.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Rotemliss"
+ ]
+ },
+ "pipeescape-desc": "הוראת מפענח <code>#!</code> למקרה שבו רוצים שתו מפריד אנכי (|) יהיה פשוט תו מפריד אנכי"
+}
diff --git a/PipeEscape/i18n/hil.json b/PipeEscape/i18n/hil.json
new file mode 100644
index 00000000..62f7324a
--- /dev/null
+++ b/PipeEscape/i18n/hil.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Tagimata"
+ ]
+ },
+ "pipeescape-desc": "Parser panksiyon <code>#!</code> para kada kilanlan nimo sang karakter tubo para mangin isa ka karakter tubo"
+}
diff --git a/PipeEscape/i18n/hsb.json b/PipeEscape/i18n/hsb.json
new file mode 100644
index 00000000..897abaa0
--- /dev/null
+++ b/PipeEscape/i18n/hsb.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Michawiki"
+ ]
+ },
+ "pipeescape-desc": "Parserowa funkcija <code>#!</code>, jeli chceš znamješko | schować (znamješko | ma so jenož předstajić, bjez wosebiteje funkcije)"
+}
diff --git a/PipeEscape/i18n/hu.json b/PipeEscape/i18n/hu.json
new file mode 100644
index 00000000..550eebdc
--- /dev/null
+++ b/PipeEscape/i18n/hu.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Glanthor Reviol"
+ ]
+ },
+ "pipeescape-desc": "<code>#!</code> elemzőfüggvény, hogy szükség esetén a függőleges vonal (pipe) karaktert ne értelmezze speciálisan az elemző"
+}
diff --git a/PipeEscape/i18n/ia.json b/PipeEscape/i18n/ia.json
new file mode 100644
index 00000000..62131281
--- /dev/null
+++ b/PipeEscape/i18n/ia.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "McDutchie"
+ ]
+ },
+ "pipeescape-desc": "Function del analysator syntactic <code>#!</code> pro inserer le character de barra vertical (\"pipe\") qua character simple."
+}
diff --git a/PipeEscape/i18n/id.json b/PipeEscape/i18n/id.json
new file mode 100644
index 00000000..2928591e
--- /dev/null
+++ b/PipeEscape/i18n/id.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Bennylin"
+ ]
+ },
+ "pipeescape-desc": "Fungsi parser <code>#!</code> jika Anda menginginkan karakter pipa sebagaimana adanya"
+}
diff --git a/PipeEscape/i18n/it.json b/PipeEscape/i18n/it.json
new file mode 100644
index 00000000..acba5800
--- /dev/null
+++ b/PipeEscape/i18n/it.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Civvì"
+ ]
+ },
+ "pipeescape-desc": "Funzione parser <code>#!</code> per quando si desidera che il carattere ''pipe'' sia solo un carattere pipe"
+}
diff --git a/PipeEscape/i18n/ja.json b/PipeEscape/i18n/ja.json
new file mode 100644
index 00000000..59689969
--- /dev/null
+++ b/PipeEscape/i18n/ja.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Fryed-peach"
+ ]
+ },
+ "pipeescape-desc": "パイプ記号をパイプ記号のまま扱いたい場合のために、パーサー関数 <code>#!</code> を追加する"
+}
diff --git a/PipeEscape/i18n/ko.json b/PipeEscape/i18n/ko.json
new file mode 100644
index 00000000..8cf65782
--- /dev/null
+++ b/PipeEscape/i18n/ko.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Kwj2772"
+ ]
+ },
+ "pipeescape-desc": "파이프 문자가 파이프 문자로서의 역할만 하도록 할 때 사용하는 <code>#!</code> 파서 기능"
+}
diff --git a/PipeEscape/i18n/ksh.json b/PipeEscape/i18n/ksh.json
new file mode 100644
index 00000000..88c417b6
--- /dev/null
+++ b/PipeEscape/i18n/ksh.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Purodha"
+ ]
+ },
+ "pipeescape-desc": "Brängk de Paaserfunxjuhn <code>#!</code> en et Wikki, di der sängkräschte Schtresch onmollesteht dorsch löht."
+}
diff --git a/PipeEscape/i18n/la.json b/PipeEscape/i18n/la.json
new file mode 100644
index 00000000..9d6c0e80
--- /dev/null
+++ b/PipeEscape/i18n/la.json
@@ -0,0 +1,9 @@
+{
+ "@metadata": {
+ "authors": [
+ "UV",
+ "purodha"
+ ]
+ },
+ "pipeescape-desc": "Functio parseris <code>#!</code> qui protegit litteram | ne haec littera separet parametra"
+}
diff --git a/PipeEscape/i18n/lb.json b/PipeEscape/i18n/lb.json
new file mode 100644
index 00000000..52251b9a
--- /dev/null
+++ b/PipeEscape/i18n/lb.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Robby"
+ ]
+ },
+ "pipeescape-desc": "Parserfonctioun <code>#!</code> fir den Trenn-Parameter als normale Buchstaw ze benotzen"
+}
diff --git a/PipeEscape/i18n/lij.json b/PipeEscape/i18n/lij.json
new file mode 100644
index 00000000..89c405dd
--- /dev/null
+++ b/PipeEscape/i18n/lij.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Giromin Cangiaxo"
+ ]
+ },
+ "pipeescape-desc": "Fonçion parser <code>#!</code> pe quande se dexiddia che 'n carattere ''pipe'' o segge solo che 'n carattere \"pipe\""
+}
diff --git a/PipeEscape/i18n/mk.json b/PipeEscape/i18n/mk.json
new file mode 100644
index 00000000..a599be85
--- /dev/null
+++ b/PipeEscape/i18n/mk.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Bjankuloski06"
+ ]
+ },
+ "pipeescape-desc": "Парсерска функција <code>#!</code> која се користи кога сакате цртите да бидат само црти"
+}
diff --git a/PipeEscape/i18n/ms.json b/PipeEscape/i18n/ms.json
new file mode 100644
index 00000000..4fc7a116
--- /dev/null
+++ b/PipeEscape/i18n/ms.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Anakmalaysia"
+ ]
+ },
+ "pipeescape-desc": "Fungsi penghurai <code>#!</code> supaya aksara paip kekal sekadar aksara paip tanpa fungsi khas"
+}
diff --git a/PipeEscape/i18n/nb.json b/PipeEscape/i18n/nb.json
new file mode 100644
index 00000000..cb6b67b0
--- /dev/null
+++ b/PipeEscape/i18n/nb.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Nghtwlkr"
+ ]
+ },
+ "pipeescape-desc": "Tolkefunksjonen <code>#!</code> som lar «|»-tegnet bare være et «|»-tegn"
+}
diff --git a/PipeEscape/i18n/nl.json b/PipeEscape/i18n/nl.json
new file mode 100644
index 00000000..77e807ed
--- /dev/null
+++ b/PipeEscape/i18n/nl.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Siebrand"
+ ]
+ },
+ "pipeescape-desc": "Parserfunctie <code>#!</code> om een pipe-karakter gewoon een pipe-karakter te laten zijn"
+}
diff --git a/PipeEscape/i18n/nn.json b/PipeEscape/i18n/nn.json
new file mode 100644
index 00000000..8ed67f99
--- /dev/null
+++ b/PipeEscape/i18n/nn.json
@@ -0,0 +1,9 @@
+{
+ "@metadata": {
+ "authors": [
+ "Harald Khan",
+ "Njardarlogar"
+ ]
+ },
+ "pipeescape-desc": "Tolkefunksjon <code>#!</code> som lèt «|»-teiknet vera berre eit «|»-teikn."
+}
diff --git a/PipeEscape/i18n/oc.json b/PipeEscape/i18n/oc.json
new file mode 100644
index 00000000..4f49c93e
--- /dev/null
+++ b/PipeEscape/i18n/oc.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Cedric31"
+ ]
+ },
+ "pipeescape-desc": "Foncion parser <code>#!</code> per inserir lo caractèr pipe en tant que caractèr simple."
+}
diff --git a/PipeEscape/i18n/pl.json b/PipeEscape/i18n/pl.json
new file mode 100644
index 00000000..74fadbb2
--- /dev/null
+++ b/PipeEscape/i18n/pl.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Sp5uhe"
+ ]
+ },
+ "pipeescape-desc": "Funkcja parsera <code>#!</code> pozwalająca na użycie znaku pionowej kreski"
+}
diff --git a/PipeEscape/i18n/pms.json b/PipeEscape/i18n/pms.json
new file mode 100644
index 00000000..c8a48155
--- /dev/null
+++ b/PipeEscape/i18n/pms.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Dragonòt"
+ ]
+ },
+ "pipeescape-desc": "Fonsion dël parser <code>#!</code> për quand it veule che un caràter \"pipe\" a sia mach un caràter \"pipe\""
+}
diff --git a/PipeEscape/i18n/pt-br.json b/PipeEscape/i18n/pt-br.json
new file mode 100644
index 00000000..b3a46f32
--- /dev/null
+++ b/PipeEscape/i18n/pt-br.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Eduardo.mps"
+ ]
+ },
+ "pipeescape-desc": "Função do analisador (parser) <code>#!</code> para quando se pretende que um caractere barra vertical (\"pipe\") seja apenas um caractere barra vertical."
+}
diff --git a/PipeEscape/i18n/pt.json b/PipeEscape/i18n/pt.json
new file mode 100644
index 00000000..c13f272b
--- /dev/null
+++ b/PipeEscape/i18n/pt.json
@@ -0,0 +1,9 @@
+{
+ "@metadata": {
+ "authors": [
+ "Hamilton Abreu",
+ "Malafaya"
+ ]
+ },
+ "pipeescape-desc": "Função do analisador sintático <code>#!</code> para quando se pretende que uma barra vertical (\"pipe\") seja apenas uma barra vertical."
+}
diff --git a/PipeEscape/i18n/qqq.json b/PipeEscape/i18n/qqq.json
new file mode 100644
index 00000000..f4f3dc15
--- /dev/null
+++ b/PipeEscape/i18n/qqq.json
@@ -0,0 +1,11 @@
+{
+ "@metadata": {
+ "authors": [
+ "Fryed-peach",
+ "Purodha",
+ "Umherirrender"
+ ]
+ },
+ "pipeescape-desc": "{{desc|name=Pipe Escape|url=https://www.mediawiki.org/wiki/Extension:Pipe_Escape}}",
+ "pipeescape-extensionname": "{{optional}} The name for this extension."
+}
diff --git a/PipeEscape/i18n/roa-tara.json b/PipeEscape/i18n/roa-tara.json
new file mode 100644
index 00000000..2bb855d6
--- /dev/null
+++ b/PipeEscape/i18n/roa-tara.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Joetaras"
+ ]
+ },
+ "pipeescape-desc": "Funziona d'analisi <code>#!</code> pe quanne tu vuè ca 'nu carattere de ''pipe'' avène conziderate cumme a 'nu ''pipe''"
+}
diff --git a/PipeEscape/i18n/ru.json b/PipeEscape/i18n/ru.json
new file mode 100644
index 00000000..8af8d004
--- /dev/null
+++ b/PipeEscape/i18n/ru.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Александр Сигачёв"
+ ]
+ },
+ "pipeescape-desc": "Функция парсера <code>#!</code> предназначена для случаев, когда вы хотите использовать символ вертикальной черты просто как символ"
+}
diff --git a/PipeEscape/i18n/sk.json b/PipeEscape/i18n/sk.json
new file mode 100644
index 00000000..a7e5f147
--- /dev/null
+++ b/PipeEscape/i18n/sk.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Helix84"
+ ]
+ },
+ "pipeescape-desc": "Funkciu syntaktického analyzátora <code>#!</code> použijete vtedy, keď chcete, aby bol znak rúry iba znakom rúry"
+}
diff --git a/PipeEscape/i18n/sr-ec.json b/PipeEscape/i18n/sr-ec.json
new file mode 100644
index 00000000..dc541099
--- /dev/null
+++ b/PipeEscape/i18n/sr-ec.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Михајло Анђелковић"
+ ]
+ },
+ "pipeescape-desc": "Парсерска функција <code>#!</code> за случајеве када пајп-карактер ('|') треба да буде само то."
+}
diff --git a/PipeEscape/i18n/sr-el.json b/PipeEscape/i18n/sr-el.json
new file mode 100644
index 00000000..c7123015
--- /dev/null
+++ b/PipeEscape/i18n/sr-el.json
@@ -0,0 +1,4 @@
+{
+ "@metadata": [],
+ "pipeescape-desc": "Parserska funkcija <code>#!</code> za slučajeve kada pajp-karakter ('|') treba da bude samo to."
+}
diff --git a/PipeEscape/i18n/sv.json b/PipeEscape/i18n/sv.json
new file mode 100644
index 00000000..42f1cf72
--- /dev/null
+++ b/PipeEscape/i18n/sv.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Najami"
+ ]
+ },
+ "pipeescape-desc": "Parserfunktionen <code>#!</code> låter \"|\"-tecknet bara vara ett \"|\"-tecken."
+}
diff --git a/PipeEscape/i18n/tl.json b/PipeEscape/i18n/tl.json
new file mode 100644
index 00000000..32db917f
--- /dev/null
+++ b/PipeEscape/i18n/tl.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "AnakngAraw"
+ ]
+ },
+ "pipeescape-desc": "Tungkulin ng banghay na <code>#!</code> para sa kung kailan mo naising maging isang panitik na tubo lamang ang isang panitik na tubo"
+}
diff --git a/PipeEscape/i18n/tr.json b/PipeEscape/i18n/tr.json
new file mode 100644
index 00000000..732d7660
--- /dev/null
+++ b/PipeEscape/i18n/tr.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Vito Genovese"
+ ]
+ },
+ "pipeescape-desc": "Bir boru karakterinin sadece bir boru karakteri olmasını istediğiniz zamanlar için ayrıştırıcı fonksiyon <code>#!</code>"
+}
diff --git a/PipeEscape/i18n/uk.json b/PipeEscape/i18n/uk.json
new file mode 100644
index 00000000..8da1d25f
--- /dev/null
+++ b/PipeEscape/i18n/uk.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Prima klasy4na"
+ ]
+ },
+ "pipeescape-desc": "Функція парсера <code>#!</code> для випадків, коли ви хочете використовувати символ вертикальної риски тільки як символ"
+}
diff --git a/PipeEscape/i18n/vi.json b/PipeEscape/i18n/vi.json
new file mode 100644
index 00000000..ed32a30d
--- /dev/null
+++ b/PipeEscape/i18n/vi.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Vinhtantran"
+ ]
+ },
+ "pipeescape-desc": "Hàm cú pháp <code>#!</code> dùng khi bạn muốn một ký tự sổ dọc chỉ đơn thuần là một ký tự sổ dọc"
+}
diff --git a/PipeEscape/i18n/zh-hans.json b/PipeEscape/i18n/zh-hans.json
new file mode 100644
index 00000000..46ecc0b0
--- /dev/null
+++ b/PipeEscape/i18n/zh-hans.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Liuxinyu970226"
+ ]
+ },
+ "pipeescape-desc": "解析器函数<code>#!</code>用于当您希望一个管道字符就是一个管道字符时"
+}
diff --git a/PipeEscape/package.json b/PipeEscape/package.json
new file mode 100644
index 00000000..e87548ca
--- /dev/null
+++ b/PipeEscape/package.json
@@ -0,0 +1,12 @@
+{
+ "private": true,
+ "scripts": {
+ "test": "grunt test"
+ },
+ "devDependencies": {
+ "grunt": "1.0.1",
+ "grunt-banana-checker": "0.5.0",
+ "grunt-contrib-jshint": "1.1.0",
+ "grunt-jsonlint": "1.1.0"
+ }
+}
diff --git a/PipeEscape/version b/PipeEscape/version
new file mode 100644
index 00000000..815e20e5
--- /dev/null
+++ b/PipeEscape/version
@@ -0,0 +1,4 @@
+PipeEscape: REL1_30
+2018-06-05T21:14:12
+
+caad444