i18ntk 2.0.3 → 2.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -53,8 +53,8 @@
53
53
  "errors": {
54
54
  "errors": "Fehler:",
55
55
  "genericError": "❌ Fehler: {error}",
56
- "initializationCancelled": "🚫 Initialisierung wurde vom Benutzer abgebrochen.",
57
56
  "initializationFailed": "❌ Initialisierung fehlgeschlagen: {error}",
57
+ "initializationCancelled": "🚫 Initialisierung wurde vom Benutzer abgebrochen.",
58
58
  "translationKeyNotFound": "Übersetzungsschlüssel nicht gefunden: {key}",
59
59
  "sourceDirectoryNotFound": "Quellverzeichnis nicht gefunden: {directory}",
60
60
  "configLoadingFailed": "Konfigurationsladung fehlgeschlagen",
@@ -101,15 +101,67 @@
101
101
  "settings": "Einstellungen",
102
102
  "startingSettings": "🎛️ Einstellungs-CLI wird gestartet...",
103
103
  "confirm": "Bestätigen",
104
- "errorExiting": "Error while exiting."
104
+ "errorExiting": "Fehler beim Beenden."
105
105
  },
106
106
  "errors": {
107
+ "invalidOption": "❌ Ungültige Option: {option}. Bitte versuchen Sie es erneut.",
107
108
  "readlineClosed": "Eingabestrom ist geschlossen; läuft im nicht-interaktiven Modus.",
108
109
  "noPackageJson": "Keine package.json gefunden. Kann i18n-Framework nicht automatisch erkennen.",
109
110
  "noI18nDir": "Kein i18n-Verzeichnis im Projekt-Root gefunden.",
110
111
  "noI18nConfig": "Keine i18n-Konfigurationsdatei im Projekt-Root gefunden.",
111
- "errorReadingDebugLogs": "Error reading debug logs: {error}",
112
- "invalidOption": "❌ Invalid option: {option}. Please try again."
112
+ "errorReadingDebugLogs": "Fehler beim Lesen der Debug-Protokolle: {error}"
113
+ },
114
+ "scanner": {
115
+ "help_message": "I18n Text-Scanner Verwendung: node i18ntk-scanner.js [optionen] Optionen: --source-dir <dir> Quellverzeichnis zu scannen (Standard: ./src) --output <file> Ausgabedatei für Ergebnisse (Standard: ./i18ntk-scanner-report.json) --framework <name> Ziel-Framework (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-ergebnisse.json",
116
+ "help_options": {
117
+ "source_dir": "Quellverzeichnis zu scannen",
118
+ "output_dir": "Ausgabedatei für Ergebnisse",
119
+ "framework": "Ziel-Framework (react, vue, angular, vanilla)",
120
+ "patterns": "Benutzerdefinierte Regex-Muster (durch Kommas getrennt)",
121
+ "exclude": "Auszuschließende Verzeichnisse (durch Kommas getrennt)",
122
+ "output_report": "Ausgabedatei für den Bericht",
123
+ "min_length": "Mindestlänge des einzubeziehenden Textes",
124
+ "max_length": "Maximallänge des einzubeziehenden Textes",
125
+ "include_tests": "Testdateien in den Scan einbeziehen"
126
+ },
127
+ "starting": "🔍 Starte Text-Scanner für Framework: {framework}",
128
+ "sourceDirectory": "📁 Scanne Verzeichnis: {sourceDir}",
129
+ "frameworkDetected": "🎯 Framework erkannt: {framework}",
130
+ "scanningFiles": "📊 Scanne {fileCount} Dateien...",
131
+ "foundTexts": "📝 {textCount} zu übersetzende Texte gefunden",
132
+ "generatingReport": "📊 Generiere detaillierten Bericht...",
133
+ "reportSaved": "💾 Scan-Bericht gespeichert in: {reportPath}",
134
+ "noTextsFound": "✅ Keine hartcodierten englischen Texte gefunden",
135
+ "scanComplete": "🎉 Scan erfolgreich abgeschlossen!",
136
+ "analysisTitle": "🔍 ÜBERSETZUNGSSCANNER-ANALYSE",
137
+ "fileSummary": "📄 {file}: {count} Texte gefunden",
138
+ "textLocation": "📍 Zeile {line}: {text}",
139
+ "foundText": "{count} potenzielle hartcodierte Textinstanzen gefunden",
140
+ "context": "📝 Kontext: {context}",
141
+ "severity": "⚠️ Schweregrad: {severity}",
142
+ "recommendation": "💡 Empfehlung: {recommendation}",
143
+ "welcome": {
144
+ "title": "🎯 Willkommen beim Text-Scanner!",
145
+ "description": "Dieses Tool scannt Ihren Quellcode nach hartcodierten englischen Texten, die möglicherweise übersetzt werden müssen."
146
+ },
147
+ "frameworkPrompt": {
148
+ "title": "🎯 Framework auswählen",
149
+ "available": "Verfügbare Frameworks: react, vue, angular, vanilla",
150
+ "description": "Framework-Typ eingeben (oder Enter für automatische Erkennung):",
151
+ "input": "Rahmen:"
152
+ },
153
+ "directoryPrompt": {
154
+ "title": "📁 Quellverzeichnis auswählen",
155
+ "current": "Aktuelles Verzeichnis: {dir}",
156
+ "description": "Verzeichnis zum Scannen eingeben (oder Enter für aktuelles Verzeichnis):",
157
+ "input": "Verzeichnis:"
158
+ },
159
+ "options": {
160
+ "includeTests": "Testdateien einbeziehen?",
161
+ "excludeDirs": "Auszuschließende Verzeichnisse (durch Kommas getrennt):",
162
+ "customPatterns": "Benutzerdefinierte Muster zu scannen (Regex):"
163
+ },
164
+ "reportGenerated": "Scanbericht generiert: {path}"
113
165
  },
114
166
  "fixer": {
115
167
  "help_message": "I18n Übersetzungs-Fixer Verwendung: node i18ntk-fixer.js [optionen] Optionen: --source-dir <dir> Quellverzeichnis zu analysieren (Standard: ./locales) --languages <langs> Komma-getrennte Liste der zu korrigierenden Sprachen --markers <markers> Komma-getrennte Liste der als nicht übersetzt zu behandelnden Markierungen --no-backup Automatische Backup-Erstellung überspringen --help Diese Hilfe anzeigen Beispiele: node i18ntk-fixer.js --languages de,fr node i18ntk-fixer.js --source-dir=./locales --markers NOT_TRANSLATED node i18ntk-fixer.js --no-backup",
@@ -146,7 +198,7 @@
146
198
  "choicePrompt": "Ihre Wahl (j/n/d):",
147
199
  "nonInteractiveMode": "⚡ Nicht-interaktiver Modus erkannt - wende Korrekturen automatisch an...",
148
200
  "reportGenerated": "📊 Korrekturbericht generiert: {path}",
149
- "summary": "Fixer summary:",
201
+ "summary": "Fixer-Zusammenfassung:",
150
202
  "welcome": {
151
203
  "title": "🎯 Willkommen beim Übersetzungs-Fixer!",
152
204
  "description": "Dieses Tool hilft Ihnen, beschädigte Übersetzungen und Markierungen in Ihren Sprachdateien zu reparieren."
@@ -170,16 +222,16 @@
170
222
  "description": "Geben Sie das Verzeichnis mit Ihren Sprachdateien ein (oder Enter für aktuelles Verzeichnis, 0 zum Abbrechen):",
171
223
  "input": "Verzeichnis:"
172
224
  },
173
- "backupLocation": "Backup location: {dir}",
174
- "completed": "Fixing completed.",
175
- "creatingBackup": "Creating backup in {dir}...",
176
- "dryRunMode": "Dry run mode: {mode}",
177
- "error": "Fixer failed: {error}",
178
- "fixing": "Fixing {language}...",
179
- "foundLanguages": "Found {count} languages: {languages}",
180
- "languageFixed": "{language}: fixed {fixed} key(s), skipped {skipped}.",
181
- "running": "Running translation fixer...",
182
- "totalFixed": "Total fixed: {count}"
225
+ "backupLocation": "Backup-Speicherort: {dir}",
226
+ "completed": "Reparatur abgeschlossen.",
227
+ "creatingBackup": "Backup wird in {dir} erstellt...",
228
+ "dryRunMode": "Trockenlaufmodus: {mode}",
229
+ "error": "Fixer fehlgeschlagen: {error}",
230
+ "fixing": "{language} wird behoben...",
231
+ "foundLanguages": "{count} Sprachen gefunden: {languages}",
232
+ "languageFixed": "{language}: {fixed} Schlüssel korrigiert, {skipped} übersprungen.",
233
+ "running": "Übersetzungsfixer wird ausgeführt...",
234
+ "totalFixed": "Insgesamt behoben: {count}"
183
235
  },
184
236
  "autorun": {
185
237
  "stepAnalyzeTranslations": "Übersetzungen analysieren",
@@ -221,7 +273,7 @@
221
273
  "requiredStepFailed": "Erforderlicher Schritt fehlgeschlagen. Workflow wird gestoppt.",
222
274
  "optionalStepFailed": "Optionaler Schritt fehlgeschlagen. Workflow wird fortgesetzt.",
223
275
  "stepRequired": "(Erforderlich)",
224
- "stepOptional": "(Optional)",
276
+ "stepOptional": "(Optionaler Schritt)",
225
277
  "startingExecution": "Starte Ausführung...",
226
278
  "pressEnterToContinue": "Drücken Sie Enter, um fortzufahren...",
227
279
  "runningSelectedSteps": "Ausgewählte Schritte werden ausgeführt...",
@@ -403,13 +455,13 @@
403
455
  "sizing_analysis_results": "I18n Größenanalyse Ergebnisse",
404
456
  "file_sizes_title": "Dateigrößen",
405
457
  "file_sizes_header": "Sprache Größe(KB) Zeilen Zeichen",
406
- "file_size_row": "{lang} {sizeKB} {lines} {characters}",
458
+ "file_size_row": "{lang} {sizeKB} {lines} {characters}",
407
459
  "language_statistics_title": "Sprachstatistiken",
408
460
  "language_stats_header": "Sprache Schlüssel Zeichen Ø Länge Max Länge Leer Lang",
409
- "language_stats_row": "{lang} {totalKeys} {totalCharacters} {averageKeyLength} {maxKeyLength} {emptyKeys} {longKeys}",
461
+ "language_stats_row": "{lang} {totalKeys} {totalCharacters} {averageKeyLength} {maxKeyLength} {emptyKeys} {longKeys}",
410
462
  "size_variations_title": "Größenvariationen",
411
463
  "size_variations_header": "Sprache Zeichen Diff % Diff Problematisch",
412
- "size_variation_row": "{lang} {characterDifference} {percentageDifference}% {problematic}",
464
+ "size_variation_row": "{lang} {characterDifference} {percentageDifference}% {problematic}",
413
465
  "problematic_yes": "Ja",
414
466
  "problematic_no": "Nein",
415
467
  "recommendations_title": "Empfehlungen",
@@ -427,7 +479,7 @@
427
479
  "human_report_saved": "Menschenlesbarer Bericht gespeichert: {reportPath}",
428
480
  "folder_summary_title": "Ordner-Zusammenfassung",
429
481
  "folder_summary_table_header": "Sprache Größe(KB) Schlüssel Ø Länge Gesamtzeichen",
430
- "folder_summary_row": "{lang} {sizeKB} {totalKeys} {avgLength} {totalChars}",
482
+ "folder_summary_row": "{lang} {sizeKB} {totalKeys} {avgLength} {totalChars}",
431
483
  "language_comparison_title": "Sprachvergleich",
432
484
  "language_comparison_row": "{lang}: {diff} Zeichen ({percent}%) {status}",
433
485
  "summary_stats": "📊 Zusammenfassung: {totalLanguages} Sprachen, {totalKeys} Schlüssel - Berichte gespeichert unter {reportPath}",
@@ -444,12 +496,12 @@
444
496
  "consider_reviewing_translations": "Überprüfung der {lang} Übersetzungen in Betracht ziehen - sie sind {percentageDifference}% {comparison} als die Grundlage",
445
497
  "long_translations_detected": "{lang} hat {longKeys} Übersetzungen länger als {threshold} Zeichen - in Betracht ziehen, sie aufzuteilen"
446
498
  },
447
- "detailed_key_analysis_title": "Detailed Key Analysis",
448
- "key_analysis_detail": "{lang}: {length} chars ({status}) - {translation}",
449
- "key_analysis_header": "Key: {key}",
450
- "status_empty": "empty",
451
- "status_long": "long",
452
- "status_ok": "ok"
499
+ "detailed_key_analysis_title": "Detaillierte Schlüsselanalyse",
500
+ "key_analysis_detail": "{lang}: {length} Zeichen ({status}) - {translation}",
501
+ "key_analysis_header": "Schlüssel: {key}",
502
+ "status_empty": "leer",
503
+ "status_long": "lang",
504
+ "status_ok": "OK"
453
505
  },
454
506
  "usage": {
455
507
  "help_message": "I18n-Nutzungsanalysator Verwendung: node i18ntk-usage.js [Optionen] Optionen: --source-dir <dir> Quellverzeichnis zum Scannen (Standard: ./locales) --i18n-dir <dir> I18n-Verzeichnis (Standard: ./locales) --output-report Detaillierten Bericht erstellen --output-dir <dir> Ausgabeverzeichnis für Berichte (Standard: ./i18ntk-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",
@@ -546,7 +598,7 @@
546
598
  "failedToAnalyzeFile": "Analyse der Datei {filePath} fehlgeschlagen: {error}",
547
599
  "failedToAnalyzeLanguage": "Analyse der Sprache {language} fehlgeschlagen: {error}",
548
600
  "translationCompletenessAnalysisFailed": "Analyse der Übersetzungsvollständigkeit fehlgeschlagen: {error}",
549
- "n": ""
601
+ "n": "\\n"
550
602
  },
551
603
  "complete": {
552
604
  "configLoadedSuccessfully": "Konfiguration erfolgreich geladen",
@@ -586,11 +638,11 @@
586
638
  "noTranslationLanguagesFound": "Keine Übersetzungssprachen gefunden.",
587
639
  "failedToAnalyzeLanguage": "Analyse der Sprache {language} fehlgeschlagen: {error}",
588
640
  "translationCompletenessAnalysisFailed": "Analyse der Übersetzungsvollständigkeit fehlgeschlagen: {error}",
589
- "failedToProcessFile": "Failed to process file:",
590
- "failedToSaveReport": "Failed to save usage report: {error}",
591
- "i18nDirectoryDoesNotExist": "I18n directory does not exist: {dir}",
592
- "reportSavedTo": "Usage report saved to: {reportPath}",
593
- "sourceDirectoryDoesNotExist": "Source directory does not exist: {dir}"
641
+ "failedToProcessFile": "Datei konnte nicht verarbeitet werden:",
642
+ "failedToSaveReport": "Nutzungsbericht konnte nicht gespeichert werden: {error}",
643
+ "i18nDirectoryDoesNotExist": "I18n-Verzeichnis existiert nicht: {dir}",
644
+ "reportSavedTo": "Nutzungsbericht gespeichert unter: {reportPath}",
645
+ "sourceDirectoryDoesNotExist": "Quellverzeichnis existiert nicht: {dir}"
594
646
  },
595
647
  "validate": {
596
648
  "help_message": "I18n-Übersetzungs-Validator Verwendung: node i18ntk-validate.js [Optionen] Optionen: --source-dir <dir> Quellverzeichnis zum Scannen (Standard: ./locales) --i18n-dir <dir> I18n-Verzeichnis (Standard: ./locales) --output-report Detaillierten Bericht erzeugen --output-dir <dir> Ausgabeordner für Berichte (Standard: ./i18ntk-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",
@@ -675,7 +727,7 @@
675
727
  "completedIndicator": "✅ Abgeschlossen",
676
728
  "errorIndicator": "❌ Fehler",
677
729
  "warningIndicator": "⚠️ Warnung",
678
- "infoIndicator": "ℹ️ Info",
730
+ "infoIndicator": "ℹ️ Infos",
679
731
  "sourceDirNotConfigured": "Quellverzeichnis nicht konfiguriert",
680
732
  "sourceLanguageNotConfigured": "Quellsprache nicht konfiguriert",
681
733
  "translationFunctionNotInitialized": "Übersetzungsfunktion nicht richtig initialisiert",
@@ -688,8 +740,8 @@
688
740
  "failedToCreateSampleTranslationFile": "Erstellen der Beispieldatei fehlgeschlagen",
689
741
  "invalidFilePathDetected": "Ungültiger Dateipfad erkannt",
690
742
  "failedToWriteFile": "Schreiben der Datei fehlgeschlagen: {filePath}",
691
- "invalidSourceDirectory": "Invalid source directory: {sourceDir}",
692
- "invalidSourceLanguageDirectory": "Invalid source language directory: {sourceDir}"
743
+ "invalidSourceDirectory": "Ungültiges Quellverzeichnis: {sourceDir}",
744
+ "invalidSourceLanguageDirectory": "Ungültiges Quellsprachenverzeichnis: {sourceDir}"
693
745
  },
694
746
  "adminCli": {
695
747
  "setupPinProtectionTitle": "🔐 Einrichtung des Admin-PIN-Schutzes",
@@ -936,13 +988,14 @@
936
988
  },
937
989
  "init": {
938
990
  "initializationTitle": "🚀 i18n-Management-Toolkit – Projektinitialisierung",
991
+ "initializationCancelled": "🚫 Initialisierung vom Benutzer abgebrochen.",
939
992
  "sourceDirectoryLabel": "📁 Quellverzeichnis: {dir}",
940
- "createdSourceLanguageDirectory": "✅ Quellverzeichnis für Sprache erstellt: {dir}",
941
993
  "requiredTitle": "Initialisierung erforderlich",
942
994
  "requiredBody": "Dieses Projekt muss vor dem Ausführen dieses Befehls initialisiert werden.",
943
995
  "promptRunNow": "Möchten Sie die Initialisierung jetzt ausführen? (j/N):",
944
996
  "sourceLanguageLabel": "🌍 Quellsprache: {language}",
945
997
  "detectedI18nFrameworks": "🔍 Erkanntes i18n-Framework: {frameworks}",
998
+ "pinMustBe4Digits": "PIN muss 4-stellig sein.",
946
999
  "existingDirectoriesFound": "📁 Vorhandene Übersetzungsverzeichnisse gefunden:",
947
1000
  "useExistingDirectoryPrompt": "Möchten Sie das vorhandene Verzeichnis verwenden? (j/n)",
948
1001
  "selectDirectoryPrompt": "Wählen Sie ein Verzeichnis durch Eingabe der Nummer (oder wählen Sie 'Neues Verzeichnis erstellen')",
@@ -977,7 +1030,6 @@
977
1030
  "targetLanguages": "🌍 Zielsprachen",
978
1031
  "foundSourceFiles": "📄 {count} Quelldateien zur Analyse gefunden",
979
1032
  "processingLanguage": "🔄 Verarbeite Sprache: {language}",
980
- "pinMustBe4Digits": "PIN muss 4-stellig sein.",
981
1033
  "fileProcessingResult": "✅ Verarbeitet {file}: {translated}/{total} Schlüssel ({percentage}%)",
982
1034
  "overallProgress": "📊 Gesamtfortschritt: {translated}/{total} Schlüssel verarbeitet ({percentage}%)",
983
1035
  "initializationSummaryTitle": "📋 Initialisierungsübersicht",
@@ -1015,10 +1067,10 @@
1015
1067
  "installFramework": "Um ein Framework zu installieren, führen Sie aus: npm install <package-name>"
1016
1068
  },
1017
1069
  "frameworks": {
1018
- "react": "- React i18next (react-i18next)",
1070
+ "react": "- Reagiere auf i18next (react-i18next)",
1019
1071
  "vue": "- Vue i18n (vue-i18n)",
1020
1072
  "i18next": "- i18next (i18next)",
1021
- "nuxt": "- Nuxt i18n (@nuxtjs/i18n)",
1073
+ "nuxt": "- Nuxt-Internationalisierung (@nuxtjs/i18n)",
1022
1074
  "svelte": "- Svelte i18n (svelte-i18n)"
1023
1075
  },
1024
1076
  "continueWithoutI18nPrompt": "Kein i18n-Framework erkannt. Möchten Sie trotzdem fortfahren? (j/N):",
@@ -1034,22 +1086,22 @@
1034
1086
  "noJsonFilesInSourceDirectory": "Keine JSON-Dateien im Quellverzeichnis gefunden: {dir}",
1035
1087
  "invalidFilePathDetected": "Ungültiger Dateipfad erkannt",
1036
1088
  "initializationFailed": "Initialisierung fehlgeschlagen: {error}",
1037
- "noFramework": "No i18n framework detected. Continue with generic mode.",
1038
- "packageJsonRead": "Error reading package.json."
1089
+ "noFramework": "Kein i18n-Framework erkannt. Fahren Sie mit dem generischen Modus fort.",
1090
+ "packageJsonRead": "Fehler beim Lesen von package.json."
1039
1091
  },
1040
1092
  "processingFile": "Verarbeite {file} für {language}...",
1041
1093
  "fileAlreadyExistsMerging": "Datei {file} existiert bereits. Neue Schlüssel werden zusammengeführt.",
1042
1094
  "createdNewFile": "Neue Datei erstellt: {file}",
1043
1095
  "updatedFile": "Datei aktualisiert: {file}",
1044
1096
  "skippingExcludedFile": "Überspringe {file} für {language}, da ausgeschlossen.",
1045
- "continuingWithoutAdminPin": "Continuing without admin PIN setup.",
1046
- "errorSettingUpAdminPin": "Error setting up admin PIN: {error}",
1047
- "noTargetLanguagesSpecified": "No target languages specified.",
1048
- "translationFilesCreatedWarning": "Translation files were created with placeholders; review before production use.",
1049
- "warningCannotReadSourceDir": "Warning: cannot read source directory {dir}: {error}",
1050
- "warningInvalidLanguageCodes": "Warning: invalid language codes ignored: {languages}",
1051
- "warningProceedingWithoutFramework": "Proceeding without detected i18n framework.",
1052
- "initializationCancelled": "🚫 Initialization cancelled by user."
1097
+ "continuingWithoutAdminPin": "Fortsetzung ohne Einrichtung der Admin-PIN.",
1098
+ "createdSourceLanguageDirectory": " Quellverzeichnis für Sprache erstellt: {dir}",
1099
+ "errorSettingUpAdminPin": "Fehler beim Einrichten der Administrator-PIN: {error}",
1100
+ "noTargetLanguagesSpecified": "Keine Zielsprachen angegeben.",
1101
+ "translationFilesCreatedWarning": "Übersetzungsdateien wurden mit Platzhaltern erstellt; Überprüfung vor dem Produktionseinsatz.",
1102
+ "warningCannotReadSourceDir": "Warnung: Quellverzeichnis {dir}: {error} kann nicht gelesen werden.",
1103
+ "warningInvalidLanguageCodes": "Warnung: Ungültige Sprachcodes werden ignoriert: {languages}",
1104
+ "warningProceedingWithoutFramework": "Fortfahren ohne erkanntes i18n-Framework."
1053
1105
  },
1054
1106
  "language": {
1055
1107
  "title": "🌍 Sprache ändern",
@@ -1092,6 +1144,7 @@
1092
1144
  "complete": "🎯 Übersetzungen vervollständigen (100% Abdeckung)",
1093
1145
  "sizing": "📏 Größenanalyse",
1094
1146
  "fix": "🛠️ Platzhalterübersetzungen reparieren",
1147
+ "scanner": "🔍 i18n-Probleme scannen",
1095
1148
  "workflow": "🔄 Gesamten Workflow ausführen",
1096
1149
  "status": "📋 Projektstatus anzeigen",
1097
1150
  "delete": "🗑️ Alle Berichte löschen",
@@ -1099,7 +1152,6 @@
1099
1152
  "settings": "⚙️ Einstellungen",
1100
1153
  "help": "❓ Hilfe",
1101
1154
  "debug": "🔧 Debug-Werkzeuge",
1102
- "scanner": "🔍 i18n-Probleme scannen",
1103
1155
  "exit": "🚪 Beenden"
1104
1156
  },
1105
1157
  "update": "📦 Paket aktualisieren",
@@ -1285,7 +1337,7 @@
1285
1337
  "advancedSettingsDesc": "Validierung, Protokollierung und Expertenoptionen",
1286
1338
  "viewAllSettings": "Alle Einstellungen anzeigen",
1287
1339
  "viewAllSettingsDesc": "Aktuelle Konfiguration anzeigen",
1288
- "importExport": "Import/Export",
1340
+ "importExport": "Importieren/Exportieren",
1289
1341
  "importExportDesc": "Einstellungen sichern und wiederherstellen",
1290
1342
  "resetToDefaults": "Zurücksetzen auf Standardwerte",
1291
1343
  "resetToDefaultsDesc": "Werkseinstellungen wiederherstellen",
@@ -1341,7 +1393,7 @@
1341
1393
  "relativePathHint": "Verwende relative Pfade ab diesem Verzeichnis (z. B. ./locales)",
1342
1394
  "currentDirectory": "Aktuelles Projektverzeichnis",
1343
1395
  "startingSettings": "Einstellungen werden gestartet:",
1344
- "pin": "PIN:",
1396
+ "pin": "STIFT:",
1345
1397
  "reportBug": {
1346
1398
  "title": "Fehler melden",
1347
1399
  "description": "Melden Sie alle auftretenden Probleme oder Fehler",
@@ -1364,7 +1416,7 @@
1364
1416
  "advancedSettingsDesc": "Validierung, Protokollierung und Expertenoptionen",
1365
1417
  "viewAllSettings": "Alle Einstellungen anzeigen",
1366
1418
  "viewAllSettingsDesc": "Aktuelle Konfiguration anzeigen",
1367
- "importExport": "Import/Export",
1419
+ "importExport": "Importieren/Exportieren",
1368
1420
  "updatePackage": "Paket aktualisieren",
1369
1421
  "updatePackageDesc": "i18n-toolkit-Paket über npm aktualisieren",
1370
1422
  "importExportDesc": "Einstellungen sichern und wiederherstellen",
@@ -1404,8 +1456,8 @@
1404
1456
  "promptDesc": "Hinweis: Das Paket wird auf die neueste Version aktualisiert.",
1405
1457
  "confirm": "j",
1406
1458
  "cancelled": "Aktualisierung abgebrochen.",
1407
- "error": "Failed to update package",
1408
- "updating": "Updating package..."
1459
+ "error": "Paket konnte nicht aktualisiert werden",
1460
+ "updating": "Paket wird aktualisiert..."
1409
1461
  },
1410
1462
  "admin": {
1411
1463
  "selectOption": "Option auswählen:",
@@ -1462,11 +1514,11 @@
1462
1514
  "importFailed": "Import der Einstellungen fehlgeschlagen: {error}",
1463
1515
  "backupSuccess": "Sicherung erstellt: {file}",
1464
1516
  "backupFailed": "Sicherung fehlgeschlagen: {error}",
1465
- "exportFilenamePrompt": "Enter export filename:",
1466
- "importConfirm": "Import this settings file? (y/N):",
1467
- "importFilenamePrompt": "Enter import filename:",
1468
- "manageBackups": "Manage backups",
1469
- "restore": "Restore settings"
1517
+ "exportFilenamePrompt": "Geben Sie den Namen der Exportdatei ein:",
1518
+ "importConfirm": "Diese Einstellungsdatei importieren? (J/N):",
1519
+ "importFilenamePrompt": "Geben Sie den Namen der Importdatei ein:",
1520
+ "manageBackups": "Backups verwalten",
1521
+ "restore": "Einstellungen wiederherstellen"
1470
1522
  },
1471
1523
  "selectOption": "Option auswählen:",
1472
1524
  "resetToDefaultsTitle": "🔄 Zurücksetzen auf Standardwerte",
@@ -1549,34 +1601,34 @@
1549
1601
  "fields": {
1550
1602
  "backup": {
1551
1603
  "enabled": {
1552
- "label": "Enable Backup",
1553
- "description": "Enable automatic backup of settings",
1554
- "help": "Enable/disable backup feature"
1604
+ "label": "Aktivieren Sie die Sicherung",
1605
+ "description": "Aktivieren Sie die automatische Sicherung der Einstellungen",
1606
+ "help": "Backup-Funktion aktivieren/deaktivieren"
1555
1607
  },
1556
1608
  "singleFileMode": {
1557
- "label": "Single File Mode",
1558
- "description": "Use single file for backups",
1559
- "help": "Backup settings in a single file"
1609
+ "label": "Einzeldateimodus",
1610
+ "description": "Verwenden Sie eine einzelne Datei für Backups",
1611
+ "help": "Sicherungseinstellungen in einer einzigen Datei"
1560
1612
  },
1561
1613
  "singleBackupFile": {
1562
- "label": "Backup File Path",
1563
- "description": "Path to the backup file",
1564
- "help": "Path to the single backup file"
1614
+ "label": "Pfad der Sicherungsdatei",
1615
+ "description": "Pfad zur Sicherungsdatei",
1616
+ "help": "Pfad zur einzelnen Sicherungsdatei"
1565
1617
  },
1566
1618
  "retentionDays": {
1567
- "label": "Retention Period",
1568
- "description": "Days to keep backup files",
1569
- "help": "Number of days to retain old backup files"
1619
+ "label": "Aufbewahrungsfrist",
1620
+ "description": "Tage, um Sicherungsdateien aufzubewahren",
1621
+ "help": "Anzahl der Tage, die alte Sicherungsdateien aufbewahrt werden sollen"
1570
1622
  },
1571
1623
  "maxBackups": {
1572
- "label": "Maximum Backups",
1573
- "description": "Maximum backup files to keep",
1574
- "help": "Maximum number of backup files to keep"
1624
+ "label": "Maximale Backups",
1625
+ "description": "Maximal aufzubewahrende Sicherungsdateien",
1626
+ "help": "Maximale Anzahl der aufzubewahrenden Sicherungsdateien"
1575
1627
  },
1576
1628
  "confirm": {
1577
- "label": "Confirm Backup",
1578
- "description": "Require confirmation for backup operations",
1579
- "help": "Confirm backup operation"
1629
+ "label": "Bestätigen Sie die Sicherung",
1630
+ "description": "Für Sicherungsvorgänge ist eine Bestätigung erforderlich",
1631
+ "help": "Bestätigen Sie den Sicherungsvorgang"
1580
1632
  }
1581
1633
  },
1582
1634
  "i18nDir": {
@@ -1834,9 +1886,9 @@
1834
1886
  "help": "Alle individuellen Skript-PIN-Schutz-Einstellungen auf Standardwerte zurücksetzen"
1835
1887
  },
1836
1888
  "removeUiLanguages": {
1837
- "label": "Remove UI Languages",
1838
- "description": "Remove UI languages that are not installed",
1839
- "help": "Remove UI languages that are not installed on the system"
1889
+ "label": "Entfernen Sie UI-Sprachen",
1890
+ "description": "Entfernen Sie nicht installierte UI-Sprachen",
1891
+ "help": "Entfernen Sie UI-Sprachen, die nicht auf dem System installiert sind"
1840
1892
  },
1841
1893
  "${helperKey}": {
1842
1894
  "help": "Hilfe"
@@ -1897,7 +1949,7 @@
1897
1949
  "resetScriptDirectoriesTitle": "Skriptverzeichnisse auf Standard zurücksetzen",
1898
1950
  "resetScriptDirectoriesWarning1": "Dies setzt alle Skriptverzeichnis-Konfigurationen auf die Systemstandards zurück.",
1899
1951
  "resetScriptDirectoriesWarning2": "Alle benutzerdefinierten Verzeichnispfade werden gelöscht. Diese Aktion kann nicht rückgängig gemacht werden.",
1900
- "resetScriptDirectoriesConfirm": "Are you sure you want to reset all script directories to defaults? (y/N):",
1952
+ "resetScriptDirectoriesConfirm": "Sind Sie sicher, dass Sie alle Skriptverzeichnisse auf die Standardeinstellungen zurücksetzen möchten? (J/N):",
1901
1953
  "backup": {
1902
1954
  "title": "Sicherungseinstellungen",
1903
1955
  "description": "Aktuelle Einstellungen in eine Datei sichern",
@@ -1919,9 +1971,9 @@
1919
1971
  "confirmNo": "Nein"
1920
1972
  },
1921
1973
  "validation": {
1922
- "valid": "Valid",
1923
- "validatingPaths": "Validating configured paths...",
1924
- "validationComplete": "Path validation complete: {valid}/{total} valid."
1974
+ "valid": "Gültig",
1975
+ "validatingPaths": "Konfigurierte Pfade werden validiert...",
1976
+ "validationComplete": "Pfadvalidierung abgeschlossen: {valid}/{total} gültig."
1925
1977
  }
1926
1978
  },
1927
1979
  "summary": {
@@ -2156,14 +2208,14 @@
2156
2208
  "error_general": "⚠️ Allgemeiner Fehler: {error}",
2157
2209
  "use_help": "ℹ️ Verwenden Sie --help für weitere Informationen"
2158
2210
  },
2159
- "cleaningUpReportFiles": "Cleaning up old report files...",
2160
- "couldNotDelete": "Could not delete {file}: {error}",
2161
- "deletedOldReportFiles": "Deleted {count} old report file(s).",
2162
- "errorCleaningUpReports": "Error cleaning up reports: {error}",
2163
- "noOldReportFilesToDelete": "No old report files to delete.",
2164
- "reportFilesPreserved": "Report files preserved.",
2165
- "reportSaveFailed": "Failed to save report to: {reportPath}",
2166
- "reportSaved": "Report saved to: {reportPath}"
2211
+ "cleaningUpReportFiles": "Alte Berichtsdateien bereinigen...",
2212
+ "couldNotDelete": "{file} konnte nicht gelöscht werden: {error}",
2213
+ "deletedOldReportFiles": "{count} alte Berichtsdatei(en) gelöscht.",
2214
+ "errorCleaningUpReports": "Fehler beim Bereinigen der Berichte: {error}",
2215
+ "noOldReportFilesToDelete": "Keine alten Berichtsdateien zum Löschen.",
2216
+ "reportFilesPreserved": "Berichtsdateien bleiben erhalten.",
2217
+ "reportSaveFailed": "Der Bericht konnte nicht gespeichert werden unter: {reportPath}",
2218
+ "reportSaved": "Bericht gespeichert unter: {reportPath}"
2167
2219
  },
2168
2220
  "ui": {
2169
2221
  "autoDetectedI18nDirectory": "Automatisch erkanntes i18n-Verzeichnis: {path}",
@@ -2319,9 +2371,6 @@
2319
2371
  "found_hardcoded_messages": "Gefundene harcodierte Nachrichten",
2320
2372
  "all_console_messages_use_translation": "Alle Konsolennachrichten verwenden Übersetzung"
2321
2373
  },
2322
- "\\nSelect directory to clean (0-${availableDirs": {
2323
- "length + 1}): ": ""
2324
- },
2325
2374
  "exportTranslations": {
2326
2375
  "createdDirectory": "Erstelltes Verzeichnis",
2327
2376
  "foundFiles": "Gefundene Dateien",
@@ -2337,9 +2386,6 @@
2337
2386
  "location": "Ort",
2338
2387
  "nextSteps": "Nächste Schritte"
2339
2388
  },
2340
- ")) {\n console": {
2341
- "log(": "Log("
2342
- },
2343
2389
  "dashboard": {
2344
2390
  "title": "Titel",
2345
2391
  "overview": "Übersicht"
@@ -2352,66 +2398,14 @@
2352
2398
  "forgotPassword": "Passwort vergessen",
2353
2399
  "signUp": "Registrieren"
2354
2400
  },
2355
- "scanner": {
2356
- "help_message": "I18n Text-Scanner Verwendung: node i18ntk-scanner.js [optionen] Optionen: --source-dir <dir> Quellverzeichnis zu scannen (Standard: ./src) --output <file> Ausgabedatei für Ergebnisse (Standard: ./i18ntk-scanner-report.json) --framework <name> Ziel-Framework (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-ergebnisse.json",
2357
- "help_options": {
2358
- "source_dir": "Quellverzeichnis zu scannen",
2359
- "output_dir": "Ausgabedatei für Ergebnisse",
2360
- "framework": "Ziel-Framework (react, vue, angular, vanilla)",
2361
- "patterns": "Benutzerdefinierte Regex-Muster (durch Kommas getrennt)",
2362
- "exclude": "Auszuschließende Verzeichnisse (durch Kommas getrennt)",
2363
- "output_report": "Ausgabedatei für den Bericht",
2364
- "min_length": "Mindestlänge des einzubeziehenden Textes",
2365
- "max_length": "Maximallänge des einzubeziehenden Textes",
2366
- "include_tests": "Testdateien in den Scan einbeziehen"
2367
- },
2368
- "starting": "🔍 Starte Text-Scanner für Framework: {framework}",
2369
- "sourceDirectory": "📁 Scanne Verzeichnis: {sourceDir}",
2370
- "frameworkDetected": "🎯 Framework erkannt: {framework}",
2371
- "scanningFiles": "📊 Scanne {fileCount} Dateien...",
2372
- "foundTexts": "📝 {textCount} zu übersetzende Texte gefunden",
2373
- "generatingReport": "📊 Generiere detaillierten Bericht...",
2374
- "reportSaved": "💾 Scan-Bericht gespeichert in: {reportPath}",
2375
- "noTextsFound": "✅ Keine hartcodierten englischen Texte gefunden",
2376
- "scanComplete": "🎉 Scan erfolgreich abgeschlossen!",
2377
- "analysisTitle": "🔍 ÜBERSETZUNGSSCANNER-ANALYSE",
2378
- "fileSummary": "📄 {file}: {count} Texte gefunden",
2379
- "textLocation": "📍 Zeile {line}: {text}",
2380
- "context": "📝 Kontext: {context}",
2381
- "severity": "⚠️ Schweregrad: {severity}",
2382
- "recommendation": "💡 Empfehlung: {recommendation}",
2383
- "welcome": {
2384
- "title": "🎯 Willkommen beim Text-Scanner!",
2385
- "description": "Dieses Tool scannt Ihren Quellcode nach hartcodierten englischen Texten, die möglicherweise übersetzt werden müssen."
2386
- },
2387
- "frameworkPrompt": {
2388
- "title": "🎯 Framework auswählen",
2389
- "available": "Verfügbare Frameworks: react, vue, angular, vanilla",
2390
- "description": "Framework-Typ eingeben (oder Enter für automatische Erkennung):",
2391
- "input": "Framework:"
2392
- },
2393
- "directoryPrompt": {
2394
- "title": "📁 Quellverzeichnis auswählen",
2395
- "current": "Aktuelles Verzeichnis: {dir}",
2396
- "description": "Verzeichnis zum Scannen eingeben (oder Enter für aktuelles Verzeichnis):",
2397
- "input": "Verzeichnis:"
2398
- },
2399
- "options": {
2400
- "includeTests": "Testdateien einbeziehen?",
2401
- "excludeDirs": "Auszuschließende Verzeichnisse (durch Kommas getrennt):",
2402
- "customPatterns": "Benutzerdefinierte Muster zu scannen (Regex):"
2403
- },
2404
- "reportGenerated": "Scan report generated: {path}",
2405
- "foundText": "Found {count} potential hardcoded text instances"
2406
- },
2407
2401
  "checkUsage": {
2408
- "usage_analysis_failed": "Usage analysis failed."
2402
+ "usage_analysis_failed": "Die Nutzungsanalyse ist fehlgeschlagen."
2409
2403
  },
2410
2404
  "completeTranslations": {
2411
- "warning_could_not_parse_filepa": "Warning: could not parse file path: {filePath}"
2405
+ "warning_could_not_parse_filepa": "Warnung: Dateipfad konnte nicht analysiert werden: {filePath}"
2412
2406
  },
2413
- "pressEnterToContinue": "Press Enter to continue...",
2407
+ "pressEnterToContinue": "Drücken Sie die Eingabetaste, um fortzufahren...",
2414
2408
  "status": {
2415
- "exitingCompleted": "Workflow completed. Exiting..."
2409
+ "exitingCompleted": "Workflow abgeschlossen. Verlassen..."
2416
2410
  }
2417
2411
  }
@@ -598,7 +598,7 @@
598
598
  "failedToAnalyzeFile": "Failed to analyze file {filePath}: {error}",
599
599
  "failedToAnalyzeLanguage": "Failed to analyze language {language}: {error}",
600
600
  "translationCompletenessAnalysisFailed": "Translation completeness analysis failed: {error}",
601
- "n": ""
601
+ "n": "\\n"
602
602
  },
603
603
  "complete": {
604
604
  "configLoadedSuccessfully": "Configuration loaded successfully",
@@ -2369,9 +2369,6 @@
2369
2369
  "found_hardcoded_messages": "Found hardcoded messages",
2370
2370
  "all_console_messages_use_translation": "All console messages use translation"
2371
2371
  },
2372
- "\\nSelect directory to clean (0-${availableDirs": {
2373
- "length + 1}): ": ""
2374
- },
2375
2372
  "exportTranslations": {
2376
2373
  "createdDirectory": "Created Directory",
2377
2374
  "foundFiles": "Found Files",
@@ -2387,9 +2384,6 @@
2387
2384
  "location": "Location",
2388
2385
  "nextSteps": "Next Steps"
2389
2386
  },
2390
- ")) {\n console": {
2391
- "log(": "Log("
2392
- },
2393
2387
  "dashboard": {
2394
2388
  "title": "Title",
2395
2389
  "overview": "Overview"