Merge pull request #15537 from keymanapp/auto/A19S21-merge-master-into-web-core

auto: A19S21 merge master into web-core 🎼
This commit is contained in:
Keyman Server 2026-01-31 09:34:14 +01:00 committed by GitHub
commit 15d86b40fb
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
15 changed files with 891 additions and 1468 deletions

View file

@ -1,5 +1,24 @@
# Keyman Version History
## 19.0.196 alpha 2026-01-30
* chore(common): Update Crowdin strings for `de` (#15511)
## 19.0.195 alpha 2026-01-29
* fix(windows): adjust symbol paths for publishing to symbol server (#15509)
## 19.0.194 alpha 2026-01-27
* fix(windows): export sym store path so symbols are published (#15493)
## 19.0.193 alpha 2026-01-26
* fix(resources): block unsupported platforms from running certain scripts (#15480)
* chore(deps): bump tar and node-gyp in /developer/src/server/src/win32/trayicon/addon-src (#15469)
* chore(deps-dev): bump lodash from 4.17.21 to 4.17.23 (#15479)
* chore(deps): bump tar from 7.5.3 to 7.5.6 in /developer/src/server/src/win32/trayicon/addon-src (#15495)
## 19.0.192 alpha 2026-01-15
* fix(linux): issues when running ./build.sh test:linux (#15434)

View file

@ -1 +1 @@
19.0.193
19.0.197

View file

@ -19,8 +19,9 @@
<string name="action_install_updates" comment="Menu notification that keyboard or dictionary updates available">Updates installieren</string>
<!-- Context: Title -->
<string name="title_version" comment="Title of Keyman for Android version">Version: %1$s</string>
<!-- Context: Text label when old Chrome version installed -->
<!-- Context: Text label when old Chrome version installed. Label replaced in Keyman 19.0 -->
<string name="text_require_chrome_57" comment="Banner text when old version of Chrome is installed"> Keyman benötigt Chrome Version 57 oder neuer.</string>
<string name="text_require_chrome_version" comment="Banner text when old version of Chrome is installed"> Keyman benötigt Chrome-Version %1$s oder neuer.</string>
<!-- Context: Button label -->
<string name="button_update_chrome" comment="Prompt to upgrade Chrome in the Play Store">Chrome aktualisieren</string>
<!-- Context: Textfield prompt (&#8230; is the ellipsis character "...") -->
@ -68,6 +69,8 @@
<!-- Context: Keyman Settings menu -->
<string name="adjust_keyboard_height" comment="Menu action to adjust keyboard height">Tastaturhöhe anpassen</string>
<!-- Context: Keyman Settings menu -->
<string name="adjust_longpress_delay" comment="Menu action to adjust longpress delay duration">Langes Drücken anpassen</string>
<!-- Context: Keyman Settings menu -->
<string name="spacebar_caption" comment="Menu action to set the spacebar caption">Leertasten-Beschriftung</string>
<!-- Context: Keyman Settings menu / Spacebar caption -->
<string name="spacebar_caption_keyboard" comment="Spacebar caption option - keyboard">Tastatur</string>
@ -85,13 +88,17 @@
<string name="spacebar_caption_hint_language_keyboard" comment="Spacebar caption hint - language + keyboard">Zeige Sprache und Tastaturnamen auf Leertaste</string>
<!-- Context: Keyman Settings menu / Spacebar caption hint -->
<string name="spacebar_caption_hint_blank" comment="Spacebar caption hint - blank">Beschriftung auf Leertaste nicht anzeigen</string>
<!-- Context: Keyman Settings menu / Show OSK with Physical Keyboard -->
<string name="show_osk" comment="show OSK when physical keyboard is connected">Bildschirmtastatur anzeigen</string>
<!-- Context: Keyman Settings menu / Show OSK with Physical Keyboard hint -->
<string name="show_osk_hint" comment="When physical keyboard is connected">Wenn die physische Tastatur verbunden ist</string>
<!-- Context: Keyman Settings menu / Haptic feedback -->
<string name="haptic_feedback" comment="haptic feedback on key press">Beim Tippen vibrieren</string>
<!-- Context: Keyman Settings menu -->
<!-- Context: Keyman Settings menu. Removed in Keyman 18 -->
<string name="show_banner" comment="text suggestions banner">Banner immer anzeigen</string>
<!-- Context: Keyman Settings menu -->
<!-- Context: Keyman Settings menu. Removed in Keyman 18 -->
<string name="show_banner_on" comment="Description when toggle is on">Nicht implementiert</string>
<!-- Context: Keyman Settings menu -->
<!-- Context: Keyman Settings menu. Removed in Keyman 18 -->
<string name="show_banner_off" comment="Description when toggle is off">Wenn ausgeschaltet, wird nur angezeigt, wenn vorhersagender Text aktiviert ist</string>
<!-- Context: Keyman Settings menu -->
<string name="show_send_crash_report" comment="permission for sending crash reports">Erlaube das Senden von Fehlerberichten</string>
@ -118,9 +125,19 @@
<!-- Context: Select Package and Select Languages menu -->
<string name="all_languages_installed" comment="Text when all languages from a keyboard package have been installed">Alle Sprachen bereits installiert</string>
<!-- Context: Adjust Keyboard Height menu -->
<string name="adjust_keyboard_instructions" comment="Instructions for adjusting keyboard height">Ziehen Sie die Tastatur, um die Höhe zu ändern. Drehen Sie das Gerät um Hoch- und Querformat anzupassen.</string>
<string name="adjust_keyboard_instructions" comment="Instructions for adjusting keyboard height">Ziehen Sie die Tastatur, um die Höhe zu verändern. Drehen Sie das Gerät, um Hoch- oder Querformat anzupassen.</string>
<!-- Context: Adjust Keyboard Height menu -->
<string name="reset_to_defaults" comment="Button to reset to default heights">Einstellungen auf Standard zurücksetzen</string>
<!-- Context: Keyboard height display format. %1$d = portrait percentage, %2$d = landscape percentage -->
<string name="keyboard_height_format" comment="Format for displaying keyboard height percentages">%1$d%% Hochformat | %2$d%% Querformat</string>
<!-- Context: Adjust Longpress Delay Time menu -->
<string name="longpress_delay_time" comment="Current longpress delay time (seconds)">Verzögerung: %1$.1f Sekunden</string>
<!-- Context: Adjust Longpress Delay Time menu -->
<string name="ic_delay_time_up" comment="Make longpress delay longer">Verzögerung verlängern</string>
<!-- Context: Adjust Longpress Delay Time menu -->
<string name="ic_delay_time_down" comment="Make longpress delay shorter">Verzögerung verkürzen</string>
<!-- Context: Adjust Longpress Delay Time menu -->
<string name="ic_longpress_delay_slider" comment="Adjust longpress delay time">Regler für Verzögerung beim langen Drücken</string>
<!-- Context: Keyman Web Browser -->
<string name="hint_text" comment="Prompt to type in the browser search bar">Suchen oder URL eingeben</string>
<!-- Context: Keyman Web Browser -->

View file

@ -82,6 +82,14 @@
<string name="fatal_keyboard_error" comment="Fatal keyboard error (keyboard ID::packageID for language). Will load default keyboard"> Fataler Tastaturfehler mit %1$s:%2$s für %3$s Sprache. Standard-Tastatur wird geladen.</string>
<!-- Context: Fatal keyboard error. -->
<string name="fatal_keyboard_error_short" comment="Error in keyboard (keyboard ID::packageID for language)."> Fehler in Tastatur %1$s:%2$s für %3$s Sprache.</string>
<!-- Context: Alert Dialog body: System WebView not installed -->
<string name="body_install_webview" comment="Notification when WebView not installed"> Keyman benötigt die Installation von WebView.\"</string>
<!-- Context: Alert Dialog body: System WebView installed but not enabled -->
<string name="body_enable_webview" comment="Notification when WebView installed but not enabled"> WebView muss eingeschaltet sein für Keyman.\"</string>
<!-- Context Button label: Install WebView -->
<string name="label_install_webview" comment="Button label to install webview">WebView installieren</string>
<!-- Context Button label: Enable WebView -->
<string name="label_enable_webview" comment="Button label to enable webview">WebView einschalten</string>
<!-- Context: Query for associated dictionary -->
<string name="query_associated_model" comment="Check if there's an available dictionary to download">Suche nach zugehörigem Wörterbuch zum Herunterladen</string>
<string name="cannot_query_associated_model" comment="Cannot reach server to check if there's an available dictionary to download"> Kann keine Verbindung zum Keyman Server herstellen, um nach dem zugehörigen Wörterbuch zu suchen</string>
@ -115,6 +123,8 @@
<string name="failed_to_retrieve_file" comment="Failed to retrieve downloaded file">Laden der heruntergeladenen Datei fehlgeschlagen</string>
<!-- Context: General Updates -->
<string name="update_check_unavailable" comment="Error message when a Keyman server can't be reached">Fehler beim Zugriff auf den Server!</string>
<!-- Context: Update-check failure notification -->
<string name="update_check_download_manager_disabled" comment="Notification that a system service needed for updates is disabled">DownloadManager ist deaktiviert - kann nicht nach Updates suchen</string>
<!-- Context: General Updates -->
<string name="update_check_current" comment="Notification that all resources are up to date">"Alle Ressourcen sind auf dem neuesten Stand!"</string>
<!-- Context: General Updates -->
@ -133,10 +143,15 @@
<string name="keyboard_install_toast" comment="Notification when a keyboard is installed">%1$s -Tastatur installiert</string>
<!-- Context: Language Settings Keyboard uninstall strings -->
<string name="keyboard_deleted_toast" comment="Notification when a keyboard is deleted">Tastatur gelöscht</string>
<!-- Context: Language Settings menu strings -->
<!-- Context: Language Settings menu strings. Removed in Keyman 18 -->
<string name="enable_corrections" comment="Enable corrections from the suggestion banner">Korrekturen aktivieren</string>
<!-- Context: Language Settings menu strings -->
<!-- Context: Language Settings menu strings. Removed in Keyman 18 -->
<string name="enable_predictions" comment="Enable predictions from the suggestion banner">Vorhersagen aktivieren</string>
<!-- Context: Language Settings menu strings - radio buttons -->
<string name="suggestions_radio_0" comment="Predictions and corrections disabled">Vorschläge deaktivieren</string>
<string name="suggestions_radio_1" comment="Suggestions Enabled: Predictions with no corrections">Nur Vorhersagen</string>
<string name="suggestions_radio_2" comment="Suggestions Enabled: Predictions with corrections">Vorhersagen mit Korrekturen</string>
<string name="suggestions_radio_3" comment="Suggestions Enabled: Predictions with auto-corrections">Vorhersagen mit Auto-Korrekturen</string>
<!-- Context: Language Settings menu strings -->
<string name="model_label">Wörterbuch</string>
<plurals name="model_count">

File diff suppressed because it is too large Load diff

View file

@ -12,7 +12,7 @@
"author": "mce",
"license": "MIT",
"dependencies": {
"node-gyp": "^10.2.0",
"node-gyp": "^12.1.0",
"bindings": "^1.5.0",
"node-addon-api": "^3.1.0"
},

View file

@ -226,6 +226,24 @@
/* Text showing name of spacebar caption - language + keyboard */
"menu-settings-spacebar-item-languageKeyboard" = "Sprache und Tastatur";
/* Label for the "Adjust Keyboard Height" item on the main settings screen */
"menu-settings-adjust-keyboard-height" = "Tastaturhöhe anpassen";
/* Title for the "Adjust Keyboard Height" settings child screen */
"adjust-keyboard-height-title" = "Tastatur anpassen";
/* Label for "Reset to Default Keyboard Height" button on the adjust height screen */
"button-label-reset-default-keyboard-height" = "Zurücksetzen auf Standard-Tastaturhöhe";
/* Instruction text to drag keyboard to resize */
"keyboard-drag-instructions" = "Ziehen Sie die Pfeil-Steuerfläche, um die Höhe der Tastatur anzupassen.";
/* Instruction to rotate to adjust landscape keyboard height (displayed when device is portrait) */
"portrait-keyboard-rotate-instructions" = "Drehen Sie das Gerät um für Querformat anzupassen.";
/* Instruction to rotate to adjust portrait keyboard height (displayed when device is landscape) */
"landscape-keyboard-rotate-instructions" = "Drehen Sie das Gerät um für Hochformat anzupassen.";
/* Short text for notification: download failure for keyboard */
"notification-download-failure-keyboard" = "Download der Tastatur fehlgeschlagen";

View file

@ -2,8 +2,8 @@ msgid ""
msgstr ""
"Project-Id-Version: keyman\n"
"Report-Msgid-Bugs-To: <support@keyman.com>\n"
"POT-Creation-Date: 2020-08-19 19:17+0200\n"
"PO-Revision-Date: 2022-10-25 04:29\n"
"POT-Creation-Date: 2025-12-18 09:43+0700\n"
"PO-Revision-Date: 2026-01-29 09:37\n"
"Last-Translator: \n"
"Language-Team: German\n"
"Language: de_DE\n"
@ -17,316 +17,426 @@ msgstr ""
"X-Crowdin-File: /master/linux/keyman-config.pot\n"
"X-Crowdin-File-ID: 504\n"
#: keyman_config/__init__.py:68
msgid "Neither sentry-sdk nor raven is available. Not enabling Sentry error reporting."
msgstr "Weder sentry-sdk noch raven sind verfügbar. Sentry-Fehlerberichte werden nicht aktiviert."
#: keyman_config/downloadkeyboard.py:23
#: keyman_config/downloadkeyboard.py:24
msgid "Download Keyman keyboards"
msgstr "Keyman-Tastaturen herunterladen"
#: keyman_config/downloadkeyboard.py:37 keyman_config/keyboard_details.py:49
#: keyman_config/keyboard_details.py:340 keyman_config/view_installed.py:205
#: keyman_config/downloadkeyboard.py:42
msgid "_Back"
msgstr "_Zurück"
#: keyman_config/downloadkeyboard.py:43
msgid "Back to search"
msgstr "Zurück zur Suche"
#: keyman_config/downloadkeyboard.py:48 keyman_config/keyboard_details.py:103
#: keyman_config/keyboard_details.py:186 keyman_config/view_installed.py:174
msgid "_Close"
msgstr "_Schließen"
#: keyman_config/install_kmp.py:99
#: keyman_config/downloadkeyboard.py:49
msgid "Close dialog"
msgstr "Dialog schließen"
#: keyman_config/downloadkeyboard.py:76
msgid "Downloading kmp file failed"
msgstr "Herunterladen der kmp-Datei fehlgeschlagen"
#: keyman_config/downloadkeyboard.py:79
msgid "Downloading keyboard file failed"
msgstr "Download der Tastaturdatei fehlgeschlagen"
#: keyman_config/get_kmp.py:34
msgid "System"
msgstr "System"
#: keyman_config/get_kmp.py:36
msgid "Shared"
msgstr "Geteilt"
#: keyman_config/get_kmp.py:38
msgid "User"
msgstr "Benutzer"
#: keyman_config/get_kmp.py:39
msgid "Unknown"
msgstr "Unbekannt"
#: keyman_config/install_kmp.py:87
msgid "You do not have permissions to install the keyboard files to the shared area /usr/local/share/keyman"
msgstr "Sie haben keine Berechtigung, die Tastaturdateien in den gemeinsamen Bereich /usr/local/share/keyman zu installieren"
#: keyman_config/install_kmp.py:103
#: keyman_config/install_kmp.py:91
msgid "You do not have permissions to install the documentation to the shared documentation area /usr/local/share/doc/keyman"
msgstr "Sie haben keine Berechtigung, die Dokumentation in den gemeinsamen Dokumentationsbereich /usr/local/share/doc/keyman zu installieren"
#: keyman_config/install_kmp.py:107
#: keyman_config/install_kmp.py:95
msgid "You do not have permissions to install the font files to the shared font area /usr/local/share/fonts"
msgstr "Sie haben keine Berechtigung, die Schriftarten in den gemeinsamen Bereich /usr/local/share/fonts zu installieren"
#: keyman_config/install_kmp.py:179
#: keyman_config/install_kmp.py:113
#, python-brace-format
msgid "install_kmp.py: error: No kmp.json or kmp.inf found in {package}"
msgstr "install_kmp.py: Fehler: Keine kmp.json oder kmp.inf in {package} gefunden"
msgid "File {kmpfile} doesn't exist"
msgstr "Datei {kmpfile} existiert nicht"
#: keyman_config/install_kmp.py:246
#: keyman_config/install_kmp.py:132
#, python-brace-format
msgid "install_kmp.py: error: No kmp.json or kmp.inf found in {packageFile}"
msgstr "install_kmp.py: Fehler: Keine kmp.json oder kmp.inf in {packageFile} gefunden"
msgid "No kmp.json or kmp.inf found in {packageFile}"
msgstr "Keine kmp.json oder kmp.inf in {packageFile} gefunden"
#: keyman_config/install_window.py:54
#: keyman_config/install_kmp.py:159
#, python-brace-format
msgid "{packageFile} requires Keyman {keymanVersion} or higher"
msgstr "{packageFile} erfordert Keyman {keymanVersion} oder höher"
#: keyman_config/install_kmp.py:307
msgid "Please use fcitx5-configtool to add the keyboard to the desired group"
msgstr "Bitte verwenden Sie fcitx5-configtool um die Tastatur zur gewünschten Gruppe hinzuzufügen"
#: keyman_config/install_window.py:62
#, python-brace-format
msgid "Installing keyboard/package {keyboardid}"
msgstr "Installiere Tastatur/Paket {keyboardid}"
#: keyman_config/install_window.py:72 keyman_config/install_window.py:93
msgid "Keyboard is installed already"
msgstr "Tastatur ist bereits installiert"
#: keyman_config/install_window.py:74
#, python-brace-format
msgid "The {name} keyboard is already installed at version {version}. Do you want to uninstall then reinstall it?"
msgstr "Die {name} -Tastatur ist bereits in Version {version} installiert. Möchten Sie sie deinstallieren und dann neu installieren?"
#: keyman_config/install_window.py:95
msgid "Details"
msgstr "Details"
#: keyman_config/install_window.py:98
msgid "README"
msgstr "LIESMICH"
#: keyman_config/install_window.py:125
#, python-brace-format
msgid "The file '{kmpfile}' is not a Keyman keyboard package!"
msgstr "Die Datei '{kmpfile}' ist kein Keyman-Tastaturpaket!"
#. i18n: The words in braces (e.g. `{name}`) are placeholders. Don't translate them!
#: keyman_config/install_window.py:141
#, python-brace-format
msgid "The {name} keyboard is already installed with a newer version {installedversion}. Do you want to uninstall it and install the older version {version}?"
msgstr "Die {name} -Tastatur ist bereits mit einer neueren Version {installedversion} installiert. Möchten Sie sie deinstallieren und dann die ältere Version {version} installieren?"
#: keyman_config/install_window.py:128
msgid "Keyboard layouts: "
msgstr "Tastatur-Layouts: "
#: keyman_config/install_window.py:161
msgid "Keyboard is installed already"
msgstr "Tastatur ist bereits installiert"
#: keyman_config/install_window.py:147
msgid "Fonts: "
msgstr "Schriftarten: "
#: keyman_config/install_window.py:167 keyman_config/keyboard_details.py:96
msgid "Package version: "
msgstr "Paketversion: "
#: keyman_config/install_window.py:179
msgid "Author: "
msgstr "Autor: "
#: keyman_config/install_window.py:197
msgid "Website: "
msgstr "Webseite: "
#: keyman_config/install_window.py:211
msgid "Copyright: "
msgstr "Copyright: "
#: keyman_config/install_window.py:245
msgid "Details"
msgstr "Details"
#: keyman_config/install_window.py:248
msgid "README"
msgstr "LIESMICH"
#: keyman_config/install_window.py:256 keyman_config/view_installed.py:200
#: keyman_config/install_window.py:170
msgid "_Install"
msgstr "_Installieren"
#: keyman_config/install_window.py:260
#: keyman_config/install_window.py:174
msgid "_Cancel"
msgstr "_Abbrechen"
#: keyman_config/install_window.py:305
#: keyman_config/install_window.py:230
msgid "Keyboard layouts: "
msgstr "Tastatur-Layouts: "
#: keyman_config/install_window.py:250
msgid "Fonts: "
msgstr "Schriftarten: "
#: keyman_config/install_window.py:272 keyman_config/keyboard_details.py:81
msgid "Package version: "
msgstr "Paketversion: "
#: keyman_config/install_window.py:288
msgid "Author: "
msgstr "Autor: "
#: keyman_config/install_window.py:306
msgid "Website: "
msgstr "Webseite: "
#: keyman_config/install_window.py:321
msgid "Copyright: "
msgstr "Copyright: "
#: keyman_config/install_window.py:384
#, python-brace-format
msgid "Keyboard {name} installed"
msgstr "Tastatur {name} installiert"
#: keyman_config/install_window.py:310 keyman_config/install_window.py:315
#: keyman_config/install_window.py:397 keyman_config/install_window.py:402
#, python-brace-format
msgid "Keyboard {name} could not be installed."
msgstr "Tastatur {name} konnte nicht installiert werden."
#: keyman_config/install_window.py:311
#: keyman_config/install_window.py:398
msgid "Error Message:"
msgstr "Fehlermeldung:"
#: keyman_config/install_window.py:316
#: keyman_config/install_window.py:403
msgid "Warning Message:"
msgstr "Warnmeldung:"
#: keyman_config/keyboard_details.py:37
#: keyman_config/keyboard_details.py:44
#, python-brace-format
msgid "{name} keyboard"
msgstr "{name}-Tastatur"
#: keyman_config/keyboard_details.py:53
#: keyman_config/keyboard_details.py:77
msgid "Package name: "
msgstr "Paketname: "
#: keyman_config/keyboard_details.py:79
msgid "Package id: "
msgstr "Paket-Id: "
#: keyman_config/keyboard_details.py:84
msgid "Package description: "
msgstr "Paketbeschreibung: "
#: keyman_config/keyboard_details.py:87
msgid "Package author: "
msgstr "Paketautor: "
#: keyman_config/keyboard_details.py:90
msgid "Package copyright: "
msgstr "Copyright des Pakets: "
#: keyman_config/keyboard_details.py:131
msgid "Keyboard filename: "
msgstr "Tastatur-Dateiname: "
#: keyman_config/keyboard_details.py:139
msgid "Keyboard name: "
msgstr "Name der Tastatur: "
#: keyman_config/keyboard_details.py:140
msgid "Keyboard id: "
msgstr "Tastatur-Id: "
#: keyman_config/keyboard_details.py:141
msgid "Keyboard version: "
msgstr "Tastaturversion: "
#: keyman_config/keyboard_details.py:143
msgid "Keyboard author: "
msgstr "Tastatur-Autor: "
#: keyman_config/keyboard_details.py:146
msgid "Keyboard license: "
msgstr "Tastatur-Lizenz: "
#: keyman_config/keyboard_details.py:148
msgid "Keyboard description: "
msgstr "Tastaturbeschreibung: "
#: keyman_config/keyboard_details.py:191
msgid "ERROR: Keyboard metadata is damaged.\n"
"Please \"Uninstall\" and then \"Install\" the keyboard."
msgstr "FEHLER: Die Tastatur-Metadaten sind beschädigt.\n"
"Bitte \"deinstallieren\" Sie die Tastatur und \"Installieren\" dann erneut."
#: keyman_config/keyboard_details.py:74
msgid "Package name: "
msgstr "Paketname: "
#: keyman_config/keyboard_details.py:85
msgid "Package id: "
msgstr "Paket-Id: "
#: keyman_config/keyboard_details.py:108
msgid "Package description: "
msgstr "Paketbeschreibung: "
#: keyman_config/keyboard_details.py:121
msgid "Package author: "
msgstr "Paketautor: "
#: keyman_config/keyboard_details.py:133
msgid "Package copyright: "
msgstr "Copyright des Pakets: "
#: keyman_config/keyboard_details.py:174
msgid "Keyboard filename: "
msgstr "Tastatur-Dateiname: "
#: keyman_config/keyboard_details.py:187
msgid "Keyboard name: "
msgstr "Name der Tastatur: "
#: keyman_config/keyboard_details.py:198
msgid "Keyboard id: "
msgstr "Tastatur-Id: "
#: keyman_config/keyboard_details.py:209
msgid "Keyboard version: "
msgstr "Tastaturversion: "
#: keyman_config/keyboard_details.py:221
msgid "Keyboard author: "
msgstr "Tastatur-Autor: "
#: keyman_config/keyboard_details.py:232
msgid "Keyboard license: "
msgstr "Tastatur-Lizenz: "
#: keyman_config/keyboard_details.py:243
msgid "Keyboard description: "
msgstr "Tastaturbeschreibung: "
#: keyman_config/keyboard_details.py:334
#: keyman_config/keyboard_details.py:220
#, python-brace-format
msgid "Scan this code to load this keyboard\n"
"on another device or <a href='{uri}'>share online</a>"
msgstr "Scannen Sie diesen Code, um diese Tastatur\n"
"auf einem anderen Gerät zu laden oder <a href='{uri}'>online</a> zu teilen"
#: keyman_config/options.py:24
#, python-brace-format
msgid "{packageId} Settings"
msgstr "{packageId} Einstellungen"
#: keyman_config/view_installed.py:30
msgid "Keyman Configuration"
msgstr "Keyman-Einstellungen"
#: keyman_config/view_installed.py:60
msgid "Choose a kmp file..."
msgstr "KMP-Datei auswählen..."
#. i18n: file type in file selection dialog
#: keyman_config/view_installed.py:65
msgid "KMP files"
msgstr "KMP-Dateien"
#. i18n: column header in table displaying installed keyboards
#: keyman_config/view_installed.py:141
#: keyman_config/keyboard_layouts_widget.py:37
msgid "Icon"
msgstr "Icon"
#. i18n: column header in table displaying installed keyboards
#: keyman_config/view_installed.py:145
#: keyman_config/keyboard_layouts_widget.py:41
msgid "Name"
msgstr "Name"
#. i18n: column header in table displaying installed keyboards
#: keyman_config/view_installed.py:148
#: keyman_config/keyboard_layouts_widget.py:44
msgid "Version"
msgstr "Version"
#: keyman_config/view_installed.py:161
#. i18n: column header in table displaying installed keyboards
#: keyman_config/keyboard_layouts_widget.py:47
msgid "Area"
msgstr "Bereich"
#: keyman_config/keyboard_layouts_widget.py:65
msgid "_Uninstall"
msgstr "_Deinstallieren"
#: keyman_config/view_installed.py:162 keyman_config/view_installed.py:304
#: keyman_config/keyboard_layouts_widget.py:66 keyman_config/keyboard_layouts_widget.py:125
msgid "Uninstall keyboard"
msgstr "Tastatur deinstallieren"
#: keyman_config/view_installed.py:167
#: keyman_config/keyboard_layouts_widget.py:71
msgid "_About"
msgstr "_Über"
#: keyman_config/view_installed.py:168 keyman_config/view_installed.py:306
#: keyman_config/keyboard_layouts_widget.py:72 keyman_config/keyboard_layouts_widget.py:127
msgid "About keyboard"
msgstr "Über die Tastatur"
#: keyman_config/view_installed.py:173
#: keyman_config/keyboard_layouts_widget.py:77
msgid "_Help"
msgstr "_Hilfe"
#: keyman_config/view_installed.py:174 keyman_config/view_installed.py:305
#: keyman_config/keyboard_layouts_widget.py:78 keyman_config/keyboard_layouts_widget.py:126
msgid "Help for keyboard"
msgstr "Hilfe zur Tastatur"
#: keyman_config/view_installed.py:179
#: keyman_config/keyboard_layouts_widget.py:83
msgid "_Options"
msgstr "_Optionen"
#: keyman_config/view_installed.py:180 keyman_config/view_installed.py:307
#: keyman_config/keyboard_layouts_widget.py:84 keyman_config/keyboard_layouts_widget.py:128
msgid "Settings for keyboard"
msgstr "Einstellungen für Tastatur"
#: keyman_config/view_installed.py:190
msgid "_Refresh"
msgstr "_Aktualisieren"
#: keyman_config/view_installed.py:191
msgid "Refresh keyboard list"
msgstr "Tastaturliste aktualisieren"
#: keyman_config/view_installed.py:195
msgid "_Download"
msgstr "_Download"
#: keyman_config/view_installed.py:196
msgid "Download and install a keyboard from the Keyman website"
msgstr "Laden und installieren Sie eine Tastatur von der Keyman-Website"
#: keyman_config/view_installed.py:201
msgid "Install a keyboard from a file"
msgstr "Tastatur aus einer Datei installieren"
#: keyman_config/view_installed.py:206
msgid "Close window"
msgstr "Fenster schließen"
#: keyman_config/view_installed.py:278
#: keyman_config/keyboard_layouts_widget.py:97
#, python-brace-format
msgid "Uninstall keyboard {package}"
msgstr "Tastatur {package} deinstallieren"
#: keyman_config/view_installed.py:280
#: keyman_config/keyboard_layouts_widget.py:99
#, python-brace-format
msgid "Help for keyboard {package}"
msgstr "Hilfe zur Tastatur {package}"
#: keyman_config/view_installed.py:282
#: keyman_config/keyboard_layouts_widget.py:101
#, python-brace-format
msgid "About keyboard {package}"
msgstr "Über die Tastatur {package}"
#: keyman_config/view_installed.py:284
#: keyman_config/keyboard_layouts_widget.py:103
#, python-brace-format
msgid "Settings for keyboard {package}"
msgstr "Einstellungen für Tastatur {package}"
#: keyman_config/view_installed.py:349
#: keyman_config/keyboard_layouts_widget.py:141
msgid "Uninstall keyboard package?"
msgstr "Tastaturpaket deinstallieren?"
#: keyman_config/view_installed.py:351
#: keyman_config/keyboard_layouts_widget.py:142
#, python-brace-format
msgid "Are you sure that you want to uninstall the {keyboard} keyboard and its fonts?"
msgstr "Sind Sie sicher, dass Sie die {keyboard} -Tastatur und zugehörige Schriftarten deinstallieren möchten?"
msgid "Are you sure that you want to uninstall the {keyboard} keyboard?"
msgstr "Sind Sie sicher, dass Sie die {keyboard} -Tastatur deinstallieren möchten?"
#: keyman_config/welcome.py:22
#: keyman_config/keyboard_layouts_widget.py:149
msgid "The following fonts will also be uninstalled:\n"
msgstr "Die folgenden Schriftarten werden ebenfalls deinstalliert:\n"
#: keyman_config/keyboard_layouts_widget.py:160
msgid "Uninstalling keyboard failed.\n\n"
"Error message: "
msgstr "Tastatur konnte nicht deinstalliert werden.\n\n"
"Fehlermeldung: "
#: keyman_config/keyboard_options_view.py:26
#, python-brace-format
msgid "{packageId} Settings"
msgstr "{packageId} Einstellungen"
#: keyman_config/options_widget.py:16
msgid "General"
msgstr "Allgemein"
#: keyman_config/options_widget.py:24
msgid "Automatically report errors to keyman.com"
msgstr "Fehler automatisch an keyman.com melden"
#: keyman_config/options_widget.py:39
msgid "Simulate AltGr with Ctrl + Alt"
msgstr "AltGr mit Strg+Alt simulieren"
#: keyman_config/sentry_handling.py:55 keyman_config/sentry_handling.py:58
msgid "Neither sentry-sdk nor raven is available. Not enabling Sentry error reporting."
msgstr "Weder sentry-sdk noch raven sind verfügbar. Sentry-Fehlerberichte werden nicht aktiviert."
#: keyman_config/uninstall_kmp.py:85
#, python-format
msgid "You do not have permission to uninstall the files in %s. You need to run this with `sudo`."
msgstr "Sie haben keine Berechtigung die Dateien in %s zu deinstallieren. Sie müssen dies mit `sudo` ausführen."
#: keyman_config/uninstall_kmp.py:136
msgid "Please use fcitx5-configtool to remove the keyboard from the group"
msgstr "Bitte verwenden Sie fcitx5-configtool um die Tastatur aus der Gruppe zu entfernen"
#: keyman_config/view_installed.py:38
msgid "Keyman Configuration"
msgstr "Keyman-Einstellungen"
#: keyman_config/view_installed.py:69
msgid "Choose a kmp file..."
msgstr "KMP-Datei auswählen..."
#. i18n: file type in file selection dialog
#: keyman_config/view_installed.py:74
msgid "KMP files"
msgstr "KMP-Dateien"
#: keyman_config/view_installed.py:107
msgid "ibus-daemon is not running. Try to start ibus-daemon now?"
msgstr "ibus-daemon läuft nicht. Soll der ibus-daemon jetzt gestartet werden?"
#: keyman_config/view_installed.py:109
msgid "If you just recently installed Keyman you might have to reboot or logout and login again."
msgstr "Wenn Sie Keyman vor kurzem installiert haben, müssen Sie neu starten oder sich abmelden und sich erneut anmelden."
#: keyman_config/view_installed.py:117
msgid "Unable to start ibus-daemon. Please reboot or logout and login again."
msgstr "Der ibus-daemon kann nicht gestartet werden. Bitte neu starten oder abmelden und erneut anmelden."
#: keyman_config/view_installed.py:151
msgid "Keyboard Layouts"
msgstr "Tastatur-Layouts"
#: keyman_config/view_installed.py:152
msgid "Options"
msgstr "Einstellungen"
#: keyman_config/view_installed.py:159
msgid "_Install keyboard..."
msgstr "Tastatur installieren..."
#: keyman_config/view_installed.py:160
msgid "Install a keyboard from a file"
msgstr "Tastatur aus einer Datei installieren"
#: keyman_config/view_installed.py:164
msgid "_Download keyboard..."
msgstr "Tastatur herunterladen..."
#: keyman_config/view_installed.py:165
msgid "Download and install a keyboard from the Keyman website"
msgstr "Laden und installieren Sie eine Tastatur von der Keyman-Website"
#: keyman_config/view_installed.py:169
msgid "_Refresh"
msgstr "_Aktualisieren"
#: keyman_config/view_installed.py:170
msgid "Refresh keyboard list"
msgstr "Tastaturliste aktualisieren"
#: keyman_config/view_installed.py:175
msgid "Close window"
msgstr "Fenster schließen"
#: keyman_config/welcome.py:25
#, python-brace-format
msgid "{name} installed"
msgstr "{name} installiert"
#: keyman_config/welcome.py:40
#: keyman_config/welcome.py:43
msgid "Open in _Web browser"
msgstr "Im _Web-Browser öffnen"
#: keyman_config/welcome.py:42
#: keyman_config/welcome.py:45
msgid "Open in the default web browser to do things like printing"
msgstr "Im Standard-Browser öffnen, z.B. um zu Drucken"
#: keyman_config/welcome.py:45
#: keyman_config/welcome.py:48
msgid "_OK"
msgstr "_OK"
#: km-config:53
msgid "Missing requirements. Please install python3-fonttools."
msgstr "Fehlende Anforderungen. Bitte python3-fonttools installieren."

View file

@ -31,6 +31,9 @@
/* Message displayed in Configuration window when keyboard metadata cannot be loaded */
"message-error-unknown-metadata" = "unbekannt";
/* Configuration window section heading when keyboard has no package name */
"unknown-package-name" = "Unbenanntes Tastaturpaket";
/* Button text to acknowledge that .kmp file could not be read */
"button-keyboard-file-unreadable" = "OK";
@ -67,8 +70,11 @@
/* copyright label in the Package Information window */
"copyright-label" = "Copyright:";
/* message displayed to alert user to need grant accessibility permission */
/* message displayed to alert user to grant accessibility permission in Preferences, pre-Ventura */
"privacy-alert-text" = "Um richtig zu funktionieren, benötigt Keyman Funktionen zur Barrierefreiheit:\n\nDazu in den Systemeinstellungen, Sicherheit & Privatsphäre den Zugriff gewähren.\nStarten Sie anschließend Ihr System neu.";
/* message displayed to alert user to grant accessibility permission in Settings, for macOS Ventura and later */
"privacy-alert-text-ventura" = "Um richtig zu funktionieren, benötigt Keyman Funktionen zur Barrierefreiheit:\n\nDazu in den Systemeinstellungen, Sicherheit & Privatsphäre den Zugriff gewähren.\nStarten Sie anschließend Ihr System neu.";
/* Text of menu item in Input Menu when no Keyboards are configured -- include parentheses */
"no-keyboard-configured-menu-placeholder" = "(Keine Tastatur konfiguriert)";

159
package-lock.json generated
View file

@ -1360,19 +1360,6 @@
"dev": true,
"license": "MIT"
},
"node_modules/@cspotcode/source-map-support": {
"version": "0.8.1",
"dev": true,
"license": "MIT",
"optional": true,
"peer": true,
"dependencies": {
"@jridgewell/trace-mapping": "0.3.9"
},
"engines": {
"node": ">=12"
}
},
"node_modules/@esbuild/netbsd-arm64": {
"version": "0.25.0",
"resolved": "https://registry.npmjs.org/@esbuild/netbsd-arm64/-/netbsd-arm64-0.25.0.tgz",
@ -1652,17 +1639,6 @@
"dev": true,
"license": "MIT"
},
"node_modules/@jridgewell/trace-mapping": {
"version": "0.3.9",
"dev": true,
"license": "MIT",
"optional": true,
"peer": true,
"dependencies": {
"@jridgewell/resolve-uri": "^3.0.3",
"@jridgewell/sourcemap-codec": "^1.4.10"
}
},
"node_modules/@keymanapp/auto-history-action": {
"resolved": "resources/build/version",
"link": true
@ -3272,34 +3248,6 @@
"dev": true,
"license": "MIT"
},
"node_modules/@tsconfig/node10": {
"version": "1.0.8",
"dev": true,
"license": "MIT",
"optional": true,
"peer": true
},
"node_modules/@tsconfig/node12": {
"version": "1.0.9",
"dev": true,
"license": "MIT",
"optional": true,
"peer": true
},
"node_modules/@tsconfig/node14": {
"version": "1.0.1",
"dev": true,
"license": "MIT",
"optional": true,
"peer": true
},
"node_modules/@tsconfig/node16": {
"version": "1.0.2",
"dev": true,
"license": "MIT",
"optional": true,
"peer": true
},
"node_modules/@types/accepts": {
"version": "1.3.7",
"resolved": "https://registry.npmjs.org/@types/accepts/-/accepts-1.3.7.tgz",
@ -4552,16 +4500,6 @@
"acorn": "^6.0.0 || ^7.0.0 || ^8.0.0"
}
},
"node_modules/acorn-walk": {
"version": "8.2.0",
"dev": true,
"license": "MIT",
"optional": true,
"peer": true,
"engines": {
"node": ">=0.4.0"
}
},
"node_modules/agent-base": {
"version": "6.0.2",
"dev": true,
@ -4741,13 +4679,6 @@
"integrity": "sha512-klpgFSWLW1ZEs8svjfb7g4qWY0YS5imI82dTg+QahUvJ8YqAY0P10Uk8tTyh9ZGuYEZEMaeJYCF5BFuX552hsw==",
"license": "MIT"
},
"node_modules/arg": {
"version": "4.1.3",
"dev": true,
"license": "MIT",
"optional": true,
"peer": true
},
"node_modules/argparse": {
"version": "2.0.1",
"dev": true,
@ -5911,13 +5842,6 @@
"version": "1.0.3",
"license": "MIT"
},
"node_modules/create-require": {
"version": "1.1.1",
"dev": true,
"license": "MIT",
"optional": true,
"peer": true
},
"node_modules/cross-spawn": {
"version": "7.0.6",
"resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz",
@ -9760,7 +9684,9 @@
}
},
"node_modules/lodash": {
"version": "4.17.21",
"version": "4.17.23",
"resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.23.tgz",
"integrity": "sha512-LgVTMpQtIopCi79SJeDiP0TfWi5CNEc/L/aRdTh3yIvmZXTnheWpKjSZhnvMl8iXbC1tFg9gdHHDMLoV7CnG+w==",
"dev": true,
"license": "MIT"
},
@ -9920,13 +9846,6 @@
"url": "https://github.com/sponsors/sindresorhus"
}
},
"node_modules/make-error": {
"version": "1.3.6",
"dev": true,
"license": "ISC",
"optional": true,
"peer": true
},
"node_modules/make-fetch-happen": {
"version": "13.0.1",
"resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-13.0.1.tgz",
@ -13020,61 +12939,6 @@
"typescript": ">=4.2.0"
}
},
"node_modules/ts-node": {
"version": "10.9.1",
"resolved": "https://registry.npmjs.org/ts-node/-/ts-node-10.9.1.tgz",
"integrity": "sha512-NtVysVPkxxrwFGUUxGYhfux8k78pQB3JqYBXlLRZgdGUqTO5wU/UyHop5p70iEbGhB7q5KmiZiU0Y3KlJrScEw==",
"dev": true,
"optional": true,
"peer": true,
"dependencies": {
"@cspotcode/source-map-support": "^0.8.0",
"@tsconfig/node10": "^1.0.7",
"@tsconfig/node12": "^1.0.7",
"@tsconfig/node14": "^1.0.0",
"@tsconfig/node16": "^1.0.2",
"acorn": "^8.4.1",
"acorn-walk": "^8.1.1",
"arg": "^4.1.0",
"create-require": "^1.1.0",
"diff": "^4.0.1",
"make-error": "^1.1.1",
"v8-compile-cache-lib": "^3.0.1",
"yn": "3.1.1"
},
"bin": {
"ts-node": "dist/bin.js",
"ts-node-cwd": "dist/bin-cwd.js",
"ts-node-esm": "dist/bin-esm.js",
"ts-node-script": "dist/bin-script.js",
"ts-node-transpile-only": "dist/bin-transpile.js",
"ts-script": "dist/bin-script-deprecated.js"
},
"peerDependencies": {
"@swc/core": ">=1.2.50",
"@swc/wasm": ">=1.2.50",
"@types/node": "*",
"typescript": ">=2.7"
},
"peerDependenciesMeta": {
"@swc/core": {
"optional": true
},
"@swc/wasm": {
"optional": true
}
}
},
"node_modules/ts-node/node_modules/diff": {
"version": "4.0.2",
"dev": true,
"license": "BSD-3-Clause",
"optional": true,
"peer": true,
"engines": {
"node": ">=0.3.1"
}
},
"node_modules/tsc-watch": {
"version": "4.6.2",
"dev": true,
@ -13458,13 +13322,6 @@
"uuid": "dist/bin/uuid"
}
},
"node_modules/v8-compile-cache-lib": {
"version": "3.0.1",
"dev": true,
"license": "MIT",
"optional": true,
"peer": true
},
"node_modules/v8-to-istanbul": {
"version": "9.0.1",
"dev": true,
@ -13922,16 +13779,6 @@
"node": ">= 4.0.0"
}
},
"node_modules/yn": {
"version": "3.1.1",
"dev": true,
"license": "MIT",
"optional": true,
"peer": true,
"engines": {
"node": ">=6"
}
},
"node_modules/yocto-queue": {
"version": "0.1.0",
"dev": true,

View file

@ -2375,6 +2375,11 @@ builder_describe_platform() {
fi
done
done
if [[ ${#_builder_targets[@]} == 0 ]]; then
builder_die "This script cannot be run on $builder_platform; supported platforms are: ${_builder_targets_excluded_by_platform[@]}"
fi
}
# Returns 0 if the specified target is excluded by platform requirements

View file

@ -31,7 +31,7 @@ builder_describe \
"--help.keyman.com=HELP_KEYMAN_COM path to help.keyman.com repository" \
"--symbols-local-path=LOCAL_SYMBOLS_PATH local path to symbols directory" \
"--symbols-remote-path=REMOTE_SYMBOLS_PATH remote path to symbols directory" \
"--symbols-subdir=SYMBOLS_SUBDIR subdirectory containing symbols"
"--symbols-subdir=SYMBOLS_SUBDIR subdirectory containing symbols [unused; TODO: remove in v20]"
builder_parse "$@"
@ -126,6 +126,8 @@ function publish_action() {
tc_upload_help "api documentation" developer
}
export KEYMAN_SYMSTOREPATH="$LOCAL_SYMBOLS_PATH"
if builder_has_action all; then
build_developer_action
publish_action

View file

@ -11,14 +11,14 @@ ba_win_download_symbol_server_index() {
builder_echo start "download symbol server index" "Downloading symbol server index"
(
# shellcheck disable=SC2154
mkdir -p "${LOCAL_SYMBOLS_PATH}/${SYMBOLS_SUBDIR}"
mkdir -p "${LOCAL_SYMBOLS_PATH}/000admin"
# shellcheck disable=SC2164
cd "${LOCAL_SYMBOLS_PATH}/${SYMBOLS_SUBDIR}"
cd "${LOCAL_SYMBOLS_PATH}/000admin"
# shellcheck disable=SC2154
tc_rsync_download "${REMOTE_SYMBOLS_PATH}/${SYMBOLS_SUBDIR}/lastid.txt" "."
tc_rsync_download "${REMOTE_SYMBOLS_PATH}/${SYMBOLS_SUBDIR}/history.txt" "."
tc_rsync_download "${REMOTE_SYMBOLS_PATH}/${SYMBOLS_SUBDIR}/server.txt" "."
tc_rsync_download "${REMOTE_SYMBOLS_PATH}/000admin/lastid.txt" "."
tc_rsync_download "${REMOTE_SYMBOLS_PATH}/000admin/history.txt" "."
tc_rsync_download "${REMOTE_SYMBOLS_PATH}/000admin/server.txt" "."
)
builder_echo end "download symbol server index" success "Finished downloading symbol server index"
}
@ -32,6 +32,10 @@ ba_win_publish_new_symbols() {
(
# shellcheck disable=SC2164
cd "${LOCAL_SYMBOLS_PATH}"
# ensure lower case 000admin (it may become capitalized from symsrv touching it)
mv 000Admin 000admin
tc_rsync_upload "." "${REMOTE_SYMBOLS_PATH}"
)
builder_echo end "publish new symbols" success "Finished publishing new symbols to symbol server"

View file

@ -33,7 +33,7 @@ builder_describe \
"--help.keyman.com=HELP_KEYMAN_COM path to help.keyman.com repository" \
"--symbols-local-path=LOCAL_SYMBOLS_PATH local path to symbols directory" \
"--symbols-remote-path=REMOTE_SYMBOLS_PATH remote path to symbols directory" \
"--symbols-subdir=SYMBOLS_SUBDIR subdirectory containing symbols"
"--symbols-subdir=SYMBOLS_SUBDIR subdirectory containing symbols [unused; TODO: remove in v20]"
builder_parse "$@"
@ -111,6 +111,8 @@ function windows_publish_action() {
builder_echo end "publish windows" success "Finished publishing Keyman for Windows"
}
export KEYMAN_SYMSTOREPATH="$LOCAL_SYMBOLS_PATH"
if builder_has_action all; then
windows_build_action
windows_test_action

View file

@ -295,6 +295,10 @@
<string name="koAltGrCtrlAlt" comment="General options - Ctrl+Alt simulates AltGr on computers without AltGr">AltGr mit Strg+Alt simulieren</string>
<!-- Context: Configuration Dialog - Options tab -->
<!-- String Type: FormatString -->
<!-- Introduced: 18.0.95 -->
<string name="koRightModifierHK" comment="General options - Right Ctrl Alt and Shift trigger hotkey">Rechte Modifikations-Tasten für Tastenkürzel erlauben</string>
<!-- Context: Configuration Dialog - Options tab -->
<!-- String Type: FormatString -->
<!-- Introduced: 9.0.480.0 -->
<string name="koDeadkeyConversion" comment="Advanced options - Base keyboard deadkeys are treated as normal keys">Hardware-Deadkeys wie normale Tasten behandeln</string>
<!-- Context: Configuration Dialog - Options tab -->
@ -323,6 +327,10 @@
<string name="koShowWelcome" comment="Startup options - show/hide welcome screen">Willkommensbildschirm anzeigen</string>
<!-- Context: Configuration Dialog - Options tab -->
<!-- String Type: FormatString -->
<!-- Modified: 18.0.96.0 -->
<string name="koCheckForUpdates" comment="Automatically check for updates and download">Automatisch nach Updates suchen und herunterladen</string>
<!-- Context: Configuration Dialog - Options tab -->
<!-- String Type: FormatString -->
<!-- Introduced: 7.0.236.0 -->
<string name="koTestKeymanFunctioning" comment="Startup options - test for conflicting apps when Product starts">Beim Start von Keyman nach inkompatiblen Anwendungen suchen</string>
<!-- Context: Configuration Dialog - Options tab -->
@ -416,6 +424,14 @@
<string name="S_Support_Copyright" comment="Support - Product Copyright">Copyright 1994-2009 Tavultesoft Pty Ltd. Alle Rechte vorbehalten.</string>
<!-- Context: Configuration Dialog - Support tab -->
<!-- String Type: PlainText -->
<!-- Introduced: 18.0.94.0 -->
<string name="S_Support_CreatedBySILGlobal" comment="Created by {SIL Global} ">Erstellt von %1$s</string>
<!-- Context: Configuration Dialog - Support tab -->
<!-- String Type: PlainText -->
<!-- Introduced: 18.0.94.0 -->
<string name="S_Support_CopyrightSILGlobal" comment="Copyright © {SIL Global}. All Rights Reserved.">Copyright © %1$s. Alle Rechte vorbehalten.</string>
<!-- Context: Configuration Dialog - Support tab -->
<!-- String Type: PlainText -->
<!-- Introduced: 7.0.230.0 -->
<string name="S_Support_Version" comment="Support - version">Version</string>
<!-- Context: Configuration Dialog - Support tab -->
@ -442,6 +458,30 @@
<!-- String Type: PlainText -->
<!-- Introduced: 7.0.230.0 -->
<string name="S_Menu_Diagnostics_Diagnostics" comment="Support button submenu - performs a diagnostic report">Diagnostik</string>
<!-- Context: Configuration Dialog - Update tab -->
<!-- String Type: PlainText -->
<!-- Introduced: 18.0.168 -->
<string name="S_No_Updates_Available" comment="Update tab - no updates are available">Keine Updates verfügbar.</string>
<!-- Context: Configuration Dialog - Update tab -->
<!-- String Type: PlainText -->
<!-- Introduced: 18.0.168 -->
<string name="S_Updates_Available" comment="Update tab - informs user updates are available ">Updates sind verfügbar, die beim nächsten Neustart von Windows installiert werden:</string>
<!-- Context: Configuration Dialog - Update tab -->
<!-- String Type: PlainText -->
<!-- Introduced: 18.0.217 -->
<string name="S_Update_Current_Version" comment="Update tab Currently Installed Version">Aktuell installierte Version</string>
<!-- Context: Configuration Dialog - Update tab -->
<!-- String Type: PlainText -->
<!-- Introduced: 18.0.217 -->
<string name="S_Update_New_Version" comment="Update tab New Version">Neue Version</string>
<!-- Context: Configuration Dialog - Update tab pop up -->
<!-- String Type: PlainText -->
<!-- Introduced: 18.0.168 -->
<string name="S_Update_Restart_Req" comment="Update tab pop up - warns user restart will require restart ">Die Installation des Updates erfordert einen Neustart Ihres Computers, bevor Sie Keyman weiter verwenden können. Trotzdem aktualisieren?</string>
<!-- Context: Configuration Dialog - Update on boot pop up -->
<!-- String Type: PlainText -->
<!-- Introduced: 18.0.168 -->
<string name="S_Ready_To_Install" comment="Update on boot pop up - inform user update about to install">Ein Update für Keyman wurde heruntergeladen und kann installiert werden.</string>
<!-- Context: Download Keyboard Dialog -->
<!-- String Type: PlainText -->
<!-- Introduced: 7.0.230.0 -->
@ -533,6 +573,14 @@
<string name="SKHotkeyConflicts_Interface" comment="Hotkey dialog - warning of hotkey conflict with hotkey for another interface hotkey">Das Tastenkürzel %1$s steht in Konflikt mit einem anderen Tastenkürzel. Wenn Sie fortfahren, wird das andere Tastenkürzel gelöscht. Fortfahren?</string>
<!-- Context: Online Update Dialog -->
<!-- String Type: PlainText -->
<!-- Introduced: 18.0.230.0 -->
<string name="S_Update" comment="Update tab name">Aktualisieren</string>
<!-- Context: Online Update Dialog -->
<!-- String Type: PlainText -->
<!-- Introduced: 18.0.230.0 -->
<string name="S_Update_Now" comment="Update now button">Jetzt aktualisieren</string>
<!-- Context: Online Update Dialog -->
<!-- String Type: PlainText -->
<!-- Introduced: 7.0.230.0 -->
<string name="S_Update_Title" comment="Update dialog title, where Keyman = product name">Aktualisierte Keyman Komponenten verfügbar</string>
<!-- Context: Online Update Dialog -->
@ -602,16 +650,35 @@
<!-- String Type: FormatString -->
<!-- Introduced: 8.0.288.0 -->
<string name="SKUpdate_IconMenuExit" comment="Update icon - exit menu item">Update-Überprüfung &amp;beenden</string>
<!-- Context: Install Dialog -->
<!-- String Type: FormatString -->
<!-- Introduced: 17.0233.0 -->
<string name="S_Later" comment="Apply Update Later">Später</string>
<!-- Context: Update Dialog -->
<!-- String Type: FormatString -->
<!-- Introduced: 17.0233.0 -->
<string name="S_Button_Update_ApplyNow" comment="Apply update now button - update dialog">Update jetzt anwenden</string>
<!-- Context: Update Dialog -->
<!-- String Type: FormatString -->
<!-- Introduced: 18.0.217 -->
<string name="S_Button_Update_InstallNow" comment="Install update now button - update dialog">Aktualisierung jetzt installieren</string>
<!-- Context: Update Dialog -->
<!-- String Type: FormatString -->
<!-- Introduced: 17.0233.0 -->
<string name="S_Button_Update_CheckNow" comment="Check for updates now button - update dialog">Nach neuen Aktualisierungen suchen</string>
<!-- Context: Splash Dialog -->
<!-- String Type: PlainText -->
<!-- Introduced: 8.0.288.0 -->
<string name="S_Splash_Name" comment="Splash major title">Keyman</string>
<!-- Context: Splash Dialog -->
<!-- String Type: PlainText -->
<!-- Introduced: 8.0.294.0 -->
<string name="S_Splash_Start" comment="Start Keyman button">Keyman starten</string>
<!-- Context: Splash Dialog -->
<!-- String Type: PlainText -->
<!-- Introduced: 18.0 -->
<string name="S_Splash_Start_2" comment="Start {Keyman} button">%1$s starten</string>
<!-- Context: Splash Dialog -->
<!-- String Type: PlainText -->
<!-- Introduced: 8.0.294.0 -->
<string name="S_Splash_Exit" comment="Exit button">Beenden</string>
<!-- Context: Splash Dialog -->
@ -653,7 +720,6 @@
<!-- Context: Formatted Messages -->
<!-- String Type: FormatString -->
<!-- Introduced: 7.0.230.0 -->
<string name="SKShortApplicationTitle" comment="Product name">Keyman</string>
<!-- Context: Hints -->
<!-- String Type: PlainText -->
<!-- Introduced: 7.0.244.0 -->
@ -777,7 +843,6 @@
<!-- Context: Formatted Messages -->
<!-- String Type: FormatString -->
<!-- Introduced: 7.0.230.0 -->
<string name="SKApplicationTitle" comment="Product name used for the title of message boxes and message dialogs">Keyman</string>
<!-- Parameters: %1$s = Version number string -->
<!-- Context: Formatted Messages -->
<!-- Introduced: 7.0.230.0 -->