jenkins-bot has submitted this change and it was merged.

Change subject: Remove linkprefix message, add $linkPrefixCharset
......................................................................


Remove linkprefix message, add $linkPrefixCharset

The existing "linkprefix" message is unlikely to be accurately
customized by message translators (as shown by the fact that, of the 10
distinct customizations prior to Iaa7eaa44 (which made them even more
complicated), 3 were broken or entirely ineffective, 1 was half
ineffective, and 2 more seem to have included the Latin-1 Supplement by
accident) or by local wiki admins. So, like linktrail before it, let's
move it out of the system messages and into a separate language
variable.

At the same time, let's make it a simple character set (like
$wgLegalTitleChars) rather than a complicated regular expression. The
complicated regex now lives in the parser.

This also adjusts the output of the API's action=query&meta=siteinfo and
adds an accessor parallel to the linkTrail accessor to Language.

Note the following changes that are not simply extracting the existing
charset from the linkprefix message for $linkPrefixCharset:
* The En message matched all non-ASCII UTF-8 characters by matching the
  component bytes (\\x80-\\xff). The new character set is equivalent.
* Various languages were identical to En and so have no $linkPrefixCharset
  set. These are: Ary Az Ce Ga Id Ka Kiu Km Ltg Mk Ms Ne Nn Ro Roa_tara Sc Si
  Sr_ec Sr_el Tl Tt_cyrl Tt_latn Ug_arab War
* Cu, Uk, and Udm are changed to match any number of „ or « in the prefix.
* Cv tried to include "«" that was redundant to the range \\x80-\\xff
  (see En comment). This was removed.
* Diq was entirely bogus, and so was removed.
* Gu included many additional UTF-8 characters that are redundant to the
  range \\x80-\\xff (see En comment). These were removed, and the
  resulting character set is equivalent to En.
* Mt has been broken since it was introduced in r37242. The charset used is
  equivalent to the broken regex.

Bug: 56031
Change-Id: I3369851b33113fc118a1bace38f3ac310cdd9725
---
M includes/api/ApiQuerySiteinfo.php
M includes/cache/LocalisationCache.php
M includes/parser/Parser.php
M languages/Language.php
M languages/messages/MessagesAry.php
M languages/messages/MessagesAz.php
M languages/messages/MessagesCe.php
M languages/messages/MessagesCrh_cyrl.php
M languages/messages/MessagesCrh_latn.php
M languages/messages/MessagesCu.php
M languages/messages/MessagesCv.php
M languages/messages/MessagesDiq.php
M languages/messages/MessagesEn.php
M languages/messages/MessagesGa.php
M languages/messages/MessagesGu.php
M languages/messages/MessagesId.php
M languages/messages/MessagesIs.php
M languages/messages/MessagesKa.php
M languages/messages/MessagesKaa.php
M languages/messages/MessagesKiu.php
M languages/messages/MessagesKm.php
M languages/messages/MessagesLtg.php
M languages/messages/MessagesMk.php
M languages/messages/MessagesMs.php
M languages/messages/MessagesMt.php
M languages/messages/MessagesNe.php
M languages/messages/MessagesNn.php
M languages/messages/MessagesQqq.php
M languages/messages/MessagesRo.php
M languages/messages/MessagesRoa_tara.php
M languages/messages/MessagesSc.php
M languages/messages/MessagesSi.php
M languages/messages/MessagesSr_ec.php
M languages/messages/MessagesSr_el.php
M languages/messages/MessagesTl.php
M languages/messages/MessagesTt_cyrl.php
M languages/messages/MessagesTt_latn.php
M languages/messages/MessagesUdm.php
M languages/messages/MessagesUg_arab.php
M languages/messages/MessagesUk.php
M languages/messages/MessagesUz.php
M languages/messages/MessagesWar.php
M maintenance/language/messageTypes.inc
M maintenance/language/messages.inc
44 files changed, 36 insertions(+), 83 deletions(-)

Approvals:
  Anomie: Looks good to me, approved
  jenkins-bot: Verified



diff --git a/includes/api/ApiQuerySiteinfo.php 
b/includes/api/ApiQuerySiteinfo.php
index a776706..ac9e85a 100644
--- a/includes/api/ApiQuerySiteinfo.php
+++ b/includes/api/ApiQuerySiteinfo.php
@@ -153,8 +153,12 @@
                }
 
                if ( $wgContLang->linkPrefixExtension() ) {
-                       $data['linkprefix'] = wfMessage( 'linkprefix' 
)->inContentLanguage()->text();
+                       $linkPrefixCharset = $wgContLang->linkPrefixCharset();
+                       $data['linkprefixcharset'] = $linkPrefixCharset;
+                       // For backwards compatability
+                       $data['linkprefix'] = 
"/^((?>.*[^$linkPrefixCharset]|))(.+)$/sDu";
                } else {
+                       $data['linkprefixcharset'] = '';
                        $data['linkprefix'] = '';
                }
 
diff --git a/includes/cache/LocalisationCache.php 
b/includes/cache/LocalisationCache.php
index 1bfd17b..c5a153a 100644
--- a/includes/cache/LocalisationCache.php
+++ b/includes/cache/LocalisationCache.php
@@ -106,7 +106,7 @@
                'fallback', 'namespaceNames', 'bookstoreList',
                'magicWords', 'messages', 'rtl', 'capitalizeAllNouns', 
'digitTransformTable',
                'separatorTransformTable', 'fallback8bitEncoding', 
'linkPrefixExtension',
-               'linkTrail', 'namespaceAliases',
+               'linkTrail', 'linkPrefixCharset', 'namespaceAliases',
                'dateFormats', 'datePreferences', 'datePreferenceMigrationMap',
                'defaultDateFormat', 'extraUserToggles', 'specialPageAliases',
                'imageFiles', 'preloadedMessages', 'namespaceGenderAliases',
diff --git a/includes/parser/Parser.php b/includes/parser/Parser.php
index 1f14223..6e9e06e 100644
--- a/includes/parser/Parser.php
+++ b/includes/parser/Parser.php
@@ -1863,7 +1863,9 @@
                if ( $useLinkPrefixExtension ) {
                        # Match the end of a line for a word that's not 
followed by whitespace,
                        # e.g. in the case of 'The Arab al[[Razi]]', 'al' will 
be matched
-                       $e2 = wfMessage( 'linkprefix' 
)->inContentLanguage()->text();
+                       global $wgContLang;
+                       $charset = $wgContLang->linkPrefixCharset();
+                       $e2 = "/^((?>.*[^$charset]|))(.+)$/sDu";
                }
 
                if ( is_null( $this->mTitle ) ) {
diff --git a/languages/Language.php b/languages/Language.php
index 527f382..dc87bc8 100644
--- a/languages/Language.php
+++ b/languages/Language.php
@@ -3950,6 +3950,16 @@
        }
 
        /**
+        * A regular expression character set to match legal word-prefixing
+        * characters which should be merged onto a link of the form foo[[bar]].
+        *
+        * @return string
+        */
+       public function linkPrefixCharset() {
+               return self::$dataCache->getItem( $this->mCode, 
'linkPrefixCharset' );
+       }
+
+       /**
         * @return Language
         */
        function getLangObj() {
diff --git a/languages/messages/MessagesAry.php 
b/languages/messages/MessagesAry.php
index 9f1b336..3c31b1f 100644
--- a/languages/messages/MessagesAry.php
+++ b/languages/messages/MessagesAry.php
@@ -142,8 +142,6 @@
 'noindex-category' => 'shat mamfhtsach',
 'broken-file-category' => 'ṣfaḫi fiha wṣlat milffaṫ mhrrsa',
 
-'linkprefix' => '/^(.*?)([a-zA-Z\\x80-\\xff]+)$/sD',
-
 'about' => 'ala',
 'article' => 'sfht mohtawa',
 'newwindow' => '(kayṫḫell fe ċerjem weḫdaĥor)',
diff --git a/languages/messages/MessagesAz.php 
b/languages/messages/MessagesAz.php
index 7b345b3..a39894c 100644
--- a/languages/messages/MessagesAz.php
+++ b/languages/messages/MessagesAz.php
@@ -206,8 +206,6 @@
 'noindex-category' => 'İndeksləşdirilməyən səhifələr',
 'broken-file-category' => 'İşləməyən fayl keçidləri olan səhifələr',
 
-'linkprefix' => '/^(.*?)([a-zA-Z\\x80-\\xff]+)$/sD',
-
 'about' => 'Haqqında',
 'article' => 'Mündəricat',
 'newwindow' => '(yeni pəncərədə açılır)',
diff --git a/languages/messages/MessagesCe.php 
b/languages/messages/MessagesCe.php
index 2c1d585..476b836 100644
--- a/languages/messages/MessagesCe.php
+++ b/languages/messages/MessagesCe.php
@@ -459,8 +459,6 @@
 'broken-file-category' => '{{#switch:{{NAMESPACE}}
  |{{ns:0}}=Болх цабеш файлийн хьажорагаш йолу агӀонаш}}',
 
-'linkprefix' => '/^(.*?)([a-zA-Z\\x80-\\xff]+)$/sD',
-
 'about' => 'Цуьнах лаьцна',
 'article' => 'Яззам',
 'newwindow' => '(керлачу корехь)',
diff --git a/languages/messages/MessagesCrh_cyrl.php 
b/languages/messages/MessagesCrh_cyrl.php
index a582b18..c07de24 100644
--- a/languages/messages/MessagesCrh_cyrl.php
+++ b/languages/messages/MessagesCrh_cyrl.php
@@ -103,6 +103,7 @@
 
 $separatorTransformTable = array( ','  => '.', '.' => ',' );
 $linkTrail = '/^([a-zâçğıñöşüа-яё“»]+)(.*)$/sDu';
+$linkPrefixCharset = 'a-zâçğıñöşüA-ZÂÇĞİÑÖŞÜa-яёА-ЯЁ«„';
 
 $messages = array(
 # User preference toggles
@@ -229,8 +230,6 @@
 'index-category' => 'Индексли саифелер',
 'noindex-category' => 'Индекссиз саифелер',
 'broken-file-category' => 'Ичинде бозукъ файл багълантылары олгъан саифелер',
-
-'linkprefix' => '/^(.*?)([a-zâçğıñöşüA-ZÂÇĞİÑÖŞÜa-яёА-ЯЁ«„]+)$/sDu',
 
 'about' => 'Акъкъында',
 'article' => 'Саифе',
diff --git a/languages/messages/MessagesCrh_latn.php 
b/languages/messages/MessagesCrh_latn.php
index bd6306f..6bb6a4c 100644
--- a/languages/messages/MessagesCrh_latn.php
+++ b/languages/messages/MessagesCrh_latn.php
@@ -97,6 +97,7 @@
 
 $separatorTransformTable = array( ',' => '.', '.' => ',' );
 $linkTrail = '/^([a-zâçğıñöşüа-яё“»]+)(.*)$/sDu';
+$linkPrefixCharset = 'a-zâçğıñöşüA-ZÂÇĞİÑÖŞÜa-яёА-ЯЁ«„';
 
 $messages = array(
 # User preference toggles
@@ -223,8 +224,6 @@
 'index-category' => 'İndeksli saifeler',
 'noindex-category' => 'İndekssiz saifeler',
 'broken-file-category' => 'İçinde bozuq fayl bağlantıları olğan saifeler',
-
-'linkprefix' => '/^(.*?)([a-zâçğıñöşüA-ZÂÇĞİÑÖŞÜa-яёА-ЯЁ«„]+)$/sDu',
 
 'about' => 'Aqqında',
 'article' => 'Saife',
diff --git a/languages/messages/MessagesCu.php 
b/languages/messages/MessagesCu.php
index e9c7e05..706051c 100644
--- a/languages/messages/MessagesCu.php
+++ b/languages/messages/MessagesCu.php
@@ -97,6 +97,7 @@
 );
 
 $linkTrail = 
'/^([a-zабвгдеєжѕзїіıићклмнопсстѹфхѡѿцчшщъыьѣюѥѧѩѫѭѯѱѳѷѵґѓђёјйљњќуўџэ҄я“»]+)(.*)$/sDu';
+$linkPrefixCharset = '„«';
 
 $messages = array(
 # User preference toggles
@@ -179,8 +180,6 @@
 'hidden-category-category' => 'съкрꙑтꙑ катигорїѩ',
 'category-subcat-count' => '{{PLURAL:$2|Сѥи катигорїи тъкъмо сꙗ подъкатигорїꙗ 
ѥстъ|Сѥи катигорїи {{PLURAL:$1|ѥдина подъкатигорїꙗ ѥстъ|2 подъкатигорїи ѥстє|$1 
подъкатигорїѩ сѫтъ}} · а вьсѩ жє подъкатигорїѩ число $2 ѥстъ}}',
 'listingcontinuesabbrev' => '· вѧщє',
-
-'linkprefix' => '/^(.*?)(„|«)$/sD',
 
 'about' => 'опьсаниѥ',
 'article' => 'члѣнъ',
diff --git a/languages/messages/MessagesCv.php 
b/languages/messages/MessagesCv.php
index ef5f4f1..7a93e72 100644
--- a/languages/messages/MessagesCv.php
+++ b/languages/messages/MessagesCv.php
@@ -42,6 +42,7 @@
 
 $linkPrefixExtension = true;
 $linkTrail = '/^([a-zа-яĕçăӳ"»]+)(.*)$/sDu';
+$linkPrefixCharset = 'a-zA-Z"\\x{80}-\\x{10ffff}';
 
 $messages = array(
 # User preference toggles
@@ -152,8 +153,6 @@
 'category-file-count' => '{{PLURAL:$2|Ку категоринче пĕр файл кăна.|Ку 
категоринчи $2 файлтан $1 кăтартнă.}}',
 'category-file-count-limited' => 'Ку категоринче $1 файл.',
 'listingcontinuesabbrev' => '(малалли)',
-
-'linkprefix' => '/^(.*?)([a-zA-Z\\x80-\\xff«"]+)$/sD',
 
 'about' => 'Ăнлантаркăч',
 'article' => 'Статья',
diff --git a/languages/messages/MessagesDiq.php 
b/languages/messages/MessagesDiq.php
index aa5ce1f..9892e18 100644
--- a/languages/messages/MessagesDiq.php
+++ b/languages/messages/MessagesDiq.php
@@ -458,8 +458,6 @@
 'broken-file-category' => 'Peleye ke gıreyê dosyeyanê ğeletan muhtewa kenê',
 'categoryviewer-pagedlinks' => '($1) ($2)',
 
-'linkprefix' => "'''MediaWiki niya ro.'''",
-
 'about' => 'Heqa cı de',
 'article' => 'Wesiqe',
 'newwindow' => '(pençereyê newey de beno a)',
diff --git a/languages/messages/MessagesEn.php 
b/languages/messages/MessagesEn.php
index 6d68d36..7c5b1b9 100644
--- a/languages/messages/MessagesEn.php
+++ b/languages/messages/MessagesEn.php
@@ -495,6 +495,12 @@
 $linkTrail = '/^([a-z]+)(.*)$/sD';
 
 /**
+ * Regular expression charset matching the "link prefix", e.g. "foo" in
+ * foo[[bar]]. UTF-8 characters may be used.
+ */
+$linkPrefixCharset = 'a-zA-Z\\x{80}-\\x{10ffff}';
+
+/**
  * List of filenames for some ui images that can be overridden per language
  * basis if needed.
 */
@@ -789,8 +795,6 @@
 'noindex-category'               => 'Noindexed pages',
 'broken-file-category'           => 'Pages with broken file links',
 'categoryviewer-pagedlinks'      => '($1) ($2)', # only translate this message 
to other languages if you have to change it
-
-'linkprefix' => '/^((?>.*(?<![a-zA-Z\\x80-\\xff])))(.+)$/sD', # only translate 
this message to other languages if you have to change it
 
 'about'         => 'About',
 'article'       => 'Content page',
diff --git a/languages/messages/MessagesGa.php 
b/languages/messages/MessagesGa.php
index d7b37f5..c8172dc 100644
--- a/languages/messages/MessagesGa.php
+++ b/languages/messages/MessagesGa.php
@@ -218,8 +218,6 @@
 'listingcontinuesabbrev' => 'ar lean.',
 'index-category' => 'Leathanaigh innéacsaithe',
 
-'linkprefix' => '/^(.*?)([a-zA-Z\\x80-\\xff]+)$/sD',
-
 'about' => 'Maidir leis',
 'article' => 'Leathanach ábhair',
 'newwindow' => '(a osclófar i bhfuinneog nua)',
diff --git a/languages/messages/MessagesGu.php 
b/languages/messages/MessagesGu.php
index 69692e8..864ffa5 100644
--- a/languages/messages/MessagesGu.php
+++ b/languages/messages/MessagesGu.php
@@ -291,8 +291,6 @@
 'noindex-category' => 'અનુક્રમણિકા નહી બનાવેલા પાનાં',
 'broken-file-category' => 'ફાઇલોની ત્રૂટક કડીઓવાળાં પાનાં',
 
-'linkprefix' => 
'/^(.*?)((?:[a-zA-Z\\x80-\\xff]|ક્|ખ્|ગ્|ઘ્|ચ્|છ્|જ્|ઝ્|ટ્|ઠ્|ડ્|ઢ્|ણ્|ત્|થ્|દ્|ધ્|ન્|પ્|ફ્|બ્|ભ્|મ્|ય્|ર્|લ્|વ્|સ્|શ્|ષ્|હ્|ળ્|ક્ષ્|જ્ઞ્|અ|આ|ઇ|ઈ|ઉ|ઊ|એ|ઐ|ઓ|ઔ|અં|અઃ|અઁ|ઍ|ઑ|ઋ|ઁ|઼|।|્|ા|િ|ી|ુ|ૂ|ે|ૈ|ો|ૌ|ં|ઃ|ૅ|ૉ|ૃ)+)$/sD',
-
 'about' => 'વિષે',
 'article' => 'લેખનું પાનું',
 'newwindow' => '(નવા પાનામાં ખુલશે)',
diff --git a/languages/messages/MessagesId.php 
b/languages/messages/MessagesId.php
index cee748d..dd1a209 100644
--- a/languages/messages/MessagesId.php
+++ b/languages/messages/MessagesId.php
@@ -481,8 +481,6 @@
 'broken-file-category' => 'Halaman dengan gambar rusak',
 'categoryviewer-pagedlinks' => '($1) ($2)',
 
-'linkprefix' => '/^(.*?)([a-zA-Z\\x80-\\xff]+)$/sD',
-
 'about' => 'Tentang',
 'article' => 'Halaman isi',
 'newwindow' => '(buka di jendela baru)',
diff --git a/languages/messages/MessagesIs.php 
b/languages/messages/MessagesIs.php
index 2e25bdd..8b76026 100644
--- a/languages/messages/MessagesIs.php
+++ b/languages/messages/MessagesIs.php
@@ -231,6 +231,7 @@
 $separatorTransformTable = array( ',' => '.', '.' => ',' );
 $linkPrefixExtension = true;
 $linkTrail = '/^([áðéíóúýþæöa-z-–]+)(.*)$/sDu';
+$linkPrefixCharset = 'áÁðÐéÉíÍóÓúÚýÝþÞæÆöÖA-Za-z–-';
 
 $messages = array(
 # User preference toggles
@@ -370,8 +371,6 @@
 'index-category' => 'Raðaðar skrár',
 'noindex-category' => 'Óraðaðar skrár',
 'broken-file-category' => 'Síður með brotna myndatengla',
-
-'linkprefix' => '/^(.*?)([áÁðÐéÉíÍóÓúÚýÝþÞæÆöÖA-Za-z-–]+)$/sDu',
 
 'about' => 'Um',
 'article' => 'Efnissíða',
diff --git a/languages/messages/MessagesKa.php 
b/languages/messages/MessagesKa.php
index a4cd57a..dfcdb94 100644
--- a/languages/messages/MessagesKa.php
+++ b/languages/messages/MessagesKa.php
@@ -310,8 +310,6 @@
 'broken-file-category' => 'გვერდები ფაილების არასწორი ბმულებით',
 'categoryviewer-pagedlinks' => '($1) ($2)',
 
-'linkprefix' => '/^(.*?)([a-zA-Z\\x80-\\xff]+)$/sD',
-
 'about' => 'შესახებ',
 'article' => 'სტატია',
 'newwindow' => '(ახალ ფანჯარაში)',
diff --git a/languages/messages/MessagesKaa.php 
b/languages/messages/MessagesKaa.php
index 147e19a..b1314d1 100644
--- a/languages/messages/MessagesKaa.php
+++ b/languages/messages/MessagesKaa.php
@@ -151,6 +151,7 @@
 );
 
 $linkTrail = "/^((?:[a-zıʼ’“»]|'(?!'))+)(.*)$/sDu";
+$linkPrefixCharset = 'a-zıA-Zİ\\x80-\\xff';
 
 $messages = array(
 # User preference toggles
@@ -263,8 +264,6 @@
 'category-file-count' => "{{PLURAL:$2|Bul kategoriyada tek to'mendegi fayl 
bar.|Bul kategoriyada to'mendegi $1 fayl bar (barlıg'ı $2).}}",
 'category-file-count-limited' => "Usı kategoriyada to'mendegi 
{{PLURAL:$1|fayl|$1 fayl}} bar.",
 'listingcontinuesabbrev' => 'dawamı',
-
-'linkprefix' => '/^(.*?)([a-zıA-Zİ\\x80-\\xff]+)$/sDu',
 
 'about' => 'Haqqında',
 'article' => "Mag'lıwmat beti",
diff --git a/languages/messages/MessagesKiu.php 
b/languages/messages/MessagesKiu.php
index 8f18ce2..36c0437 100644
--- a/languages/messages/MessagesKiu.php
+++ b/languages/messages/MessagesKiu.php
@@ -177,8 +177,6 @@
 'noindex-category' => 'Pelê bêendeksıni',
 'broken-file-category' => 'Peli be gıreunê dosyeunê sıkıtau',
 
-'linkprefix' => '/^(.*?)([a-zA-Z\\x80-\\xff]+)$/sD',
-
 'about' => 'Heqa',
 'article' => 'Pela tedeesteyu',
 'newwindow' => '(zerrê pençerê dê newey de beno ra)',
diff --git a/languages/messages/MessagesKm.php 
b/languages/messages/MessagesKm.php
index c4e951b..063439c 100644
--- a/languages/messages/MessagesKm.php
+++ b/languages/messages/MessagesKm.php
@@ -402,8 +402,6 @@
 'broken-file-category' => 'ទំព័រទាំងឡាយដែលដាច់តំណភ្ជាប់',
 'categoryviewer-pagedlinks' => '($1) ($2)',
 
-'linkprefix' => '/^(.*?)([a-zA-Z\\x80-\\xff]+)$/sD',
-
 'about' => 'អំពី',
 'article' => 'មាតិកាអត្ថបទ',
 'newwindow' => '(បើក​លើ​បង្អួច​ថ្មី)',
diff --git a/languages/messages/MessagesLtg.php 
b/languages/messages/MessagesLtg.php
index 1b4b7f5..558d6c0 100644
--- a/languages/messages/MessagesLtg.php
+++ b/languages/messages/MessagesLtg.php
@@ -105,8 +105,6 @@
 'category-article-count' => '{{PLURAL:$2|Itymā kategorejā ir vīn dūtuo 
puslopa.|{{PLURAL:$1|Paruodeita $1 puslopa|Paruodeitys $1 puslopys}} nu $2.}}',
 'listingcontinuesabbrev' => '(tuoļuojums)',
 
-'linkprefix' => '/^(.*?)([a-zA-Z\\x80-\\xff]+)$/sD',
-
 'about' => 'Aproksts',
 'article' => 'Rakstīņs',
 'newwindow' => '(atdareišona jaunuo puslopā)',
diff --git a/languages/messages/MessagesMk.php 
b/languages/messages/MessagesMk.php
index 982427e..8b726e7 100644
--- a/languages/messages/MessagesMk.php
+++ b/languages/messages/MessagesMk.php
@@ -489,8 +489,6 @@
 'noindex-category' => 'Неиндексирани страници',
 'broken-file-category' => 'Страници со прекинати врски до податотеки',
 
-'linkprefix' => '/^(.*?)([a-zA-Z\\x80-\\xff]+)$/sD',
-
 'about' => 'За {{SITENAME}}',
 'article' => 'Статија',
 'newwindow' => '(се отвора во нов прозорец)',
diff --git a/languages/messages/MessagesMs.php 
b/languages/messages/MessagesMs.php
index 2f07107..dfef63f 100644
--- a/languages/messages/MessagesMs.php
+++ b/languages/messages/MessagesMs.php
@@ -338,8 +338,6 @@
 'noindex-category' => 'Laman tak diindeks',
 'broken-file-category' => 'Laman yang ada pautan fail yang terputus',
 
-'linkprefix' => '/^(.*?)([a-zA-Z\\x80-\\xff]+)$/sD',
-
 'about' => 'Perihal',
 'article' => 'Laman kandungan',
 'newwindow' => '(dibuka di tetingkap baru)',
diff --git a/languages/messages/MessagesMt.php 
b/languages/messages/MessagesMt.php
index 6bec1c6..a1bea2d 100644
--- a/languages/messages/MessagesMt.php
+++ b/languages/messages/MessagesMt.php
@@ -271,6 +271,8 @@
        'formatdate'                => array( '0', 'formatdata', 'dataformat', 
'formatdate', 'dateformat' ),
 );
 
+$linkPrefixCharset = 'A-\\x{10ffff}';
+
 $messages = array(
 # User preference toggles
 'tog-underline' => 'Ħoloq sottolinjati:',
@@ -410,8 +412,6 @@
 'index-category' => 'Paġni indiċjati',
 'noindex-category' => 'Paġni mhux indiċizzati',
 'broken-file-category' => "Paġni b'ħoloq lejn fajls miksura",
-
-'linkprefix' => '/^(.*?)([a-żA-Ż\\x80-\\xff]+)$/sD',
 
 'about' => 'Dwar',
 'article' => 'artiklu',
diff --git a/languages/messages/MessagesNe.php 
b/languages/messages/MessagesNe.php
index 6abbfda..99a16bf 100644
--- a/languages/messages/MessagesNe.php
+++ b/languages/messages/MessagesNe.php
@@ -193,8 +193,6 @@
 'noindex-category' => 'क्रमांकन नगरिएका पृष्ठहरु',
 'broken-file-category' => 'टुटेको फाइल लिंकसितको पृष्ठ',
 
-'linkprefix' => '/^(.*?)([a-zA-Z\\x80-\\xff]+)$/sD',
-
 'about' => 'बारेमा',
 'article' => 'सामाग्री पृष्ठ',
 'newwindow' => '(नयाँ विन्डोमा खुल्छ)',
diff --git a/languages/messages/MessagesNn.php 
b/languages/messages/MessagesNn.php
index fe944b1..47bc87c 100644
--- a/languages/messages/MessagesNn.php
+++ b/languages/messages/MessagesNn.php
@@ -457,8 +457,6 @@
 'noindex-category' => 'Ikkje-indekserte sider',
 'broken-file-category' => 'Sider med brotne fillenkjer',
 
-'linkprefix' => '/^(.*?)([a-zA-Z\\x80-\\xff]+)$/sD',
-
 'about' => 'Om',
 'article' => 'Innhaldsside',
 'newwindow' => '(vert opna i eit nytt vindauge)',
diff --git a/languages/messages/MessagesQqq.php 
b/languages/messages/MessagesQqq.php
index a8b66b2..9d58538 100644
--- a/languages/messages/MessagesQqq.php
+++ b/languages/messages/MessagesQqq.php
@@ -426,8 +426,6 @@
 * $1 - the previous link, uses {{msg-mw|Prevn}}
 * $2 - the next link, uses {{msg-mw|Nextn}}',
 
-'linkprefix' => '{{optional}}',
-
 'about' => '{{Identical|About}}',
 'article' => "A 'content page' is a page that forms part of the purpose of the 
wiki. It includes the main page and pages in the main namespace and any other 
namespaces that are included when the wiki is customised. For example on 
Wikimedia Commons 'content pages' include pages in the file and category 
namespaces. On Wikinews 'content pages' include pages in the Portal namespace. 
For technical definition of 'content namespaces' see 
[[mw:Manual:Using_custom_namespaces#Content_namespaces|MediaWiki]].
 
diff --git a/languages/messages/MessagesRo.php 
b/languages/messages/MessagesRo.php
index ad80824..0dddd8b 100644
--- a/languages/messages/MessagesRo.php
+++ b/languages/messages/MessagesRo.php
@@ -438,8 +438,6 @@
 'noindex-category' => 'Pagini neindexate',
 'broken-file-category' => 'Pagini cu legături invalide către fișiere',
 
-'linkprefix' => '/^(.*?)([a-zA-Z\\x80-\\xff]+)$/sD',
-
 'about' => 'Despre',
 'article' => 'Articol',
 'newwindow' => '(se deschide într-o fereastră nouă)',
diff --git a/languages/messages/MessagesRoa_tara.php 
b/languages/messages/MessagesRoa_tara.php
index bc1f773..0203dd1 100644
--- a/languages/messages/MessagesRoa_tara.php
+++ b/languages/messages/MessagesRoa_tara.php
@@ -165,8 +165,6 @@
 'broken-file-category' => 'Pàggene cu collegaminde a le file scuasciate',
 'categoryviewer-pagedlinks' => '($1) ($2)',
 
-'linkprefix' => '/^(.*?)([a-zA-Z\\x80-\\xff]+)$/sD',
-
 'about' => 'Sus a',
 'article' => 'Pàgene de le condenute',
 'newwindow' => "(iapre jndr'à 'na fenestra nova)",
diff --git a/languages/messages/MessagesSc.php 
b/languages/messages/MessagesSc.php
index bfc2b2b..d97bb14 100644
--- a/languages/messages/MessagesSc.php
+++ b/languages/messages/MessagesSc.php
@@ -177,8 +177,6 @@
 'index-category' => 'Pàginas indicizadas',
 'noindex-category' => 'Pàginas no indicitzadas',
 
-'linkprefix' => '/^(.*?)([a-zA-Z\\x80-\\xff]+)$/sD',
-
 'about' => 'A propòsitu de',
 'article' => 'Artìculu',
 'newwindow' => '(aberit in una bentana noa)',
diff --git a/languages/messages/MessagesSi.php 
b/languages/messages/MessagesSi.php
index 4a30265..a020dd0 100644
--- a/languages/messages/MessagesSi.php
+++ b/languages/messages/MessagesSi.php
@@ -331,8 +331,6 @@
 'noindex-category' => 'සූචිගත නොකළ පිටු',
 'broken-file-category' => 'භින්න වූ ගොනු සබැඳි සහිත පිටු',
 
-'linkprefix' => '/^(.*?)([a-zA-Z\\x80-\\xff]+)$/sD',
-
 'about' => 'පිළිබඳ',
 'article' => 'පටුන',
 'newwindow' => '(නව කවුළුවක විවෘතවේ)',
diff --git a/languages/messages/MessagesSr_ec.php 
b/languages/messages/MessagesSr_ec.php
index b28c453..118a9dd 100644
--- a/languages/messages/MessagesSr_ec.php
+++ b/languages/messages/MessagesSr_ec.php
@@ -536,8 +536,6 @@
 'noindex-category' => 'Непописане странице',
 'broken-file-category' => 'Странице с неисправним везама до датотека',
 
-'linkprefix' => '/^(.*?)([a-zA-Z\\x80-\\xff]+)$/sD',
-
 'about' => 'О нама',
 'article' => 'Страница са садржајем',
 'newwindow' => '(отвара се у новом прозору)',
diff --git a/languages/messages/MessagesSr_el.php 
b/languages/messages/MessagesSr_el.php
index bb7f381..97d433a 100644
--- a/languages/messages/MessagesSr_el.php
+++ b/languages/messages/MessagesSr_el.php
@@ -444,8 +444,6 @@
 'noindex-category' => 'Nepopisane stranice',
 'broken-file-category' => 'Stranice s neispravnim vezama do datoteka',
 
-'linkprefix' => '/^(.*?)([a-zA-Z\\x80-\\xff]+)$/sD',
-
 'about' => 'O nama',
 'article' => 'Stranica sa sadržajem',
 'newwindow' => '(otvara u novom prozoru)',
diff --git a/languages/messages/MessagesTl.php 
b/languages/messages/MessagesTl.php
index becffb7..028870d 100644
--- a/languages/messages/MessagesTl.php
+++ b/languages/messages/MessagesTl.php
@@ -285,8 +285,6 @@
 'broken-file-category' => 'Mga pahina na may sirang mga kawing ng talaksan',
 'categoryviewer-pagedlinks' => '($1) ($2)',
 
-'linkprefix' => '/^(.*?)([a-zA-Z\\x80-\\xff]+)$/sD',
-
 'about' => 'Patungkol',
 'article' => 'Pahina ng nilalaman',
 'newwindow' => '(magbubukas sa bagong bintana)',
diff --git a/languages/messages/MessagesTt_cyrl.php 
b/languages/messages/MessagesTt_cyrl.php
index f25aebf..f6b9404 100644
--- a/languages/messages/MessagesTt_cyrl.php
+++ b/languages/messages/MessagesTt_cyrl.php
@@ -348,8 +348,6 @@
 'noindex-category' => 'Индексланмаган битләр',
 'broken-file-category' => 'Файлларга эшләми торган сылтамалар булган битләр',
 
-'linkprefix' => '/^(.*?)([a-zA-Z\\x80-\\xff]+)$/sD',
-
 'about' => 'Тасвирлама',
 'article' => 'Мәкалә',
 'newwindow' => '(яңа тәрәзәдә ачыла)',
diff --git a/languages/messages/MessagesTt_latn.php 
b/languages/messages/MessagesTt_latn.php
index 6d17c36..8f96b5b 100644
--- a/languages/messages/MessagesTt_latn.php
+++ b/languages/messages/MessagesTt_latn.php
@@ -216,8 +216,6 @@
 'index-category' => 'İndekslanğan bitlär',
 'noindex-category' => 'İndekslanmağan bitlär',
 
-'linkprefix' => '/^(.*?)([a-zA-Z\\x80-\\xff]+)$/sD',
-
 'about' => 'Taswirlama',
 'article' => 'Mäqälä',
 'newwindow' => '(yaña täräzädä açıla)',
diff --git a/languages/messages/MessagesUdm.php 
b/languages/messages/MessagesUdm.php
index ac03870..9900e24 100644
--- a/languages/messages/MessagesUdm.php
+++ b/languages/messages/MessagesUdm.php
@@ -44,6 +44,7 @@
 $namespaceGenderAliases = array();
 
 $linkTrail = '/^([a-zа-яёӝӟӥӧӵ“»]+)(.*)$/sDu';
+$linkPrefixCharset = '„«';
 $fallback8bitEncoding = 'windows-1251';
 $separatorTransformTable = array( ',' => "\xc2\xa0", '.' => ',' );
 
@@ -150,8 +151,6 @@
 'listingcontinuesabbrev' => 'азьлань',
 'index-category' => 'Индексировать кароно бамъёс',
 'noindex-category' => 'Индексировать каронтэм бамъёс',
-
-'linkprefix' => '/^((?>.*(?<!(?:„|«)$)))(.+)$/sDu',
 
 'about' => 'Та сярысь',
 'article' => 'Статья',
diff --git a/languages/messages/MessagesUg_arab.php 
b/languages/messages/MessagesUg_arab.php
index ab5ee42..aad3464 100644
--- a/languages/messages/MessagesUg_arab.php
+++ b/languages/messages/MessagesUg_arab.php
@@ -173,8 +173,6 @@
 'broken-file-category' => 'ھۆججەت ئۇلىنىشى بۇزۇلغان بەتلەر',
 'categoryviewer-pagedlinks' => '($1) ($2)',
 
-'linkprefix' => '/^(.*?)([a-zA-Z\\x80-\\xff]+)$/sD',
-
 'about' => 'ھەققىدە',
 'article' => 'مۇندەرىجە',
 'newwindow' => '(يېڭى كۆزنەكتە ئاچ)',
diff --git a/languages/messages/MessagesUk.php 
b/languages/messages/MessagesUk.php
index 105bef1..b9795cc 100644
--- a/languages/messages/MessagesUk.php
+++ b/languages/messages/MessagesUk.php
@@ -361,6 +361,7 @@
 );
 
 $linkTrail = '/^([a-zабвгґдеєжзиіїйклмнопрстуфхцчшщьєюяёъы“»]+)(.*)$/sDu';
+$linkPrefixCharset = '„«';
 
 $messages = array(
 # User preference toggles
@@ -503,8 +504,6 @@
 'noindex-category' => 'Неіндексовані сторінки',
 'broken-file-category' => 'Сторінки, що посилаються на неіснуючі файли',
 'categoryviewer-pagedlinks' => '($1) ($2)',
-
-'linkprefix' => '/^(.*?)(„|«)$/sD',
 
 'about' => 'Про',
 'article' => 'Стаття',
diff --git a/languages/messages/MessagesUz.php 
b/languages/messages/MessagesUz.php
index e8746b3..b154b14 100644
--- a/languages/messages/MessagesUz.php
+++ b/languages/messages/MessagesUz.php
@@ -107,6 +107,7 @@
 );
 
 $linkTrail = '/^([a-zʻʼ“»]+)(.*)$/sDu';
+$linkPrefixCharset = 'a-zA-Z\\x80-\\xffʻʼ«„';
 
 $messages = array(
 # User preference toggles
@@ -235,8 +236,6 @@
 'index-category' => 'Indekslanadigan sahifalar',
 'noindex-category' => 'Indekslanmaydigan sahifalar',
 'broken-file-category' => 'Ishlamaydigan fayl havolalari bor sahifalar',
-
-'linkprefix' => '/^(.*?)([a-zA-Z\\x80-\\xffʻʼ«„]+)$/sDu',
 
 'about' => 'Haqida',
 'article' => 'Sahifa',
diff --git a/languages/messages/MessagesWar.php 
b/languages/messages/MessagesWar.php
index bd99d85..14db086 100644
--- a/languages/messages/MessagesWar.php
+++ b/languages/messages/MessagesWar.php
@@ -203,8 +203,6 @@
 'noindex-category' => 'Mga diri nakatudlokan nga pagkli',
 'broken-file-category' => 'Mga pakli nga mayda utod nga mga sumpay hin paypay',
 
-'linkprefix' => '/^(.*?)([a-zA-Z\\x80-\\xff]+)$/sD',
-
 'about' => 'Mahitungod han',
 'article' => 'Pakli hin sulod',
 'newwindow' => '(nabuklad hin bag-o nga tamboan o bintana)',
diff --git a/maintenance/language/messageTypes.inc 
b/maintenance/language/messageTypes.inc
index 8676d74..267666d 100644
--- a/maintenance/language/messageTypes.inc
+++ b/maintenance/language/messageTypes.inc
@@ -266,7 +266,6 @@
 
 /** Optional messages, which may be translated only if changed in the target 
language. */
 $wgOptionalMessages = array(
-       'linkprefix',
        'feed-atom',
        'feed-rss',
        'unit-pixel',
diff --git a/maintenance/language/messages.inc 
b/maintenance/language/messages.inc
index a4fc922..1ac9500 100644
--- a/maintenance/language/messages.inc
+++ b/maintenance/language/messages.inc
@@ -169,9 +169,6 @@
                'broken-file-category',
                'categoryviewer-pagedlinks',
        ),
-       'mainpage' => array(
-               'linkprefix',
-       ),
        'miscellaneous1' => array(
                'about',
                'article',

-- 
To view, visit https://gerrit.wikimedia.org/r/91425
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings

Gerrit-MessageType: merged
Gerrit-Change-Id: I3369851b33113fc118a1bace38f3ac310cdd9725
Gerrit-PatchSet: 3
Gerrit-Project: mediawiki/core
Gerrit-Branch: master
Gerrit-Owner: Anomie <[email protected]>
Gerrit-Reviewer: Anomie <[email protected]>
Gerrit-Reviewer: GWicke <[email protected]>
Gerrit-Reviewer: Liangent <[email protected]>
Gerrit-Reviewer: Nikerabbit <[email protected]>
Gerrit-Reviewer: Siebrand <[email protected]>
Gerrit-Reviewer: Tim Starling <[email protected]>
Gerrit-Reviewer: jenkins-bot

_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits

Reply via email to