Translation: Difference between revisions
Line 114: | Line 114: | ||
# Ensure that the target language is correct. At the bottom of the page you will see List - Page - Review. Click Review. Return to the top of the page, and from All Outdated Translated Unreviewed select Unreviewed. | # Ensure that the target language is correct. At the bottom of the page you will see List - Page - Review. Click Review. Return to the top of the page, and from All Outdated Translated Unreviewed select Unreviewed. | ||
# Now review each translation unit. For each, you can either click the tick mark to mark it as reviewed, or you can click the slash to edit it and then mark as reviewed. | # Now review each translation unit. For each, you can either click the tick mark to mark it as reviewed, or you can click the slash to edit it and then mark as reviewed. | ||
# Return to Stuff-Pierre. You will see the option to view the translated page under Other Languages, just below the page title. | |||
==ContentTranslation== | ==ContentTranslation== |
Revision as of 21:49, 23 November 2020
This pages summarises how this wiki might be made multi-lingual, and the steps required to achieve that.
When creating a new page, please also create an associated Discussion page based on the one for this page.
Summary
The Restart Project has an aspiration to make this wiki available in as many different lanuages as possible. Mediawiki, the software on which it's based, has extensions to facilitate multi-lingual support and a translation workflow. These are examined in this page, both from a user's and an implementor's point of view.
For the moment, this page comprises a repository of knowledge and implementation suggestions or proposals, but once multilingual support is implemented it will be changed into or replaced by a multilingual and translation guide for users, and hopefully the first page to be translated into any language.
Safety
- There are no safety issues as such, except the risk that a safety warning might be mis-translated, altering its meaning or lessening its force.
Mediawiki Extensions
The MediaWiki Language Extension Bundle (MLEB) comprises 6 individual extensions covering various aspects of multi-lingual support:
- UniversalLanguageSelector is foundational to the other extensions comprising MLEB, and adds a language selector to wiki pages.
- Babel provides a set of categories by which a user can declare his/her language competencies, and a template to declare them.
- cldr gives language and currency names against ISO country codes.
- CleanChanges hides less important information in change histories by offering filtering by user and laguage code suffix.
- LocalisationUpdate allows for updating of localisations for MediaWiki messages at any time, without needing to upgrade the MediaWiki software.
- Translate provides the framework and workflow for the translation of content.
In addition to MLEB, ContentTranslation provides further facilities over and above Translate for the translation of content, typically for an entire page. (Further detail required.)
A further extension, TranslationNotifications, provides a means by which translators may sign up for notifications about translations within their competance, sent by a Translation Administrator.
The following sections deal with each of these in an order more in line with their visibility to users.
Translate
Translation lifecycle
A page follows thefollowing lifecycle:
- The page is created.
- Over a number of edits and possibly an extended timescale, the page settles to a fairly steady state with relatively few and infrequent changes.
- A Translation Administrator will prepare the page for translation (Special Pages under the Translation heading). This results in the entire page being wrapped in tags and breaking it into individual translation units, generally corresponding to single paragraphs and headings. This is initially done automatically, but the Translation Administrator should perform a sanity check. If it appears ok, s/he will click Publish.
- Under Special Pages - Page translation, the page will now appear under Pages proposed for translation. Against it will be a Mark for Translation link, which a Translation Administrator can click. The page is displayed, showing how it's been broken up into "translation units". If these seem reasonable the Translation Administrator can click Mark this version for Translation at the bottom of the page.
- Any user can then click Translate (Special Pages under Translation). First select a target language. By default, at the top of the page it will say Message Group: All, and will display all the translation units that need translating. Click on All to select a particular page instead. NB on Mediawiki, "Translate this page" appears at the top of pages marked for translation. How do we get that?
- Where translations were made by a user, a Translator can go into the same translation page and mark translations as reviewed.
- Changes may be made to the original source page. This will result in translations being marked as requiring update and a return to the previous step but one.
- At all stages, statistics are available showing the state, including % completion, of all translations.
Permissions
Objectives
All logged in users can edit pages, subject to review, and in the same way, all users should be able to contribute and edit transations.
The Editor group has special permission to approve edits, members of which need a good command of English and should be familiar with and able to identify with the conventions, philosopy and style of the wiki.
In the same way, the translator group members will need a professional or native command of the destination language, and will approve translations, ensuring that they are to a high standard.
Translation Administrators will decide which pages are ready for translation, and will prepare and mark them for translation. They need an overall view of the wiki and will guide translations at a strategic level. Typically, they will already be Editors. It's probably desirable (though not strictly necessary) that they have intermediate level proficiency in a language other than their own so as to understand the problems and pitfalls of translating technical text whist keeping it accessible.
Detailed permissions
Logged out: Can view pages and page source. Seems to allow Translation interface!
Autoconfirmed: Special:ImportTranslations enabled. Special:Translation enabled.
- Has permissions translate, translate-import.
- Can edit pages, and translate pages marked as for translation.
Editor:
- ... and can approve edits by autoconfirmed users.
Translator:
- ... and can review and approve translations by autoconfirmed users.
Translate-admin
- ... and can prepare and mark pages for translation.
Admin:
- Can do all the above.
Bureaucrat
- ... and can assign permissions.
Implementation
Worked example
The following users are set up, all with the same password: Norman: Autoconfirmed User
Graham: Translator, Editor
Henry: Translation Admin, Translator, Editor
Orientation
- Login as Norman. In the search bocx, search for Style Guide.
- Notice at the top of the page there is a box Other Languages, indicating which languages this page is available in. Against each is a symbol ranging from a small grey square meaning untranslated through to a 2x2 square in green meaning fully transated. Click francais to see the French version.
- Notice also at the top of the page against your logged-in user name it will say English. Click this to select another language for navigation and messages.
Translation Example
- Login as Graham. In the search box, type "just some stuff" and go to the page of that name. Click on Edit at the top of the page, select all the text and copy it to the clipboard.
- Search for page "stuff-pierre", replacing pierre with your name. Take the option to create such a page, paste the clipboard into it and save it. You now have your own page which you can try translating.
- Logout, and login as Henry (Translate Admin).
- Go to Special Pages, and under Translation at the bottom, select Prepare page for translation. Enter Stuff-pierre and click Prepare.
- You will see that a tag has been inserted at the start, and everything that needs to be translated is enclosed in ... tags. Check that this looks sensible, i.e. everything that needs to be translated is so enclosed and anything that shouldn't be (such as urls and wiki links) is excluded. Click the Publish button at the top.
- Look at the page history. You will see a change "Prepared the page for translation". If you wanted to, you could undo that change.
- Return to Special Pages, and under Translation, select Page Translation. You will be shown your page under Pages proposed for translation, and probably some others under Pages in translation. Under your page, click Mark for translation.
- You will see that each heading and paragraph is shown as a separate "translation unit", allowing it to be translated independently of other translation units. Click Mark this version for translation, at the bottom of the page.
- Under Special Pages - Translation, you will now see your page under Pages in Translation
- If you change your mind, you have the option to Remove the page from Translation, but if you change your mind back it seems to get in a muddle.
- Logout and login as Norman (an autoconfirmed user).
- Go to Special Pages, and under Translation, select Translate. Initially, you will be shown a list of all translation units in all pages. At the top, where it says Message group All, click All and select stuff-pierre.
- At the top of the page, where it says Translate to, select your target language.
- Each translation unit will be presented in its source language, with a box below in which to type your translation. You can go through them in sequence, or select any of your choice by clicking Edit to the right of the translation unit. After translating each translation unit, click Publish. You will be moved to the next. For some, it may give you a suggestion if the same text has been translated before.
- Continue translating a few translation units (or all of them if you like).
- Logout and login as Graham (Translator). Under Special Pages, select Translate. Select the page Stuff-pierre as before.
- Ensure that the target language is correct. At the bottom of the page you will see List - Page - Review. Click Review. Return to the top of the page, and from All Outdated Translated Unreviewed select Unreviewed.
- Now review each translation unit. For each, you can either click the tick mark to mark it as reviewed, or you can click the slash to edit it and then mark as reviewed.
- Return to Stuff-Pierre. You will see the option to view the translated page under Other Languages, just below the page title.
ContentTranslation
UniversalLanguageSelector
NB Doesn't seem to work reliably, Should also change content language.
Babel
This extensionallows you to declare your language proficiencies by including a template in you user page. The template has two effects: it defines a nicely formatted box to display to declare your proficiencies, and it makes you a member of appropriate language groups.
The template takes the form:
{{#babel: babelcode1 | babelcode2 | ... }}
Each babelcode declares a language proficiency in the form xx-n, where xx is a language code and n delclares a level of proficience as follows:
xx-0 | If you don't understand the language at all. |
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. |
For example:
{{#babel: en | fr-2 | de-0 }}
declares native English, intermediate French, and zero German.