Help:Extension:Translate/Translation aids/da

Oversættelses-hjælpemoduler (eller oversættelses-hjælpere) er moduler, der giver nyttig og nødvendig information til oversætteren ved oversættelse. Forskellige hjælpemoduler kan give forslag fra oversættelseshukommelsen 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ælpemodulerne, 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ælpemoduler i MediaWiki
Simpelt eksempel på at få beskeddokumentationen fra en besked, hvis den er tilgængelig.

Sådan bruges oversættelses-hjælpemodul API
Som allerede vist ovenfor er oversættelses-hjælpemoduler tilgængelige via en WebAPI, der bruger MediaWiki WebAPI rammerne. At få oversættelses-hjælpemoduler 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ælpemoduler som "inotherlanguages​​" benytter brugerindstillinger til at bestemme, hvilke sprog der skal bruges. For at bruge dette hjælpemodul 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): Hvert anmodet hjælpemodul er garanteret at have en nøgle her (indtil anmodningen ynkelig mislykkes), men mens vi bruger undtagelser på PHP siden, kan hvert hjælpemodul på JavaScript siden have nøglen "fejl" sat, med fejlmeddelelsen angivet som værdi. Du kan se et eksempel på dette ovenfor med. Det signalerer, at diff ikke kan vises, fordi der ikke har været nogen ændringer i definitionen siden sidste oversættelse.

JavaScript eksempel
Her er det samme for JavaScript. Som standard returnerer API alle hjælpemoduler, men du kan anmode om specifikke moduler med  parameter. I eksemplet bruger vi JSONP til at omgå krydshenvisnings anmodning begrænsninger. Vær opmærksom på, at du ikke kan udføre nogen skrivbare handlinger med JSONP, så hvis du bruger denne API fra JavaScript skal du: have en proxy, køre scriptet hos den samme vært, eller at indlæse en lille hjælper (endnu ikke implementeret) fra målsitet.

Navngivningskonventioner og returværdier
Hver oversættelses-hjælpemodul har en entydig streng identifikator. Identifikatorer bør undgå specialtegn, især dem, der ikke er gyldige i JavaScript identifikatorer, såsom  og.

Matrixen, der returneres af hvert oversættelses-hjælpemodul er op til udvikleren, men bør følge nogle generelle anbefalinger.

Hvis kun én tekstværdi returneres, skal den bruge  som feltets nøgle. Sprog bør angives i feltet. Brugere af disse data skal sikre, at i HTML og andre steder er teksten er afmærket korrekt med det givne sprog og retningsbestemt (ikke angivet her). Hvis der er HTML-output, bør det være tilgængelig med nøglen. Eksempler på dette er beskeddokumentation og diffs.

Forskellige former for oversættelsesforslag som maskinoversættelse og oversættelseshukommelser bør benytte disse nøgler, når de giver mening:


 * ,  og   (målsproget er underforstået det samme som oversættelsessproget)
 * : identifikator for den benyttede service
 * : værdi i intervallet [0,1], høj værdi betyder at forslagenes kvalitet er meget god.
 * : identifier of the service used
 * : value in range [0,1], higher value means that the quality of the suggestions is very good.

Bemærk: Ved returnering af matrix, skal du sætte  feltet til at indeholde et element navn. For maskinoversættelse og oversættelseshukommelse er det. Dette er bestemt af MediaWiki WebAPI rammerne. Det er synligt i XML formatet, men i JSON format er output blot en liste.

Liste med standard hjælpemoduler
[field] Betyder at returværdien er en liste. I PHP vil det være en matrix med numeriske indekser + en med nøgle, se ovenfor, hvorfor dette er nødvendigt.