Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
48 changes: 28 additions & 20 deletions MeetingBar/Resources /Localization /de.lproj/Localizable.strings
Original file line number Diff line number Diff line change
Expand Up @@ -56,7 +56,7 @@
"preferences_appearance_status_bar_time_hide_value" = "ausblenden";
"preferences_appearance_status_bar_time_show_under_title_value" = "unter Titel anzeigen";
"preferences_appearance_status_bar_time_show_value" = "anzeigen";
"preferences_appearance_status_bar_time_title" = "Uhrzeit";
"preferences_appearance_status_bar_time_title" = "Zeige Uhrzeit";

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

🎯 Functional Correctness | 🟡 Minor | ⚡ Quick win

Use a noun phrase for this preference title.

“Zeige Uhrzeit” is an imperative and sounds awkward as a settings label. Use “Uhrzeit anzeigen” to match the surrounding option wording.

🤖 Prompt for 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.

In `@MeetingBar/Resources` /Localization /de.lproj/Localizable.strings at line 59,
Update the German localization value for
preferences_appearance_status_bar_time_title from the imperative wording to the
noun-phrase label “Uhrzeit anzeigen,” preserving the existing key and
formatting.

"preferences_appearance_status_bar_title_shorten_stepper" = "auf %d Zeichen kürzen";
"preferences_appearance_status_bar_title_hide_value" = "ausblenden";
"preferences_appearance_status_bar_title_dot_value" = "Punkt (•)";
Expand Down Expand Up @@ -178,14 +178,14 @@
"preferences_advanced_wrong_location_title" = "Falscher Ort";
"preferences_advanced_save_script_button" = "Skript speichern";
"preferences_advanced_apple_script_placeholder" = "# Schreibe Dein Skript hier\ntell application \"Music\" to pause";
"preferences_advanced_run_script_on_event_start" = "Starte das AppleScript automatisch";
"preferences_advanced_run_script_on_event_start" = "Starte das AppleScript vor betretbarem Meeting";
"preferences_advanced_test_script_on_next_event" = "Teste beim nächsten Termin";
"preferences_advanced_edit_script" = "Bearbeite das Script";
"preferences_advanced_apple_script_checkmark" = "AppleScript beim Betreten eines Meetings ausführen";
"preferences_advanced_apple_script_checkmark" = "AppleScript beim Betreten ausführen";
Comment on lines +181 to +184

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

🎯 Functional Correctness | 🟡 Minor | ⚡ Quick win

Fix the invalid AppleScript wording.

“vor betretbarem Meeting” is not valid German. Translate the event timing explicitly, for example “AppleScript beim Start eines Meetings ausführen” and “AppleScript beim Betreten eines Meetings ausführen,” as appropriate for each key.

🤖 Prompt for 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.

In `@MeetingBar/Resources` /Localization /de.lproj/Localizable.strings around
lines 181 - 184, Update the German localization value for
preferences_advanced_run_script_on_event_start to use valid wording that
explicitly means running the AppleScript when a meeting starts, such as
“AppleScript beim Start eines Meetings ausführen.” Keep
preferences_advanced_apple_script_checkmark aligned with its existing meaning of
running upon entering a meeting.


// MARK: - Preferences Advanced

"preferences_advanced_setting_warning" = "⚠️ Verwende diese Einstellungen nur, wenn Du verstehst was sie bewirken";
"preferences_advanced_setting_warning" = "Diese Einstellungen sind für Fortgeschrittene Benutzer vorgesehen";

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

🎯 Functional Correctness | 🟡 Minor | ⚡ Quick win

Use lowercase after “für”.

The sentence should read “Diese Einstellungen sind für fortgeschrittene Benutzer vorgesehen.”

🤖 Prompt for 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.

In `@MeetingBar/Resources` /Localization /de.lproj/Localizable.strings at line
188, Update the value of the "preferences_advanced_setting_warning" localization
key to use lowercase “fortgeschrittene” after “für”, while preserving the rest
of the German sentence.

"preferences_calendars_provider_gcalendar_change_account" = "Ändere den Google Account";

// MARK: - Preferences Calendars
Expand All @@ -208,11 +208,11 @@
"preferences_services_create_meeting_custom_url_placeholder" = "Bitte eine gültige URL angeben (mit http:// oder https://)";
"preferences_services_create_meeting_custom_url_value" = "Benutzerdefinierte URL";
"preferences_services_create_meeting_title" = "Meetings erstellen mit";
"preferences_services_link_service_title" = "%@-Links öffnen in";
"preferences_services_link_service_title" = "%@";

// MARK: - Preferences Services

"preferences_services_link_meeting_title" = "Meeting-Links öffnen mit";
"preferences_services_link_meeting_title" = "Standard-Browser für Meeting-Links";
"preferences_appearance_menu_show_event_details_value" = "Details als Untermenü";
"preferences_appearance_menu_show_event_icon_value" = "symbol";
"preferences_appearance_menu_show_event_end_time_value" = "Endzeit";
Expand Down Expand Up @@ -249,11 +249,11 @@
"access_screen_access_screen_access_denied_go_to_title" = "Gehe zu";
"shared_automatic_event_join_toggle" = "Automatisch zum nächsten Meeting beitreten";
"shared_automatic_event_join_tip" = "Diese Einstellung wird automatisch das nächste Meeting in ihrer voreingestellten App oder dem Browser öffnen";
"access_screen_provider_picker_label" = "Wähle den Kalender Anbieter aus";
"access_screen_provider_macos_data_source" = "Hole Daten von der MacOS Kalender App";
"access_screen_provider_macos_number_of_accounts" = "Beliebig viele verbundene Konten";
"access_screen_provider_gcalendar_data_source" = "Hole Daten direkt vom Google Kalender";
"access_screen_provider_gcalendar_number_of_accounts" = "Nur ein Google Account";
"access_screen_provider_picker_label" = "Wähle eine Kalenderquelle aus";
"access_screen_provider_macos_data_source" = "Nutzt die MacOS Kalender App als Quelle der Daten";
"access_screen_provider_macos_number_of_accounts" = "Alle konfigurieren Konten: iCloud, Google, Exchange, CalDAV, und weitere";
"access_screen_provider_gcalendar_data_source" = "Verbindet direkt durch die Google Kalender API";
"access_screen_provider_gcalendar_number_of_accounts" = "Nur ein Google Account gleichzeitig";
Comment on lines +252 to +256

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

🎯 Functional Correctness | 🟡 Minor | ⚡ Quick win

Correct the calendar-provider terminology and grammar.

These strings contain multiple German errors, including “konfigurieren Konten,” “durch die Google Kalender API,” and “Google Account.” Suggested wording:

-"access_screen_provider_picker_label" = "Wähle eine Kalenderquelle aus";
-"access_screen_provider_macos_data_source" = "Nutzt die MacOS Kalender App als Quelle der Daten";
-"access_screen_provider_macos_number_of_accounts" = "Alle konfigurieren Konten: iCloud, Google, Exchange, CalDAV, und weitere";
-"access_screen_provider_gcalendar_data_source" = "Verbindet direkt durch die Google Kalender API";
-"access_screen_provider_gcalendar_number_of_accounts" = "Nur ein Google Account gleichzeitig";
+"access_screen_provider_picker_label" = "Kalenderquelle auswählen";
+"access_screen_provider_macos_data_source" = "Nutzt die macOS-Kalender-App als Datenquelle";
+"access_screen_provider_macos_number_of_accounts" = "Alle konfigurierten Konten: iCloud, Google, Exchange, CalDAV und weitere";
+"access_screen_provider_gcalendar_data_source" = "Verbindet sich direkt über die Google-Kalender-API";
+"access_screen_provider_gcalendar_number_of_accounts" = "Nur ein Google-Konto gleichzeitig";
📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

Suggested change
"access_screen_provider_picker_label" = "Wähle eine Kalenderquelle aus";
"access_screen_provider_macos_data_source" = "Nutzt die MacOS Kalender App als Quelle der Daten";
"access_screen_provider_macos_number_of_accounts" = "Alle konfigurieren Konten: iCloud, Google, Exchange, CalDAV, und weitere";
"access_screen_provider_gcalendar_data_source" = "Verbindet direkt durch die Google Kalender API";
"access_screen_provider_gcalendar_number_of_accounts" = "Nur ein Google Account gleichzeitig";
"access_screen_provider_picker_label" = "Kalenderquelle auswählen";
"access_screen_provider_macos_data_source" = "Nutzt die macOS-Kalender-App als Datenquelle";
"access_screen_provider_macos_number_of_accounts" = "Alle konfigurierten Konten: iCloud, Google, Exchange, CalDAV und weitere";
"access_screen_provider_gcalendar_data_source" = "Verbindet sich direkt über die Google-Kalender-API";
"access_screen_provider_gcalendar_number_of_accounts" = "Nur ein Google-Konto gleichzeitig";
🤖 Prompt for 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.

In `@MeetingBar/Resources` /Localization /de.lproj/Localizable.strings around
lines 252 - 256, Update the German values for
access_screen_provider_macos_number_of_accounts,
access_screen_provider_gcalendar_data_source, and
access_screen_provider_gcalendar_number_of_accounts to use correct terminology
and grammar: “konfigurierte Konten,” “über die Google-Kalender-API,” and
“Google-Konto.”

"access_screen_try_again" = "Neuer Versuch";

// MARK: - Calendars screen
Expand Down Expand Up @@ -287,13 +287,13 @@
"preferences_appearance_menu_show_timeline_toggle" = "Visuellen Zeitstrahl für den Tag anzeigen";

"general_refresh" = "Aktualisieren";
"general_when_event_ends" = "wenn das Ereignis endet";
"general_end_of_event_notification_toggle" = "Benachrichtigung senden, wenn das Ereignis endet";
"general_when_event_ends" = "Ende des Ereignisses";
"general_end_of_event_notification_toggle" = "Benachrichtigen am Ende des Ereignisses";
"timeline_accessibility_label" = "Zeitleiste mit %d Ereignissen";
"message_clipboard_invalid_title" = "Keine gültige URL";
"message_clipboard_invalid_text" = "Die Zwischenablage enthält keinen Meeting-Link, daher kann das Meeting nicht gestartet werden.";
"message_clipboard_invalid_title" = "Kein gültiger Link";
"message_clipboard_invalid_text" = "Kein Meeting-Link in der Zwischenablage, kann nicht gestartet werden.";
"message_clipboard_empty_title" = "Zwischenablage ist leer";
"message_clipboard_empty_text" = "Die Zwischenablage enthält keinen Inhalt, daher kann das Meeting nicht gestartet werden.";
"message_clipboard_empty_text" = "Zwischenablage ist leer, kann kein Meeting starten.";
Comment on lines +291 to +296

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

🎯 Functional Correctness | 🟡 Minor | ⚡ Quick win

Make the event-end and clipboard messages grammatical.

The current text omits subjects and uses an awkward word order. Prefer “Am Ende des Ereignisses benachrichtigen,” “In der Zwischenablage wurde kein gültiger Meeting-Link gefunden. Das Meeting kann nicht gestartet werden.”, and “Die Zwischenablage ist leer. Das Meeting kann nicht gestartet werden.”

🤖 Prompt for 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.

In `@MeetingBar/Resources` /Localization /de.lproj/Localizable.strings around
lines 291 - 296, Update the German localization values for
general_end_of_event_notification_toggle,
message_clipboard_invalid_title/message_clipboard_invalid_text, and
message_clipboard_empty_title/message_clipboard_empty_text to use the requested
grammatical wording, including explicit subjects and corrected sentence order.

"message_event_script_execution_failed_title" = "AppleScript-Ausführung fehlgeschlagen";
"message_event_script_execution_failed_text" = "Das Skript in %@ ist fehlgeschlagen: %@";
"message_event_script_file_missing_title" = "AppleScript-Datei nicht gefunden";
Expand Down Expand Up @@ -341,8 +341,8 @@
"onboarding_calendar_source_description" = "Wählen Sie, wie MeetingBar Kalenderdaten liest. Beide Optionen können Google-Kalender einschließen.";
"onboarding_apple_calendar_title" = "macOS Kalender-App";
"onboarding_apple_calendar_description" = "Liest Kalender aus der Kalender-App auf diesem Mac, einschließlich aller dort konfigurierten Konten.";
"onboarding_google_calendar_title" = "Google Calendar API";
"onboarding_google_calendar_description" = "Verbindet MeetingBar direkt mit Google Calendar, ohne die macOS Kalender-App zu verwenden.";
"onboarding_google_calendar_title" = "Google Kalendar API";
"onboarding_google_calendar_description" = "Verbindet MeetingBar direkt mit Google Kalendar, ohne die macOS Kalender-App zu verwenden.";
Comment on lines +344 to +345

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

🎯 Functional Correctness | 🟡 Minor | ⚡ Quick win

Fix the “Kalendar” typo.

The German product name is “Google Kalender,” not “Google Kalendar.”

🤖 Prompt for 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.

In `@MeetingBar/Resources` /Localization /de.lproj/Localizable.strings around
lines 344 - 345, Correct the German product-name typo in the
onboarding_google_calendar_title and onboarding_google_calendar_description
localization values, replacing “Google Kalendar” with “Google Kalender” while
leaving the surrounding text unchanged.

"onboarding_authorization_title" = "Kalenderzugriff bestätigen";
"onboarding_authorization_waiting" = "Warte auf Autorisierung…";
"onboarding_authorization_apple_description" = "MeetingBar erlauben, Ereignisse aus der Kalender-App auf diesem Mac zu lesen.";
Expand All @@ -355,7 +355,7 @@
"onboarding_success_title" = "Sie sind startklar";
"onboarding_success_description" = "Ihr nächstes Meeting erscheint in der Menüleiste.";
"access_screen_provider_authorization_cancelled" = "Autorisierung wurde abgebrochen. Versuchen Sie es erneut, um Ihren Kalender zu verbinden.";
"status_bar_control_actions" = "Meeting-Aktionen";
"status_bar_control_actions" = "Weitere Aktionen";
"status_bar_control_stale" = "Kalenderaktualisierung fehlgeschlagen – zeigt zuletzt bekannte Daten";
"status_bar_control_auth_required" = "Google Calendar muss erneut verbunden werden";
"status_bar_control_reconnect" = "Google Calendar erneut verbinden";
Expand Down Expand Up @@ -387,5 +387,13 @@
"preferences_sidebar_setup" = "Einrichtung";
"status_bar_control_current_meeting" = "Aktuelles Meeting";
"status_bar_control_next_meeting" = "Nächstes Meeting";
"preferences_appearance_events_no_meeting_link_title" = "Termine ohne Meeting-Link";
"preferences_appearance_events_no_meeting_link_title" = "Ereignisse ohne Meeting-Link";
"preferences_appearance_menu_show_event_calendar_color_value" = "Kalenderfarbe";
"preferences_sidebar_advanced" = "Erweitert";
"preferences_appearance_status_bar_title_generic_value" = "Generischer Titel (Meeting)";
"onboarding_setup_title" = "MeetingBar Einrichtung";

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

🎯 Functional Correctness | 🟡 Minor | ⚡ Quick win

Use an idiomatic German compound noun.

“MeetingBar Einrichtung” should be “MeetingBar-Einrichtung” or “Einrichtung von MeetingBar”; the current spacing is grammatically incorrect in this user-facing heading.

Proposed fix
-"onboarding_setup_title" = "MeetingBar Einrichtung";
+"onboarding_setup_title" = "MeetingBar-Einrichtung";
📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

Suggested change
"onboarding_setup_title" = "MeetingBar Einrichtung";
"onboarding_setup_title" = "MeetingBar-Einrichtung";
🤖 Prompt for 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.

In `@MeetingBar/Resources` /Localization /de.lproj/Localizable.strings at line
394, Update the German localization value for onboarding_setup_title to use an
idiomatic compound noun, replacing the incorrect spaced “MeetingBar Einrichtung”
phrasing with “MeetingBar-Einrichtung” or the equivalent “Einrichtung von
MeetingBar.”

"onboarding_back" = "Zurück";
"onboarding_essentials_title" = "Wähle das tägliche Verhalten";
"onboarding_essentials_description" = "Wähle Standards für öffnen von Meetings und im Zeitplan zu bleiben.";
"onboarding_essentials_hint" = "Du kannst jedes Detail in den Einstellungen später ändern.";
"onboarding_start_using" = "Beginne MeetingBar zu nutzen";
Comment on lines +396 to +399

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

🎯 Functional Correctness | 🟡 Minor | ⚡ Quick win

Keep onboarding formality and grammar consistent.

The surrounding onboarding strings use formal “Sie,” while these entries switch to informal “Wähle/Du.” Line 397 is also grammatically incorrect. Use consistent wording such as “Tägliches Verhalten auswählen,” “Legen Sie fest, wie Meetings geöffnet werden und wie Sie den Überblick behalten,” “Sie können jedes Detail später in den Einstellungen ändern,” and “MeetingBar verwenden.”

🤖 Prompt for 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.

In `@MeetingBar/Resources` /Localization /de.lproj/Localizable.strings around
lines 396 - 399, Update the four onboarding localization values identified by
onboarding_essentials_title, onboarding_essentials_description,
onboarding_essentials_hint, and onboarding_start_using to use formal German
wording consistently; correct the description grammar and use the approved
formal phrasing for selecting daily behavior, configuring meeting opening and
schedule tracking, changing settings later, and using MeetingBar.

Loading
Loading