Help:Extension:Translate/Translation aids/cs

Překladatelská nápověda (angl. Translation aids) je soubor modulů, které v průběhu překladu nabízejí překladateli další informace ke zprávě. Jako jsou návrhy na překlad zprávy, ze strojového překladu nebo překladové paměti. Dokumentace ke zprávě, nebo i tak základní věc, jakou je definice zprávy - textu, který se má přeložit.

Mezi informacemi, které jsou součástí souboru zpráv a těmi, které poskytuje překladatelská nápověda je určitý přesah, ale v podstatě se dá říct, že v souboru zpráv jsou uloženy pouze informace, které jsou nezbytně nutné pro zpracování dobrého překladu: definice zpráv, jejich překlady, informace o stavu překladu a záznam o posledním překladateli (protože revidovat můžete pouze zprávy, které překládal někdo jiný) atd.

Rozšíření Translate obsahuje několik tříd, které během překladu dodávají pomocné informace. Každá z nich je samostatný modul třídy TranslationAid (třída co se stará o překladatelskou nápovědu), který má implementovanou metodu s názvem, vracející vyžádaná data ve strukturovaném formátu (vnořená pole). Moduly lze volat přímo z PHP kódu, nebo přes WebAPI.

Jak použít překladatelskou nápovědu v MediaWiki
Toto je jednoduchý příklad, jak lze získat dokumentaci ke zprávě, je-li dostupná.

Jak volat překladatelskou nápovědu přes API
As already seen above, translation aids are available via a WebAPI, which is using the MediaWiki WebAPI framework. Getting translation aids is as simple as doing HTTP GET for the URL http://translatewiki.net/w/api.php?action=translationaids&title=MediaWiki%3AJan%2Fde. It provides various different formats, but JSON and XML are the most popular ones. This API does not need authentication, but some translation aids like "inotherlanguages" uses user preferences to determine which languages to use. To use that aid you should log in first, as described in the MediaWiki WebAPI documentation.

Data, která se vrátí mohou vypadat takto (formát json, upravený do čitelnější podoby): Každý dotaz na překladatelskou nápovědu musí obsahovat klíč (bez něj se vrátí jen oznámení o chybě), to lze na straně PHP kódu ošetřit výjimkou. JavaScript to má ošetřeno tak, že používá jako výchozí hodnotou klíče používá řetězec "error". Ve výše uvedeném ukázkovém výpisu si toho můžete povšimnout tohoto indexu u pole, kde zpráva pod tímto klíčem oznamuje, že rozdílový soubor není k dispozici, protože v definici zprávy nenastaly od posledního překladu žádné změny.

Příklad použití v JavaScriptu
Následující kód dělá totéž, ale přes JavaScript. Není-li řečeno jinak, vrací API veškerý dostupný obsah překladatelské nápovědy. Parametrem  si však můžeme vybrat jen tu, která nás zajímá. V následujícím příkladu se používá jsonp, abychom přes něj obešli omezení na přecházení mezi portály. Přes jsonp nelze zapisovat, takže pokud budete chtít pracovat s API přes JavaScript, musíte buď: použít proxy; spouštět JavaScript skript na stejném hostiteli jako běží API; nebo použít mimo něj na straně cílové stránky pomocnou aplikaci, která však v tomto případě není implementovaná.

Pravidla pojmenování a návratové hodnoty
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.