Aller au contenu

Points d'extension

phil/translation-bundle

Ce qu'une application implémente, configure, remplace ou surcharge. Les segments, la mémoire et les glossaires sont ceux de phil/translation-memory, et les documents sont en UJO.

Ports écrits par l'application

Chacun est nommé par son identifiant de service dans la configuration. L'écran répond 404 tant que sources et policy ne sont pas réglés. Voir L'écran de traduction.

SourceDocuments

Phil\TranslationBundle\Application\SourceDocuments : trouve les documents à traduire (sources).

MéthodeContrat
find(string $document): ?SourceDocumentLe contenu UJO du document, sa langue et son titre, ou null pour un document qu'il ne connaît pas

TranslationPolicy

Phil\TranslationBundle\Application\TranslationPolicy : qui peut traduire et réviser, pour l'utilisateur courant (policy).

MéthodeContrat
canTranslate(string $document, LanguageTag $targetLanguage): boolVoir la page, écrire et proposer des cibles, les confirmer et les vider, exporter et importer ; voir les unités de la mémoire apprises de ce document
canReview(string $document, LanguageTag $targetLanguage): boolMarquer des cibles comme révisées, par l'écran ou par un fichier XLIFF importé ; supprimer des commentaires
canEditGlossary(LanguageTag $sourceLanguage, LanguageTag $targetLanguage): boolAjouter, changer et supprimer les termes de ce glossaire, l'exporter et l'importer

Translators

Phil\TranslationBundle\Application\Contract\Translators : qui est à l'écran, et comment chaque personne est remerciée (translators). Facultatif. Voir Commentaires et crédits.

MéthodeContrat
current(): ?stringL'identifiant de l'utilisateur courant, d'au plus 255 octets, conservé avec ce qu'il écrit ; null quand il est inconnu
credit(string $translator): ?stringLe nom sous lequel une personne est créditée en public ; null quand elle a demandé de ne pas l'être

MachineTranslator

Phil\TranslationBundle\Application\Contract\MachineTranslator : un service de traduction automatique, derrière un adaptateur qui porte son nom (machine_translation.translator). Facultatif, et désactivé par défaut. Voir Traduction automatique.

MéthodeContrat
name(): stringLe nom du service
translate(list<string> $sources, LanguageTag $sourceLanguage, LanguageTag $targetLanguage): list<string>Une cible par source, dans l'ordre

Inflector

Phil\TranslationMemory\Glossary\Contract\Inflector : les formes fléchies des termes d'un glossaire (inflector), venu de phil/translation-memory. Facultatif ; RegularPlurals est enregistré pour lui.

Stockages

SegmentRepository, TermRepository, Contract\CommentRepository et Phil\TranslationMemory\Memory\MemoryStore sont des alias des stockages que choisit store : Doctrine, ou la mémoire pour les tests. Une application les fait pointer vers ses propres services, le stockage de la mémoire étant indexé sur ses langues, son empreinte et sa longueur. Voir Stockage.

Configuration

OptionCe qu'elle étend
granularityDes segments par champ de bloc ou par phrase
prefill, min_score, max_suggestionsCe que propose la mémoire
layoutLe gabarit que l'écran étend, avec les blocs title et content : le gabarit de base de l'application, avec son application Stimulus
store, entity_managerL'endroit où les segments, les termes, les commentaires et la mémoire sont conservés
variantsLes variantes régionales qui héritent de leur parent

Voir Configuration.

Services et écran

PointComment
Traduire dans le codeTranslations, Glossaries et Comments, publics ; voir Traduire des documents
Les contrôles exécutésUn Checker donné à Translations comme dernier argument, dans la définition de service propre à l'application
Le crédit sur une page publiéeLa fonction Twig phil_translation_credits() et @PhilTranslation/credits.html.twig
Une interface d'administration EasyAdminTranslationAdmin::menuItems() ; voir Pages de glossaire
Recherches dans la mémoire propres à l'applicationPhil\TranslationMemory\Memory\TranslationMemory, public
L'apparence de l'écranLes classes sous <main class="phil-translation"> : progress, state state-<state>, terms, issues, suggestions et les autres