Skip to content

feat/german-language#587

Open
Eleria83 wants to merge 5 commits into
webadderallorg:mainfrom
Eleria83:feat/german-language
Open

feat/german-language#587
Eleria83 wants to merge 5 commits into
webadderallorg:mainfrom
Eleria83:feat/german-language

Conversation

@Eleria83

@Eleria83 Eleria83 commented May 24, 2026

Copy link
Copy Markdown

Pull Request Template

Description

translation from en to de

Motivation

german language is missing

Type of Change

New Feature

Test

Since i cannot test it i only can rely on code review.

  • Code Review done by CodeRabbit
  • Fix of issues done

Summary by CodeRabbit

  • New Features
    • German language support added across the app with full translations for editor, settings, dialogs, extensions, launch/recording flow, shortcuts, timeline, and other UI.
    • App locale list updated so German can be selected as an available interface language.

@coderabbitai

coderabbitai Bot commented May 24, 2026

Copy link
Copy Markdown
Contributor

Review Change Stack

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro Plus

Run ID: 5619eaf9-d148-433b-83be-09985455440c

📥 Commits

Reviewing files that changed from the base of the PR and between c14221a and 8aed819.

📒 Files selected for processing (1)
  • src/i18n/locales/de/settings.json
✅ Files skipped from review due to trivial changes (1)
  • src/i18n/locales/de/settings.json

📝 Walkthrough

Walkthrough

"de" is added to SUPPORTED_LOCALES and German translation JSON files are added under src/i18n/locales/de for common, dialogs, editor, timeline, settings, launch, extensions, and shortcuts.

Changes

German Locale Support

Layer / File(s) Summary
Locale configuration
src/i18n/config.ts
German locale "de" is added to the SUPPORTED_LOCALES exported constant.
Core UI, dialogs, and shortcuts
src/i18n/locales/de/common.json, src/i18n/locales/de/dialogs.json, src/i18n/locales/de/shortcuts.json
German strings for app labels, common actions, errors, export/add-font dialogs, and shortcut configuration UI.
Editor and timeline translations
src/i18n/locales/de/editor.json, src/i18n/locales/de/timeline.json
German translations for editor playback, annotations, export formats, trimming tutorial, toolbar/timeline controls, and timeline features (zoom, trim, speed, annotation, audio).
Settings, launch, and extensions translations
src/i18n/locales/de/settings.json, src/i18n/locales/de/launch.json, src/i18n/locales/de/extensions.json
German translations for settings UI (zoom, effects, captions, export, audio), recording/launch controls and permissions, update status messages, and extensions marketplace/install flows.

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~20 minutes

Possibly related PRs

Poem

🐰 I hopped in with a bag of "de",

strings and dialogs, tidy as can be.
From editor menus to timeline's tune,
German voices now hum in the room.
Hurrah — the app speaks Deutsch anew!

🚥 Pre-merge checks | ✅ 3 | ❌ 2

❌ Failed checks (1 warning, 1 inconclusive)

Check name Status Explanation Resolution
Description check ⚠️ Warning The description is incomplete; it lacks detailed explanation of changes, omits the testing guide and screenshots sections, and does not properly follow the template structure. Expand the description to include a comprehensive overview of all translation files added, clarify the testing approach, and ensure alignment with the PR template sections.
Title check ❓ Inconclusive The title 'feat/german-language' is overly vague and generic; it uses a conventional prefix but lacks specificity about the actual change (adding German i18n translations). Consider a more descriptive title like 'Add German language translations' or 'feat: Add German (de) locale translations' to clearly indicate the scope of changes.
✅ Passed checks (3 passed)
Check name Status Explanation
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 2

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In `@src/i18n/locales/de/editor.json`:
- Around line 9-46: The German locale's annotations block uses German keys which
breaks key-path lookups; rename the top-level key "Anmerkungen" to "annotations"
and change each German key to the matching English key used in en/editor.json
(e.g. "Einstellungen" -> "settings", "aktiv" -> "active", "text" -> "text",
"image" -> "image", "arrow" -> "arrow", "blur" -> "blur", "textContent" stays
"textContent", "textPlaceholder" stays "textPlaceholder", "fontStyle" ->
"fontStyle", "selectStyle" -> "selectStyle", "size" -> "size", "toggleBold" ->
"toggleBold", "toggleItalic" -> "toggleItalic", "toggleUnderline" ->
"toggleUnderline", "alignLeft" -> "alignLeft", "alignCenter" -> "alignCenter",
"alignRight" -> "alignRight", "textColor" -> "textColor", "background" ->
"background", "none" -> "none", "clearBackground" -> "clearBackground",
"uploadImage" -> "uploadImage", "supportedFormats" -> "supportedFormats",
"arrowDirection" -> "arrowDirection", "strokeWidth" -> "strokeWidth",
"arrowColor" -> "arrowColor", "deleteAnnotation" -> "deleteAnnotation",
"shortcutsAndTips" -> "shortcutsAndTips", "tipSelectAnnotation" ->
"tipSelectAnnotation", "tipCycleForward" -> "tipCycleForward",
"tipCycleBackward" -> "tipCycleBackward", "imageUploadSuccess" ->
"imageUploadSuccess", "imageUploadError" -> "imageUploadError", "blurStrength"
-> "blurStrength", "solidColor" -> "solidColor", and "borderRadius" ->
"borderRadius"; keep the German strings as values and preserve interpolation
tokens like {{width}}/{{strength}} exactly.

In `@src/i18n/locales/de/extensions.json`:
- Line 26: The translation key "von" is a localized identifier causing lookup
failures; rename the key to the canonical English identifier (e.g., replace the
"von" key with "author") while keeping the German value "Von {{author}}", and
update any code or template lookups that referenced "von" to use "author" (or
the chosen canonical key) so runtime i18n lookups succeed; locate the "von"
entry in the locales JSON and perform the key rename consistently across the
codebase.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro Plus

Run ID: 294bd7a5-8d70-4187-bf12-21d22e00674a

📥 Commits

Reviewing files that changed from the base of the PR and between ac2b393 and af57231.

📒 Files selected for processing (9)
  • src/i18n/config.ts
  • src/i18n/locales/de/common.json
  • src/i18n/locales/de/dialogs.json
  • src/i18n/locales/de/editor.json
  • src/i18n/locales/de/extensions.json
  • src/i18n/locales/de/launch.json
  • src/i18n/locales/de/settings.json
  • src/i18n/locales/de/shortcuts.json
  • src/i18n/locales/de/timeline.json

Comment thread src/i18n/locales/de/editor.json Outdated
Comment thread src/i18n/locales/de/extensions.json Outdated
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant