Crowdins I-Kontekst fungerer vha. én linje JavaScript-uddrag og pseudosprogpakken. Den opretter en pseudosprogpakke baseret på lokaliseringsfilerne uploadet til projektet, der senere integreres i applikationen som et ekstra lokaliseringssprog.
Integrerede pseudosprog indeholder særlige identifikatorer i stedet for originalteksterne. Dvs., at når en app indstilles til det pågældende sprog, konverteres alle etiketter til særlige identifikatorer. Javascript finder og erstatter disse identifikatorer med redigerbare etiketter. Web-appens I-Kontekst siden vil derfor ligne applikationen med den eneste forskel, at oversættelige strenge nu er redigerbare.
Oversættelser foretages direkte i appen uden behov for at åbne Redigeringsværktøjet. En forenklet version af Redigeringsværktøjet vises med al funktionalitet (TM, maskinoversættelse, godkendelse/stemmeindstilling, kommentarer, udtryk) tilgængelig. Det er derfor lettere at foretage og revidere oversættelser, da oversættere kan se dem i en reel kontekst.
Der er to almindelige metoder til integration af Crowdins I-Kontekst i din applikation:
Aftestnings- eller oversættelsesmiljø
Er der ingen planer om at invitere slutbrugere til at hjælpe med oversættelse eller at bruge en “oversættelsestilstand”, vil produktionsapplikationsintegration af I-Kontekst i et aftestningsmiljø eller et dedikerede oversættelsesapp-miljø ville være en god løsning.
Produktionsmiljø
I-Kontekst kræver ingen kodeændringer i applikationen, så den kan bruges selv i produktion. Hvordan det aktiveres, og hvilket brugersegment, der kan bruge det, afgør man selv. De mest almindelige anvendelsesscenarier er flg.:
Følg integrationsopsætningsguiden i Crowdin-projektet for at opsætte I-Kontekst. Guiden kan findes i venstre panel i projektet under Værktøjer > I-Kontekst.
Når integrationen er oprettet, og applikationen er genopfrisket, bør invitationsdialogen og Crowdin-indlogningsfeltet blive vist.
Disse parametre kan føjes til _jipt
-datasættet i opsætningsuddraget.
_jipt.push(['preload_texts', true]);
Accelererer dynamisk indholdsvisning i I-Kontekst værktøjet ved at forudindlæse alle kildestrenge. Auto-deaktiveret i store projekter (5.000+ strenge). Gyldigt input er: true, false.
_jipt.push(['touch_optimized', true]);
Indstillingen er som standard aktiveret på touch-skærme og gør oversættelsesknappen ud for hver oversættelige streng permanent synlige i stedet for alene mus-over visning. Gyldigt input er: true, false.
_jipt.push(['before_commit', function(source, translation, context, language_code) { return status_obj; }]);
Funktion til forslagsvalidering, inden det comittes.
Parametre | |
source | Kildetekst |
translation | Oversættelsestekst |
context | Kildestrengskontekst |
language_code | Målsprogskode (sprogkoder) |
Returværdier | |
status_obj | Objekt. status_obj.status kan være "ok", "fejl" eller "korrigeret". I tilfælde af fejl, indeholder status_obj.message fejlbeskrivelsen. Når status er "korrigeret", indeholder status_obj.korrektion den korrigerede oversættelse |
_jipt.push(['before_dom_insert', function(text, node, attribute) { return 'text'; }]);
Funktion til at transformere strengen, før den indsættes i DOM.
Parametre | |
text | String til indsættelse |
node valgfri | DOM-element, hvori teksten skal indsættes. Kan udelades, hvis teksten ikke har et målelement (tekst i browserens pop-up'er) |
attribut valgfri | DOM-elementattribut, såfremt teksten er en del af attributten |
Returværdier | |
text | String til indsættelse |
false | Returnerer funktionen false, opdateres DOM ikke |
_jipt.push(['escape', function() { window.location.href = "http://app_domain.com"; }]);
Hvis defineret, kan brugerne lukke I-Kontekst overlejringen, hvis de ikke ønsker at oversætte. Implementér denne funktion på din side. Afhængigt af I-Kontekst-integrationsmetoden, skal den ændre appens sprog eller omdirigere fra oversættelsesmiljøet til produktionsappen.