i18ntk
Version:
i18n Tool Kit - Zero-dependency internationalization toolkit for setup, scanning, analysis, validation, auto translation, fixing, reporting, and runtime translation loading.
725 lines • 165 kB
JSON
{
"meta": {
"version": "3.1.2",
"updated": "07.05.2026"
},
"common": {
"welcome": "Willkommen",
"hello": "Hallo",
"goodbye": "Auf Wiedersehen",
"yes": "Ja",
"no": "NEIN",
"save": "Speichern",
"cancel": "Stornieren",
"delete": "Löschen",
"edit": "Bearbeiten",
"loading": "Laden...",
"offlineTitle": "Du bist offline",
"offlineMessage": "Bitte überprüfen Sie Ihre Internetverbindung",
"tryReconnect": "Versuchen Sie, die Verbindung wiederherzustellen",
"logout": "Abmelden",
"login": "Login",
"amount": "Menge",
"success": "Erfolg",
"error": "Fehler",
"warning": "Warnung",
"info": "Info:",
"debug": "Debuggen",
"progress": "Fortschritt:",
"remaining": "Übrig:",
"total": "Gesamt:",
"completed": "7. Erfolgreich abgeschlossen!",
"missing": "Fehlen",
"partial": "Teilweise",
"sameAsSource": "Gleich wie Quelle:",
"formatMismatch": "Formatkonflikt:",
"typeMismatch": "Typkonflikt:",
"structureMismatch": "Strukturinkongruenz:",
"invalidOption": "Ungültige Option",
"separator": "===============================================",
"initializationFailed": "❌ Initialisierung fehlgeschlagen: {error}",
"stackTrace": "Stacktrace: {stack}",
"pressEnterToContinue": "Drücken Sie die Eingabetaste, um fortzufahren...",
"pressEnterToReturn": "Drücken Sie die Eingabetaste, um zum Hauptmenü zurückzukehren...",
"stepCompleted": "Schritt '{stepName}' vollendet.",
"stepFailed": "Schritt '{stepName}' fehlgeschlagen.",
"runningStep": "Laufschritt: {stepName}",
"command": "Befehl: {command}",
"startingWorkflow": "Workflow wird gestartet...",
"workflowCompleted": "Workflow abgeschlossen.",
"checkReports": "Weitere Informationen finden Sie in den Berichten.",
"errorExecutingCommand": "Fehler beim Ausführen des Befehls: {error}",
"genericError": "❌ Fehler: {error}",
"errors": {
"errors": "Fehler:",
"genericError": "❌ Fehler: {error}",
"initializationFailed": "❌ Initialisierung fehlgeschlagen: {error}",
"initializationCancelled": "❌ Initialisierung vom Benutzer abgebrochen.",
"translationKeyNotFound": "Übersetzungsschlüssel nicht gefunden: {key}",
"sourceDirectoryNotFound": "Quellverzeichnis nicht gefunden: {directory}",
"configLoadingFailed": "Das Laden der Konfiguration ist fehlgeschlagen",
"invalidSourceDirectory": "Ungültiges Quellverzeichnis: {directory}",
"securityViolation": "Sicherheitsverletzung festgestellt",
"authenticationFailed": "Die Authentifizierung ist fehlgeschlagen",
"sourceEqualsI18nWarn": "⚠️ sourceDir entspricht i18nDir ({sourceDir}). Zurückfallen auf {fallback} zum Scannen von Quellen."
},
"errorGeneratingStatusSummary": "Fehler beim Generieren der Statuszusammenfassung: {error}",
"errorRunningDebugTool": "Fehler beim Ausführen des Debug-Tools '{displayName}': {error}",
"errorReadingDebugLogs": "Fehler beim Lesen der Debug-Protokolle: {error}",
"errorAnalyzingLogFile": "Fehler beim Analysieren der Protokolldatei: {error}",
"errorAnalyzingTranslationKeys": "Fehler bei der Analyse der Übersetzungsschlüssel: {error}",
"errorAnalyzingTranslationCompleteness": "Fehler bei der Analyse der Vollständigkeit der Übersetzung: {error}",
"analyzingTranslationCompleteness": "Analyse der Vollständigkeit der Übersetzung in allen Sprachen ...",
"i18nDirectoryNotFound": "⚠️ i18n-Verzeichnis nicht gefunden: {i18nDir}",
"translationCompletenessAnalysisFailed": "⚠️ Die Vollständigkeitsanalyse der Übersetzung ist fehlgeschlagen: {error}",
"failedToAnalyzeLanguage": "❌ Die Sprache konnte nicht analysiert werden {language}: {error}",
"errorReadingI18nDirectory": "❌ Fehler beim Lesen des i18n-Verzeichnisses:",
"languageCompletenessTitle": "📈 VOLLSTÄNDIGKEIT DER ÜBERSETZUNG NACH SPRACHE",
"errorAnalyzingTranslationFormat": "Fehler beim Analysieren des Übersetzungsformats: {error}",
"errorAnalyzingTranslationType": "Fehler beim Analysieren des Übersetzungstyps: {error}",
"errorAnalyzingTranslationStructure": "Fehler bei der Analyse der Übersetzungsstruktur: {error}",
"errorAnalyzingTranslationFormatMismatch": "Fehler bei der Analyse der Nichtübereinstimmung des Übersetzungsformats: {error}",
"errorAnalyzingTranslationTypeMismatch": "Fehler bei der Analyse der Nichtübereinstimmung des Übersetzungstyps: {error}",
"errorAnalyzingTranslationStructureMismatch": "Fehler bei der Analyse der Nichtübereinstimmung der Übersetzungsstruktur: {error}",
"errorAnalyzingTranslationSameAsSource": "Fehler bei der Analyse der mit der Quelle identischen Übersetzung: {error}",
"title": "Status",
"nextStep1": "1. Nutzungsanalyse prüfen:",
"nextStep2": "2. Übersetzungen validieren:",
"nextStep3": "3. Vollständigkeit analysieren:",
"nextStep4": "4. Vervollständigen Sie fehlende Übersetzungen:",
"nextStep5": "5. Zusammenfassenden Bericht erstellen:",
"nextStep6": "6. Übersetzungen überprüfen und abschließen:",
"generating": "Zusammenfassender Bericht wird erstellt...",
"review": "Übersetzungen überprüfen...",
"finalizing": "Finalisierung der Übersetzungen...",
"finalized": "Erfolgreich abgeschlossen!",
"warnings": "Warnungen:",
"completedKeys": "Ausgefüllte Schlüssel:",
"missingKeys": "Fehlende Schlüssel:",
"partialKeys": "Teilschlüssel:",
"home": "Heim",
"settings": "Einstellungen",
"startingSettings": "🎛️ Einstellungs-CLI starten...",
"confirm": "Bestätigen",
"errorExiting": "Fehler beim Beenden."
},
"errors": {
"invalidOption": "❌ Ungültige Option: {option}. Bitte versuchen Sie es erneut.",
"readlineClosed": "Der Eingabestream ist geschlossen; läuft im nicht-interaktiven Modus.",
"noPackageJson": "Keine package.json gefunden. Das i18n-Framework kann nicht automatisch erkannt werden.",
"noI18nDir": "Im Projektstammverzeichnis wurde kein i18n-Verzeichnis gefunden.",
"noI18nConfig": "Im Projektstammverzeichnis wurde keine i18n-Konfigurationsdatei gefunden.",
"errorReadingDebugLogs": "Fehler beim Lesen der Debug-Protokolle: {error}"
},
"scanner": {
"help_message": "Verwendung des I18n-Textscanners: Knoten i18ntk-scanner.js [Optionen] Optionen: --source-dir <dir> Zu scannendes Quellverzeichnis (Standard: ./src) --output <file> Ausgabedatei für Scanergebnisse (Standard: ./i18ntk-scanner-report.json) --framework <name> Framework zum Zielen (React, Vue, Angular, Vanilla) --patterns <patterns> Benutzerdefinierte Regex-Muster (durch Kommas getrennt) --include-tests Testdateien in den Scan einbeziehen --exclude-dirs <dirs> Auszuschließende Verzeichnisse (durch Kommas getrennt) --help Diese Hilfe anzeigen Beispiele: node i18ntk-scanner.js --source-dir=./src --framework=react node i18ntk-scanner.js --patterns 'console.log\\((.*?)\\)' --include-tests node i18ntk-scanner.js --output=./scan-results.json",
"help_options": {
"source_dir": "Quellverzeichnis zum Scannen nach i18n-Problemen",
"output_dir": "Verzeichnis für Scanberichte und Ergebnisse",
"framework": "Ziel-Framework (React, Vue, Angular, Vanilla)",
"patterns": "Benutzerdefinierte Regex-Muster zur Texterkennung",
"exclude": "Dateimuster, die vom Scan ausgeschlossen werden sollen",
"output_report": "Erstellen Sie einen detaillierten Scanbericht",
"min_length": "Mindesttextlänge, die bei der Übersetzung berücksichtigt werden muss",
"max_length": "Maximale Textlänge, die bei der Übersetzung berücksichtigt werden soll",
"include_tests": "Beziehen Sie Testdateien in den Scanvorgang ein"
},
"starting": "🔍 Textscanner für Framework starten: {framework}",
"sourceDirectory": "📁 Verzeichnis scannen: {sourceDir}",
"frameworkDetected": "🎯 Erkanntes Framework: {framework}",
"scanningFiles": "📊 Scannen {fileCount} Dateien...",
"foundTexts": "📝 Gefunden {textCount} Texte, die übersetzt werden müssen",
"generatingReport": "📊 Detaillierten Bericht erstellen...",
"reportSaved": "💾 Scanbericht gespeichert unter: {reportPath}",
"noTextsFound": "✅ Keine fest codierten englischen Texte gefunden",
"scanComplete": "🎉 Scan erfolgreich abgeschlossen!",
"analysisTitle": "🔍 ÜBERSETZUNGS-SCAN-ANALYSE",
"fileSummary": "📄 {file}: {count} Texte gefunden",
"textLocation": "📍Linie {line}: {text}",
"foundText": "Gefunden {count} mögliche hartcodierte Textinstanzen",
"context": "📝 Kontext: {context}",
"severity": "⚠️ Schweregrad: {severity}",
"recommendation": "💡 Empfehlung: {recommendation}",
"welcome": {
"title": "🎯 Willkommen beim Textscanner!",
"description": "Dieses Tool durchsucht Ihren Quellcode nach hartcodiertem englischen Text, der möglicherweise übersetzt werden muss."
},
"frameworkPrompt": {
"title": "🎯 Wählen Sie Framework aus",
"available": "Verfügbare Frameworks: React, Vue, Angular, Vanilla",
"description": "Geben Sie den Framework-Typ ein (oder drücken Sie die Eingabetaste für die automatische Erkennung):",
"input": "Rahmen:"
},
"directoryPrompt": {
"title": "📁 Wählen Sie das Quellverzeichnis",
"current": "Aktuelles Verzeichnis: {dir}",
"description": "Geben Sie das zu scannende Verzeichnis ein (oder drücken Sie die Eingabetaste, um das aktuelle Verzeichnis anzuzeigen):",
"input": "Verzeichnis:"
},
"options": {
"includeTests": "Testdateien einbinden?",
"excludeDirs": "Auszuschließende Verzeichnisse (durch Kommas getrennt):",
"customPatterns": "Benutzerdefinierte Muster, nach denen gesucht werden soll (Regex):"
},
"reportGenerated": "Scanbericht generiert: {path}"
},
"fixer": {
"help_message": "Verwendung des I18n-Übersetzungsfixers: node i18ntk-fixer.js [Optionen] Optionen: --source-dir <dir> Zu scannendes Quellverzeichnis (Standard: ./locales) --Sprachen <langs> Durch Kommas getrennte Liste der zu reparierenden Sprachen --markers <markers> Durch Kommas getrennte Markierungen, die als nicht übersetzt behandelt werden sollen --no-backup Automatische Backup-Erstellung überspringen --help Diese Hilfe anzeigen Beispiele: node i18ntk-fixer.js --sprachen de,fr node i18ntk-fixer.js --source-dir=./locales --markers NOT_TRANSLATED node i18ntk-fixer.js --no-backup",
"starting": "🚀 Übersetzungskorrektur für Sprachen starten: {languages}",
"sourceDirectory": "📁 Quellverzeichnis: {sourceDir}",
"sourceLanguage": "🔤 Quellsprache: {sourceLanguage}",
"markers": "🏷️ Zu reparierende Markierungen: {markers}",
"scanningLanguage": "📊 Scannen {language}...",
"noLanguages": "❌ Keine Sprachen zur Behebung angegeben.",
"allComplete": "🎉 Alle Übersetzungen sind bereits fertig!",
"fullReportSaved": "📊 Vollständiger Bericht gespeichert unter: {reportPath}",
"reviewReport": "Bitte lesen Sie den Bericht, bevor Sie fortfahren.",
"backupCreated": "💾 Backup erfolgreich erstellt.",
"applyingFixes": "🔄 Korrekturen anwenden...",
"fixingComplete": "✅ Übersetzungskorrektur abgeschlossen!",
"operationCancelled": "❌ Vorgang vom Benutzer abgebrochen.",
"analysisTitle": "🔍 ÜBERSETZUNGSBEHEBUNGSANALYSE",
"analysisSeparator": "===============================================",
"totalIssues": "Insgesamt gefundene Probleme: {totalIssues}",
"missingTranslations": "Fehlende Übersetzungen: {missing}",
"placeholderTranslations": "Platzhalterübersetzungen: {placeholder}",
"noIssues": "✅ Keine Probleme gefunden. Alle Übersetzungen sind vollständig.",
"detailedIssues": "📋 DETAILLIERTE PROBLEME:",
"detailedSeparator": "--------------------------------------------------",
"filePath": "📄 {file} → {path}",
"missingKey": "❌ FEHLT: {source} → {new}",
"placeholderKey": "⚠️ PLATZHALTER: „{target}\" → \"{new}\"",
"moreIssues": "... Und {count} weitere Probleme. Vollständige Details finden Sie in der Berichtsdatei.",
"confirmationTitle": "🤔 Möchten Sie mit diesen Korrekturen fortfahren?",
"confirmationOptions": "Optionen:",
"optionYes": "y – Ja, alle Korrekturen anwenden",
"optionNo": "n – Nein, Vorgang abbrechen",
"optionShow": "s – Detaillierte Probleme anzeigen",
"choicePrompt": "Ihre Wahl (j/n/s):",
"nonInteractiveMode": "⚡ Nicht-interaktiver Modus erkannt – Korrekturen automatisch anwenden ...",
"reportGenerated": "📊 Fixer-Bericht erstellt: {path}",
"summary": "Fixer-Zusammenfassung:",
"welcome": {
"title": "🎯 Willkommen beim Translation Fixer!",
"description": "Dieses Tool hilft Ihnen, fehlerhafte Übersetzungen und Platzhalter in Ihren Gebietsschemadateien zu reparieren."
},
"markerPrompt": {
"title": "🏷️ Konfigurieren Sie Platzhaltermarkierungen",
"description": "Geben Sie die Markierungen ein, die auf nicht übersetzten Text hinweisen (durch Kommas getrennt):",
"currentDefaults": "Standardmarkierungen: {markers}",
"input": "Markierungen (oder drücken Sie die Eingabetaste für Standardeinstellungen):"
},
"languagePrompt": {
"title": "🌍 Wählen Sie die zu reparierenden Sprachen aus",
"available": "Verfügbare Sprachen: {languages}",
"description": "Geben Sie die zu korrigierenden Sprachen ein (durch Kommas getrennt) oder drücken Sie die Eingabetaste für alle:",
"input": "Sprachen:",
"noLanguages": "Es wurden keine Sprachen zum Korrigieren gefunden."
},
"directoryPrompt": {
"title": "📁 Verzeichnis auswählen",
"current": "Aktuelles Verzeichnis: {dir}",
"description": "Geben Sie das Verzeichnis ein, das Ihre Gebietsschemadateien enthält (oder drücken Sie die Eingabetaste, um die aktuelle Datei anzuzeigen):",
"input": "Verzeichnis:"
},
"backupLocation": "Backup-Speicherort: {dir}",
"completed": "Reparatur abgeschlossen.",
"creatingBackup": "Backup erstellen in {dir}...",
"dryRunMode": "Trockenlaufmodus: {mode}",
"error": "Fixer fehlgeschlagen: {error}",
"fixing": "Festsetzung {language}...",
"foundLanguages": "Gefunden {count} Sprachen: {languages}",
"languageFixed": "{language}: behoben {fixed} Taste(n), übersprungen {skipped}.",
"running": "Übersetzungsfixer wird ausgeführt...",
"totalFixed": "Gesamtfest: {count}"
},
"autorun": {
"stepAnalyzeTranslations": "Übersetzungen analysieren",
"stepCompletedWithIcon": "✅ Abgeschlossen: {stepName}",
"stepValidateTranslations": "Übersetzungen validieren",
"stepRunning": "▶️ Schritt {stepNumber}/{totalSteps}: {stepName}",
"separator": "===============================================",
"stepFailed": "❌ Fehlgeschlagen: {stepName}",
"errorLabel": "Fehler",
"autoRunScriptTitle": "🧪 Auto-Run-Workflow",
"usageTitle": "Verwendung",
"runAllSteps": "Führen Sie Folgendes aus: Knoten i18ntk-autorun.js",
"configureSettingsFirst": "Konfiguration: i18ntk-config.json oder CLI-Flags",
"runSpecificSteps": "Verwenden Sie --steps=1,3 oder --list, um Schritte anzuzeigen",
"showHelp": "--help für weitere Informationen",
"examplesTitle": "Beispiele",
"configExample": "Knoten i18ntk-autorun.js --ui-sprache=zh",
"stepsExample1": "Knoten i18ntk-autorun.js --steps=analyze,validate",
"stepsExample2": "Knoten i18ntk-autorun.js --list",
"customSettingsConfiguration": "Benutzerdefinierte Autorun-Einstellungen",
"availableSteps": "Verfügbare Schritte",
"startingAutoRunWorkflow": "🚀 Autorun-Workflow starten...",
"workflowIncludesSteps": "Der Workflow umfasst {count} Schritte:",
"missingRequiredFile": "Fehlende erforderliche Datei: {file}",
"workflowStopped": "Der Workflow wurde aufgrund eines Fehlers gestoppt.",
"workflowCompleted": "🎉Arbeitsablauf abgeschlossen!",
"successfulSteps": "Erfolgreiche Schritte: {count}",
"failedSteps": "Fehlgeschlagene Schritte: {count}",
"stepInitializeProject": "Projekt initialisieren",
"stepCheckUsage": "Überprüfen Sie die Schlüsselverwendung",
"stepGenerateSummary": "Zusammenfassenden Bericht erstellen",
"runInitializationFirst": "Bitte führen Sie zuerst die Initialisierung durch.",
"initializationCheckPassed": "Initialisierungsprüfung bestanden.",
"runningStep": "Laufschritt: {stepName}",
"commandLabel": "Befehl: {command}",
"stepCompletedWithTime": "Schritt '{stepName}' abgeschlossen in {duration}MS.",
"stepCompleted": "Schritt '{stepName}' vollendet.",
"stepFailedWithError": "Schritt '{stepName}' ist mit folgendem Fehler fehlgeschlagen: {error}",
"requiredStepFailed": "Der erforderliche Schritt ist fehlgeschlagen. Stoppen des Workflows.",
"optionalStepFailed": "Der optionale Schritt ist fehlgeschlagen. Fortsetzung des Arbeitsablaufs.",
"stepRequired": "(Erforderlich)",
"stepOptional": "(Optional)",
"startingExecution": "Ausführung beginnt...",
"pressEnterToContinue": "Drücken Sie die Eingabetaste, um fortzufahren...",
"runningSelectedSteps": "Ausgewählte Schritte ausführen...",
"invalidStepNumber": "Ungültige Schrittnummer: {stepNum}",
"executionReport": "Ausführungsbericht:",
"requiredFailedSteps": "Erforderliche Schritte fehlgeschlagen: {count}",
"stepDetails": "Schrittdetails:",
"reportSavedTo": "Bericht gespeichert unter: {path}",
"overallStatusSuccess": "ERFOLG",
"overallStatusFailed": "FEHLGESCHLAGEN",
"overallStatus": "Gesamtstatus: {status}",
"pressEnterForDefaults": "Drücken Sie die Eingabetaste, um die Standardeinstellungen für jede Eingabeaufforderung zu verwenden.",
"sourceDirPrompt": "Geben Sie das Quellverzeichnis ein (Standard: {default}):",
"sourceLangPrompt": "Quellsprache eingeben (Standard: {default}):",
"targetLangsPrompt": "Geben Sie Zielsprachen ein (durch Kommas getrennt, Standard: {default}):",
"translationMarkerPrompt": "Übersetzungsmarkierung eingeben (Standard: {default}):",
"outputDirPrompt": "Geben Sie das Ausgabeverzeichnis für Berichte ein (Standard: {default}):",
"settingsUpdatedSuccessfully": "Einstellungen erfolgreich aktualisiert!",
"errorConfiguringSettings": "Fehler beim Konfigurieren der Einstellungen: {error}",
"configurationComplete": "Konfiguration abgeschlossen.",
"runAutoRunCommand": "Jetzt können Sie den Autorun-Befehl ausführen.",
"configurationFailed": "Konfiguration fehlgeschlagen: {error}",
"noValidStepNumbers": "Keine gültigen Schrittnummern angegeben.",
"autoRunFailed": "Autorun fehlgeschlagen: {error}",
"stepCompleteTranslations": "Vollständige Übersetzungen",
"stepAnalyzeSizing": "Analysieren Sie die Größe",
"stepCompletedIcon": "✅",
"stepRunningWithNumber": "[{stepNumber}/{totalSteps}] Schritt '{stepName}' läuft...",
"stepFailedIcon": "❌",
"translationLoadWarning": "Warnung: Konnte nicht geladen werden {lang} Übersetzungen",
"configReadError": "Fehler beim Lesen {file}"
},
"analyze": {
"help_message": "Verwendung des I18n-Übersetzungsanalysators: Knoten i18ntk-analyze.js [Optionen] Optionen: --source-dir <dir> Zu scannendes Quellverzeichnis (Standard: ./src) --i18n-dir <dir> I18n-Verzeichnis (Standard: ./src/locales) --output-report Detaillierten Bericht erstellen --output-dir <dir> Ausgabeverzeichnis für Berichte (Standard: ./reports) --help Diese Hilfe anzeigen Beispiele: node i18ntk-analyze.js --output-report node i18ntk-analyze.js --source-dir=./app --i18n-dir=./locales node i18ntk-analyze.js --output-dir=./analysis --output-report",
"source_directory": "📁 Quellverzeichnis: {sourceDir}",
"i18n_directory": "🌐 I18n-Verzeichnis: {i18nDir}",
"loading_translation_files": "📋 Übersetzungsdateien werden geladen...",
"sourceDirectoryLabel": "📁 Quellverzeichnis: {sourceDir}",
"sourceLanguageLabel": "🌍 Ausgangssprache: {sourceLanguage}",
"strictModeLabel": "⚙️ Strenger Modus: {mode}",
"found_translation_files_count": "✅ Gefunden {count} Übersetzungsdateien",
"analyzing_translations": "🔍 Übersetzungen analysieren...",
"analysis_completed_successfully": "🎉 Analyse erfolgreich abgeschlossen!",
"analysis_results": "📊 ANALYSE-ERGEBNISSE",
"language_analysis_stats": "{language}: {translatedKeys}/{totalKeys} ({percentage}% übersetzt)",
"sample_missing_keys": "Beispiel für fehlende Schlüssel:",
"missing_key": "- {key}",
"and_more_missing": "...Und {count} mehr.",
"sample_unused_keys": "Beispiel für unbenutzte Schlüssel:",
"unused_key": "- {key}",
"and_more_unused": "...Und {count} mehr.",
"recommendations": "📋 EMPFEHLUNGEN",
"add_missing_translations": "💡 Fügen Sie fehlende Übersetzungen hinzu, um die Abdeckung zu verbessern.",
"remove_unused_translations": "💡 Entfernen Sie nicht verwendete Übersetzungen, um Ihr Projekt sauber zu halten.",
"next_steps": "📋 NÄCHSTE SCHRITTE",
"review_analysis_results": "1. Überprüfen Sie die Analyseergebnisse in der Konsole oder im generierten Bericht.",
"run_with_output_report": "2. Führen Sie „--output-report“ aus, um einen detaillierten Bericht zu erhalten.",
"add_or_remove_translations": "3. Fügen Sie fehlende Übersetzungen hinzu oder entfernen Sie nicht verwendete.",
"rerun_analysis": "4. Führen Sie die Analyse erneut durch, um Verbesserungen zu überprüfen.",
"analysis_summary": "📊 ANALYSE-ZUSAMMENFASSUNG",
"source_files_scanned": "Gescannte Quelldateien: {fileCount}",
"translation_files_checked": "Überprüfte Übersetzungsdateien: {translationFileCount}",
"total_keys": "Gesamtschlüssel: {totalKeys}",
"translated_keys": "Übersetzte Schlüssel: {translatedKeys}",
"missing_keys": "Fehlende Schlüssel: {missingKeys}",
"unused_keys": "Unbenutzte Schlüssel: {unusedKeys}",
"translation_coverage": "Übersetzungsumfang: {coverage}%",
"analysis_passed_for_language": "✅ Analyse bestanden {language}",
"analysis_failed_for_language": "❌ Analyse fehlgeschlagen für {language} ({missingKeys} fehlen, {unusedKeys} unbenutzt)",
"starting": "🔍 Übersetzungsanalyse starten...",
"foundLanguages": "📋 Gefunden {count} Zu analysierende Sprachen: {languages}",
"analyzing": "🔄 Analysieren {language}...",
"reportTitle": "📊 ÜBERSETZUNGSANALYSEBERICHT",
"generated": "Erstellt: {timestamp}",
"status": "Status: {translated}/{total} Schlüssel ({percentage}% übersetzt)",
"filesAnalyzed": "Analysierte Dateien: {analyzed}/{total}",
"keysNeedingTranslation": "Schlüssel, die übersetzt werden müssen: {count}",
"fileBreakdown": "📋 DATEIAUFTEILUNG",
"error": "Fehler",
"completed": "✅ Analyse abgeschlossen für {language}",
"progress": "📊 Gesamtfortschritt: {translated}/{total} Sprachen verarbeitet",
"reportSaved": "Bericht gespeichert: {reportPath}",
"summary": "📊 ANALYSE-ZUSAMMENFASSUNG",
"finished": "✅ Analyse erfolgreich abgeschlossen!",
"statusFileMissing": "❌ Übersetzungsdatei fehlt",
"sourceKeys": "📊 Quellschlüssel: {count}",
"translation": "📊 Übersetzung: {translated}/{total} ({percentage}%)",
"structure": "🗂️ Struktur: {status}",
"consistent": "Konsistent",
"inconsistent": "Inkonsistent",
"missingKeys": "Fehlende Schlüssel: {count}",
"extraKeys": "Zusätzliche Schlüssel: {count}",
"issues": "⚠️ Gefundene Probleme: {count}",
"issueType": {
"not_translated": "Nicht übersetzt: {count}",
"empty_value": "Leere Werte: {count}",
"partial_translation": "Teilübersetzungen: {count}",
"format_mismatch": "Formatkonflikte: {count}",
"type_mismatch": "Typkonflikte: {count}",
"structure_mismatch": "Strukturinkongruenzen: {count}",
"same_as_source": "Gleich wie Quelle: {count}"
},
"keysToTranslate": "📋 SCHLÜSSEL ZUM ÜBERSETZEN",
"key": "Schlüssel",
"english": "Englisch",
"needsTranslation": "BRAUCHT ÜBERSETZUNG",
"andMoreKeys": "...Und {count} mehr Schlüssel.",
"noLanguages": "⚠️ Keine Zielsprachen gefunden.",
"languageStats": "{language}: {percentage}% vollständig ({translated}/{total} Schlüssel)",
"invalidReportFilePath": "Ungültiger Berichtsdateipfad",
"failedToWriteReportFile": "Fehler beim sicheren Schreiben der Berichtsdatei"
},
"complete": {
"configLoadedSuccessfully": "Konfiguration erfolgreich geladen",
"configLoadingFailed": "Das Laden der Konfiguration ist fehlgeschlagen",
"sourceLanguageNotFound": "Quellsprachenverzeichnis nicht gefunden: {sourceLanguage}",
"couldNotParseTarget": "Zieldatei konnte nicht geparst werden: {file}",
"couldNotParseSource": "Quelldatei konnte nicht geparst werden: {file}",
"reportGenerated": "Bericht erstellt: {path}",
"generateReportPrompt": "Möchten Sie einen Bericht erstellen?",
"title": "🌍 ABSCHLUSS DER I18NTK-ÜBERSETZUNG",
"separator": "=========================================================",
"sourceDir": "📁 Quellverzeichnis: {sourceDir}",
"sourceLanguage": "🌐 Ausgangssprache: {sourceLanguage}",
"dryRunMode": "🧪 Trockenlaufmodus – es werden keine Änderungen vorgenommen",
"languages": "🌍 Verfügbare Sprachen: {languages}",
"addingMissingKeys": "➕ Fehlende Schlüssel zu Übersetzungsdateien hinzufügen...",
"processing": "🔄Verarbeitung {language}...",
"addedKeys": "✅ Hinzugefügt {count} fehlende Schlüssel",
"noChangesNeeded": "✅ Keine Änderungen erforderlich für {language}",
"summaryTitle": "📊 ABSCHLUSSZUSAMMENFASSUNG",
"totalChanges": "📝 Gesamtänderungen: {totalChanges}",
"languagesProcessed": "🌍 Verarbeitete Sprachen: {languagesProcessed}",
"missingKeysAdded": "➕ Fehlende Schlüssel hinzugefügt: {missingKeysAdded}",
"nextStepsTitle": "📋 NÄCHSTE SCHRITTE",
"nextStep1": "1. Führen Sie eine Nutzungsanalyse durch:",
"nextStep2": "Knoten i18ntk-usage.js --output-report",
"nextStep3": "2. Übersetzungen validieren:",
"nextStep4": "Knoten i18ntk-validate.js",
"nextStep5": "3. Muster analysieren:",
"nextStep6": "Knoten i18ntk-analyze.js",
"allKeysAvailable": "🎉 Alle Übersetzungsschlüssel sind jetzt verfügbar!",
"runWithoutDryRun": "💡 Ohne --dry-run ausführen, um Änderungen zu übernehmen",
"deletingOldReport": "🗑️Alten Bericht löschen...",
"generatingFreshAnalysis": "📊 Generieren neuer Nutzungsanalysen ...",
"couldNotGenerate": "❌ Die Nutzungsanalyse konnte nicht erstellt werden",
"reportNotFound": "📋 Nutzungsbericht nicht gefunden. Gemeinsame Schlüssel verwenden...",
"foundMissingKeys": "📋 Gefunden {count} Fehlende Schlüssel aus der Nutzungsanalyse",
"couldNotParse": "❌ Nutzungsbericht konnte nicht analysiert werden. Gemeinsame Schlüssel verwenden...",
"errorDuringCompletion": "❌ Fehler beim Abschluss: {error}",
"fatalError": "❌ Schwerwiegender Fehler: {error}",
"configurationValidationFailed": "Konfigurationsvalidierung fehlgeschlagen: Erforderliche Felder fehlen"
},
"sizing": {
"separator": "===========================================================================",
"lineSeparator": "---------------------------------------------------------------------------------",
"analysisStats": "{stats}",
"sourceDirectoryLabel": "📁 Quellverzeichnis: {sourceDir}",
"sourceLanguageLabel": "🌍 Ausgangssprache: {sourceLanguage}",
"strictModeLabel": "⚙️ Strenger Modus: {mode}",
"invalidSourceDirectoryError": "Ungültiger Quellverzeichnispfad: {sourceDir}",
"sourceDirectoryNotFoundError": "Quellverzeichnis nicht gefunden: {sourceDir}",
"invalidOutputDirectoryError": "Ungültiger Pfad zum Ausgabeverzeichnis: {outputDir}",
"invalidReportFileError": "Ungültiger Berichtsdateipfad",
"problematic_keys": "Problematische Schlüssel: {problematicKeys}",
"problematicKeysLabel": "Problematische Schlüssel: {problematicKeys}",
"long_translations": "Lange Übersetzungen: {longTranslations}",
"failedToSaveReportError": "Der Bericht konnte nicht sicher gespeichert werden",
"invalidCsvFileError": "Ungültiger CSV-Dateipfad",
"failedToSaveCsvError": "Der CSV-Bericht konnte nicht sicher gespeichert werden",
"fatalError": "❌ Größenanalyse fehlgeschlagen: {error}",
"starting_i18n_sizing_analysis": "i18n-Größenanalyse wird gestartet...",
"source_directory": "Quellverzeichnis: {sourceDir}",
"found_languages": "Gefundene Sprachen: {languages}",
"analyzing_file_sizes": "Dateigrößen werden analysiert...",
"analyzing_translation_content": "Übersetzungsinhalte werden analysiert...",
"generating_size_comparisons": "Größenvergleiche werden erstellt...",
"no_languages_found_for_comparison": "Keine Sprachen zum Vergleich gefunden",
"sizing_analysis_results": "Ergebnisse der I18n-Größenanalyse",
"file_sizes_title": "Dateigrößen",
"file_sizes_header": "Sprachgröße (KB) Zeilen Zeichen",
"file_size_row": "{lang} {sizeKB} {lines} {characters}",
"language_statistics_title": "Sprachstatistik",
"language_stats_header": "Sprachtasten Zeichen Durchschnittliche Länge Maximale Länge Leer Lang",
"language_stats_row": "{lang} {totalKeys} {totalCharacters} {averageKeyLength} {maxKeyLength} {emptyKeys} {longKeys}",
"size_variations_title": "Größenvariationen",
"size_variations_header": "Sprachzeichenunterschied % Unterschied Problematisch",
"size_variation_row": "{lang} {characterDifference} {percentageDifference}% {problematic}",
"problematic_yes": "Ja",
"problematic_no": "NEIN",
"recommendations_title": "Empfehlungen",
"recommendation_item": "{index}. {recommendation}",
"problematic_key_detail": "{index}. Schlüssel: '{key}' - Variationen: {variations}",
"generating_detailed_report": "Detaillierter Bericht wird erstellt...",
"keysHaveSignificantSizeVariations": "Schlüssel weisen erhebliche Größenunterschiede auf",
"longTranslationsDetected": "${lang} hat ${data.longKeys}-Übersetzungen, die länger als 100 Zeichen sind – erwägen Sie, sie aufzuschlüsseln",
"longer": "länger",
"shorter": "kürzer",
"review_translations": "Erwägen Sie eine Überprüfung {lang} Übersetzungen - das sind sie {percentageDifference}% {comparison} als die Grundlinie",
"report_saved_to": "Bericht gespeichert unter: {reportPath}",
"considerReviewingTranslations": "Erwägen Sie eine Überprüfung ${lang} Übersetzungen – sie sind ${data.percentageDifference}% länger als die Grundlinie",
"csv_report_saved_to": "CSV-Bericht gespeichert unter: {csvPath}",
"human_report_saved": "Lesbarer Bericht gespeichert: {reportPath}",
"folder_summary_title": "Ordnerübersicht",
"folder_summary_table_header": "Sprachgröße (KB) Schlüssel Durchschn. Länge Gesamtzeichen",
"folder_summary_row": "{lang} {sizeKB} {totalKeys} {avgLength} {totalChars}",
"language_comparison_title": "Sprachvergleich",
"language_comparison_row": "{lang}: {diff} Zeichen ({percent}%) {status}",
"summary_stats": "📊 Zusammenfassung: {totalLanguages} Sprachen, {totalKeys} Schlüssel – Berichte gespeichert unter {reportPath}",
"detailedKeysDescription": "Zeigen Sie eine detaillierte Analyse auf Schlüsselebene in der Konsole an",
"too_many_keys_warning": "⚠️ Zu viele Tasten, um in der Konsole angezeigt zu werden – überprüfen Sie die detaillierte Berichtsdatei für eine vollständige Analyse",
"no_translation_files_found": "Keine Übersetzungsdateien gefunden",
"analysis_completed": "Analyse abgeschlossen in {duration}MS",
"analysis_failed": "Analyse fehlgeschlagen: {errorMessage}",
"starting_analysis": "Analyse wird gestartet...",
"found_files": "Gefunden {count} Dateien",
"failed_to_parse_language_error": "Fehler beim Parsen {language} Übersetzungen: {errorMessage}",
"recommendations": {
"keys_have_significant_size_variations": "Schlüssel weisen erhebliche Größenunterschiede auf",
"consider_reviewing_translations": "Erwägen Sie eine Überprüfung {lang} Übersetzungen - das sind sie {percentageDifference}% {comparison} als die Grundlinie",
"long_translations_detected": "{lang} hat {longKeys} Übersetzungen länger als {threshold} Charaktere – erwägen Sie, sie aufzuschlüsseln"
},
"detailed_key_analysis_title": "Detaillierte Schlüsselanalyse",
"key_analysis_detail": "{lang}: {length} Zeichen ({status}) - {translation}",
"key_analysis_header": "Schlüssel: {key}",
"status_empty": "leer",
"status_long": "lang",
"status_ok": "OK"
},
"usage": {
"help_message": "Verwendung des I18n-Nutzungsanalysators: Knoten i18ntk-usage.js [Optionen] Optionen: --source-dir <dir> Zu scannendes Quellverzeichnis (Standard: ./src) --i18n-dir <dir> I18n-Verzeichnis (Standard: ./src/locales) --output-report Detaillierten Bericht erstellen --output-dir <dir> Ausgabeverzeichnis für Berichte (Standard: ./reports) --help Diese Hilfe anzeigen Beispiele: node i18ntk-usage.js --output-report node i18ntk-usage.js --source-dir=./app --i18n-dir=./locales node i18ntk-usage.js --output-dir=./analysis --output-report",
"source_directory_thissourcedir": "📁 Quellverzeichnis: {sourceDir}",
"translationCompletenessTitle": "🌍 Vollständigkeit der Übersetzung:",
"i18n_directory_thisi18ndir": "🌐 I18n-Verzeichnis: {i18nDir}",
"failed_to_parse_filename_error": "⚠️ Fehler beim Parsen {fileName}: {errorMessage}",
"analyzing_source_files": "🔍 Quelldateien analysieren...",
"found_files_in_source": "📂 Gefunden {numFiles} Dateien im Quellverzeichnis",
"found_thisusedkeyssize_unique_": "🎯 Gefunden {usedKeysSize} einzigartige gebrauchte Schlüssel",
"total_key_usages_totalkeysfoun": "📊 Schlüsselverwendungen insgesamt: {totalKeysFound}",
"loading_available_translation_": "📋 Verfügbare Übersetzungsschlüssel werden geladen...",
"found_thisavailablekeyssize_av": "✅ Gefunden {availableKeysSize} verfügbare Schlüssel",
"foundTranslationFiles": "✅ Gefunden {count} Übersetzungsdateien",
"errorReadingI18nDirectory": "⚠️ Fehler beim Lesen des i18n-Verzeichnisses: {error}",
"pressEnterToReturnToMenu": "📝 Drücken Sie die Eingabetaste, um zum Hauptmenü zurückzukehren...",
"notTranslatedKeysTotal": "⚠️ Nicht übersetzte Schlüssel: {total}",
"noSourceFilesFound": "⚠️ Keine Quelldateien im Quellverzeichnis gefunden.",
"reviewNotTranslatedKeys": "💡 Überprüfen Sie nicht übersetzte Schlüssel",
"analysisCompletedSuccessfully": "🎉 Analyse erfolgreich abgeschlossen!",
"detectedSourceDirectory": "Erkanntes Quellverzeichnis: {sourceDir}",
"detectedI18nDirectory": "Erkanntes i18n-Verzeichnis: {i18nDir}",
"fileInfo": "📄 {namespace}: {keys} Schlüssel",
"failedToAnalyzeUsage": "❌ Analyse der Nutzung fehlgeschlagen: {error}",
"failedToAnalyzeFile": "❌ Datei konnte nicht analysiert werden: {error}",
"failedToExtractKeys": "❌ Schlüssel konnten nicht extrahiert werden {filePath}: {error}",
"analysisFailedError": "❌ Analyse fehlgeschlagen: {error}",
"analyzerInitialized": "Analysator initialisiert",
"analyzerInitFailed": "Die Initialisierung des Analysators ist fehlgeschlagen: {error}",
"argsParsed": "Argumente analysiert",
"processedFiles": "Verarbeitet {processedFiles} von {totalFiles} Dateien.",
"argsParseFailed": "Das Parsen des Arguments ist fehlgeschlagen: {error}",
"translationDiscoveryError": "Fehler bei der Übersetzungserkennung: {error}",
"fileTraversalError": "Dateidurchlauffehler: {error}",
"sourceEqualsI18nWarn": "{reason}. Die Nutzungsanalyse scannt keine Locale-Dateien als Quellcode.",
"i18nEqualsSourceWarn": "⚠️ I18n-Verzeichnis und Quellverzeichnis sind identisch. Dies kann zu Problemen bei der Analyse führen.",
"usageAnalysisFailed": "⚠️ Nutzungsanalyse fehlgeschlagen: {error}",
"translationFileParseError": "⚠️ Fehler beim Parsen der Übersetzungsdatei: {error}",
"translationKeysLoadError": "⚠️Fehler beim Laden der Übersetzungsschlüssel: {error}",
"languageCompletenessStats": "🌐 {language}: {translated}/{total} ({completeness}% übersetzt)",
"missingKeysCount": "⚠️ Fehlende Schlüssel: {count}",
"analyzingTranslationCompleteness": "Vollständigkeit der Übersetzung analysieren...",
"unusedKeysCount": "Unbenutzte Schlüssel: {count}",
"usedKeysCount": "Verwendete Schlüssel: {count}",
"availableKeysCount": "Verfügbare Schlüssel: {count}",
"analysisResults": "Analyseergebnisse:",
"i18nDirectoryNotFound": "⚠️ I18n-Verzeichnis nicht gefunden. Bitte überprüfen Sie den Pfad.",
"sourceDirectoryNotFound": "⚠️ Quellverzeichnis nicht gefunden: {dir}",
"checkUsage": {
"title": "🔍 I18NTK-NUTZUNGSANALYSE",
"analyzing_source_files": "🔍 Quelldateien analysieren...",
"source_directory_thissourcedir": "📁 Quellverzeichnis: {sourceDir}",
"i18n_directory_thisi18ndir": "📁 i18n-Verzeichnis: {i18nDir}",
"found_files_in_source": "✅ Gefunden {numFiles} Dateien im Quellverzeichnis",
"no_source_files_found": "⚠️ Im angegebenen Verzeichnis wurden keine Quelldateien gefunden",
"processedFiles": "📊 Verarbeitet {processedFiles} von {totalFiles} Dateien",
"failedToProcessFile": "❌ Fehler beim Verarbeiten",
"found_thisusedkeyssize_unique_": "🔍Gefunden {usedKeysSize} einzigartige gebrauchte Schlüssel",
"total_key_usages_totalkeysfoun": "📊 Schlüsselverwendungen insgesamt: {totalKeysFound}",
"loading_available_translation_": "📂 Verfügbare Übersetzungsschlüssel werden geladen...",
"found_thisavailablekeyssize_av": "✅ Gefunden {availableKeysSize} verfügbare Schlüssel",
"message": "Analysieren Sie die Verwendung von Übersetzungsschlüsseln in Ihrem Projekt ...",
"usage_analysis_results": "📊 ERGEBNISSE DER NUTZUNGSANALYSE",
"source_files_scanned_thisfileu": "📁 Quelldateien gescannt: {fileUsageSize}",
"available_translation_keys_thi": "✅ Verfügbare Übersetzungsschlüssel: {availableKeysSize}",
"used_translation_keys_thisused": "🔍 Verwendete Übersetzungsschlüssel: {usedKeysSize}",
"dynamic_keys_detected_dynamick": "⚡ Dynamische Schlüssel erkannt: {dynamicKeysLength}",
"unused_keys_unusedkeyslength": "🗑️ Unbenutzte Schlüssel: {unusedKeysLength}",
"missing_keys_missingkeyslength": "❌ Fehlende Schlüssel: {missingKeysLength}",
"translation_completeness_title": "📈 VOLLSTÄNDIGKEIT DER ÜBERSETZUNG",
"language_completeness_stats": "{language}: {translated}/{total} Schlüssel ({percentage}%)",
"n_sample_unused_keys": "🗑️ BEISPIELE UNBENUTZTER SCHLÜSSEL (erste 5):",
"key": "🔑 {key}",
"and_unusedkeyslength_5_more": "... Und {count} mehr ungenutzte Schlüssel",
"n_sample_missing_keys": "❌ BEISPIEL FEHLERHAFTER SCHLÜSSEL (erste 5):",
"and_missingkeyslength_5_more": "... Und {count} weitere fehlende Schlüssel",
"n_generating_detailed_report": "📊 Detaillierten Bericht erstellen...",
"report_saved_reportpath": "📄Bericht gespeichert: {reportPath}",
"n_recommendations": "💡 EMPFEHLUNGEN:",
"consider_removing_unused_trans": "🗑️ Ziehen Sie in Betracht, nicht verwendete Übersetzungen zu entfernen, um die Paketgröße zu reduzieren",
"add_missing_translation_keys_t": "➕ Fügen Sie fehlende Übersetzungsschlüssel hinzu, um die Konsistenz zu gewährleisten",
"review_dynamic_keys_manually_t": "🔍 Überprüfen Sie dynamische Schlüssel manuell (sie können gültig sein)",
"all_translation_keys_are_prope": "✅ Alle Übersetzungsschlüssel werden ordnungsgemäß verwendet!",
"n_next_steps": "🎯 NÄCHSTE SCHRITTE:",
"2_check_the_detailed_report_fo": "2. Überprüfen Sie den detaillierten Bericht auf bestimmte Probleme",
"help_message": "Verwendung des I18n-Nutzungsanalysators: Knoten i18ntk-usage.js [Optionen] Optionen: --source-dir <dir> Zu scannendes Quellverzeichnis (Standard: ./src) --i18n-dir <dir> I18n-Verzeichnis (Standard: ./src/locales) --output-report Detaillierten Bericht erstellen --output-dir <dir> Ausgabeverzeichnis für Berichte (Standard: ./reports) --help Diese Hilfe anzeigen Beispiele: node i18ntk-usage.js --output-report node i18ntk-usage.js --source-dir=./app --i18n-dir=./locales node i18ntk-usage.js --output-dir=./analysis --output-report",
"1_review_the_analysis_results": "1. Überprüfen Sie die Analyseergebnisse in der Konsole oder im generierten Bericht.",
"2_run_with_outputreport_for_de": "2. Führen Sie „--output-report“ aus, um einen detaillierten Bericht zu erhalten.",
"3_remove_unused_keys_or_add_mi": "3. Entfernen Sie nicht verwendete Schlüssel oder fügen Sie fehlende Schlüssel zu Ihrem Quellcode hinzu.",
"4_rerun_analysis_to_verify_imp": "4. Führen Sie die Analyse erneut durch, um Verbesserungen zu überprüfen.",
"noSourceFilesFound": "Es wurden keine Quelldateien zur Analyse gefunden.",
"i18nDirectoryNotFound": "I18n-Verzeichnis nicht gefunden: {i18nDir}",
"noTranslationLanguagesFound": "Keine Übersetzungssprachen gefunden.",
"failedToAnalyzeFile": "Datei konnte nicht analysiert werden {filePath}: {error}",
"failedToAnalyzeLanguage": "Die Sprache konnte nicht analysiert werden {language}: {error}",
"translationCompletenessAnalysisFailed": "Die Vollständigkeitsanalyse der Übersetzung ist fehlgeschlagen: {error}",
"n": "\\N"
},
"complete": {
"configLoadedSuccessfully": "Konfiguration erfolgreich geladen",
"configLoadingFailed": "Das Laden der Konfiguration ist fehlgeschlagen",
"title": "🌍 ABSCHLUSS DER I18NTK-ÜBERSETZUNG",
"separator": "=========================================================",
"sourceDir": "📁 Quellverzeichnis: {sourceDir}",
"sourceLanguage": "🌐 Ausgangssprache: {sourceLanguage}",
"dryRunMode": "🧪 Trockenlaufmodus – es werden keine Änderungen vorgenommen",
"languages": "🌍 Verfügbare Sprachen: {languages}",
"addingMissingKeys": "➕ Fehlende Schlüssel zu Übersetzungsdateien hinzufügen...",
"processing": "🔄Verarbeitung {language}...",
"addedKeys": "✅ Hinzugefügt {count} fehlende Schlüssel",
"changeDetails": "📝 {file}: {key}",
"andMore": "...Und {count} mehr",
"noChangesNeeded": "✅ Keine Änderungen erforderlich für {language}",
"summaryTitle": "📊 ABSCHLUSSZUSAMMENFASSUNG",
"totalChanges": "📝 Gesamtänderungen: {totalChanges}",
"languagesProcessed": "🌍 Verarbeitete Sprachen: {languagesProcessed}",
"missingKeysAdded": "➕ Fehlende Schlüssel hinzugefügt: {missingKeysAdded}",
"nextStepsTitle": "📋 NÄCHSTE SCHRITTE",
"nextStep1": "1. Nutzungsanalyse ausführen:",
"nextStep2": "Knoten i18ntk-usage.js --output-report",
"nextStep3": "2. Übersetzungen validieren:",
"nextStep4": "Knoten i18ntk-validate.js",
"nextStep5": "3. Muster analysieren:",
"nextStep6": "Knoten i18ntk-analyze.js",
"allKeysAvailable": "🎉 Alle Übersetzungsschlüssel sind jetzt verfügbar!",
"runWithoutDryRun": "💡 Ohne --dry-run ausführen, um Änderungen zu übernehmen",
"deletingOldReport": "🗑️Alten Bericht löschen...",
"generatingFreshAnalysis": "📊 Generieren neuer Nutzungsanalysen ...",
"couldNotGenerate": "❌ Die Nutzungsanalyse konnte nicht erstellt werden",
"reportNotFound": "📋 Nutzungsbericht nicht gefunden. Gemeinsame Schlüssel verwenden...",
"foundMissingKeys": "📋 Gefunden {count} Fehlende Schlüssel aus der Nutzungsanalyse",
"couldNotParse": "❌ Nutzungsbericht konnte nicht analysiert werden. Gemeinsame Schlüssel verwenden..."
},
"noTranslationLanguagesFound": "Keine Übersetzungssprachen gefunden",
"failedToAnalyzeLanguage": "Die Sprache konnte nicht analysiert werden",
"translationCompletenessAnalysisFailed": "Die Vollständigkeitsanalyse der Übersetzung ist fehlgeschlagen",
"failedToProcessFile": "Datei konnte nicht verarbeitet werden:",
"failedToSaveReport": "Nutzungsbericht konnte nicht gespeichert werden: {error}",
"i18nDirectoryDoesNotExist": "I18n-Verzeichnis existiert nicht: {dir}",
"reportSavedTo": "Nutzungsbericht gespeichert unter: {reportPath}",
"sourceDirectoryDoesNotExist": "Quellverzeichnis existiert nicht: {dir}",
"noSourceDirectoryConfigured": "(nicht konfiguriert)"
},
"validate": {
"help_message": "Verwendung des I18n-Übersetzungsvalidators: Knoten i18ntk-validate.js [Optionen] Optionen: --source-dir <dir> Zu scannendes Quellverzeichnis (Standard: ./src) --i18n-dir <dir> I18n-Verzeichnis (Standard: ./src/locales) --output-report Detaillierten Bericht erstellen --output-dir <dir> Ausgabeverzeichnis für Berichte (Standard: ./reports) --help Diese Hilfe anzeigen Beispiele: node i18ntk-validate.js --output-report node i18ntk-validate.js --source-dir=./app --i18n-dir=./locales node i18ntk-validate.js --output-dir=./analysis --output-report",
"title": "🔍 I18n-Übersetzungsvalidator",
"message": "Validierungsprozess wird gestartet...",
"sourceDirectory": "📁 Quellverzeichnis: {dir}",
"sourceLanguage": "🌍 Ausgangssprache: {sourceLanguage}",
"strictMode": "⚙️ Strenger Modus: {mode}",
"noTargetLanguages": "Keine Zielsprachen konfiguriert; Überspringen der Zielvalidierung. Fügen Sie Sprachen über „i18ntk init --linguals=de,fr“ hinzu.",
"validatingLanguages": "🌍 Validierende Sprachen: {langs}",
"validatingLanguage": "🔍 Validierende Sprache: {lang}",
"filesCount": "📄 Dateien: {count}",
"keysCount": "🔑 Schlüssel: {count}",
"missingFilesCount": "📁 Fehlende Dateien: {count}",
"syntaxErrorsCount": "❌ Syntaxfehler: {count}",
"translationPercentage": "🎯 Übersetzung: {percentage}% ({translated}/{total} Schlüssel)",
"validationSummary": "📊 VALIDIERUNGSZUSAMMENFASSUNG",
"validation_failed": "❌ Validierung fehlgeschlagen: {error}",
"totalErrors": "❌ Gesamtfehler: {count}",
"totalWarnings": "⚠️ Gesamtzahl der Warnungen: {count}",
"errorsSection": "❌ FEHLER",
"warningsSection": "⚠️ WARNUNGEN",
"recommendationsSection": "💡 EMPFEHLUNGEN",
"fixErrorsFirst": "1. Beheben Sie zunächst alle Fehler",
"resolveMissingFilesAndSyntaxErrors": "1. Beheben Sie fehlende Dateien und Syntaxfehler",
"fixStructuralInconsistencies": "2. Beheben Sie strukturelle Inkonsistenzen",
"completeMissingTranslations": "3. Vervollständigen Sie fehlende Übersetzungen",
"rerunValidation": "4. Führen Sie die Validierung erneut aus, um die Korrekturen zu überprüfen",
"addressWarnings": "Beheben Sie Warnungen, um die Qualität zu verbessern",
"reviewWarnings": "Überprüfen Sie die Warnungen und beheben Sie sie gegebenenfalls",
"considerRunningWithStrict": "2. Erwägen Sie die Ausführung mit dem Flag --strict für eine strengere Validierung",
"allValidationsPassed": "🎉 Alle Validierungen bestanden!",
"considerRunningUsageAnalysis": "Erwägen Sie die Durchführung einer Nutzungsanalyse: Knoten i18ntk-usage.js",
"deletedOldReport": "🗑️ Alter Validierungsbericht gelöscht",
"sourceDir": "📁 Quellverzeichnis: {sourceDir}",
"i18nDir": "🌐 I18n-Verzeichnis: {i18nDir}",
"loadingTranslationFiles": "📋 Übersetzungsdateien werden geladen...",
"foundTranslationFilesCount": "✅ Gefunden {count} Übersetzungsdateien",
"analyzingTranslations": "🔍 Übersetzungen analysieren...",
"validationCompletedSuccessfully": "🎉 Validierung erfolgreich abgeschlossen!",
"validationErrorsFound": "⚠️ Validierungsfehler gefunden: {count}",
"validationWarningsFound": "⚠️ Validierungswarnungen gefunden: {count}",
"validationPassed": "✅ Validierung ohne Fehler bestanden",
"validationFailed": "Validierung fehlgeschlagen: {error}",
"startingValidationProcess": "🔍 Validierungsprozess wird gestartet...",
"validationProcessCompletedSuccessfully": "✅ Validierungsprozess erfolgreich abgeschlossen",
"stackTrace": "Stacktrace: {stack}",
"authenticationFailed": "❌ Authentifizierung fehlgeschlagen. Zugriff verweigert.",
"fatalValidationError": "❌ Schwerwiegender Validierungsfehler: {error}",
"configAccess": "Zugriff auf die Konfiguration zur Validierung",
"configValidated": "Konfiguration erfolgreich validiert",
"configError": "Konfigurationsfehler: {error}",
"validatorInit": "I18n-Validator wird initialisiert",
"validatorInitialized": "Der I18n-Validator wurde erfolgreich initialisiert",
"validatorInitError": "Fehler bei der Initialisierung des Validators: {error}",
"argsParsing": "Befehlszeilenargumente analysieren",
"argsParsed": "Befehlszeilenargumente erfolgreich analysiert",
"argsParseError": "Fehler beim Parsen des Arguments: {error}",
"languagesScan": "Verfügbare Sprachen scannen",
"languagesFound": "Gefunden {count} Sprachen",
"languagesScanError": "Fehler beim Scannen der Sprache: {error}",
"filesScan": "Gefunden {count} Dateien in {language}",
"filesScanError": "Fehler beim Scannen der Datei: {error}",
"jsonValidated": "Validierte JSON-Syntax: {filePath}",
"jsonValidationError": "JSON-Validierungsfehler: {error}",
"languageValidation": "Validierende Sprache: {language}",
"languageValidationError": "Fehler bei der Sprachvalidierung: {error}",
"fileDeleted": "Datei gelöscht",
"runStarted": "Validierungslauf wird gestartet",
"runCompleted": "Validierungslauf erfolgreich abgeschlossen",
"runError": "Validierungslauf fehlgeschlagen: {error}",
"scriptExecution": "Skriptausführung",
"validationCompleted": "Validierung abgeschlossen",
"validationError": "Validierungsfehler: {error}",
"separator": "━━━━━━━━━━━━━━━━━━━━ ━━━━━━━━━━━━━━━━━━━━ ━━━━━━━━━━━━━━━━━━━━ ━━━━━━━━━━━━━━━━━━━━",
"languageHeader": "🌐 Sprache: {language}",
"validationResults": "📊 Validierungsergebnisse",
"noErrors": "✅ Keine Fehler gefunden",
"noWarning