Open main menu

Erweiderung:Babel

This page is a translated version of the page Extension:Babel and the translation is 20% complete.
Other languages:
Deutsch • ‎English • ‎Lëtzebuergesch • ‎Sassaresu • ‎Scots • ‎asturianu • ‎dansk • ‎español • ‎français • ‎italiano • ‎lietuvių • ‎magyar • ‎polski • ‎português • ‎português do Brasil • ‎sicilianu • ‎български • ‎русский • ‎हिन्दी • ‎中文 • ‎日本語 • ‎ꯃꯤꯇꯩ ꯂꯣꯟ • ‎조선말 • ‎한국어
MediaWiki extensions manual
OOjs UI icon advanced.svg
Babel
Release status: stable
Babel-extension-screenshot.png
Implementation Parser extension
Description Adds a parser function to inform other users about language proficiency and categorize users of the same levels and languages.
Author(s) Robert Leverington (RobertLtalk)
Latest version Continuous updates
MediaWiki 1.30+
Database changes Yes
Composer mediawiki/babel
Tables babel
License GNU General Public License 2.0 or later
Download Included in Language Extension Bundle
Example Translatewiki.net
  • $wgBabelCategorizeNamespaces
  • $wgBabelCategoryNames
  • $wgBabelMainCategory
  • $wgBabelDefaultLevel
  • $wgBabelUseUserLanguage
  • $wgBabelUseDatabase
  • $wgBabelCentralDb
  • $wgBabelCentralApi
Translate the Babel extension if it is available at translatewiki.net
Check usage and version matrix.
Issues Open tasks · Report a bug

The Babel extension adds a parser function to replace the old Babel system that completely relied on templates. If an unrecognized language parameter is specified, it will see if there is an existing template with the name and include that.

On Wikimedia projects, the noun Babel (in reference to the Tower of Babel) refers to the texts on user pages aiding multilingual communication by making it easier to contact someone who speaks a certain language. The idea originated on the Wikimedia Commons and has also been implemented on many other wikis.

Eroflueden

The extension can be retrieved directly from Git [?]:

  • Browse code
  • Some extensions have tags for stable releases.
  • Each branch is associated with a past MediaWiki release. There is also a "master" branch containing the latest alpha version (might require an alpha version of MediaWiki).

Extract the snapshot and place it in the extensions/Babel/lb/ directory of your MediaWiki installation.

If you are familiar with git and have shell access to your server, you can also obtain the extension as follows:

cd extensions/
git clone https://gerrit.wikimedia.org/r/mediawiki/extensions/Babel%2Flb.git

Installation

  • Download and place the file(s) in a directory called Babel in your extensions/ folder.

To users running MediaWiki 1.25 or earlier:

The instructions above describe the new way of installing this extension using wfLoadExtension(). If you need to install this extension on these earlier versions (MediaWiki 1.25 and earlier), instead of wfLoadExtension( 'Babel' );, you need to use:

require_once "$IP/extensions/Babel/Babel.php";
  • The CSS is located in the file resources/ext.babel.css. You can change the style as desired by overriding them in the page MediaWiki:Common.css.
  • If the CLDR extension is found language names are taken from that (where translations are unavailable), otherwise built in MediaWiki language names and English defaults are used.

Benotzung

Syntax fir d'#babel Parserfunktioun ass esou:

 {{#babel: babelcode1 | babelcode2 | ... }}

Add one of the following codes for each language you speak or understand, separated by |, where xx is the MediaWiki language code, ISO 639-1 code, or ISO 639-3 code for the language. The general usage of each code level is as follows:

xx-0
Wann Dir d'Sprooch guer net verstitt.
xx-1
Basic ability - enough to understand written material or simple questions in this language.
xx-2
Intermediate ability - enough for editing or discussions.
xx-3
Advanced level - though you can write in this language with no problem, some small errors might occur.
xx-4
"Near-native" level - although it's not your first language from birth, your ability is something like that of a native speaker.
xx-5
Professional proficiency.
xx or xx-N
Native speakers who use a language every day and have a thorough grasp of it, including colloquialisms and idioms.

To include any other template, simply add the name of the template, e.g. add User from London if you want to include Template:User from London. A prefix or suffix may be added to template names (e.g. User at the beginning) depending on the local configuration, this can be used to restrict the selection and reduce the length of parameters; for example from London could include Template:User from London if configured in such a way.

To remove the header and footer, use plain=1 as the first parameter, e.g. {{#babel: plain=1 | babelcode1 | babelcode2 | ... }}. This makes it easier to use babel with other userboxes.

Astellung

Configuration parameters

Babel has six configuration parameters which can be modified in LocalSettings.php .

$wgBabelLanguageCodesCdb 
(string) the path of the language code database file, the default should suffice.
$wgBabelLanguageNamesCdb 
(string) the path of the language name database file, the default should suffice.
$wgBabelCategoryNames 
(array of string or boolean, indexed by the strings "1", "2", … "5", "N") where each entry is the name of a category for the skill level indicated by its index, possible variable elements are: %code% (language code), %wikiname% (the name of the language in the wiki's content language), and %nativename% (the name of the language in its language). To disable adding a category for a particular level, set the corresponding value to false.
Zum Beispill:
$wgBabelCategoryNames = [
	'0' => 'User %code%-0',
	'1' => 'User %code%-1',
	'2' => 'User %code%-2',
	'3' => 'User %code%-3',
	'4' => 'User %code%-4',
	'5' => 'User %code%-5',
	'N' => 'User %code%-N',
];
benotzt Kategorie wéi "Category:User en-0" a(n) "Category:User fr-N". De Standard ass "Category:Fr-N" a sou weider.
$wgBabelMainCategory 
(string) Name of the main (non-level) category for each language, to which all users of that language are added. Set to false to disable; defaults to format "Category:Fr". It accepts the same format as $wgBabelCategoryNames above. Example:
$wgBabelMainCategory = 'User %code%';
$wgBabelDefaultLevel 
(string) Default ability level to use when none is specified, should be an index from $wgBabelCategoryNames, that is one of the strings "1", "2", … "5", "N". Default is "N".
$wgBabelUseUserLanguage 
(boolean) Whether to use the user interface language for the header and footer message. If false (default), it will be in the page content language. This is because using the user interface language may fragment the parser cache.

System messages

Several customizations can also be made using MediaWiki namespace messages.

MediaWiki:babel-template "Template:User $1"
The format of template names when one is being included.
MediaWiki:babel-portal "⧼babel-portal⧽"
The format of the target of the link from the language code.
MediaWiki:Babel-autocreate-user "Babel automatesch uleeën"
Username to be used for autocreation of Babel related categories
MediaWiki:babel-autocreate-text-levels "Benotzer an dëser Kategorie ginn un datt si an der Sprooch $2 den Niveau $1 hunn."
Text to insert into auto-created categories for different language levels. You have to change this if you want them to be auto-categorized in the main category of the respective language ($wgBabelMainCategory).
MediaWiki:babel-autocreate-text-main "Benotzer an dëser Kategorie ginn hir Kenntnesser an der Sprooch $1 un."
Text to insert into auto-created categories for non-level categories. You have to change this if you want them to be auto-categorized in a parent category for all languages.
MediaWiki:babel "Babel-Benotzer-Informatioun"
D'Iwwerschrëft vun der Babel-Këscht
MediaWiki:babel-url "Project:Babel"
The pagename where information on the babel extension can be found
MediaWiki:Babel-footer "Benotzer pro Sprooch"
The footer of the babel box
MediaWiki:babel-footer-url " :Kategorie:Babel - Benotzer no Sprooch"
The page to link to in the footer of the babel box

API

meta=babel (bab)

(main | query | babel)

Get information about what languages the user knows

Parameter:
babuser

User to get information about

This parameter is required.
Type: user name
Example:
Get the Babel information for user Example
api.php?action=query&meta=babel&babuser=Example [open in sandbox]