Guida rapida
Guida rapida alla libreria generaltranslation
Panoramica
Questa guida ti accompagnerà attraverso le nozioni di base sull’uso della libreria generaltranslation. Tratteremo la traduzione di stringhe e di file.
Traduci la tua prima stringa
1. Recupera le variabili d'ambiente
Il primissimo passo è creare un GT_PROJECT_ID e una GT_API_KEY.
È completamente gratuito e ti dà accesso ai servizi di traduzione.
Vai alla pagina API Keys e fai clic su Create API Key.
Scegli un nome per la tua chiave API e fai clic su Create.

General Translation offre limiti gratuiti molto generosi per supportare progetti personali, sviluppatori indipendenti e la community.
2. Inizializza la classe GT
Inizializza la classe GT e passa in modo sicuro GT_PROJECT_ID e GT_API_KEY.
import { GT } from 'generaltranslation';
const gt = new GT({
projectId: 'your-project-id',
apiKey: 'your-api-key',
});3. Traduci la tua prima stringa
Chiama il metodo translate per tradurre una stringa.
Passa la stringa da tradurre e la locale di destinazione.
const { translation } = await gt.translate('Hello, world!', 'es'); // Spanish
console.log(translation); // "¡Hola, mundo!"Se vuoi cercare un codice locale, consulta la pagina delle locale supportate.
Traduci il tuo primo file
Questa guida presuppone che tu abbia già seguito i passaggi 1 e 2 della guida Traduci la tua prima stringa
e che tu disponga di GT_PROJECT_ID, GT_API_KEY e di un'istanza della classe GT.
Poniamo di voler tradurre un file chiamato en.json in spagnolo.
{
"hello": "Ciao",
"world": "Mondo"
}Per tradurre un file, segui questi quattro passaggi:
- Carica il file
- Metti il file in coda per la traduzione
- Verifica lo stato del file (opzionale)
- Scarica il file tradotto.
Perché non una sola chiamata?
In genere, si desidera tradurre molti file contemporaneamente. Suddividere il processo in quattro passaggi chiari offre agli utenti molta più flessibilità nell’uso dell’API.
1. Carica il file
Il caricamento restituisce un elenco di riferimenti ai file tramite il metodo uploadSourceFiles.
In questo modo puoi successivamente mettere in coda il file per la traduzione, verificarne lo stato e scaricare il file tradotto.
import fs from 'fs';
import path from 'path';
import { FileUpload } from 'generaltranslation';
// (i) Leggi il contenuto di un file
const filePath = path.join(process.cwd(), 'en.json');
const fileContents = fs.readFileSync(filePath, 'utf8');
// (ii) Formatta i contenuti del file
const fileUpload: FileUpload = {
content: fileContents,
fileName: filePath,
fileFormat: 'JSON',
locale: 'en',
};
const files = [ { source: fileUpload } ];
// (iii) Carica il file
const { uploadedFiles } = await gt.uploadSourceFiles(
files,
{
sourceLocale: 'en'
}
);Questo comando restituirà un elenco di riferimenti ai file:
[
{
fileId: '41726368696562616c64204d6342616c64792074686973206973206a6f6b652e',
versionId: '427269616e204c6f75206d6f7265206c696b65204c696f6e2042726f20686121',
fileName: '/Users/demo/en.json',
fileFormat: 'JSON'
}
]2. Metti in coda il file per la traduzione
Il passo successivo è selezionare le lingue di destinazione per la traduzione con il metodo enqueueFiles.
In questo caso, tradurremo in spagnolo.
const fileUploadRef = {
fileId: uploadedFiles[0].fileId,
versionId: uploadedFiles[0].versionId,
fileName: uploadedFiles[0].fileName,
fileFormat: uploadedFiles[0].fileFormat,
};
const enqueueResult = await gt.enqueueFiles(
[fileUploadRef],
{
sourceLocale: 'en',
targetLocales: ['es'],
});Questo comando restituirà un elenco di riferimenti ai file:
{
translations: [],
data: {
'41726368696562616c64204d6342616c64792074686973206973206a6f6b652e': {
fileName: '/Users/demo/en.json',
versionId: '427269616e204c6f75206d6f7265206c696b65204c696f6e2042726f20686121'
}
},
locales: [ 'es' ],
message: 'Creazione di 1 traduzione in corso.'
}3. Verificare lo stato del file
Bene, ora che il file è stato caricato, come facciamo a sapere quando è pronto per il download?
Possiamo usare il metodo checkFileTranslations per verificarne lo stato.
const status = await gt.checkFileTranslations([{
versionId: uploadedFiles[0].versionId,
fileName: uploadedFiles[0].fileName,
locale: 'es'
}]);Se il file è ancora in traduzione, non ci saranno traduzioni corrispondenti nell’output.
{
translations: [
{
locale: 'es',
metadata: {},
fileId: '41726368696562616c64204d6342616c64792074686973206973206a6f6b652e',
fileName: '/Users/demo/en.json',
versionId: '427269616e204c6f75206d6f7265206c696b65204c696f6e2042726f20686121',
id: 'skl44z0ieuvdcomw38zb5chv',
isReady: true,
downloadUrl: '/v2/project/translations/files/skl44z0ieuvdcomw38zb5chv/download'
}
]
}4. Scarica il file tradotto
Infine, possiamo scaricare il file tradotto con il metodo downloadTranslatedFile.
const { translation } = await gt.downloadTranslatedFile({
fileId: uploadedFiles[0].fileId,
locale: 'es',
versionId: uploadedFiles[0].versionId,
});Questo restituirà il contenuto del file tradotto:
{
"hello": "Ciao",
"world": "Mondo"
}Come valuti questa guida?