حزمة امتدادات لغات ميدياويكي

This page is a translated version of the page MediaWiki Language Extension Bundle and the translation is 4% complete.


The MediaWiki language extension bundle (MLEB) is a curated set of MediaWiki extensions offering multilingual features. It attempts to provide an easy way to bring comprehensive language support to a MediaWiki.

Overview of extensions

The current version of MLEB contains six extensions:

MLEB has a quarterly release schedule, so that you can easily stay on the cutting edge with the constantly improving language support. The bundle is tested against recent MediaWiki release versions, so you can avoid most of the temporary breaks that would happen if you were using the latest development versions of each extension.

Motivation

The Universal Language Selector is a must have, because it provides an essential functionality for any user regardless of the number of languages they speak: language selection, font support for displaying scripts badly supported by common operating systems, and input methods for typing languages that don't use the Latin alphabet. It includes freely-licensed fonts, which cover most of the major languages of America, Europe, Middle East, India and South East Asia.

Maintaining multilingual content in a wiki is a mess without the Translate extension, which is used by Wikimedia Foundation, KDE, translatewiki.net and other sites. With Localisation Update your users will always have the latest translations freshly out of the oven. The Clean Changes extension keeps your recent changes page uncluttered from translation activity and other clutter.

Don't miss the chance to practice your rusty language skills: Use the Babel extension to mark the languages you speak and find other speakers of the same language in your wiki. And, finally, the cldr extension is a database of language and country translations.


Release notes and downloads

Latest release

2022.07
LocalisationUpdate
  • LocalisationUpdate extension is removed from MediaWiki Language Extension Bundle. Please read the announcement.
Translate
2022.04
LocalisationUpdate
  • We're planning to sunset the LocalisationUpdate extension from version 2022.07. Please read the announcement.
Translate
  • If you are using translation memory with ElasticSearch backend, we recommend rebuilding the translation memory index. This can be done by running php <path_to_mediawiki_core>/extensions/Translate/scripts/ttmserver-export.php

Previous releases

2022.01
Translate
UniversalLanguageSelector
  • Remove backward compatibility for MW <= 1.35
2021.12
Translate

2021.11
Translate
  • Fix compatibility with MediaWiki <= 1.37 when VisualEditor is installed. (Phab:T294605)

2021.10
Translate
  • SECURITY: Allow revdel-related actions in translatable pages (Gerrit)
  • BREAKING CHANGES
    • Export script: remove --hours (Gerrit)
    • Remove translation aids customization (Hook: TranslateTranslationAids) (Gerrit)
    • Remove $wgTranslateDelayedMessageIndexRebuild (Gerrit)
    • Remove getConfiguration and getFFS from MessageGroup (Gerrit)
    • Group configuration: Rename validator keymatch option to include (Gerrit)
UniversalLanguageSelector
  • SECURITY: Language name search: Avoid searching for very long search keys (Gerrit, Phabricator)
  • Improve support for the new Vector Skin.
  • Remove configuration ULSEnableAnon (Gerrit)
  • Add support for multiple ULS buttons (Gerrit)

2021.07
Translate
  • SECURITY: Enhance validation and logging for AggregateGroups API deletions (مهمة T282932)
  • BREAKING CHANGES

Configuration variable changes

To address voice and tone issues in the Translate extension (مهمة T277965) the following configuration variable names have been renamed:

  • TranslateBlacklistTranslateDisabledTargetLanguages
  • TranslateAuthorBlacklistTranslateAuthorExclusionList
  • TranslateCheckBlacklistTranslateValidationExclusionFile

The old variables will be supported for MLEB 2021.07 release but removed in the MLEB 2021.10 release.

If you have defined message groups defined with LANGUAGE attributes, whitelist/blacklist have been changed to include/exclude

UniversalLanguageSelector
  • BREAKING CHANGE: UniversalLanguageSelector extension now requires MediaWiki 1.35 or above.
  • MODERN VECTOR:
    • Position language menu below language button. (مهمة T276248)
    • Fix "ULS settings window can’t be opened with the preferences link on new Vector". (مهمة T282956)

2021.06
Translate

2021.04
Translate
  • Consider translated optional messages towards meeting the export threshold (مهمة T159122)
  • Do not lock pages indefinitely during translatable page moves (Gerrit change 661125)
  • Limit pages that can be moved from the UI to 500 by default. (مهمة T277431)
    • This can be modified by updating the configuration: $wgTranslatePageMoveLimit
  • Namespace for classes under the src/ folder has been changed to: MediaWiki\Extension\Translate instead of: MediaWiki\Extensions\Translate. class_alias has been used to ensure existing functionality and cached data does not break. The alias will be removed in the next MLEB release.
UniversalLanguageSelector

2021.01
Translate
UniversalLanguageSelector

Show all releases.

Downloading with Git

In your extensions directory do the following to get or update to the latest release and follow configuration instructions below.

 for ext in Babel cldr CleanChanges LocalisationUpdate Translate UniversalLanguageSelector
 do
   if [ ! -d "$ext" ]
   then
     git clone https://gerrit.wikimedia.org/r/mediawiki/extensions/$ext.git
   fi
   cd $ext; git fetch --tags; git checkout 2022.07; cd ..
 done


Installation

Installation requirements

Installation requirements of each piece of provided software are included in the respective documentation. See in particular the installation requirements.

Add/update your LocalSettings.php

Near the end of LocalSettings.php, you have to place this configuration:

wfLoadExtension( 'Babel' );

wfLoadExtension( 'cldr' );

wfLoadExtension( 'CleanChanges' );
$wgCCTrailerFilter = true;
$wgCCUserFilter = false;
$wgDefaultUserOptions['usenewrc'] = 1;

wfLoadExtension( 'LocalisationUpdate' );
$wgLocalisationUpdateDirectory = "$IP/cache";

wfLoadExtension( 'Translate' );
$wgGroupPermissions['user']['translate'] = true;
$wgGroupPermissions['user']['translate-messagereview'] = true;
$wgGroupPermissions['user']['translate-groupreview'] = true;
$wgGroupPermissions['user']['translate-import'] = true;
$wgGroupPermissions['sysop']['pagetranslation'] = true;
$wgGroupPermissions['sysop']['translate-manage'] = true;
$wgTranslateDocumentationLanguageCode = 'qqq';
$wgExtraLanguageNames['qqq'] = 'Message documentation'; # No linguistic content. Used for documenting messages

wfLoadExtension( 'UniversalLanguageSelector' );

Update database tables

Command line

In the directory where your LocalSettings.php is located, run the following command:

php maintenance/update.php

Web browser

Go to example.com/mediawiki/mw-config/ (see Manual:Upgrading#Web browser) by using your domain and path and rerun install.

Configuring and using extensions

See the respective extension documentation pages. Do note that LocalisationUpdate does nothing by default and needs additional configuration to be run periodically.

Background

MLEB does not use version-specific branches of extensions. It's a snapshot from master which is verified to be working with the specified MediaWiki releases. This means all MLEB extensions must follow the compatibility policy of supporting two latest stable MediaWiki releases in the master branch.

MLEB releases are created with a tool called Melange. If you are interested in that code (e.g. you want to change its code), see the Melange repository in Git.