From 2931d796c234e21180698dacb607d64cca78178d Mon Sep 17 00:00:00 2001 From: Tom Voet Date: Fri, 27 Feb 2026 22:00:32 +0100 Subject: [PATCH 1/6] feat(i18n): add missing German translations --- i18n/locales/de-DE.json | 64 ++++++++++++++++++++++++++++++++++++---- lunaria/files/de-DE.json | 64 ++++++++++++++++++++++++++++++++++++---- lunaria/files/en-GB.json | 6 ++-- lunaria/files/en-US.json | 6 ++-- 4 files changed, 124 insertions(+), 16 deletions(-) diff --git a/i18n/locales/de-DE.json b/i18n/locales/de-DE.json index 9904d27dbd..5e0bd093ad 100644 --- a/i18n/locales/de-DE.json +++ b/i18n/locales/de-DE.json @@ -33,7 +33,8 @@ "navigate_results": "Ergebnisse navigieren", "go_to_result": "Ergebnis aufrufen", "open_code_view": "Code-Ansicht öffnen", - "open_docs": "Dokumentation öffnen" + "open_docs": "Dokumentation öffnen", + "disable_shortcuts": "Tastenkombinationen können in den {settings} deaktiviert werden." }, "search": { "label": "npm-Pakete durchsuchen", @@ -84,7 +85,8 @@ "appearance": "Erscheinungsbild", "display": "Anzeige", "search": "Datenquelle", - "language": "Sprache" + "language": "Sprache", + "keyboard_shortcuts": "Tastenkombinationen" }, "data_source": { "label": "Datenquelle", @@ -108,7 +110,9 @@ "accent_colors": "Akzentfarben", "clear_accent": "Akzentfarbe zurücksetzen", "translation_progress": "Übersetzungsfortschritt", - "background_themes": "Hintergrundschattierung" + "background_themes": "Hintergrundschattierung", + "keyboard_shortcuts_enabled": "Tastenkombinationen aktivieren", + "keyboard_shortcuts_enabled_description": "Tastenkombinationen können deaktiviert werden, wenn sie mit anderen Browser- oder Systemkürzeln in Konflikt stehen" }, "i18n": { "missing_keys": "{count} fehlende Übersetzung | {count} fehlende Übersetzungen", @@ -157,6 +161,13 @@ "version": "Diese Version ist veraltet.", "no_reason": "Kein Grund angegeben" }, + "size_increase": { + "title_size": "Deutlicher Größenanstieg seit v{version}", + "title_deps": "Deutlich mehr Abhängigkeiten seit v{version}", + "title_both": "Größe und Abhängigkeiten deutlich gestiegen seit v{version}", + "size": "Installationsgröße um {percent} gestiegen ({size} größer)", + "deps": "{count} zusätzliche Abhängigkeiten" + }, "replacement": { "title": "Du brauchst diese Abhängigkeit vielleicht nicht.", "native": "Dies kann durch {replacement} ersetzt werden, verfügbar seit Node {nodeVersion}.", @@ -366,6 +377,7 @@ "date_range_multiline": "{start}\nbis {end}", "download_file": "{fileType} herunterladen", "toggle_annotator": "Annotation umschalten", + "toggle_stack_mode": "Gestapelte Ansicht ein-/ausschalten", "legend_estimation": "Schätzung", "no_data": "Keine Daten vorhanden", "y_axis_label": "{granularity} {facet}", @@ -379,6 +391,17 @@ }, "play_animation": "Animation abspielen", "pause_animation": "Animation pausieren", + "data_correction": "Datenkorrektur", + "average_window": "Durchschnittsfenster", + "smoothing": "Glättung", + "known_anomalies": "Bekannte Anomalien", + "known_anomalies_description": "Gleicht bekannte Download-Ausreißer aus, die durch Bots oder CI-Probleme entstanden sind.", + "known_anomalies_ranges": "Anomalie-Zeiträume", + "known_anomalies_range": "Von {start} bis {end}", + "known_anomalies_range_named": "{packageName}: vom {start} bis zum {end}", + "known_anomalies_none": "Keine bekannten Anomalien für dieses Paket. | Keine bekannten Anomalien für diese Pakete.", + "known_anomalies_contribute": "Anomalie-Daten einreichen", + "apply_correction": "Korrektur anwenden", "copy_alt": { "trend_none": "weitgehend gleichbleibenden", "trend_strong": "starken", @@ -692,7 +715,8 @@ "preview": "Vorschau", "code": "Code" }, - "file_path": "Dateipfad" + "file_path": "Dateipfad", + "scroll_to_top": "Nach oben scrollen" }, "badges": { "provenance": { @@ -1050,7 +1074,37 @@ "trends": { "title": "Trends vergleichen" } - } + }, + "file_changes": "Dateiänderungen", + "files_count": "{count} Datei | {count} Dateien", + "lines_hidden": "{count} Zeile ausgeblendet | {count} Zeilen ausgeblendet", + "compare_versions": "Diff", + "summary": "Zusammenfassung", + "deps_count": "{count} Abh.", + "dependencies": "Abhängigkeiten", + "dev_dependencies": "Dev-Abhängigkeiten", + "peer_dependencies": "Peer-Abhängigkeiten", + "optional_dependencies": "Optionale Abhängigkeiten", + "no_dependency_changes": "Keine Änderungen an Abhängigkeiten", + "file_filter_option": { + "all": "Gesamt ({count})", + "added": "Hinzugefügt ({count})", + "removed": "Entfernt ({count})", + "modified": "Geändert ({count})" + }, + "search_files_placeholder": "Dateien suchen...", + "no_files_all": "Keine Dateien", + "no_files_search": "Keine Dateien für \"{query}\" gefunden", + "no_files_filtered": "Keine {filter} Dateien", + "filter": { + "added": "hinzugefügten", + "removed": "entfernten", + "modified": "geänderten" + }, + "files_button": "Dateien", + "select_file_prompt": "Wähle eine Datei in der Seitenleiste, um die Änderungen anzuzeigen", + "close_files_panel": "Dateibereich schließen", + "filter_files_label": "Dateien nach Art der Änderung filtern" }, "privacy_policy": { "title": "Datenschutzerklärung", diff --git a/lunaria/files/de-DE.json b/lunaria/files/de-DE.json index bd09f03a5d..9394983463 100644 --- a/lunaria/files/de-DE.json +++ b/lunaria/files/de-DE.json @@ -32,7 +32,8 @@ "navigate_results": "Ergebnisse navigieren", "go_to_result": "Ergebnis aufrufen", "open_code_view": "Code-Ansicht öffnen", - "open_docs": "Dokumentation öffnen" + "open_docs": "Dokumentation öffnen", + "disable_shortcuts": "Tastenkombinationen können in den {settings} deaktiviert werden." }, "search": { "label": "npm-Pakete durchsuchen", @@ -83,7 +84,8 @@ "appearance": "Erscheinungsbild", "display": "Anzeige", "search": "Datenquelle", - "language": "Sprache" + "language": "Sprache", + "keyboard_shortcuts": "Tastenkombinationen" }, "data_source": { "label": "Datenquelle", @@ -107,7 +109,9 @@ "accent_colors": "Akzentfarben", "clear_accent": "Akzentfarbe zurücksetzen", "translation_progress": "Übersetzungsfortschritt", - "background_themes": "Hintergrundschattierung" + "background_themes": "Hintergrundschattierung", + "keyboard_shortcuts_enabled": "Tastenkombinationen aktivieren", + "keyboard_shortcuts_enabled_description": "Tastenkombinationen können deaktiviert werden, wenn sie mit anderen Browser- oder Systemkürzeln in Konflikt stehen" }, "i18n": { "missing_keys": "{count} fehlende Übersetzung | {count} fehlende Übersetzungen", @@ -156,6 +160,13 @@ "version": "Diese Version ist veraltet.", "no_reason": "Kein Grund angegeben" }, + "size_increase": { + "title_size": "Deutlicher Größenanstieg seit v{version}", + "title_deps": "Deutlich mehr Abhängigkeiten seit v{version}", + "title_both": "Größe und Abhängigkeiten deutlich gestiegen seit v{version}", + "size": "Installationsgröße um {percent} gestiegen ({size} größer)", + "deps": "{count} zusätzliche Abhängigkeiten" + }, "replacement": { "title": "Du brauchst diese Abhängigkeit vielleicht nicht.", "native": "Dies kann durch {replacement} ersetzt werden, verfügbar seit Node {nodeVersion}.", @@ -365,6 +376,7 @@ "date_range_multiline": "{start}\nbis {end}", "download_file": "{fileType} herunterladen", "toggle_annotator": "Annotation umschalten", + "toggle_stack_mode": "Gestapelte Ansicht ein-/ausschalten", "legend_estimation": "Schätzung", "no_data": "Keine Daten vorhanden", "y_axis_label": "{granularity} {facet}", @@ -378,6 +390,17 @@ }, "play_animation": "Animation abspielen", "pause_animation": "Animation pausieren", + "data_correction": "Datenkorrektur", + "average_window": "Durchschnittsfenster", + "smoothing": "Glättung", + "known_anomalies": "Bekannte Anomalien", + "known_anomalies_description": "Gleicht bekannte Download-Ausreißer aus, die durch Bots oder CI-Probleme entstanden sind.", + "known_anomalies_ranges": "Anomalie-Zeiträume", + "known_anomalies_range": "Von {start} bis {end}", + "known_anomalies_range_named": "{packageName}: vom {start} bis zum {end}", + "known_anomalies_none": "Keine bekannten Anomalien für dieses Paket. | Keine bekannten Anomalien für diese Pakete.", + "known_anomalies_contribute": "Anomalie-Daten einreichen", + "apply_correction": "Korrektur anwenden", "copy_alt": { "trend_none": "weitgehend gleichbleibenden", "trend_strong": "starken", @@ -691,7 +714,8 @@ "preview": "Vorschau", "code": "Code" }, - "file_path": "Dateipfad" + "file_path": "Dateipfad", + "scroll_to_top": "Nach oben scrollen" }, "badges": { "provenance": { @@ -1049,7 +1073,37 @@ "trends": { "title": "Trends vergleichen" } - } + }, + "file_changes": "Dateiänderungen", + "files_count": "{count} Datei | {count} Dateien", + "lines_hidden": "{count} Zeile ausgeblendet | {count} Zeilen ausgeblendet", + "compare_versions": "Diff", + "summary": "Zusammenfassung", + "deps_count": "{count} Abh.", + "dependencies": "Abhängigkeiten", + "dev_dependencies": "Dev-Abhängigkeiten", + "peer_dependencies": "Peer-Abhängigkeiten", + "optional_dependencies": "Optionale Abhängigkeiten", + "no_dependency_changes": "Keine Änderungen an Abhängigkeiten", + "file_filter_option": { + "all": "Gesamt ({count})", + "added": "Hinzugefügt ({count})", + "removed": "Entfernt ({count})", + "modified": "Geändert ({count})" + }, + "search_files_placeholder": "Dateien suchen...", + "no_files_all": "Keine Dateien", + "no_files_search": "Keine Dateien für \"{query}\" gefunden", + "no_files_filtered": "Keine {filter} Dateien", + "filter": { + "added": "hinzugefügten", + "removed": "entfernten", + "modified": "geänderten" + }, + "files_button": "Dateien", + "select_file_prompt": "Wähle eine Datei in der Seitenleiste, um die Änderungen anzuzeigen", + "close_files_panel": "Dateibereich schließen", + "filter_files_label": "Dateien nach Art der Änderung filtern" }, "privacy_policy": { "title": "Datenschutzerklärung", diff --git a/lunaria/files/en-GB.json b/lunaria/files/en-GB.json index 2ca555b8cc..4cbfa65aee 100644 --- a/lunaria/files/en-GB.json +++ b/lunaria/files/en-GB.json @@ -1075,11 +1075,11 @@ } }, "file_changes": "File Changes", - "files_count": "{count} files", - "lines_hidden": "{count} lines hidden", + "files_count": "{count} file | {count} files", + "lines_hidden": "{count} line hidden | {count} lines hidden", "compare_versions": "diff", "summary": "Summary", - "deps_count": "{count} deps", + "deps_count": "{count} dep | {count} deps", "dependencies": "Dependencies", "dev_dependencies": "Dev Dependencies", "peer_dependencies": "Peer Dependencies", diff --git a/lunaria/files/en-US.json b/lunaria/files/en-US.json index 2fc0c472cc..adf60cb8c2 100644 --- a/lunaria/files/en-US.json +++ b/lunaria/files/en-US.json @@ -1075,11 +1075,11 @@ } }, "file_changes": "File Changes", - "files_count": "{count} files", - "lines_hidden": "{count} lines hidden", + "files_count": "{count} file | {count} files", + "lines_hidden": "{count} line hidden | {count} lines hidden", "compare_versions": "diff", "summary": "Summary", - "deps_count": "{count} deps", + "deps_count": "{count} dep | {count} deps", "dependencies": "Dependencies", "dev_dependencies": "Dev Dependencies", "peer_dependencies": "Peer Dependencies", From 6248dc6addf5ad3a167810b87d7f1b62c238578a Mon Sep 17 00:00:00 2001 From: Tom Voet Date: Fri, 27 Feb 2026 22:03:11 +0100 Subject: [PATCH 2/6] feat(i18n): add pluralization to diff page i18n strings --- app/components/diff/MobileSidebarDrawer.vue | 4 +++- app/components/diff/SidebarPanel.vue | 8 +++++++- app/components/diff/SkipBlock.vue | 2 +- app/pages/diff/[[org]]/[packageName]/v/[versionRange].vue | 4 +++- i18n/locales/en.json | 6 +++--- 5 files changed, 17 insertions(+), 7 deletions(-) diff --git a/app/components/diff/MobileSidebarDrawer.vue b/app/components/diff/MobileSidebarDrawer.vue index 9000399d8b..9fb48e5f7f 100644 --- a/app/components/diff/MobileSidebarDrawer.vue +++ b/app/components/diff/MobileSidebarDrawer.vue @@ -65,7 +65,9 @@ watch(open, value => { ~{{ props.compare.stats.filesModified }} - {{ $t('compare.files_count', { count: props.allChanges.length }) }} + {{ + $t('compare.files_count', { count: props.allChanges.length }, props.allChanges.length) + }}