Crowdin In-Context tool allows to translate texts directly within the actual web application. In such a way, the best translation quality is maintained.
La localizzazione in contesto è legata al progetto reale creato in Crowdin, sotto cui i file traducibili sono archiviati.
Questo strumento rende tutti i testi nella web app modificabili. Inoltre, il processo di traduzione è visibile in tempo reale. Anche la parte dinamica dell’applicazione e le stringhe che contengono segnaposto possono essere tradotte in questo modo.
Crowdin Nel Contesto funziona con l’aiuto di una riga snippet in JavaScript ed il pacchetto pseudo-lingua. Crea il pacchetto pseudo-lingua in base ai file di localizzazione caricati al tuo progetto, che poi saranno integrati nella tua applicazione come lingua di localizzazione extra.
La pseudo-lingua integrata contiene alcuni identificatori speciali invece dei testi originali, di conseguenza quando modifica la lingua della tua app a questa, tutte le etichette sono convertite ad identificatori speciali. Javascript cerca questi identificatori e li rimpiazza con etichette modificabili. In tal modo, il traduttore non vede alcuna differenza tra l’app live e l’app con lo strumento In-Context di Crowdin integrato. Comunque, lo strumento definisce quale parte dell’app è traducibile e fornisce tutti i mezzi per far localizzare nel contesto al traduttore.
La traduzione è fatta sull’Editor di Crowdin regolare minimizzato con tutte le funzionalità fornite (TM, traduzione automatica, opzione approva/vota, commenti, termini). Dunque, è più facile revisionare le traduzioni per i proofreader ed assicurare la qualità.
There are two common approaches to integrate Crowdin In-Context with your application:
Segui passo dopo passo la configurazione dell’integrazione, che puoi trovare in Impostazioni Progetto, scheda In-Context.
Dopo il successo dell’integrazione e l’aggiornamento dell’app, dovresti vedere la finestra d’invito e la casella di accesso a Crowdin.
Puoi aggiungere questi parametri all’insieme _jipt
nello snippet di configurazione.
_jipt.push(['preload_texts', true]);
Speeds up dynamic content displaying within the In-Context tool by preloading all source strings. Automatically disabled for the large projects (5000+ strings). Acceptable values: true, false.
_jipt.push(['touch_optimized', true]);
This option is enabled on touchscreens by default and makes the translation button next to each translatable string permanently visible, as opposed to showing on hover. Acceptable values: true, false.
_jipt.push(['before_commit', function(source, translation, context, language_code) { return status_obj; }]);
Funzione per convalidare il suggerimento prima di inviare.
Parametri | |
fonte | Testo di origine |
traduzione | Testo di traduzione |
contesto | Contesto della stringa di origine |
language_code | Codice lingua di destinazione (codici lingua) |
Restituisci Valori | |
status_obj | Oggetto. Lo status_obj.status può essere "ok", "errore" o "corretto". In caso di errore, status_obj.message contiene la descrizione dell'errore. Quando lo status è "corretto", status_obj.correction contiene la traduzione corretta |
_jipt.push(['before_dom_insert', function(text, node, attribute) { return 'text'; }]);
Funzione per trasformare la stringa prima che sia inserita nel DOM.
Parametri | |
testo | Stringa per l'inserimento |
nodo opzionale | DOM element in which the text must be inserted. May be omitted if text does not have target element (text inside browser's pop-ups) |
attributo opzionale | Attributo dell'elemento DOM, se il testo è parte dell'attributo |
Restituisci Valori | |
testo | Stringa per l'inserimento |
false | Se la funzione restituisce false, DOM non sarà aggiornato |
_jipt.push(['escape', function() { window.location.href = "http://app_domain.com"; }]);
Se definito, gli utenti possono chiudere la sovrapposizione In-Context se non vogliono tradurre. Implementa questa funzione dalla tua parte. Deve cambiare la lingua dell’app o reindirizzare dall’ambiente di traduzione alla produzione dell’app, in base al metodo di integrazione In-Context.