Jump to content

Erweiterung:Babel

From mediawiki.org
This page is a translated version of the page Extension:Babel and the translation is 39% complete.
MediaWiki extensions manual
Babel
Release status: stable
Implementation Parser function
Description Fügt eine Parserfunktion hinzu um andere Benutzer über Sprachkenntnisse zu informieren und um Benutzer mit gleichen Sprachlevels zu kategorisieren.
Author(s) Robert Leverington (RobertLDiskussion)
Latest version Continuous updates
Compatibility policy Master maintains backward compatibility.
MediaWiki >= 1.43.0
Database changes Yes
Composer mediawiki/babel
Tables babel
License GNU General Public License 2.0 or later
Download Im Sprachenerweiterungsbündel enthalten
Example Translatewiki.net
  • $wgBabelMainCategory
  • $wgBabelAutoCreate
  • $wgBabelDefaultLevel
  • $wgBabelCategorizeNamespaces
  • $wgBabelUseUserLanguage
  • $wgBabelCentralDb
  • $wgBabelCategoryNames
  • $wgBabelUseCommunityConfiguration
  • $wgBabelAllowOverride
Quarterly downloads 85 (Ranked 57th)
Public wikis using 2,416 (Ranked 192nd)
Translate the Babel extension if it is available at translatewiki.net
Issues Open tasks · Report a bug

Die Babel-Erweiterung fügt eine Parserfunktion hinzu, um das alte Babel-System zu ersetzen, welches vollständig auf Vorlagen angewiesen war. Falls ein nicht anerkannter Sprachparameter angegeben wird, wird es sehen, ob es eine vorhandene Vorlage mit den Namen gibt und dies einschließt.

In den Wikimedia-Projekten bezieht sich das Substantiv Babel (in Anlehnung an den Turm zu Babel) auf die Texte auf den Benutzerseiten, die die mehrsprachige Kommunikation unterstützen, indem sie die Kontaktaufnahme mit jemandem erleichtern, der eine bestimmte Sprache spricht. Die Idee stammt ursprünglich von Wikimedia Commons und wurde auch in vielen anderen Wikis umgesetzt.

Installation

  • Die Erweiterung herunterladen und die Datei(en) in ein Verzeichnis namens Babel im Ordner extensions/ ablegen.
    Developers and code contributors should install the extension from Git instead, using:cd extensions/
    git clone https://gerrit.wikimedia.org/r/mediawiki/extensions/Babel
  • Folgenden Code am Ende Ihrer LocalSettings.php -Datei hinzufügen:
    wfLoadExtension( 'Babel' );
    
  • Führen Sie das Aktualisierungsskript aus, welches automatisch die notwendigen Datenbanktabellen erstellt, die diese Erweiterung braucht.
  • Konfigurieren Sie nach Bedarf.
  • Yes Done – Zu Special:Version in dem Wiki (bei Einstellung auf deutsch nach Spezial:Version) navigieren, um die erfolgreiche Installierung der Erweiterung zu überprüfen.
  • Das CSS befindet sich in der Datei resources/ext.babel.css. Sie können den Stil nach Belieben ändern, indem Sie ihn in der Seite MediaWiki:Common.css überschreiben.
  • Wenn die CLDR -Erweiterung gefunden wird, werden die Sprachnamen von dieser übernommen (wenn keine Übersetzungen verfügbar sind), ansonsten werden die eingebauten MediaWiki-Sprachnamen und die englischen Standardwerte verwendet.

Verwendung

Die Syntax der #babel-Parserfunktion ist folgende:

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

Es wird einer der folgenden Codes für jede Sprache hinzugefügt, die gesprochen oder verstanden wird, getrennt durch |, wobei xx der MediaWiki-[[||Sprachcode]] nach ISO 639-1-Sprachennorm oder nach ISO 639-3-Sprachennorm ist. Die allgemeine Verwendung jeder Ebene des Codes ist wie folgt:

xx-0
Wenn die Sprache gar nicht verstanden wird.
xx-1
Grundkenntnisse - genug um geschriebenes Material oder einfache Fragen in dieser Sprache zu verstehen.
xx-2
Mittlere Kenntnisse - genug für Bearbeitungen oder Diskussionen.
xx-3
Fortgeschrittenes Niveau - obwohl in dieser Sprache ohne Probleme geschrieben werden kann, können einige kleine Fehler auftreten.
xx-4
"Nahe-muttersprachliches" Niveau - obwohl des nicht die erste Sprache von Geburt an ist, sind die Fähigkeiten nahe dem eines Muttersprachlers.
xx-5
Professionelle Kenntnisse.
xx oder xx-N
Muttersprachler, die jeden Tag diese Sprache benutzen und ein gründliches Verständnis davon haben, einschließlich der Umgangssprache und Redewendungen.

To include any other template, add the name of the template, e.g., add User CSS if you want to include Template:User CSS. 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, CSS could include Template:User CSS if configured in such a way.

Parameters

Zum Entfernen der Kopf- oder Fußzeile, kann plain=1 als erster Parameter verwendet werden, z.B. {{#babel: plain=1 | babelcode1 | babelcode2 | ... }}. Dadurch wird die Verwendung von Babel mit anderen Userboxen erleichtert.

To hide categories, use the nocat=1 parameter as the first parameter, e.g., {{#babel: nocat=1 | babelcode1 | babelcode2 | ... }}.

Please note that only one of the parameters above is allowed. At the moment, it is not possible to use both parameters; for example, {{#babel: nocat=1 | plain=1 | babelcode1 | babelcode2 | ... }} will not work.

Categorization

If categorization is enabled, the extension creates categories using the Babel AutoCreate bot with the text specified in MediaWiki:babel-autocreate-text-levels and MediaWiki:babel-autocreate-text-main. With basic settings, the categories that the bot creates are not categorized, and to fix this, it is recommended to do the following:

  1. Create a template {{Babel category }} that will generate categories.
  2. Replacing text on MediaWiki:babel-autocreate-text-levels with
    {{Babel category|level=$1|language=$2|ISO=$3}}
    
  3. Replacing text on MediaWiki:babel-autocreate-text-main with
    {{Babel category|language=$1|ISO=$2}}
    

This will allow you to categorize categories automatically, and if something happens, you can simultaneously replace the categorization and text in all categories.

Konfiguration

Configuration parameters

Babel has several 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.
For example:
$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',
];
will use categories like "Category:User en-0" and "Category:User fr-N". The default is just "Category:Fr-N" and so on.
$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.
$wgBabelCategorizeNamespaces
Array of namespaces to only add automatic categorization to. For example, if $wgBabelCategorizeNamespaces = [ NS_USER ];, then Babel will only add categories to pages in the user namespace. The default is null, which means categorizing all namespaces.
$wgBabelCategoryOverride
Whether to allow Babel categories to be overridden on the wiki using MediaWiki:Babel-category-override
$wgBabelAutoCreate
Whether to auto-create categories.

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 ""
The format of the link's target from the language code. Set to the empty string to not link the language code.
MediaWiki:Babel-autocreate-user "Babel AutoCreate"
Username to be used for auto-creation of Babel related categories
MediaWiki:babel-autocreate-text-levels "Benutzer in dieser Kategorie haben Kenntnisse der Stufe $1 in der Sprache $2. $4"
Text, der in die automatisch erstellten Kategorien für die verschiedenen Sprachstufen eingefügt wird. Sie müssen dies ändern, wenn Sie möchten, dass sie in der Hauptkategorie der jeweiligen Sprache ($wgBabelMainCategory) automatisch kategorisiert werden.
MediaWiki:babel-autocreate-text-main "Benutzer in dieser Kategorie haben Kenntnisse der Sprache $1. $3"
Text, der in die automatisch erstellten Kategorien für Nicht-Ebenen-Kategorien eingefügt wird. Sie müssen dies ändern, wenn Sie möchten, dass sie automatisch in einer übergeordneten Kategorie für alle Sprachen kategorisiert werden.
MediaWiki:babel "Babel – Benutzerinformationen"
The header of the babel box. Set to - to not display a header.
MediaWiki:babel-url "Project:Babel"
The page name where information on the babel extension can be found. Set to - to display no link in the header.
MediaWiki:Babel-footer "Benutzer nach Sprache"
The footer of the babel box. Set to - to not display a footer.
MediaWiki:babel-footer-url " :Category:Babel - Benutzer nach Sprache"
The page to link to in the footer of the babel box
MediaWiki:Babel-category-override "$1"
Overrides any automatically-generated Babel categories. Parameters:
$1 = the category that would be generated normally.
$2 = the language code
$3 = the babel level.
Any categories overridden using this method will not be auto-created to reduce the risk of vandalism or mistaken edits to that page.

API

meta=babel (bab)

(main | query | babel)

Get information about what languages the user knows

Specific parameter:
Other general parameters are available.
babuser

User to get information about

This parameter is required.
Type: user, by any of username, IP, Temporary user, IP range and interwiki name (e.g. "prefix>ExampleName")
Example:
Get the Babel information for user Example
api.php?action=query&meta=babel&babuser=Example [open in sandbox]