Überblick
Übersicht über die generaltranslation‑Bibliothek
Einführung
Die generaltranslation‑Bibliothek ist GTs zentrale i18n‑Bibliothek und enthält Hilfsfunktionen und Klassen für Übersetzung und Formatierung.
Sie wird am häufigsten mit Framework‑Paketen wie gt-next und gt-react verwendet, kann jedoch auch als eigenständige Bibliothek eingesetzt werden.
import { GT } from 'generaltranslation';
const gt = new GT({
apiKey: 'your-api-key',
projectId: 'your-project-id',
sourceLocale: 'en',
targetLocale: 'es',
});
// Inhalte übersetzen
const result = await gt.translate('Hello, world!', 'es');
// „¡Hola, mundo!"
// Zahlen, Daten und Währungen formatieren
const formattedPrice = gt.formatCurrency(29.99, 'USD');
const formattedDate = gt.formatDateTime(new Date());
// „$29.99"
// „9/25/2025"
// Mit Locales arbeiten
const localeProps = gt.getLocaleProperties('fr-CA');
const isValid = gt.isValidLocale('de');
// { language: „fr", region: „CA", ... }
// trueInstallation
npm install generaltranslationyarn add generaltranslationbun add generaltranslationpnpm add generaltranslationBeispiele
Es gibt zwei Hauptarten der Übersetzung: String-Übersetzung und Datei-Übersetzung.
Einrichtung
Um Übersetzungen zu aktivieren, müssen Sie eine Projekt-ID und einen API-Schlüssel angeben.
Weitere Informationen finden Sie zur Methode constructor.
const gt = new GT({
apiKey: 'your-api-key',
projectId: 'your-project-id',
targetLocale: 'es',
});Zeichenkettenübersetzung
Weitere Informationen findest du unter der Methode translate.
try {
const result = await gt.translate('Hello, world!');
console.log(result); // "¡Hola, mundo!"
} catch (error) {
console.error('Übersetzung fehlgeschlagen:', error.message);
}Dateiübersetzung
Files werden als Jobs übersetzt. Sie starten einen Job, indem Sie eine Datei hochladen. Das Hochladen vieler Files startet viele Jobs.
Weitere Informationen finden Sie in den Methoden uploadSourceFiles
und checkFileTranslations.
// Hochzuladende Dateien
const files = [
{
source: {
fileName: 'src/components/Button.tsx',
fileFormat: 'TSX',
locale: 'en',
content: '...',
},
},
];
// Quelldateien hochladen
await gt.uploadSourceFiles(files);Inhaltsverzeichnis
GT-Klasse
Hauptklasse für Übersetzungs‑ und Locale‑Funktionalität:
- Constructor - GT-Instanz mit Konfiguration initialisieren
- setConfig - Konfiguration der GT-Instanz aktualisieren
Übersetzungsmethoden
- translate - Zentrale Übersetzungsfunktion
- translateMany - Batch-Übersetzung
- setupProject - Projektinitialisierung
- shouldSetupProject - Prüfen, ob die Projekteinrichtung erforderlich ist
- checkSetupStatus - Projekteinrichtung überprüfen
- getProjectData - Projektinformationen abrufen
- uploadSourceFiles - files für die Übersetzung hochladen
- enqueueFiles - files zur Verarbeitung in die Warteschlange stellen
- checkFileTranslations - Übersetzungsstatus prüfen
- downloadTranslatedFile - Einzelne übersetzte file herunterladen
- downloadFileBatch - Mehrere übersetzte files herunterladen
- querySourceFile - Informationen zur Quelldatei abfragen
Formatierungsmethoden
- formatMessage - Internationalisierte Textformatierung
- formatNum - Zahlenformatierung
- formatDateTime - Datums- und Uhrzeitformatierung
Locale-Methoden
- getLocaleName - Anzeigename der locale
- getLocaleProperties - Umfassende Informationen zur locale
- getLocaleDirection - Textrichtung für die locale
- getLocaleEmoji - Flaggen-emoji für die locale
- getRegionProperties - Regionsinformationen und -eigenschaften
- isValidLocale - locale code validieren
- resolveAliasLocale - Kanonische locales in Aliase umwandeln
- resolveCanonicalLocale - Alias-locales in kanonische Form umwandeln
- standardizeLocale - Formatierung des locale code standardisieren
- isSameDialect - Prüfen, ob locales denselben Dialekt darstellen
- isSameLanguage - Prüfen, ob locales dieselbe Sprache darstellen
- isSupersetLocale - Beziehungen in der locale-Hierarchie prüfen
- determineLocale - Beste passende locale aus Präferenzen ermitteln
- requiresTranslation - Ermitteln, ob eine Übersetzung erforderlich ist
Hilfsfunktionen
Formatierungsfunktionen
- formatMessage - Eigenständige Textformatierung
- formatNum - Eigenständige Zahlenformatierung
- formatDateTime - Eigenständige Datums-/Zeitformatierung
Locale-Funktionen
- getLocaleName - Eigenständiges Utility für Locale-Namen
- getLocaleProperties - Eigenständiges Utility für Locale-Eigenschaften
- getLocaleDirection - Eigenständiges Utility für Schreibrichtung
- getLocaleEmoji - Eigenständiges Emoji-Utility
- getRegionProperties - Eigenständiges Utility für Regionseigenschaften
- isValidLocale - Eigenständige Locale-Validierung
- resolveAliasLocale - Eigenständige Auflösung von Alias-Locales
- standardizeLocale - Eigenständige Standardisierung von Locales
- isSameDialect - Eigenständiger Dialektvergleich
- isSameLanguage - Eigenständiger Sprachvergleich
- isSupersetLocale - Eigenständige Prüfung der Locale-Hierarchie
- determineLocale - Eigenständige Locale-Negotiation
- requiresTranslation - Eigenständige Prüfung des Übersetzungsbedarfs
Typen und Interfaces
TypeScript-Definitionen:
- GTConstructorParams - Konfigurationsoptionen
- LocaleProperties - Umfassende Informationen zur locale
- TranslationResult - Übersetzungsantwort-Typen
- TranslateManyResult - Batch-Übersetzungsantwort
- FileToTranslate - Konfiguration der Dateiübersetzung
- EnqueueFilesOptions - Optionen für die Datei-Queue
- Entry - Struktur des Übersetzungs-Entry
- EntryMetadata - Entry-Metadaten
- Content - Content-Typdefinitionen
- Variable - Struktur der Variable
- VariableType - Variable-Typdefinitionen
- JsxElement - JSX-Elementtyp
- JsxChild - JSX-Kindtyp
- JsxChildren - JSX-Kindertyp
- DataFormat - DataFormat-Spezifikationen
- CustomMapping - CustomMapping-Konfiguration
Nächste Schritte
- Erste Schritte mit der GT-Klasse
- Übersetzungsmethoden erkunden
- Mehr über Locale-Hilfsfunktionen erfahren
- Formatierungsoptionen ansehen
- Eigenständige Funktionen durchsuchen
Für frameworkspezifische Nutzung siehe die Dokumentation zu Next.js oder React.
Wie ist diese Anleitung?