Jump to content

Розширення:Babel

From mediawiki.org
This page is a translated version of the page Extension:Babel and the translation is 69% complete.
Outdated translations are marked like this.
Довідка про розширення MediaWiki
Babel
Статус релізу: стабільний
Реалізація Функція парсера
Опис Додає функцію парсеру, щоб інформувати інших користувачів про знання мови та класифікувати користувачів тих же рівнів і мов.
Автор(и) Robert Leverington (RobertLобговорення)
Найновіша версія Continuous updates
Compatibility policy Master maintains backward compatibility.
MediaWiki >= 1.41.0
Зміни в БД Так
Composer mediawiki/babel
Таблиці babel
Ліцензія GNU General Public License 2.0 or later
Завантажити Включено в комплект мовних розширень
Приклад Translatewiki.net
  • $wgBabelMainCategory
  • $wgBabelAutoCreate
  • $wgBabelDefaultLevel
  • $wgBabelCategorizeNamespaces
  • $wgBabelUseUserLanguage
  • $wgBabelCentralDb
  • $wgBabelCategoryNames
  • $wgBabelUseCommunityConfiguration
  • $wgBabelAllowOverride
Quarterly downloads 71 (Ranked 72nd)
Public wikis using 2,416 (Ranked 192nd)
Translate the Babel extension if it is available at translatewiki.net
Issues Open tasks · Report a bug

Розширення Babel додає функцію парсеру щоб замінити стару систему Babel, яка повністю покладалася на шаблони. Якщо вказано нерозпізнаний параметр мови, він побачить, чи існує існуючий шаблон з ім’ям, і додасть його.

У проєктах Вікімедіа іменник Вавилон (що стосується Вавилонської вежі) відноситься до текстів на сторінках користувачів, які допомагають багатомовному спілкуванню, полегшуючи зв’язок з кимось, хто розмовляє певною мовою. Ідея виникла на Wikimedia Commons, а також була реалізована в багатьох інших вікі.

Встановлення

  • Завантажте і розмістіть файли в каталозі з назвою Babel у вашій extensions/ папці.
    Розробники та автори коду повинні замість цього встановити розширення з Git, використовуючи:cd extensions/
    git clone https://gerrit.wikimedia.org/r/mediawiki/extensions/Babel
  • Додайте такий код унизу вашого файлу LocalSettings.php :
    wfLoadExtension( 'Babel' );
    
  • Запустіть скрипт оновлення, який автоматично створить необхідні таблиці бази даних, які потрібні цьому розширенню.
  • Налаштуйте як вимагається.
  • Yes Готово – Перейдіть до Special:Version вашої вікі, щоб переконатися, що розширення встановлено успішно.
  • CSS розташований у файлі resources/ext.babel.css. Ви можете змінити стиль за бажанням, перевизначивши їх на сторінці MediaWiki:Common.css.
  • Якщо знайдено розширення CLDR , назви мов беруться з нього (де переклади недоступні), інакше використовуються вбудовані назви мов MediaWiki та англійська мова за замовчуванням.

Використання

Синтаксис функції парсеру #babel виглядає наступним чином:

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

Додайте один із наступних кодів для кожної мови, яку ви розмовляєте чи розумієте, відокремлюючись від |, де xx – це код мови MediaWiki, код ISO 639-1, або код ISO 639-3 для цієї мови. Загальне використання кожного рівня коду таке:

xx-0
Якщо ви взагалі не розумієте мови.
xx-1
Базові здібності — достатньо для розуміння письмового матеріалу або простих питань цією мовою.
xx-2
Середня здатність — достатньо для редагування або обговорення.
xx-3
Розширений рівень — хоча ви можете писати цією мовою без проблем, можуть виникнути невеликі помилки.
xx-4
Рівень «майже рідний» — хоча це не ваша перша мова від народження, ваші здібності схожі на здібності носія мови.
xx-5
Професійне володіння.
xx або xx-N
Носії мови, які щодня користуються мовою та досконало володіють нею, включаючи розмовні мови та ідіоми.

Щоб включити будь-який інший шаблон, просто додайте назву шаблону, напр. додайте Користувач з Лондона, якщо ви хочете включити Template:Користувач з Лондона. Залежно від локальної конфігурації до імен шаблонів (наприклад User) можна додати префікс або суфікс. Це можна використовувати для обмеження вибору та зменшення довжини параметрів; наприклад, з Лондона може включати Template:Користувач з Лондона, якщо налаштовано таким чином.

Parameters

Щоб видалити верхній і нижній колонтитул, використовуйте plain=1 як перший параметр, напр. {{#babel: plain=1 | babelcode1 | babelcode2 | ... }}. Це полегшує використання babel з іншими юзербоксами.

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.

Конфігурація

Параметри конфігурації

Babel має шість параметрів конфігурації, які можна змінити в LocalSettings.php .

$wgBabelLanguageCodesCdb
(string) шлях до файлу бази даних мовного коду, за замовчуванням має бути достатньо.
$wgBabelLanguageNamesCdb
(string) шлях до файлу бази даних назв мови, за замовчуванням має бути достатньо.
$wgBabelCategoryNames
(масив рядкових або логічних, індексований рядками «1», «2», … «5», «N») де кожен запис є назвою категорії для рівня кваліфікації, зазначеного його індексом, можливі змінні елементи: %code% (код мови), %wikiname% (назва мови мовою вмісту вікі), та %nativename% (назва мови на її мові). Щоб вимкнути додавання категорії для певного рівня, встановіть відповідне значення false.
Наприклад:
$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',
];
використовуватиме такі категорії, як «Category:User en-0» і «Category:User fr-N». За замовчуванням просто «Category:Fr-N» і так далі.
$wgBabelMainCategory
(string) Назва основної (нерівневої) категорії для кожної мови, до якої додаються всі користувачі цієї мови. Установіть значення false, щоб вимкнути; за замовчуванням формат «Category:Fr». Він приймає той самий формат, що й $wgBabelCategoryNames вище. приклад:
$wgBabelMainCategory = 'User %code%';
$wgBabelDefaultLevel
(string) Рівнем можливостей за замовчуванням, який не вказано, має бути індекс від $wgBabelCategoryNames, тобто один із рядків «1», «2», … «5», «N». За замовчуванням — «N».
$wgBabelUseUserLanguage
(boolean) Чи використовувати мову інтерфейсу користувача для заголовка та нижнього колонтитула повідомлення. Якщо значення false (за замовчуванням), це буде мова вмісту сторінки. Це пояснюється тим, що використання мови інтерфейсу користувача може фрагментувати кеш аналізатора.
$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.

Системні повідомлення

За допомогою повідомлень простору назв MediaWiki також можна зробити кілька кастомізацій.

MediaWiki:babel-template "Template:User $1"
Формат назв шаблонів, коли вони включені.
MediaWiki:babel-portal ""
Формат цілі посилання з коду мови. Set to the empty string to not link the language code.
MediaWiki:Babel-autocreate-user "Babel AutoCreate"
Ім’я користувача для автоматичного створення пов’язаних з Babel категорій
MediaWiki:babel-autocreate-text-levels "Користувачі із цієї категорії вказали рівень знань $1 для мови $2."
Текст для вставки в автоматично створені категорії для різних мовних рівнів. Ви повинні змінити це, якщо хочете, щоб вони автоматично класифікувалися в основній категорії відповідної мови ($wgBabelMainCategory).
MediaWiki:babel-autocreate-text-main "Користувачі в цій категорії вказали знання мови $1."
Текст для вставки в автоматично створені категорії для нерівневих категорій. Ви повинні змінити це, якщо хочете, щоб вони автоматично класифікувалися в батьківській категорії для всіх мов.
MediaWiki:babel "Відомості про мови користувача (Вавилон)"
Заголовок вікна babel Set to - to not display a header.
MediaWiki:babel-url "Project:Вавилон"
Назва сторінки, на якій можна знайти інформацію про розширення babel Set to - to display no link in the header.
MediaWiki:Babel-footer "Користувачі за мовою"
Нижній колонтитул babel Set to - to not display a footer.
MediaWiki:babel-footer-url " :Category:Користувачі за мовою"
Сторінка, на яку потрібно посилатися в нижньому колонтитулі вікна babel
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]