Зміст
Плагін Переклад
Compatible with DokuWiki
2007-06-26+
The missing download url means that this extension cannot be installed via the Extension Manager. Please see Publishing a Plugin on dokuwiki.org. Recommended are public repository hosts like GitHub, GitLab or Bitbucket.
This extension has not been updated in over 2 years. It may no longer be maintained or supported and may have compatibility issues.
This extension is not in the 'plugin' or 'template' namespace and is therefore ignored.
Similar to autotranslation, multilingual, nsrelation, translate, translation2, translation3, uilanguage, versionswitch
Needed for datagraph, deeplautotranslate, localization, whennotfound
Цей плагін показує список доступних перекладів для сторінки. Він дуже простий і побудований з урахуванням потреб www.dokuwiki.org і використовується тут для зусилль з перекладу документації. Є кілька обмежень:
- окремі простори імен використовуються для зберігання перекладів
- зконфігурована мова за замовчуванням використовується в якості основної мови
- не використовується простір імен для основного мови
- перекладені сторінки повинні мати те ж саме ім'я сторінки, як і сторінка з основною мовою
Скачати
Використовуйте цей URL, щоб скачати файл вручну або за допомогою менеджера плагинів:
Зміни
- Виникла помилка під час отримання RSS-стрічки: http://dev.splitbrain.org/darcsweb/darcsweb.cgi?r=dwplugins/translation;a=rss
Інсталяція
- Скачайте та встановіть плагін через менеджер плагинів
- Налаштуйте його через Менеджер конфігурації
- Додайте наступний код у файл
main.php
вашого шаблону (або помістіть його у файлdokuwiki\lib\tpl\default\pageheader.html
шаблону за замовчуванням)
<?php $translation = &plugin_load('syntax','translation'); echo $translation->_showTranslations(); ?>
Примітка: додайте цей кусок коду не у верхню або нижню частину main.php
, але замість цього десь посередині, де він буде мати кращі оптичні враження. Ви повинні трохи експериментувати, щоб знайти найкраще місце.
Якщо у вас встановлено кілька тем або скинів, потрібно додати цей код у кожний main.php
, щоб дозволити плагін Переклад у кожному скині.
Конфігурація
Є кілька опцій конфігурації, всі доступні через менеджер конфігурації.
Ви можете визначити простір імен, в якому має бути зроблено переклад (використовується тут для того, щоб включити плагін тільки в просторі імен вікі
). Це необов'язково, якщо залишити порожнім, це включить плагін для всієї вікі.
За аналогією з параметром вище можна також встановити регулярний вираз, який буде зпівставлятися з назвами сторінок. Коли вони збігаються, перемикач перекладів не буде відображатися. Це може бути використано, щобя автоматично виключити деякі простори імен з перекладу. Регулярний вираз застосовується для повного імені сторінки, яке починається з двокрапки.
Вам потрібно налаштувати мови, на які ви хочете перекладати ваші сторінки. Відокремте кожну мову комою або проміжком. Мова за замовчуванням буде додана автоматично, так що не додавайте її сюди.
Ви можете вибрати (необов'язково), щоб плагін перекладав також весь інтерфейс користувача DokuWiki, коли вибрана мова сторінки не є за замовчуванням. Просто включіть відповідну опцію.
Ви можете хотіти пояснити вашим користувачам, яким чином переклади працюють у вашій вікі. Щоб зробити цей опис легко доступним з селектору мови, введіть ім'я сторінки вашого опису у конфігурації.
Ручна конфігурація
Якщо ви не використовуєте Менеджер конфігурації і віддаєте перевагу налаштуванню вашої вікі шляхом редагування конфігураційних файлів, корисні рядки, які повинні бути додані до вашого файлу конфігурації local.php
, такі:
$conf['plugin']['translation']['translations'] = 'en,fr,de,it'; // доступні мови $conf['plugin']['translation']['translationns'] = 'wiki'; // простір імен, де активується переклад $conf['plugin']['translation']['skiptrans'] = '^:(plugin|template):'; // що пропустити (регулярний вираз) $conf['plugin']['translation']['translateui'] = 1; // перевести інтерфейс користувача вікі також $conf['plugin']['translation']['about'] = 'wiki:translation:about'; // сторінка з описом процесу перекладу для користувачів
Пропустіть свою мову за замовчуванням! Отже, якщо ваша DokuWiki починається з англійської, встановіть
$conf['plugin']['translation']['translations'] = 'fr,de,it'; // доступні мови
В іншому випадку меню мови покаже 'en' два рази.
Використання
Плагин працює автоматично за допомогою визову з шаблону (дивись інсталяція), але ви можете вимкнути його для певної сторінки, додавши наступний код у верхній частині сторінки:
~~NOTRANS~~
Переклади
Англійський (оригінал від 2008-08-12)
lib/plugins/translation/lang/en/lang.php
<?php $lang['translations'] = 'Translations of this page';
lib/plugins/translation/lang/en/settings.php
<?php /** * English language file * * @author Andreas Gohr <andi@splitbrain.org> */ $lang['translations'] = "Space separated list of translation languages (ISO codes). Do not include the default language"; $lang['translationns'] = "If you only want translations below a certain namespace, put it here."; $lang['skiptrans'] = "When the pagename matches this regular expression, don't show the translation menu."; $lang['translateui'] = "Should the language of the user interface be switched in foreign language namespaces, too?"; $lang['about'] = "Enter a pagename here where the translation feature is explained for your users. It will be linked from the language selector.";
Український
lib/plugins/translation/lang/uk/lang.php
<?php /** * Ukrainian language file * * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) * @author DocuWiki's Community (http://www.dokuwiki.org/) */ $lang['translations'] = 'Переклади цієї сторінки';
lib/plugins/translation/lang/uk/settings.php
/** * Ukrainian language file * * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) * @author DocuWiki's Community (http://www.dokuwiki.org/) */ $lang['translations'] = "Розділений проміжками список мов перекладу (коди ISO). Не включає мову за замовчуванням"; $lang['translationns'] = "Якщо ви потребуєте переклади тільки нижче рівня певного простору імен, вкажіть його тут."; $lang['skiptrans'] = "Не показувати меню перекладів, коли назва сторінки збігається з цим регулярним виразом."; $lang['translateui'] = "Чи слід мову інтерфейсу користувача теж перемикати у простірі імен іноземної мови?"; $lang['about'] = "Введіть тут назву сторінки, де особливості перекладу пояснені для ваших користувачів. Ця сторінка буде пов'язана з селектором мов.";
Російський
lib/plugins/translation/lang/ru/lang.php
<?php /** * Russian language file * * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) * @author DocuWiki's Community (http://www.dokuwiki.org/) */ $lang['translations'] = 'Переводы этой страницы';
lib/plugins/translation/lang/ru/settings.php
<?php /** * Russian language file * * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) * @author DocuWiki's Community (http://www.dokuwiki.org/) */ $lang['translations'] = "Разделенный пробелами список языков перевода (коды ISO). Не включает язык по умолчанию"; $lang['translationns'] = "Если вам нужны переводы только ниже уровня определенного пространства имен, укажите его здесь."; $lang['skiptrans'] = "Не показывать меню переводов, когда название страницы совпадает с этим регулярным выражением."; $lang['translateui'] = "Следует ли язык интерфейса пользователя тоже переключать в пространстве имен иностранного языка?"; $lang['about'] = "Введите здесь название страницы, где особенности перевода объяснены для ваших пользователей. Эта страница будет связана с селектором языков.";