Help:Extension:Translate/Translation aids/da

Oversættelses-hjælpemidler (eller oversættelses-hjælpere) er moduler, der giver nyttig og nødvendig information til oversætteren ved oversættelse. Forskellige hjælpemidler kan give forslag fra oversættelseshukommelse og maskinoversættelse, dokumentation om beskeden eller endda sådan en grundlæggende ting som beskeddefinitionen - den tekst, der skal oversættes.

Der er en vis overlapning mellem de data, som besked indsamling og hjælpemidlerne, men tommelfingerreglen er, at beskedindsamlingen kun giver information, der er absolut nødvendig for at præsentere en liste over beskeder: definition, oversættelse, status for oversættelse, sidste oversætter (fordi man kun kan gennemgå oversættelser foretaget af en anden) etc.

Translate kommer med mange hjælpe-klasser. Hver klasse, der udbygger TranslationAid klassen behøver kun at gennemføre en metode, der kaldes. Den skal returnere informationen i struktureret format (indlejrede matrixer). Disse moduler kaldes enten direkte fra PHP eller via WebAPI.

Sådan bruges oversættelses-hjælpemidler i MediaWiki
Simpelt eksempel på at få beskeddokumentationen fra en besked, hvis den er tilgængelig.

Sådan bruges oversættelses-hjælpemiddel API
Som allerede vist ovenfor er oversættelses-hjælpemidler tilgængelige via en WebAPI, der bruger MediaWiki WebAPI rammerne. At få oversættelses-hjælpemidler er lige så simpelt som at lave HTTP GET for URL'en http://translatewiki.net/w/api.php?action=translationaids&title=MediaWiki%3AJan%2Fde. Den giver forskellige formater, men JSON og XML er de mest populære. Denne API behøver ikke godkendelse, men nogle oversættelses-hjælpemidler som "inotherlanguages​​" benytter brugerindstillinger til at bestemme, hvilke sprog der skal bruges. For at bruge denne hjælpemiddel bør du logge ind først, som beskrevet i MediaWiki WebAPI dokumentationen.

De returnerede data skal se sådan ud (vist i smuk JSON format): Every requested aid is guaranteed to have a key here (until the request fails miserably), but while we use exceptions in the PHP side, in the JavaScript side each aid may have the key "error" set with the error message set as value. You can see an example of this above with. It signals that it cannot display a diff, because there have been no changes to the definition since last translation.

JavaScript example
Here is the same thing for JavaScript. By default the API returns all aids, but you can request specific ones with the  param. In the example we are using jsonp to work around cross site request limitations. Be aware that you cannot execute any write actions with jsonp, so if you are using this API from JavaScript you will need: to have a proxy; to run the script on the same host; or to load a little helper (not yet implemented) from the target site.

Naming conventions and return values
Each translation aid has a unique string identifier. Identifiers should avoid special characters, especially those which are not valid in JavaScript identifiers, like  and.

The array that is returned by each translation aid is up to the developer, but should follow some general recommendations.

If only one text value is returned, it should use  as the key of the field. Language should be provided in field. Users of this data should ensure that in HTML and elsewhere the text is tagged properly with the provided language and directionality (not provided here). If there is HTML output, it should be available with key. Examples of this are message documentation and diffs.

Various kinds of translation suggestions like machine translation and translation memories should use these keys when they make sense:


 * ,  and   (target language is implicitly the same as the language of the translation)
 * : identifier of the service used
 * : value in range [0,1], higher value means that the quality of the suggestions is very good.

Note: When returning arrays, you must set the  field to contain an element name. For machine translation and translation memory this is. This is mandated by the MediaWiki WebAPI framework. It is visible in the XML format, but in JSON format the output is just a list.

List of standard aids
[field] Means that the return value is a list. In PHP that means array with numerical indexes + one with key ; see above why this is needed.