From da7617363e663cc5365149bfd58cdb2ceca93d5b Mon Sep 17 00:00:00 2001 From: Jaggob <37583151+Jaggob@users.noreply.github.com> Date: Tue, 26 May 2026 18:16:42 +0200 Subject: [PATCH 01/13] l10n: clean up locales + consolidate inconsistent source strings MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Scope of #77 reduced to: clean up the existing locale files so the baseline a translation platform will sync against is consistent. Long-term tooling (translatewiki vs. transifex) is decided post- ether/-transfer; this PR only touches the existing data. What changed in source strings (code side): - Failed to save settings.: collapses Saving settings failed. and Failed to save settings. (two strings, same meaning). - Pending delete retry failed. / Pending delete retry finished.: collapses Lifecycle delete retry failed. / Lifecycle delete retry finished. and unifies the deferred vs pending vs lifecycle terminology around pending. - Could not open pad.: collapses the three Unable to open pad. message variants used by the three viewer ErrorMappers. The bare 'Unable to open pad' (no period) stays as the dialog title in EmbedController — title vs. message split is intentional. - Retry pending deletes now: renamed from Retry deferred deletes now for terminology consistency. - .pad file sync interval (seconds): clearer than Copy content to .pad file interval (seconds). - Delete linked Etherpad pad when .pad file is moved to trash (+ matching hint body): much clearer than Delete pad on trash about what's pad vs .pad file. - Add trusted Etherpad hostnames or HTTPS origins.: uppercase HTTPS to match the body. - Hint: Set "authenticationMethod": "apikey" in Etherpad's settings.json.: reads more naturally than the previous reversed ordering. What changed in locale files: - Scanned lib/ + templates/ + src/ for actual t() / translate() call sites — 119 unique user-visible strings remaining after the consolidations above. - All four locales had ~35-38 orphan entries each (strings the code stopped using over time, mostly from sidebar / file-action surfaces removed in earlier sprints, plus the various Sync status: x variants that were never wired). Drop them all. - DE / DE_DE: bring up to 119/119 by hand. The new strings get fresh German; the renamed strings carry their old German values forward. A handful of pre-existing translations got polished: Health check → Verbindungsprüfung (consistent), Query-String und kein Fragment (grammar + technical accuracy), Host-only- Cookie (correct casing for the technical term), and Pad sync terminology unified to Synchronisierungs* instead of mixed Sync-*. - ES / FR: first-pass translations covering the 63 strings that were added since their last update (templates, legacy migration, embed flow, admin-settings additions, controller error messages). Native speakers / translation-platform contributors are expected to polish wording later. All three on-disk formats per locale (.json, .js, .php) are regenerated from a single source-of-truth dict so they stay byte-consistent — historically they had drifted apart on entry ordering and escaping. Test asserts updated where ErrorMapper strings were referenced literally (PublicViewer, Embed, Viewer mapper tests). PHPUnit 395/395, vitest 107/107. --- l10n/de.js | 102 +++++++-------- l10n/de.json | 102 +++++++-------- l10n/de.php | 100 ++++++--------- l10n/de_DE.js | 102 +++++++-------- l10n/de_DE.json | 102 +++++++-------- l10n/de_DE.php | 100 ++++++--------- l10n/es.js | 117 +++++++++++------- l10n/es.json | 117 +++++++++++------- l10n/es.php | 117 +++++++++++------- l10n/fr.js | 117 +++++++++++------- l10n/fr.json | 117 +++++++++++------- l10n/fr.php | 117 +++++++++++------- lib/Controller/AdminController.php | 2 +- lib/Controller/EmbedControllerErrorMapper.php | 2 +- .../PublicViewerControllerErrorMapper.php | 2 +- .../ViewerControllerErrorMapper.php | 2 +- lib/Service/EtherpadHealthCheckService.php | 2 +- lib/Settings/AdminSettings.php | 14 +-- src/admin-settings.js | 4 +- .../unit/EmbedControllerErrorMapperTest.php | 2 +- .../PublicViewerControllerErrorMapperTest.php | 4 +- .../unit/ViewerControllerErrorMapperTest.php | 2 +- 22 files changed, 694 insertions(+), 652 deletions(-) diff --git a/l10n/de.js b/l10n/de.js index b26c57b..2e4cddc 100644 --- a/l10n/de.js +++ b/l10n/de.js @@ -7,54 +7,40 @@ OC.L10N.register( "Etherpad API URL (optional)": "Etherpad-API-URL (optional)", "Optional internal URL for server-side API calls. Leave empty to use Etherpad Base URL.": "Optionale interne URL für serverseitige API-Aufrufe. Leer lassen, um die Etherpad-Basis-URL zu verwenden.", "Etherpad session cookie domain (optional)": "Etherpad-Session-Cookie-Domain (optional)", - "Auto-filled from the Nextcloud and Etherpad hosts when possible. Adjust it if your deployment uses a proxy path or a different trusted parent domain; leave empty for a host-only cookie.": "Wird, wenn möglich, automatisch aus den Nextcloud- und Etherpad-Hosts abgeleitet. Anpassen, wenn die Installation einen Proxy-Pfad oder eine andere vertrauenswürdige Parent-Domain nutzt; leer lassen für ein host-only Cookie.", + "Auto-filled from the Nextcloud and Etherpad hosts when possible. Adjust it if your deployment uses a proxy path or a different trusted parent domain; leave empty for a host-only cookie.": "Wird, wenn möglich, automatisch aus den Nextcloud- und Etherpad-Hosts abgeleitet. Anpassen, wenn die Installation einen Proxy-Pfad oder eine andere vertrauenswürdige Parent-Domain nutzt; leer lassen für ein Host-only-Cookie.", "Etherpad API key": "Etherpad-API-Schlüssel", "Detected API version:": "Erkannte API-Version:", - "Copy content to .pad file interval (seconds)": "Intervall zum Kopieren in die .pad-Datei (Sekunden)", "Controls how often pad content is copied from Etherpad into the .pad file while the pad is open.": "Steuert, wie oft der Pad-Inhalt aus Etherpad in die .pad-Datei kopiert wird, während das Pad geöffnet ist.", - "Delete pad on trash": "Pad beim Verschieben in den Papierkorb löschen", - "If enabled, moving a .pad file to trash triggers Etherpad delete.": "Wenn aktiviert, löst das Verschieben einer .pad-Datei in den Papierkorb ein Löschen in Etherpad aus.", "Allow linking external public pads": "Verlinken externer öffentlicher Pads erlauben", "External host allowlist (optional)": "Allowlist externer Hosts (optional)", - "Add trusted Etherpad hostnames or https origins. Leave empty only if all public HTTPS hosts should be trusted.": "Vertrauenswürdige Etherpad-Hostnamen oder HTTPS-Ursprünge eintragen. Nur leer lassen, wenn allen öffentlichen HTTPS-Hosts vertraut werden soll.", "Save settings": "Einstellungen speichern", - "Health check": "Health Check", + "Health check": "Verbindungsprüfung", "Consistency check": "Konsistenzprüfung", - "Retry deferred deletes now": "Aufgeschobene Löschungen jetzt wiederholen", "Pending Etherpad deletes": "Ausstehende Etherpad-Löschungen", - "Trashed bindings without file": "Bindings im Papierkorb ohne Datei", "Saving settings...": "Einstellungen werden gespeichert...", "Settings saved.": "Einstellungen gespeichert.", - "Saving...": "Speichere...", - "Running health check...": "Health Check läuft...", + "Running health check...": "Verbindungsprüfung läuft...", "Running consistency check...": "Konsistenzprüfung läuft...", - "Checking sync status...": "Sync-Status wird geprüft...", - "Health check successful.": "Health Check erfolgreich.", + "Health check successful.": "Verbindungsprüfung erfolgreich.", "Consistency check successful.": "Konsistenzprüfung erfolgreich.", "Consistency check successful. No issues found.": "Konsistenzprüfung erfolgreich. Keine Probleme gefunden.", "Consistency check finished with issues.": "Konsistenzprüfung mit Problemen abgeschlossen.", - "Lifecycle delete retry finished.": "Wiederholung für Lifecycle-Löschung abgeschlossen.", "Request failed.": "Anfrage fehlgeschlagen.", - "Saving settings failed.": "Speichern der Einstellungen fehlgeschlagen.", - "Health check failed.": "Health Check fehlgeschlagen.", - "Health check failed: {detail}": "Health Check fehlgeschlagen: {detail}", + "Health check failed.": "Verbindungsprüfung fehlgeschlagen.", + "Health check failed: {detail}": "Verbindungsprüfung fehlgeschlagen: {detail}", "Consistency check failed.": "Konsistenzprüfung fehlgeschlagen.", - "Lifecycle delete retry failed.": "Wiederholung für Lifecycle-Löschung fehlgeschlagen.", - "Pending delete retry failed.": "Wiederholung ausstehender Löschungen fehlgeschlagen.", - "Failed to save settings.": "Einstellungen konnten nicht gespeichert werden.", "Etherpad API key is required.": "Ein Etherpad-API-Schlüssel ist erforderlich.", "Etherpad Base URL is required.": "Eine Etherpad-Basis-URL ist erforderlich.", "Etherpad Base URL must use https.": "Die Etherpad-Basis-URL muss HTTPS verwenden.", "Invalid Etherpad Base URL.": "Ungültige Etherpad-Basis-URL.", - "Etherpad Base URL must not include query or fragment.": "Die Etherpad-Basis-URL darf keine Query oder Fragment enthalten.", + "Etherpad Base URL must not include query or fragment.": "Die Etherpad-Basis-URL darf keinen Query-String und kein Fragment enthalten.", "Etherpad API URL must use http or https.": "Die Etherpad-API-URL muss HTTP oder HTTPS verwenden.", "Invalid Etherpad API URL.": "Ungültige Etherpad-API-URL.", - "Etherpad API URL must not include query or fragment.": "Die Etherpad-API-URL darf keine Query oder Fragment enthalten.", - "Hint: In Etherpad settings.json set \"authenticationMethod\": \"apikey\".": "Hinweis: In der Etherpad settings.json \"authenticationMethod\": \"apikey\" setzen.", + "Etherpad API URL must not include query or fragment.": "Die Etherpad-API-URL darf keinen Query-String und kein Fragment enthalten.", "Invalid Etherpad API version format.": "Ungültiges Format für die Etherpad-API-Version.", "Sync interval must be between 5 and 3600 seconds.": "Das Intervall muss zwischen 5 und 3600 Sekunden liegen.", "External allowlist contains invalid host: {host}": "Die externe Allowlist enthält einen ungültigen Host: {host}", - "External allowlist URL must use https: {host}": "Externe Allowlist-URL muss HTTPS verwenden: {host}", + "External allowlist URL must use https: {host}": "Die externe Allowlist-URL muss HTTPS verwenden: {host}", "Test fault cleared.": "Testfehler zurückgesetzt.", "Test fault set: {fault}": "Testfehler gesetzt: {fault}", "Unsupported test fault.": "Nicht unterstützter Testfehler.", @@ -62,39 +48,7 @@ OC.L10N.register( "Authentication required.": "Authentifizierung erforderlich.", "Admin permissions required.": "Administratorrechte erforderlich.", "New pad": "Neues Pad", - "New Pad": "Neues Pad", - "External pad": "Externes Pad", - "External pad URL": "Externe Pad-URL", - "File name": "Dateiname", - "Public pad": "Öffentliches Pad", - "Create public pad": "Öffentliches Pad erstellen", - "Choose how you want to create the public pad.": "Wähle aus, wie du das öffentliche Pad erstellen möchtest.", - "Internal public pad": "Internes öffentliches Pad", - "External public pad (URL)": "Externes öffentliches Pad (URL)", - "Could not create public pad.": "Öffentliches Pad konnte nicht erstellt werden.", - "Could not import public pad URL.": "Öffentliche Pad-URL konnte nicht importiert werden.", - "Cancel": "Abbrechen", - "Close": "Schließen", - "Create": "Erstellen", - "File name is required.": "Dateiname ist erforderlich.", - "External pad URL is required.": "Externe Pad-URL ist erforderlich.", - "Externes Pad": "Externes Pad", - "Open in Etherpad": "In Etherpad öffnen", "Open original pad": "Original-Pad öffnen", - "Open in new tab": "In neuem Tab öffnen", - "Pad in neuem Tab öffnen": "Pad in neuem Tab öffnen", - "Sync now": "Jetzt synchronisieren", - "Save pad to file": "Pad in Datei speichern", - "Pad in Datei speichern": "Pad in Datei speichern", - "Synchronized": "Synchronisiert", - "Sync pending": "Synchronisierung ausstehend", - "Sync failed": "Synchronisierung fehlgeschlagen", - "Sync status unavailable": "Sync-Status nicht verfügbar", - "Sync status: syncing": "Sync-Status: synchronisiere ...", - "Sync status: synced": "Sync-Status: synchronisiert", - "Sync status: error": "Sync-Status: Fehler", - "Sync status: pending": "Sync-Status: ausstehend", - "Sync status: unavailable": "Sync-Status: nicht verfügbar", "Unable to open pad": "Pad konnte nicht geöffnet werden", "This .pad file has no matching pad in this Nextcloud.": "Für diese .pad-Datei existiert in dieser Nextcloud kein passendes Pad.", "Checking for the original pad...": "Suche nach dem Original-Pad ...", @@ -103,7 +57,6 @@ OC.L10N.register( "Create new pad from this file": "Neues Pad aus dieser Datei erstellen", "Creating new pad...": "Neues Pad wird erstellt ...", "Open the original .pad file": "Originale .pad-Datei öffnen", - "Could not fetch the pad content from the remote server. The new file is empty for now — open the pad in the viewer to populate it.": "Pad-Inhalt konnte nicht vom Remote-Server geladen werden. Die neue Datei ist vorerst leer — öffne das Pad im Viewer, um sie zu befüllen.", "Could not create pad.": "Pad konnte nicht erstellt werden.", "Could not import external pad.": "Externes Pad konnte nicht importiert werden.", "Could not open pad.": "Pad konnte nicht geöffnet werden.", @@ -111,7 +64,7 @@ OC.L10N.register( "Could not read pad metadata.": "Pad-Metadaten konnten nicht gelesen werden.", "Could not resolve pad file.": "Pad-Datei konnte nicht aufgelöst werden.", "Could not sync pad content.": "Pad-Inhalt konnte nicht synchronisiert werden.", - "Could not check pad sync status.": "Pad-Sync-Status konnte nicht ermittelt werden.", + "Could not check pad sync status.": "Synchronisierungsstatus des Pads konnte nicht ermittelt werden.", "Could not move pad to trash.": "Pad konnte nicht in den Papierkorb verschoben werden.", "Could not look up the original pad.": "Original-Pad konnte nicht ermittelt werden.", "Could not recover pad from this file.": "Pad konnte aus dieser Datei nicht wiederhergestellt werden.", @@ -129,15 +82,44 @@ OC.L10N.register( "Invalid file path.": "Ungültiger Dateipfad.", "Invalid pad name.": "Ungültiger Pad-Name.", "Invalid input.": "Ungültige Eingabe.", - "Invalid parentFolderId.": "Ungültige Ordner-ID.", - "Invalid accessMode. Use public or protected.": "Ungültiger Zugriffsmodus. Verwende public oder protected.", "Cannot resolve selected parent folder.": "Ausgewählter Zielordner konnte nicht aufgelöst werden.", "Cannot open selected .pad file.": "Ausgewählte .pad-Datei konnte nicht geöffnet werden.", "Cannot resolve selected .pad file.": "Ausgewählte .pad-Datei konnte nicht aufgelöst werden.", "Cannot read selected .pad file.": "Ausgewählte .pad-Datei konnte nicht gelesen werden.", "Cannot resolve file path for file ID.": "Dateipfad zur Datei-ID konnte nicht ermittelt werden.", "Pad file not found.": "Pad-Datei nicht gefunden.", - "A file with this name already exists.": "Eine Datei mit diesem Namen existiert bereits." + "A file with this name already exists.": "Eine Datei mit diesem Namen existiert bereits.", + "Absolute https origins allowed to embed the /embed/by-id and /embed/create-by-parent routes. Leave empty to disable external embedding.": "Absolute https-Origins, die die Routen /embed/by-id und /embed/create-by-parent einbetten dürfen. Leer lassen, um externes Einbetten zu deaktivieren.", + "Back": "Zurück", + "Cookie domain must be a hostname, not a URL.": "Cookie-Domain muss ein Hostname sein, keine URL.", + "Cookie domain must be a valid shared hostname.": "Cookie-Domain muss ein gültiger gemeinsamer Hostname sein.", + "Could not create pad from template.": "Pad konnte nicht aus Vorlage erstellt werden.", + "Creating pad...": "Pad wird erstellt...", + "Embed configuration is incomplete.": "Embed-Konfiguration ist unvollständig.", + "Failed to update test fault.": "Test-Fehler konnte nicht aktualisiert werden.", + "Invalid access mode.": "Ungültiger Zugriffsmodus.", + "Invalid parent folder ID.": "Ungültige übergeordnete Ordner-ID.", + "Loading pad...": "Pad wird geladen...", + "No synced snapshot is stored in this .pad file yet.": "In dieser .pad-Datei ist noch kein synchronisierter Snapshot gespeichert.", + "Pad from another server": "Pad von einem anderen Server", + "Pad name is required.": "Pad-Name ist erforderlich.", + "Read-only snapshot": "Schreibgeschützter Snapshot", + "Read-only snapshot from the .pad file.": "Schreibgeschützter Snapshot aus der .pad-Datei.", + "Selected file is not a .pad file.": "Ausgewählte Datei ist keine .pad-Datei.", + "Selected parent folder is not writable.": "Ausgewählter Zielordner ist nicht beschreibbar.", + "Template file not found.": "Vorlagendatei nicht gefunden.", + "Trusted embed origins (optional)": "Vertrauenswürdige Embed-Origins (optional)", + "Unable to create pad": "Pad kann nicht erstellt werden", + "Unknown error.": "Unbekannter Fehler.", + "Retry pending deletes now": "Ausstehende Löschungen jetzt wiederholen", + "Failed to save settings.": "Einstellungen konnten nicht gespeichert werden.", + "Pending delete retry failed.": "Wiederholung ausstehender Löschungen fehlgeschlagen.", + "Pending delete retry finished.": "Wiederholung ausstehender Löschungen abgeschlossen.", + ".pad file sync interval (seconds)": ".pad-Datei-Synchronisierungsintervall (Sekunden)", + "Delete linked Etherpad pad when .pad file is moved to trash": "Verknüpftes Etherpad-Pad löschen, wenn die .pad-Datei in den Papierkorb verschoben wird", + "If enabled, moving a .pad file to the trash also deletes the linked Etherpad pad.": "Wenn aktiviert, wird beim Verschieben einer .pad-Datei in den Papierkorb auch das verknüpfte Etherpad-Pad gelöscht.", + "Add trusted Etherpad hostnames or HTTPS origins. Leave empty only if all public HTTPS hosts should be trusted.": "Vertrauenswürdige Etherpad-Hostnamen oder HTTPS-Ursprünge eintragen. Nur leer lassen, wenn alle öffentlichen HTTPS-Hosts vertrauenswürdig sein sollen.", + "Hint: Set \"authenticationMethod\": \"apikey\" in Etherpad's settings.json.": "Hinweis: Setze in Etherpads settings.json \"authenticationMethod\": \"apikey\"." }, "nplurals=2; plural=(n != 1);" ); diff --git a/l10n/de.json b/l10n/de.json index 9f76cbc..d50ecfd 100644 --- a/l10n/de.json +++ b/l10n/de.json @@ -6,54 +6,40 @@ "Etherpad API URL (optional)": "Etherpad-API-URL (optional)", "Optional internal URL for server-side API calls. Leave empty to use Etherpad Base URL.": "Optionale interne URL für serverseitige API-Aufrufe. Leer lassen, um die Etherpad-Basis-URL zu verwenden.", "Etherpad session cookie domain (optional)": "Etherpad-Session-Cookie-Domain (optional)", - "Auto-filled from the Nextcloud and Etherpad hosts when possible. Adjust it if your deployment uses a proxy path or a different trusted parent domain; leave empty for a host-only cookie.": "Wird, wenn möglich, automatisch aus den Nextcloud- und Etherpad-Hosts abgeleitet. Anpassen, wenn die Installation einen Proxy-Pfad oder eine andere vertrauenswürdige Parent-Domain nutzt; leer lassen für ein host-only Cookie.", + "Auto-filled from the Nextcloud and Etherpad hosts when possible. Adjust it if your deployment uses a proxy path or a different trusted parent domain; leave empty for a host-only cookie.": "Wird, wenn möglich, automatisch aus den Nextcloud- und Etherpad-Hosts abgeleitet. Anpassen, wenn die Installation einen Proxy-Pfad oder eine andere vertrauenswürdige Parent-Domain nutzt; leer lassen für ein Host-only-Cookie.", "Etherpad API key": "Etherpad-API-Schlüssel", "Detected API version:": "Erkannte API-Version:", - "Copy content to .pad file interval (seconds)": "Intervall zum Kopieren in die .pad-Datei (Sekunden)", "Controls how often pad content is copied from Etherpad into the .pad file while the pad is open.": "Steuert, wie oft der Pad-Inhalt aus Etherpad in die .pad-Datei kopiert wird, während das Pad geöffnet ist.", - "Delete pad on trash": "Pad beim Verschieben in den Papierkorb löschen", - "If enabled, moving a .pad file to trash triggers Etherpad delete.": "Wenn aktiviert, löst das Verschieben einer .pad-Datei in den Papierkorb ein Löschen in Etherpad aus.", "Allow linking external public pads": "Verlinken externer öffentlicher Pads erlauben", "External host allowlist (optional)": "Allowlist externer Hosts (optional)", - "Add trusted Etherpad hostnames or https origins. Leave empty only if all public HTTPS hosts should be trusted.": "Vertrauenswürdige Etherpad-Hostnamen oder HTTPS-Ursprünge eintragen. Nur leer lassen, wenn allen öffentlichen HTTPS-Hosts vertraut werden soll.", "Save settings": "Einstellungen speichern", - "Health check": "Health Check", + "Health check": "Verbindungsprüfung", "Consistency check": "Konsistenzprüfung", - "Retry deferred deletes now": "Aufgeschobene Löschungen jetzt wiederholen", "Pending Etherpad deletes": "Ausstehende Etherpad-Löschungen", - "Trashed bindings without file": "Bindings im Papierkorb ohne Datei", "Saving settings...": "Einstellungen werden gespeichert...", "Settings saved.": "Einstellungen gespeichert.", - "Saving...": "Speichere...", - "Running health check...": "Health Check läuft...", + "Running health check...": "Verbindungsprüfung läuft...", "Running consistency check...": "Konsistenzprüfung läuft...", - "Checking sync status...": "Sync-Status wird geprüft...", - "Health check successful.": "Health Check erfolgreich.", + "Health check successful.": "Verbindungsprüfung erfolgreich.", "Consistency check successful.": "Konsistenzprüfung erfolgreich.", "Consistency check successful. No issues found.": "Konsistenzprüfung erfolgreich. Keine Probleme gefunden.", "Consistency check finished with issues.": "Konsistenzprüfung mit Problemen abgeschlossen.", - "Lifecycle delete retry finished.": "Wiederholung für Lifecycle-Löschung abgeschlossen.", "Request failed.": "Anfrage fehlgeschlagen.", - "Saving settings failed.": "Speichern der Einstellungen fehlgeschlagen.", - "Health check failed.": "Health Check fehlgeschlagen.", - "Health check failed: {detail}": "Health Check fehlgeschlagen: {detail}", + "Health check failed.": "Verbindungsprüfung fehlgeschlagen.", + "Health check failed: {detail}": "Verbindungsprüfung fehlgeschlagen: {detail}", "Consistency check failed.": "Konsistenzprüfung fehlgeschlagen.", - "Lifecycle delete retry failed.": "Wiederholung für Lifecycle-Löschung fehlgeschlagen.", - "Pending delete retry failed.": "Wiederholung ausstehender Löschungen fehlgeschlagen.", - "Failed to save settings.": "Einstellungen konnten nicht gespeichert werden.", "Etherpad API key is required.": "Ein Etherpad-API-Schlüssel ist erforderlich.", "Etherpad Base URL is required.": "Eine Etherpad-Basis-URL ist erforderlich.", "Etherpad Base URL must use https.": "Die Etherpad-Basis-URL muss HTTPS verwenden.", "Invalid Etherpad Base URL.": "Ungültige Etherpad-Basis-URL.", - "Etherpad Base URL must not include query or fragment.": "Die Etherpad-Basis-URL darf keine Query oder Fragment enthalten.", + "Etherpad Base URL must not include query or fragment.": "Die Etherpad-Basis-URL darf keinen Query-String und kein Fragment enthalten.", "Etherpad API URL must use http or https.": "Die Etherpad-API-URL muss HTTP oder HTTPS verwenden.", "Invalid Etherpad API URL.": "Ungültige Etherpad-API-URL.", - "Etherpad API URL must not include query or fragment.": "Die Etherpad-API-URL darf keine Query oder Fragment enthalten.", - "Hint: In Etherpad settings.json set \"authenticationMethod\": \"apikey\".": "Hinweis: In der Etherpad settings.json \"authenticationMethod\": \"apikey\" setzen.", + "Etherpad API URL must not include query or fragment.": "Die Etherpad-API-URL darf keinen Query-String und kein Fragment enthalten.", "Invalid Etherpad API version format.": "Ungültiges Format für die Etherpad-API-Version.", "Sync interval must be between 5 and 3600 seconds.": "Das Intervall muss zwischen 5 und 3600 Sekunden liegen.", "External allowlist contains invalid host: {host}": "Die externe Allowlist enthält einen ungültigen Host: {host}", - "External allowlist URL must use https: {host}": "Externe Allowlist-URL muss HTTPS verwenden: {host}", + "External allowlist URL must use https: {host}": "Die externe Allowlist-URL muss HTTPS verwenden: {host}", "Test fault cleared.": "Testfehler zurückgesetzt.", "Test fault set: {fault}": "Testfehler gesetzt: {fault}", "Unsupported test fault.": "Nicht unterstützter Testfehler.", @@ -61,39 +47,7 @@ "Authentication required.": "Authentifizierung erforderlich.", "Admin permissions required.": "Administratorrechte erforderlich.", "New pad": "Neues Pad", - "New Pad": "Neues Pad", - "External pad": "Externes Pad", - "External pad URL": "Externe Pad-URL", - "File name": "Dateiname", - "Public pad": "Öffentliches Pad", - "Create public pad": "Öffentliches Pad erstellen", - "Choose how you want to create the public pad.": "Wähle aus, wie du das öffentliche Pad erstellen möchtest.", - "Internal public pad": "Internes öffentliches Pad", - "External public pad (URL)": "Externes öffentliches Pad (URL)", - "Could not create public pad.": "Öffentliches Pad konnte nicht erstellt werden.", - "Could not import public pad URL.": "Öffentliche Pad-URL konnte nicht importiert werden.", - "Cancel": "Abbrechen", - "Close": "Schließen", - "Create": "Erstellen", - "File name is required.": "Dateiname ist erforderlich.", - "External pad URL is required.": "Externe Pad-URL ist erforderlich.", - "Externes Pad": "Externes Pad", - "Open in Etherpad": "In Etherpad öffnen", "Open original pad": "Original-Pad öffnen", - "Open in new tab": "In neuem Tab öffnen", - "Pad in neuem Tab öffnen": "Pad in neuem Tab öffnen", - "Sync now": "Jetzt synchronisieren", - "Save pad to file": "Pad in Datei speichern", - "Pad in Datei speichern": "Pad in Datei speichern", - "Synchronized": "Synchronisiert", - "Sync pending": "Synchronisierung ausstehend", - "Sync failed": "Synchronisierung fehlgeschlagen", - "Sync status unavailable": "Sync-Status nicht verfügbar", - "Sync status: syncing": "Sync-Status: synchronisiere ...", - "Sync status: synced": "Sync-Status: synchronisiert", - "Sync status: error": "Sync-Status: Fehler", - "Sync status: pending": "Sync-Status: ausstehend", - "Sync status: unavailable": "Sync-Status: nicht verfügbar", "Unable to open pad": "Pad konnte nicht geöffnet werden", "This .pad file has no matching pad in this Nextcloud.": "Für diese .pad-Datei existiert in dieser Nextcloud kein passendes Pad.", "Checking for the original pad...": "Suche nach dem Original-Pad ...", @@ -102,7 +56,6 @@ "Create new pad from this file": "Neues Pad aus dieser Datei erstellen", "Creating new pad...": "Neues Pad wird erstellt ...", "Open the original .pad file": "Originale .pad-Datei öffnen", - "Could not fetch the pad content from the remote server. The new file is empty for now — open the pad in the viewer to populate it.": "Pad-Inhalt konnte nicht vom Remote-Server geladen werden. Die neue Datei ist vorerst leer — öffne das Pad im Viewer, um sie zu befüllen.", "Could not create pad.": "Pad konnte nicht erstellt werden.", "Could not import external pad.": "Externes Pad konnte nicht importiert werden.", "Could not open pad.": "Pad konnte nicht geöffnet werden.", @@ -110,7 +63,7 @@ "Could not read pad metadata.": "Pad-Metadaten konnten nicht gelesen werden.", "Could not resolve pad file.": "Pad-Datei konnte nicht aufgelöst werden.", "Could not sync pad content.": "Pad-Inhalt konnte nicht synchronisiert werden.", - "Could not check pad sync status.": "Pad-Sync-Status konnte nicht ermittelt werden.", + "Could not check pad sync status.": "Synchronisierungsstatus des Pads konnte nicht ermittelt werden.", "Could not move pad to trash.": "Pad konnte nicht in den Papierkorb verschoben werden.", "Could not look up the original pad.": "Original-Pad konnte nicht ermittelt werden.", "Could not recover pad from this file.": "Pad konnte aus dieser Datei nicht wiederhergestellt werden.", @@ -128,15 +81,44 @@ "Invalid file path.": "Ungültiger Dateipfad.", "Invalid pad name.": "Ungültiger Pad-Name.", "Invalid input.": "Ungültige Eingabe.", - "Invalid parentFolderId.": "Ungültige Ordner-ID.", - "Invalid accessMode. Use public or protected.": "Ungültiger Zugriffsmodus. Verwende public oder protected.", "Cannot resolve selected parent folder.": "Ausgewählter Zielordner konnte nicht aufgelöst werden.", "Cannot open selected .pad file.": "Ausgewählte .pad-Datei konnte nicht geöffnet werden.", "Cannot resolve selected .pad file.": "Ausgewählte .pad-Datei konnte nicht aufgelöst werden.", "Cannot read selected .pad file.": "Ausgewählte .pad-Datei konnte nicht gelesen werden.", "Cannot resolve file path for file ID.": "Dateipfad zur Datei-ID konnte nicht ermittelt werden.", "Pad file not found.": "Pad-Datei nicht gefunden.", - "A file with this name already exists.": "Eine Datei mit diesem Namen existiert bereits." + "A file with this name already exists.": "Eine Datei mit diesem Namen existiert bereits.", + "Absolute https origins allowed to embed the /embed/by-id and /embed/create-by-parent routes. Leave empty to disable external embedding.": "Absolute https-Origins, die die Routen /embed/by-id und /embed/create-by-parent einbetten dürfen. Leer lassen, um externes Einbetten zu deaktivieren.", + "Back": "Zurück", + "Cookie domain must be a hostname, not a URL.": "Cookie-Domain muss ein Hostname sein, keine URL.", + "Cookie domain must be a valid shared hostname.": "Cookie-Domain muss ein gültiger gemeinsamer Hostname sein.", + "Could not create pad from template.": "Pad konnte nicht aus Vorlage erstellt werden.", + "Creating pad...": "Pad wird erstellt...", + "Embed configuration is incomplete.": "Embed-Konfiguration ist unvollständig.", + "Failed to update test fault.": "Test-Fehler konnte nicht aktualisiert werden.", + "Invalid access mode.": "Ungültiger Zugriffsmodus.", + "Invalid parent folder ID.": "Ungültige übergeordnete Ordner-ID.", + "Loading pad...": "Pad wird geladen...", + "No synced snapshot is stored in this .pad file yet.": "In dieser .pad-Datei ist noch kein synchronisierter Snapshot gespeichert.", + "Pad from another server": "Pad von einem anderen Server", + "Pad name is required.": "Pad-Name ist erforderlich.", + "Read-only snapshot": "Schreibgeschützter Snapshot", + "Read-only snapshot from the .pad file.": "Schreibgeschützter Snapshot aus der .pad-Datei.", + "Selected file is not a .pad file.": "Ausgewählte Datei ist keine .pad-Datei.", + "Selected parent folder is not writable.": "Ausgewählter Zielordner ist nicht beschreibbar.", + "Template file not found.": "Vorlagendatei nicht gefunden.", + "Trusted embed origins (optional)": "Vertrauenswürdige Embed-Origins (optional)", + "Unable to create pad": "Pad kann nicht erstellt werden", + "Unknown error.": "Unbekannter Fehler.", + "Retry pending deletes now": "Ausstehende Löschungen jetzt wiederholen", + "Failed to save settings.": "Einstellungen konnten nicht gespeichert werden.", + "Pending delete retry failed.": "Wiederholung ausstehender Löschungen fehlgeschlagen.", + "Pending delete retry finished.": "Wiederholung ausstehender Löschungen abgeschlossen.", + ".pad file sync interval (seconds)": ".pad-Datei-Synchronisierungsintervall (Sekunden)", + "Delete linked Etherpad pad when .pad file is moved to trash": "Verknüpftes Etherpad-Pad löschen, wenn die .pad-Datei in den Papierkorb verschoben wird", + "If enabled, moving a .pad file to the trash also deletes the linked Etherpad pad.": "Wenn aktiviert, wird beim Verschieben einer .pad-Datei in den Papierkorb auch das verknüpfte Etherpad-Pad gelöscht.", + "Add trusted Etherpad hostnames or HTTPS origins. Leave empty only if all public HTTPS hosts should be trusted.": "Vertrauenswürdige Etherpad-Hostnamen oder HTTPS-Ursprünge eintragen. Nur leer lassen, wenn alle öffentlichen HTTPS-Hosts vertrauenswürdig sein sollen.", + "Hint: Set \"authenticationMethod\": \"apikey\" in Etherpad's settings.json.": "Hinweis: Setze in Etherpads settings.json \"authenticationMethod\": \"apikey\"." }, "pluralForm": "nplurals=2; plural=(n != 1);" } diff --git a/l10n/de.php b/l10n/de.php index 155b354..31fde7e 100644 --- a/l10n/de.php +++ b/l10n/de.php @@ -7,54 +7,40 @@ "Etherpad API URL (optional)" => "Etherpad-API-URL (optional)", "Optional internal URL for server-side API calls. Leave empty to use Etherpad Base URL." => "Optionale interne URL für serverseitige API-Aufrufe. Leer lassen, um die Etherpad-Basis-URL zu verwenden.", "Etherpad session cookie domain (optional)" => "Etherpad-Session-Cookie-Domain (optional)", - "Auto-filled from the Nextcloud and Etherpad hosts when possible. Adjust it if your deployment uses a proxy path or a different trusted parent domain; leave empty for a host-only cookie." => "Wird, wenn möglich, automatisch aus den Nextcloud- und Etherpad-Hosts abgeleitet. Anpassen, wenn die Installation einen Proxy-Pfad oder eine andere vertrauenswürdige Parent-Domain nutzt; leer lassen für ein host-only Cookie.", + "Auto-filled from the Nextcloud and Etherpad hosts when possible. Adjust it if your deployment uses a proxy path or a different trusted parent domain; leave empty for a host-only cookie." => "Wird, wenn möglich, automatisch aus den Nextcloud- und Etherpad-Hosts abgeleitet. Anpassen, wenn die Installation einen Proxy-Pfad oder eine andere vertrauenswürdige Parent-Domain nutzt; leer lassen für ein Host-only-Cookie.", "Etherpad API key" => "Etherpad-API-Schlüssel", "Detected API version:" => "Erkannte API-Version:", - "Copy content to .pad file interval (seconds)" => "Intervall zum Kopieren in die .pad-Datei (Sekunden)", "Controls how often pad content is copied from Etherpad into the .pad file while the pad is open." => "Steuert, wie oft der Pad-Inhalt aus Etherpad in die .pad-Datei kopiert wird, während das Pad geöffnet ist.", - "Delete pad on trash" => "Pad beim Verschieben in den Papierkorb löschen", - "If enabled, moving a .pad file to trash triggers Etherpad delete." => "Wenn aktiviert, löst das Verschieben einer .pad-Datei in den Papierkorb ein Löschen in Etherpad aus.", "Allow linking external public pads" => "Verlinken externer öffentlicher Pads erlauben", "External host allowlist (optional)" => "Allowlist externer Hosts (optional)", - "Add trusted Etherpad hostnames or https origins. Leave empty only if all public HTTPS hosts should be trusted." => "Vertrauenswürdige Etherpad-Hostnamen oder HTTPS-Ursprünge eintragen. Nur leer lassen, wenn allen öffentlichen HTTPS-Hosts vertraut werden soll.", "Save settings" => "Einstellungen speichern", - "Health check" => "Health Check", + "Health check" => "Verbindungsprüfung", "Consistency check" => "Konsistenzprüfung", - "Retry deferred deletes now" => "Aufgeschobene Löschungen jetzt wiederholen", "Pending Etherpad deletes" => "Ausstehende Etherpad-Löschungen", - "Trashed bindings without file" => "Bindings im Papierkorb ohne Datei", "Saving settings..." => "Einstellungen werden gespeichert...", "Settings saved." => "Einstellungen gespeichert.", - "Saving..." => "Speichere...", - "Running health check..." => "Health Check läuft...", + "Running health check..." => "Verbindungsprüfung läuft...", "Running consistency check..." => "Konsistenzprüfung läuft...", - "Checking sync status..." => "Sync-Status wird geprüft...", - "Health check successful." => "Health Check erfolgreich.", + "Health check successful." => "Verbindungsprüfung erfolgreich.", "Consistency check successful." => "Konsistenzprüfung erfolgreich.", "Consistency check successful. No issues found." => "Konsistenzprüfung erfolgreich. Keine Probleme gefunden.", "Consistency check finished with issues." => "Konsistenzprüfung mit Problemen abgeschlossen.", - "Lifecycle delete retry finished." => "Wiederholung für Lifecycle-Löschung abgeschlossen.", "Request failed." => "Anfrage fehlgeschlagen.", - "Saving settings failed." => "Speichern der Einstellungen fehlgeschlagen.", - "Health check failed." => "Health Check fehlgeschlagen.", - "Health check failed: {detail}" => "Health Check fehlgeschlagen: {detail}", + "Health check failed." => "Verbindungsprüfung fehlgeschlagen.", + "Health check failed: {detail}" => "Verbindungsprüfung fehlgeschlagen: {detail}", "Consistency check failed." => "Konsistenzprüfung fehlgeschlagen.", - "Lifecycle delete retry failed." => "Wiederholung für Lifecycle-Löschung fehlgeschlagen.", - "Pending delete retry failed." => "Wiederholung ausstehender Löschungen fehlgeschlagen.", - "Failed to save settings." => "Einstellungen konnten nicht gespeichert werden.", "Etherpad API key is required." => "Ein Etherpad-API-Schlüssel ist erforderlich.", "Etherpad Base URL is required." => "Eine Etherpad-Basis-URL ist erforderlich.", "Etherpad Base URL must use https." => "Die Etherpad-Basis-URL muss HTTPS verwenden.", "Invalid Etherpad Base URL." => "Ungültige Etherpad-Basis-URL.", - "Etherpad Base URL must not include query or fragment." => "Die Etherpad-Basis-URL darf keine Query oder Fragment enthalten.", + "Etherpad Base URL must not include query or fragment." => "Die Etherpad-Basis-URL darf keinen Query-String und kein Fragment enthalten.", "Etherpad API URL must use http or https." => "Die Etherpad-API-URL muss HTTP oder HTTPS verwenden.", "Invalid Etherpad API URL." => "Ungültige Etherpad-API-URL.", - "Etherpad API URL must not include query or fragment." => "Die Etherpad-API-URL darf keine Query oder Fragment enthalten.", - "Hint: In Etherpad settings.json set \"authenticationMethod\": \"apikey\"." => "Hinweis: In der Etherpad settings.json \"authenticationMethod\": \"apikey\" setzen.", + "Etherpad API URL must not include query or fragment." => "Die Etherpad-API-URL darf keinen Query-String und kein Fragment enthalten.", "Invalid Etherpad API version format." => "Ungültiges Format für die Etherpad-API-Version.", "Sync interval must be between 5 and 3600 seconds." => "Das Intervall muss zwischen 5 und 3600 Sekunden liegen.", "External allowlist contains invalid host: {host}" => "Die externe Allowlist enthält einen ungültigen Host: {host}", - "External allowlist URL must use https: {host}" => "Externe Allowlist-URL muss HTTPS verwenden: {host}", + "External allowlist URL must use https: {host}" => "Die externe Allowlist-URL muss HTTPS verwenden: {host}", "Test fault cleared." => "Testfehler zurückgesetzt.", "Test fault set: {fault}" => "Testfehler gesetzt: {fault}", "Unsupported test fault." => "Nicht unterstützter Testfehler.", @@ -62,39 +48,7 @@ "Authentication required." => "Authentifizierung erforderlich.", "Admin permissions required." => "Administratorrechte erforderlich.", "New pad" => "Neues Pad", - "New Pad" => "Neues Pad", - "External pad" => "Externes Pad", - "External pad URL" => "Externe Pad-URL", - "File name" => "Dateiname", - "Public pad" => "Öffentliches Pad", - "Create public pad" => "Öffentliches Pad erstellen", - "Choose how you want to create the public pad." => "Wähle aus, wie du das öffentliche Pad erstellen möchtest.", - "Internal public pad" => "Internes öffentliches Pad", - "External public pad (URL)" => "Externes öffentliches Pad (URL)", - "Could not create public pad." => "Öffentliches Pad konnte nicht erstellt werden.", - "Could not import public pad URL." => "Öffentliche Pad-URL konnte nicht importiert werden.", - "Cancel" => "Abbrechen", - "Close" => "Schließen", - "Create" => "Erstellen", - "File name is required." => "Dateiname ist erforderlich.", - "External pad URL is required." => "Externe Pad-URL ist erforderlich.", - "Externes Pad" => "Externes Pad", - "Open in Etherpad" => "In Etherpad öffnen", "Open original pad" => "Original-Pad öffnen", - "Open in new tab" => "In neuem Tab öffnen", - "Pad in neuem Tab öffnen" => "Pad in neuem Tab öffnen", - "Sync now" => "Jetzt synchronisieren", - "Save pad to file" => "Pad in Datei speichern", - "Pad in Datei speichern" => "Pad in Datei speichern", - "Synchronized" => "Synchronisiert", - "Sync pending" => "Synchronisierung ausstehend", - "Sync failed" => "Synchronisierung fehlgeschlagen", - "Sync status unavailable" => "Sync-Status nicht verfügbar", - "Sync status: syncing" => "Sync-Status: synchronisiere ...", - "Sync status: synced" => "Sync-Status: synchronisiert", - "Sync status: error" => "Sync-Status: Fehler", - "Sync status: pending" => "Sync-Status: ausstehend", - "Sync status: unavailable" => "Sync-Status: nicht verfügbar", "Unable to open pad" => "Pad konnte nicht geöffnet werden", "This .pad file has no matching pad in this Nextcloud." => "Für diese .pad-Datei existiert in dieser Nextcloud kein passendes Pad.", "Checking for the original pad..." => "Suche nach dem Original-Pad ...", @@ -103,7 +57,6 @@ "Create new pad from this file" => "Neues Pad aus dieser Datei erstellen", "Creating new pad..." => "Neues Pad wird erstellt ...", "Open the original .pad file" => "Originale .pad-Datei öffnen", - "Could not fetch the pad content from the remote server. The new file is empty for now — open the pad in the viewer to populate it." => "Pad-Inhalt konnte nicht vom Remote-Server geladen werden. Die neue Datei ist vorerst leer — öffne das Pad im Viewer, um sie zu befüllen.", "Could not create pad." => "Pad konnte nicht erstellt werden.", "Could not import external pad." => "Externes Pad konnte nicht importiert werden.", "Could not open pad." => "Pad konnte nicht geöffnet werden.", @@ -111,7 +64,7 @@ "Could not read pad metadata." => "Pad-Metadaten konnten nicht gelesen werden.", "Could not resolve pad file." => "Pad-Datei konnte nicht aufgelöst werden.", "Could not sync pad content." => "Pad-Inhalt konnte nicht synchronisiert werden.", - "Could not check pad sync status." => "Pad-Sync-Status konnte nicht ermittelt werden.", + "Could not check pad sync status." => "Synchronisierungsstatus des Pads konnte nicht ermittelt werden.", "Could not move pad to trash." => "Pad konnte nicht in den Papierkorb verschoben werden.", "Could not look up the original pad." => "Original-Pad konnte nicht ermittelt werden.", "Could not recover pad from this file." => "Pad konnte aus dieser Datei nicht wiederhergestellt werden.", @@ -129,8 +82,6 @@ "Invalid file path." => "Ungültiger Dateipfad.", "Invalid pad name." => "Ungültiger Pad-Name.", "Invalid input." => "Ungültige Eingabe.", - "Invalid parentFolderId." => "Ungültige Ordner-ID.", - "Invalid accessMode. Use public or protected." => "Ungültiger Zugriffsmodus. Verwende public oder protected.", "Cannot resolve selected parent folder." => "Ausgewählter Zielordner konnte nicht aufgelöst werden.", "Cannot open selected .pad file." => "Ausgewählte .pad-Datei konnte nicht geöffnet werden.", "Cannot resolve selected .pad file." => "Ausgewählte .pad-Datei konnte nicht aufgelöst werden.", @@ -138,6 +89,37 @@ "Cannot resolve file path for file ID." => "Dateipfad zur Datei-ID konnte nicht ermittelt werden.", "Pad file not found." => "Pad-Datei nicht gefunden.", "A file with this name already exists." => "Eine Datei mit diesem Namen existiert bereits.", + "Absolute https origins allowed to embed the /embed/by-id and /embed/create-by-parent routes. Leave empty to disable external embedding." => "Absolute https-Origins, die die Routen /embed/by-id und /embed/create-by-parent einbetten dürfen. Leer lassen, um externes Einbetten zu deaktivieren.", + "Back" => "Zurück", + "Cookie domain must be a hostname, not a URL." => "Cookie-Domain muss ein Hostname sein, keine URL.", + "Cookie domain must be a valid shared hostname." => "Cookie-Domain muss ein gültiger gemeinsamer Hostname sein.", + "Could not create pad from template." => "Pad konnte nicht aus Vorlage erstellt werden.", + "Creating pad..." => "Pad wird erstellt...", + "Embed configuration is incomplete." => "Embed-Konfiguration ist unvollständig.", + "Failed to update test fault." => "Test-Fehler konnte nicht aktualisiert werden.", + "Invalid access mode." => "Ungültiger Zugriffsmodus.", + "Invalid parent folder ID." => "Ungültige übergeordnete Ordner-ID.", + "Loading pad..." => "Pad wird geladen...", + "No synced snapshot is stored in this .pad file yet." => "In dieser .pad-Datei ist noch kein synchronisierter Snapshot gespeichert.", + "Pad from another server" => "Pad von einem anderen Server", + "Pad name is required." => "Pad-Name ist erforderlich.", + "Read-only snapshot" => "Schreibgeschützter Snapshot", + "Read-only snapshot from the .pad file." => "Schreibgeschützter Snapshot aus der .pad-Datei.", + "Selected file is not a .pad file." => "Ausgewählte Datei ist keine .pad-Datei.", + "Selected parent folder is not writable." => "Ausgewählter Zielordner ist nicht beschreibbar.", + "Template file not found." => "Vorlagendatei nicht gefunden.", + "Trusted embed origins (optional)" => "Vertrauenswürdige Embed-Origins (optional)", + "Unable to create pad" => "Pad kann nicht erstellt werden", + "Unknown error." => "Unbekannter Fehler.", + "Retry pending deletes now" => "Ausstehende Löschungen jetzt wiederholen", + "Failed to save settings." => "Einstellungen konnten nicht gespeichert werden.", + "Pending delete retry failed." => "Wiederholung ausstehender Löschungen fehlgeschlagen.", + "Pending delete retry finished." => "Wiederholung ausstehender Löschungen abgeschlossen.", + ".pad file sync interval (seconds)" => ".pad-Datei-Synchronisierungsintervall (Sekunden)", + "Delete linked Etherpad pad when .pad file is moved to trash" => "Verknüpftes Etherpad-Pad löschen, wenn die .pad-Datei in den Papierkorb verschoben wird", + "If enabled, moving a .pad file to the trash also deletes the linked Etherpad pad." => "Wenn aktiviert, wird beim Verschieben einer .pad-Datei in den Papierkorb auch das verknüpfte Etherpad-Pad gelöscht.", + "Add trusted Etherpad hostnames or HTTPS origins. Leave empty only if all public HTTPS hosts should be trusted." => "Vertrauenswürdige Etherpad-Hostnamen oder HTTPS-Ursprünge eintragen. Nur leer lassen, wenn alle öffentlichen HTTPS-Hosts vertrauenswürdig sein sollen.", + "Hint: Set \"authenticationMethod\": \"apikey\" in Etherpad's settings.json." => "Hinweis: Setze in Etherpads settings.json \"authenticationMethod\": \"apikey\".", ]; $PLURAL_FORMS = "nplurals=2; plural=(n != 1);"; diff --git a/l10n/de_DE.js b/l10n/de_DE.js index b26c57b..2e4cddc 100644 --- a/l10n/de_DE.js +++ b/l10n/de_DE.js @@ -7,54 +7,40 @@ OC.L10N.register( "Etherpad API URL (optional)": "Etherpad-API-URL (optional)", "Optional internal URL for server-side API calls. Leave empty to use Etherpad Base URL.": "Optionale interne URL für serverseitige API-Aufrufe. Leer lassen, um die Etherpad-Basis-URL zu verwenden.", "Etherpad session cookie domain (optional)": "Etherpad-Session-Cookie-Domain (optional)", - "Auto-filled from the Nextcloud and Etherpad hosts when possible. Adjust it if your deployment uses a proxy path or a different trusted parent domain; leave empty for a host-only cookie.": "Wird, wenn möglich, automatisch aus den Nextcloud- und Etherpad-Hosts abgeleitet. Anpassen, wenn die Installation einen Proxy-Pfad oder eine andere vertrauenswürdige Parent-Domain nutzt; leer lassen für ein host-only Cookie.", + "Auto-filled from the Nextcloud and Etherpad hosts when possible. Adjust it if your deployment uses a proxy path or a different trusted parent domain; leave empty for a host-only cookie.": "Wird, wenn möglich, automatisch aus den Nextcloud- und Etherpad-Hosts abgeleitet. Anpassen, wenn die Installation einen Proxy-Pfad oder eine andere vertrauenswürdige Parent-Domain nutzt; leer lassen für ein Host-only-Cookie.", "Etherpad API key": "Etherpad-API-Schlüssel", "Detected API version:": "Erkannte API-Version:", - "Copy content to .pad file interval (seconds)": "Intervall zum Kopieren in die .pad-Datei (Sekunden)", "Controls how often pad content is copied from Etherpad into the .pad file while the pad is open.": "Steuert, wie oft der Pad-Inhalt aus Etherpad in die .pad-Datei kopiert wird, während das Pad geöffnet ist.", - "Delete pad on trash": "Pad beim Verschieben in den Papierkorb löschen", - "If enabled, moving a .pad file to trash triggers Etherpad delete.": "Wenn aktiviert, löst das Verschieben einer .pad-Datei in den Papierkorb ein Löschen in Etherpad aus.", "Allow linking external public pads": "Verlinken externer öffentlicher Pads erlauben", "External host allowlist (optional)": "Allowlist externer Hosts (optional)", - "Add trusted Etherpad hostnames or https origins. Leave empty only if all public HTTPS hosts should be trusted.": "Vertrauenswürdige Etherpad-Hostnamen oder HTTPS-Ursprünge eintragen. Nur leer lassen, wenn allen öffentlichen HTTPS-Hosts vertraut werden soll.", "Save settings": "Einstellungen speichern", - "Health check": "Health Check", + "Health check": "Verbindungsprüfung", "Consistency check": "Konsistenzprüfung", - "Retry deferred deletes now": "Aufgeschobene Löschungen jetzt wiederholen", "Pending Etherpad deletes": "Ausstehende Etherpad-Löschungen", - "Trashed bindings without file": "Bindings im Papierkorb ohne Datei", "Saving settings...": "Einstellungen werden gespeichert...", "Settings saved.": "Einstellungen gespeichert.", - "Saving...": "Speichere...", - "Running health check...": "Health Check läuft...", + "Running health check...": "Verbindungsprüfung läuft...", "Running consistency check...": "Konsistenzprüfung läuft...", - "Checking sync status...": "Sync-Status wird geprüft...", - "Health check successful.": "Health Check erfolgreich.", + "Health check successful.": "Verbindungsprüfung erfolgreich.", "Consistency check successful.": "Konsistenzprüfung erfolgreich.", "Consistency check successful. No issues found.": "Konsistenzprüfung erfolgreich. Keine Probleme gefunden.", "Consistency check finished with issues.": "Konsistenzprüfung mit Problemen abgeschlossen.", - "Lifecycle delete retry finished.": "Wiederholung für Lifecycle-Löschung abgeschlossen.", "Request failed.": "Anfrage fehlgeschlagen.", - "Saving settings failed.": "Speichern der Einstellungen fehlgeschlagen.", - "Health check failed.": "Health Check fehlgeschlagen.", - "Health check failed: {detail}": "Health Check fehlgeschlagen: {detail}", + "Health check failed.": "Verbindungsprüfung fehlgeschlagen.", + "Health check failed: {detail}": "Verbindungsprüfung fehlgeschlagen: {detail}", "Consistency check failed.": "Konsistenzprüfung fehlgeschlagen.", - "Lifecycle delete retry failed.": "Wiederholung für Lifecycle-Löschung fehlgeschlagen.", - "Pending delete retry failed.": "Wiederholung ausstehender Löschungen fehlgeschlagen.", - "Failed to save settings.": "Einstellungen konnten nicht gespeichert werden.", "Etherpad API key is required.": "Ein Etherpad-API-Schlüssel ist erforderlich.", "Etherpad Base URL is required.": "Eine Etherpad-Basis-URL ist erforderlich.", "Etherpad Base URL must use https.": "Die Etherpad-Basis-URL muss HTTPS verwenden.", "Invalid Etherpad Base URL.": "Ungültige Etherpad-Basis-URL.", - "Etherpad Base URL must not include query or fragment.": "Die Etherpad-Basis-URL darf keine Query oder Fragment enthalten.", + "Etherpad Base URL must not include query or fragment.": "Die Etherpad-Basis-URL darf keinen Query-String und kein Fragment enthalten.", "Etherpad API URL must use http or https.": "Die Etherpad-API-URL muss HTTP oder HTTPS verwenden.", "Invalid Etherpad API URL.": "Ungültige Etherpad-API-URL.", - "Etherpad API URL must not include query or fragment.": "Die Etherpad-API-URL darf keine Query oder Fragment enthalten.", - "Hint: In Etherpad settings.json set \"authenticationMethod\": \"apikey\".": "Hinweis: In der Etherpad settings.json \"authenticationMethod\": \"apikey\" setzen.", + "Etherpad API URL must not include query or fragment.": "Die Etherpad-API-URL darf keinen Query-String und kein Fragment enthalten.", "Invalid Etherpad API version format.": "Ungültiges Format für die Etherpad-API-Version.", "Sync interval must be between 5 and 3600 seconds.": "Das Intervall muss zwischen 5 und 3600 Sekunden liegen.", "External allowlist contains invalid host: {host}": "Die externe Allowlist enthält einen ungültigen Host: {host}", - "External allowlist URL must use https: {host}": "Externe Allowlist-URL muss HTTPS verwenden: {host}", + "External allowlist URL must use https: {host}": "Die externe Allowlist-URL muss HTTPS verwenden: {host}", "Test fault cleared.": "Testfehler zurückgesetzt.", "Test fault set: {fault}": "Testfehler gesetzt: {fault}", "Unsupported test fault.": "Nicht unterstützter Testfehler.", @@ -62,39 +48,7 @@ OC.L10N.register( "Authentication required.": "Authentifizierung erforderlich.", "Admin permissions required.": "Administratorrechte erforderlich.", "New pad": "Neues Pad", - "New Pad": "Neues Pad", - "External pad": "Externes Pad", - "External pad URL": "Externe Pad-URL", - "File name": "Dateiname", - "Public pad": "Öffentliches Pad", - "Create public pad": "Öffentliches Pad erstellen", - "Choose how you want to create the public pad.": "Wähle aus, wie du das öffentliche Pad erstellen möchtest.", - "Internal public pad": "Internes öffentliches Pad", - "External public pad (URL)": "Externes öffentliches Pad (URL)", - "Could not create public pad.": "Öffentliches Pad konnte nicht erstellt werden.", - "Could not import public pad URL.": "Öffentliche Pad-URL konnte nicht importiert werden.", - "Cancel": "Abbrechen", - "Close": "Schließen", - "Create": "Erstellen", - "File name is required.": "Dateiname ist erforderlich.", - "External pad URL is required.": "Externe Pad-URL ist erforderlich.", - "Externes Pad": "Externes Pad", - "Open in Etherpad": "In Etherpad öffnen", "Open original pad": "Original-Pad öffnen", - "Open in new tab": "In neuem Tab öffnen", - "Pad in neuem Tab öffnen": "Pad in neuem Tab öffnen", - "Sync now": "Jetzt synchronisieren", - "Save pad to file": "Pad in Datei speichern", - "Pad in Datei speichern": "Pad in Datei speichern", - "Synchronized": "Synchronisiert", - "Sync pending": "Synchronisierung ausstehend", - "Sync failed": "Synchronisierung fehlgeschlagen", - "Sync status unavailable": "Sync-Status nicht verfügbar", - "Sync status: syncing": "Sync-Status: synchronisiere ...", - "Sync status: synced": "Sync-Status: synchronisiert", - "Sync status: error": "Sync-Status: Fehler", - "Sync status: pending": "Sync-Status: ausstehend", - "Sync status: unavailable": "Sync-Status: nicht verfügbar", "Unable to open pad": "Pad konnte nicht geöffnet werden", "This .pad file has no matching pad in this Nextcloud.": "Für diese .pad-Datei existiert in dieser Nextcloud kein passendes Pad.", "Checking for the original pad...": "Suche nach dem Original-Pad ...", @@ -103,7 +57,6 @@ OC.L10N.register( "Create new pad from this file": "Neues Pad aus dieser Datei erstellen", "Creating new pad...": "Neues Pad wird erstellt ...", "Open the original .pad file": "Originale .pad-Datei öffnen", - "Could not fetch the pad content from the remote server. The new file is empty for now — open the pad in the viewer to populate it.": "Pad-Inhalt konnte nicht vom Remote-Server geladen werden. Die neue Datei ist vorerst leer — öffne das Pad im Viewer, um sie zu befüllen.", "Could not create pad.": "Pad konnte nicht erstellt werden.", "Could not import external pad.": "Externes Pad konnte nicht importiert werden.", "Could not open pad.": "Pad konnte nicht geöffnet werden.", @@ -111,7 +64,7 @@ OC.L10N.register( "Could not read pad metadata.": "Pad-Metadaten konnten nicht gelesen werden.", "Could not resolve pad file.": "Pad-Datei konnte nicht aufgelöst werden.", "Could not sync pad content.": "Pad-Inhalt konnte nicht synchronisiert werden.", - "Could not check pad sync status.": "Pad-Sync-Status konnte nicht ermittelt werden.", + "Could not check pad sync status.": "Synchronisierungsstatus des Pads konnte nicht ermittelt werden.", "Could not move pad to trash.": "Pad konnte nicht in den Papierkorb verschoben werden.", "Could not look up the original pad.": "Original-Pad konnte nicht ermittelt werden.", "Could not recover pad from this file.": "Pad konnte aus dieser Datei nicht wiederhergestellt werden.", @@ -129,15 +82,44 @@ OC.L10N.register( "Invalid file path.": "Ungültiger Dateipfad.", "Invalid pad name.": "Ungültiger Pad-Name.", "Invalid input.": "Ungültige Eingabe.", - "Invalid parentFolderId.": "Ungültige Ordner-ID.", - "Invalid accessMode. Use public or protected.": "Ungültiger Zugriffsmodus. Verwende public oder protected.", "Cannot resolve selected parent folder.": "Ausgewählter Zielordner konnte nicht aufgelöst werden.", "Cannot open selected .pad file.": "Ausgewählte .pad-Datei konnte nicht geöffnet werden.", "Cannot resolve selected .pad file.": "Ausgewählte .pad-Datei konnte nicht aufgelöst werden.", "Cannot read selected .pad file.": "Ausgewählte .pad-Datei konnte nicht gelesen werden.", "Cannot resolve file path for file ID.": "Dateipfad zur Datei-ID konnte nicht ermittelt werden.", "Pad file not found.": "Pad-Datei nicht gefunden.", - "A file with this name already exists.": "Eine Datei mit diesem Namen existiert bereits." + "A file with this name already exists.": "Eine Datei mit diesem Namen existiert bereits.", + "Absolute https origins allowed to embed the /embed/by-id and /embed/create-by-parent routes. Leave empty to disable external embedding.": "Absolute https-Origins, die die Routen /embed/by-id und /embed/create-by-parent einbetten dürfen. Leer lassen, um externes Einbetten zu deaktivieren.", + "Back": "Zurück", + "Cookie domain must be a hostname, not a URL.": "Cookie-Domain muss ein Hostname sein, keine URL.", + "Cookie domain must be a valid shared hostname.": "Cookie-Domain muss ein gültiger gemeinsamer Hostname sein.", + "Could not create pad from template.": "Pad konnte nicht aus Vorlage erstellt werden.", + "Creating pad...": "Pad wird erstellt...", + "Embed configuration is incomplete.": "Embed-Konfiguration ist unvollständig.", + "Failed to update test fault.": "Test-Fehler konnte nicht aktualisiert werden.", + "Invalid access mode.": "Ungültiger Zugriffsmodus.", + "Invalid parent folder ID.": "Ungültige übergeordnete Ordner-ID.", + "Loading pad...": "Pad wird geladen...", + "No synced snapshot is stored in this .pad file yet.": "In dieser .pad-Datei ist noch kein synchronisierter Snapshot gespeichert.", + "Pad from another server": "Pad von einem anderen Server", + "Pad name is required.": "Pad-Name ist erforderlich.", + "Read-only snapshot": "Schreibgeschützter Snapshot", + "Read-only snapshot from the .pad file.": "Schreibgeschützter Snapshot aus der .pad-Datei.", + "Selected file is not a .pad file.": "Ausgewählte Datei ist keine .pad-Datei.", + "Selected parent folder is not writable.": "Ausgewählter Zielordner ist nicht beschreibbar.", + "Template file not found.": "Vorlagendatei nicht gefunden.", + "Trusted embed origins (optional)": "Vertrauenswürdige Embed-Origins (optional)", + "Unable to create pad": "Pad kann nicht erstellt werden", + "Unknown error.": "Unbekannter Fehler.", + "Retry pending deletes now": "Ausstehende Löschungen jetzt wiederholen", + "Failed to save settings.": "Einstellungen konnten nicht gespeichert werden.", + "Pending delete retry failed.": "Wiederholung ausstehender Löschungen fehlgeschlagen.", + "Pending delete retry finished.": "Wiederholung ausstehender Löschungen abgeschlossen.", + ".pad file sync interval (seconds)": ".pad-Datei-Synchronisierungsintervall (Sekunden)", + "Delete linked Etherpad pad when .pad file is moved to trash": "Verknüpftes Etherpad-Pad löschen, wenn die .pad-Datei in den Papierkorb verschoben wird", + "If enabled, moving a .pad file to the trash also deletes the linked Etherpad pad.": "Wenn aktiviert, wird beim Verschieben einer .pad-Datei in den Papierkorb auch das verknüpfte Etherpad-Pad gelöscht.", + "Add trusted Etherpad hostnames or HTTPS origins. Leave empty only if all public HTTPS hosts should be trusted.": "Vertrauenswürdige Etherpad-Hostnamen oder HTTPS-Ursprünge eintragen. Nur leer lassen, wenn alle öffentlichen HTTPS-Hosts vertrauenswürdig sein sollen.", + "Hint: Set \"authenticationMethod\": \"apikey\" in Etherpad's settings.json.": "Hinweis: Setze in Etherpads settings.json \"authenticationMethod\": \"apikey\"." }, "nplurals=2; plural=(n != 1);" ); diff --git a/l10n/de_DE.json b/l10n/de_DE.json index 9f76cbc..d50ecfd 100644 --- a/l10n/de_DE.json +++ b/l10n/de_DE.json @@ -6,54 +6,40 @@ "Etherpad API URL (optional)": "Etherpad-API-URL (optional)", "Optional internal URL for server-side API calls. Leave empty to use Etherpad Base URL.": "Optionale interne URL für serverseitige API-Aufrufe. Leer lassen, um die Etherpad-Basis-URL zu verwenden.", "Etherpad session cookie domain (optional)": "Etherpad-Session-Cookie-Domain (optional)", - "Auto-filled from the Nextcloud and Etherpad hosts when possible. Adjust it if your deployment uses a proxy path or a different trusted parent domain; leave empty for a host-only cookie.": "Wird, wenn möglich, automatisch aus den Nextcloud- und Etherpad-Hosts abgeleitet. Anpassen, wenn die Installation einen Proxy-Pfad oder eine andere vertrauenswürdige Parent-Domain nutzt; leer lassen für ein host-only Cookie.", + "Auto-filled from the Nextcloud and Etherpad hosts when possible. Adjust it if your deployment uses a proxy path or a different trusted parent domain; leave empty for a host-only cookie.": "Wird, wenn möglich, automatisch aus den Nextcloud- und Etherpad-Hosts abgeleitet. Anpassen, wenn die Installation einen Proxy-Pfad oder eine andere vertrauenswürdige Parent-Domain nutzt; leer lassen für ein Host-only-Cookie.", "Etherpad API key": "Etherpad-API-Schlüssel", "Detected API version:": "Erkannte API-Version:", - "Copy content to .pad file interval (seconds)": "Intervall zum Kopieren in die .pad-Datei (Sekunden)", "Controls how often pad content is copied from Etherpad into the .pad file while the pad is open.": "Steuert, wie oft der Pad-Inhalt aus Etherpad in die .pad-Datei kopiert wird, während das Pad geöffnet ist.", - "Delete pad on trash": "Pad beim Verschieben in den Papierkorb löschen", - "If enabled, moving a .pad file to trash triggers Etherpad delete.": "Wenn aktiviert, löst das Verschieben einer .pad-Datei in den Papierkorb ein Löschen in Etherpad aus.", "Allow linking external public pads": "Verlinken externer öffentlicher Pads erlauben", "External host allowlist (optional)": "Allowlist externer Hosts (optional)", - "Add trusted Etherpad hostnames or https origins. Leave empty only if all public HTTPS hosts should be trusted.": "Vertrauenswürdige Etherpad-Hostnamen oder HTTPS-Ursprünge eintragen. Nur leer lassen, wenn allen öffentlichen HTTPS-Hosts vertraut werden soll.", "Save settings": "Einstellungen speichern", - "Health check": "Health Check", + "Health check": "Verbindungsprüfung", "Consistency check": "Konsistenzprüfung", - "Retry deferred deletes now": "Aufgeschobene Löschungen jetzt wiederholen", "Pending Etherpad deletes": "Ausstehende Etherpad-Löschungen", - "Trashed bindings without file": "Bindings im Papierkorb ohne Datei", "Saving settings...": "Einstellungen werden gespeichert...", "Settings saved.": "Einstellungen gespeichert.", - "Saving...": "Speichere...", - "Running health check...": "Health Check läuft...", + "Running health check...": "Verbindungsprüfung läuft...", "Running consistency check...": "Konsistenzprüfung läuft...", - "Checking sync status...": "Sync-Status wird geprüft...", - "Health check successful.": "Health Check erfolgreich.", + "Health check successful.": "Verbindungsprüfung erfolgreich.", "Consistency check successful.": "Konsistenzprüfung erfolgreich.", "Consistency check successful. No issues found.": "Konsistenzprüfung erfolgreich. Keine Probleme gefunden.", "Consistency check finished with issues.": "Konsistenzprüfung mit Problemen abgeschlossen.", - "Lifecycle delete retry finished.": "Wiederholung für Lifecycle-Löschung abgeschlossen.", "Request failed.": "Anfrage fehlgeschlagen.", - "Saving settings failed.": "Speichern der Einstellungen fehlgeschlagen.", - "Health check failed.": "Health Check fehlgeschlagen.", - "Health check failed: {detail}": "Health Check fehlgeschlagen: {detail}", + "Health check failed.": "Verbindungsprüfung fehlgeschlagen.", + "Health check failed: {detail}": "Verbindungsprüfung fehlgeschlagen: {detail}", "Consistency check failed.": "Konsistenzprüfung fehlgeschlagen.", - "Lifecycle delete retry failed.": "Wiederholung für Lifecycle-Löschung fehlgeschlagen.", - "Pending delete retry failed.": "Wiederholung ausstehender Löschungen fehlgeschlagen.", - "Failed to save settings.": "Einstellungen konnten nicht gespeichert werden.", "Etherpad API key is required.": "Ein Etherpad-API-Schlüssel ist erforderlich.", "Etherpad Base URL is required.": "Eine Etherpad-Basis-URL ist erforderlich.", "Etherpad Base URL must use https.": "Die Etherpad-Basis-URL muss HTTPS verwenden.", "Invalid Etherpad Base URL.": "Ungültige Etherpad-Basis-URL.", - "Etherpad Base URL must not include query or fragment.": "Die Etherpad-Basis-URL darf keine Query oder Fragment enthalten.", + "Etherpad Base URL must not include query or fragment.": "Die Etherpad-Basis-URL darf keinen Query-String und kein Fragment enthalten.", "Etherpad API URL must use http or https.": "Die Etherpad-API-URL muss HTTP oder HTTPS verwenden.", "Invalid Etherpad API URL.": "Ungültige Etherpad-API-URL.", - "Etherpad API URL must not include query or fragment.": "Die Etherpad-API-URL darf keine Query oder Fragment enthalten.", - "Hint: In Etherpad settings.json set \"authenticationMethod\": \"apikey\".": "Hinweis: In der Etherpad settings.json \"authenticationMethod\": \"apikey\" setzen.", + "Etherpad API URL must not include query or fragment.": "Die Etherpad-API-URL darf keinen Query-String und kein Fragment enthalten.", "Invalid Etherpad API version format.": "Ungültiges Format für die Etherpad-API-Version.", "Sync interval must be between 5 and 3600 seconds.": "Das Intervall muss zwischen 5 und 3600 Sekunden liegen.", "External allowlist contains invalid host: {host}": "Die externe Allowlist enthält einen ungültigen Host: {host}", - "External allowlist URL must use https: {host}": "Externe Allowlist-URL muss HTTPS verwenden: {host}", + "External allowlist URL must use https: {host}": "Die externe Allowlist-URL muss HTTPS verwenden: {host}", "Test fault cleared.": "Testfehler zurückgesetzt.", "Test fault set: {fault}": "Testfehler gesetzt: {fault}", "Unsupported test fault.": "Nicht unterstützter Testfehler.", @@ -61,39 +47,7 @@ "Authentication required.": "Authentifizierung erforderlich.", "Admin permissions required.": "Administratorrechte erforderlich.", "New pad": "Neues Pad", - "New Pad": "Neues Pad", - "External pad": "Externes Pad", - "External pad URL": "Externe Pad-URL", - "File name": "Dateiname", - "Public pad": "Öffentliches Pad", - "Create public pad": "Öffentliches Pad erstellen", - "Choose how you want to create the public pad.": "Wähle aus, wie du das öffentliche Pad erstellen möchtest.", - "Internal public pad": "Internes öffentliches Pad", - "External public pad (URL)": "Externes öffentliches Pad (URL)", - "Could not create public pad.": "Öffentliches Pad konnte nicht erstellt werden.", - "Could not import public pad URL.": "Öffentliche Pad-URL konnte nicht importiert werden.", - "Cancel": "Abbrechen", - "Close": "Schließen", - "Create": "Erstellen", - "File name is required.": "Dateiname ist erforderlich.", - "External pad URL is required.": "Externe Pad-URL ist erforderlich.", - "Externes Pad": "Externes Pad", - "Open in Etherpad": "In Etherpad öffnen", "Open original pad": "Original-Pad öffnen", - "Open in new tab": "In neuem Tab öffnen", - "Pad in neuem Tab öffnen": "Pad in neuem Tab öffnen", - "Sync now": "Jetzt synchronisieren", - "Save pad to file": "Pad in Datei speichern", - "Pad in Datei speichern": "Pad in Datei speichern", - "Synchronized": "Synchronisiert", - "Sync pending": "Synchronisierung ausstehend", - "Sync failed": "Synchronisierung fehlgeschlagen", - "Sync status unavailable": "Sync-Status nicht verfügbar", - "Sync status: syncing": "Sync-Status: synchronisiere ...", - "Sync status: synced": "Sync-Status: synchronisiert", - "Sync status: error": "Sync-Status: Fehler", - "Sync status: pending": "Sync-Status: ausstehend", - "Sync status: unavailable": "Sync-Status: nicht verfügbar", "Unable to open pad": "Pad konnte nicht geöffnet werden", "This .pad file has no matching pad in this Nextcloud.": "Für diese .pad-Datei existiert in dieser Nextcloud kein passendes Pad.", "Checking for the original pad...": "Suche nach dem Original-Pad ...", @@ -102,7 +56,6 @@ "Create new pad from this file": "Neues Pad aus dieser Datei erstellen", "Creating new pad...": "Neues Pad wird erstellt ...", "Open the original .pad file": "Originale .pad-Datei öffnen", - "Could not fetch the pad content from the remote server. The new file is empty for now — open the pad in the viewer to populate it.": "Pad-Inhalt konnte nicht vom Remote-Server geladen werden. Die neue Datei ist vorerst leer — öffne das Pad im Viewer, um sie zu befüllen.", "Could not create pad.": "Pad konnte nicht erstellt werden.", "Could not import external pad.": "Externes Pad konnte nicht importiert werden.", "Could not open pad.": "Pad konnte nicht geöffnet werden.", @@ -110,7 +63,7 @@ "Could not read pad metadata.": "Pad-Metadaten konnten nicht gelesen werden.", "Could not resolve pad file.": "Pad-Datei konnte nicht aufgelöst werden.", "Could not sync pad content.": "Pad-Inhalt konnte nicht synchronisiert werden.", - "Could not check pad sync status.": "Pad-Sync-Status konnte nicht ermittelt werden.", + "Could not check pad sync status.": "Synchronisierungsstatus des Pads konnte nicht ermittelt werden.", "Could not move pad to trash.": "Pad konnte nicht in den Papierkorb verschoben werden.", "Could not look up the original pad.": "Original-Pad konnte nicht ermittelt werden.", "Could not recover pad from this file.": "Pad konnte aus dieser Datei nicht wiederhergestellt werden.", @@ -128,15 +81,44 @@ "Invalid file path.": "Ungültiger Dateipfad.", "Invalid pad name.": "Ungültiger Pad-Name.", "Invalid input.": "Ungültige Eingabe.", - "Invalid parentFolderId.": "Ungültige Ordner-ID.", - "Invalid accessMode. Use public or protected.": "Ungültiger Zugriffsmodus. Verwende public oder protected.", "Cannot resolve selected parent folder.": "Ausgewählter Zielordner konnte nicht aufgelöst werden.", "Cannot open selected .pad file.": "Ausgewählte .pad-Datei konnte nicht geöffnet werden.", "Cannot resolve selected .pad file.": "Ausgewählte .pad-Datei konnte nicht aufgelöst werden.", "Cannot read selected .pad file.": "Ausgewählte .pad-Datei konnte nicht gelesen werden.", "Cannot resolve file path for file ID.": "Dateipfad zur Datei-ID konnte nicht ermittelt werden.", "Pad file not found.": "Pad-Datei nicht gefunden.", - "A file with this name already exists.": "Eine Datei mit diesem Namen existiert bereits." + "A file with this name already exists.": "Eine Datei mit diesem Namen existiert bereits.", + "Absolute https origins allowed to embed the /embed/by-id and /embed/create-by-parent routes. Leave empty to disable external embedding.": "Absolute https-Origins, die die Routen /embed/by-id und /embed/create-by-parent einbetten dürfen. Leer lassen, um externes Einbetten zu deaktivieren.", + "Back": "Zurück", + "Cookie domain must be a hostname, not a URL.": "Cookie-Domain muss ein Hostname sein, keine URL.", + "Cookie domain must be a valid shared hostname.": "Cookie-Domain muss ein gültiger gemeinsamer Hostname sein.", + "Could not create pad from template.": "Pad konnte nicht aus Vorlage erstellt werden.", + "Creating pad...": "Pad wird erstellt...", + "Embed configuration is incomplete.": "Embed-Konfiguration ist unvollständig.", + "Failed to update test fault.": "Test-Fehler konnte nicht aktualisiert werden.", + "Invalid access mode.": "Ungültiger Zugriffsmodus.", + "Invalid parent folder ID.": "Ungültige übergeordnete Ordner-ID.", + "Loading pad...": "Pad wird geladen...", + "No synced snapshot is stored in this .pad file yet.": "In dieser .pad-Datei ist noch kein synchronisierter Snapshot gespeichert.", + "Pad from another server": "Pad von einem anderen Server", + "Pad name is required.": "Pad-Name ist erforderlich.", + "Read-only snapshot": "Schreibgeschützter Snapshot", + "Read-only snapshot from the .pad file.": "Schreibgeschützter Snapshot aus der .pad-Datei.", + "Selected file is not a .pad file.": "Ausgewählte Datei ist keine .pad-Datei.", + "Selected parent folder is not writable.": "Ausgewählter Zielordner ist nicht beschreibbar.", + "Template file not found.": "Vorlagendatei nicht gefunden.", + "Trusted embed origins (optional)": "Vertrauenswürdige Embed-Origins (optional)", + "Unable to create pad": "Pad kann nicht erstellt werden", + "Unknown error.": "Unbekannter Fehler.", + "Retry pending deletes now": "Ausstehende Löschungen jetzt wiederholen", + "Failed to save settings.": "Einstellungen konnten nicht gespeichert werden.", + "Pending delete retry failed.": "Wiederholung ausstehender Löschungen fehlgeschlagen.", + "Pending delete retry finished.": "Wiederholung ausstehender Löschungen abgeschlossen.", + ".pad file sync interval (seconds)": ".pad-Datei-Synchronisierungsintervall (Sekunden)", + "Delete linked Etherpad pad when .pad file is moved to trash": "Verknüpftes Etherpad-Pad löschen, wenn die .pad-Datei in den Papierkorb verschoben wird", + "If enabled, moving a .pad file to the trash also deletes the linked Etherpad pad.": "Wenn aktiviert, wird beim Verschieben einer .pad-Datei in den Papierkorb auch das verknüpfte Etherpad-Pad gelöscht.", + "Add trusted Etherpad hostnames or HTTPS origins. Leave empty only if all public HTTPS hosts should be trusted.": "Vertrauenswürdige Etherpad-Hostnamen oder HTTPS-Ursprünge eintragen. Nur leer lassen, wenn alle öffentlichen HTTPS-Hosts vertrauenswürdig sein sollen.", + "Hint: Set \"authenticationMethod\": \"apikey\" in Etherpad's settings.json.": "Hinweis: Setze in Etherpads settings.json \"authenticationMethod\": \"apikey\"." }, "pluralForm": "nplurals=2; plural=(n != 1);" } diff --git a/l10n/de_DE.php b/l10n/de_DE.php index 155b354..31fde7e 100644 --- a/l10n/de_DE.php +++ b/l10n/de_DE.php @@ -7,54 +7,40 @@ "Etherpad API URL (optional)" => "Etherpad-API-URL (optional)", "Optional internal URL for server-side API calls. Leave empty to use Etherpad Base URL." => "Optionale interne URL für serverseitige API-Aufrufe. Leer lassen, um die Etherpad-Basis-URL zu verwenden.", "Etherpad session cookie domain (optional)" => "Etherpad-Session-Cookie-Domain (optional)", - "Auto-filled from the Nextcloud and Etherpad hosts when possible. Adjust it if your deployment uses a proxy path or a different trusted parent domain; leave empty for a host-only cookie." => "Wird, wenn möglich, automatisch aus den Nextcloud- und Etherpad-Hosts abgeleitet. Anpassen, wenn die Installation einen Proxy-Pfad oder eine andere vertrauenswürdige Parent-Domain nutzt; leer lassen für ein host-only Cookie.", + "Auto-filled from the Nextcloud and Etherpad hosts when possible. Adjust it if your deployment uses a proxy path or a different trusted parent domain; leave empty for a host-only cookie." => "Wird, wenn möglich, automatisch aus den Nextcloud- und Etherpad-Hosts abgeleitet. Anpassen, wenn die Installation einen Proxy-Pfad oder eine andere vertrauenswürdige Parent-Domain nutzt; leer lassen für ein Host-only-Cookie.", "Etherpad API key" => "Etherpad-API-Schlüssel", "Detected API version:" => "Erkannte API-Version:", - "Copy content to .pad file interval (seconds)" => "Intervall zum Kopieren in die .pad-Datei (Sekunden)", "Controls how often pad content is copied from Etherpad into the .pad file while the pad is open." => "Steuert, wie oft der Pad-Inhalt aus Etherpad in die .pad-Datei kopiert wird, während das Pad geöffnet ist.", - "Delete pad on trash" => "Pad beim Verschieben in den Papierkorb löschen", - "If enabled, moving a .pad file to trash triggers Etherpad delete." => "Wenn aktiviert, löst das Verschieben einer .pad-Datei in den Papierkorb ein Löschen in Etherpad aus.", "Allow linking external public pads" => "Verlinken externer öffentlicher Pads erlauben", "External host allowlist (optional)" => "Allowlist externer Hosts (optional)", - "Add trusted Etherpad hostnames or https origins. Leave empty only if all public HTTPS hosts should be trusted." => "Vertrauenswürdige Etherpad-Hostnamen oder HTTPS-Ursprünge eintragen. Nur leer lassen, wenn allen öffentlichen HTTPS-Hosts vertraut werden soll.", "Save settings" => "Einstellungen speichern", - "Health check" => "Health Check", + "Health check" => "Verbindungsprüfung", "Consistency check" => "Konsistenzprüfung", - "Retry deferred deletes now" => "Aufgeschobene Löschungen jetzt wiederholen", "Pending Etherpad deletes" => "Ausstehende Etherpad-Löschungen", - "Trashed bindings without file" => "Bindings im Papierkorb ohne Datei", "Saving settings..." => "Einstellungen werden gespeichert...", "Settings saved." => "Einstellungen gespeichert.", - "Saving..." => "Speichere...", - "Running health check..." => "Health Check läuft...", + "Running health check..." => "Verbindungsprüfung läuft...", "Running consistency check..." => "Konsistenzprüfung läuft...", - "Checking sync status..." => "Sync-Status wird geprüft...", - "Health check successful." => "Health Check erfolgreich.", + "Health check successful." => "Verbindungsprüfung erfolgreich.", "Consistency check successful." => "Konsistenzprüfung erfolgreich.", "Consistency check successful. No issues found." => "Konsistenzprüfung erfolgreich. Keine Probleme gefunden.", "Consistency check finished with issues." => "Konsistenzprüfung mit Problemen abgeschlossen.", - "Lifecycle delete retry finished." => "Wiederholung für Lifecycle-Löschung abgeschlossen.", "Request failed." => "Anfrage fehlgeschlagen.", - "Saving settings failed." => "Speichern der Einstellungen fehlgeschlagen.", - "Health check failed." => "Health Check fehlgeschlagen.", - "Health check failed: {detail}" => "Health Check fehlgeschlagen: {detail}", + "Health check failed." => "Verbindungsprüfung fehlgeschlagen.", + "Health check failed: {detail}" => "Verbindungsprüfung fehlgeschlagen: {detail}", "Consistency check failed." => "Konsistenzprüfung fehlgeschlagen.", - "Lifecycle delete retry failed." => "Wiederholung für Lifecycle-Löschung fehlgeschlagen.", - "Pending delete retry failed." => "Wiederholung ausstehender Löschungen fehlgeschlagen.", - "Failed to save settings." => "Einstellungen konnten nicht gespeichert werden.", "Etherpad API key is required." => "Ein Etherpad-API-Schlüssel ist erforderlich.", "Etherpad Base URL is required." => "Eine Etherpad-Basis-URL ist erforderlich.", "Etherpad Base URL must use https." => "Die Etherpad-Basis-URL muss HTTPS verwenden.", "Invalid Etherpad Base URL." => "Ungültige Etherpad-Basis-URL.", - "Etherpad Base URL must not include query or fragment." => "Die Etherpad-Basis-URL darf keine Query oder Fragment enthalten.", + "Etherpad Base URL must not include query or fragment." => "Die Etherpad-Basis-URL darf keinen Query-String und kein Fragment enthalten.", "Etherpad API URL must use http or https." => "Die Etherpad-API-URL muss HTTP oder HTTPS verwenden.", "Invalid Etherpad API URL." => "Ungültige Etherpad-API-URL.", - "Etherpad API URL must not include query or fragment." => "Die Etherpad-API-URL darf keine Query oder Fragment enthalten.", - "Hint: In Etherpad settings.json set \"authenticationMethod\": \"apikey\"." => "Hinweis: In der Etherpad settings.json \"authenticationMethod\": \"apikey\" setzen.", + "Etherpad API URL must not include query or fragment." => "Die Etherpad-API-URL darf keinen Query-String und kein Fragment enthalten.", "Invalid Etherpad API version format." => "Ungültiges Format für die Etherpad-API-Version.", "Sync interval must be between 5 and 3600 seconds." => "Das Intervall muss zwischen 5 und 3600 Sekunden liegen.", "External allowlist contains invalid host: {host}" => "Die externe Allowlist enthält einen ungültigen Host: {host}", - "External allowlist URL must use https: {host}" => "Externe Allowlist-URL muss HTTPS verwenden: {host}", + "External allowlist URL must use https: {host}" => "Die externe Allowlist-URL muss HTTPS verwenden: {host}", "Test fault cleared." => "Testfehler zurückgesetzt.", "Test fault set: {fault}" => "Testfehler gesetzt: {fault}", "Unsupported test fault." => "Nicht unterstützter Testfehler.", @@ -62,39 +48,7 @@ "Authentication required." => "Authentifizierung erforderlich.", "Admin permissions required." => "Administratorrechte erforderlich.", "New pad" => "Neues Pad", - "New Pad" => "Neues Pad", - "External pad" => "Externes Pad", - "External pad URL" => "Externe Pad-URL", - "File name" => "Dateiname", - "Public pad" => "Öffentliches Pad", - "Create public pad" => "Öffentliches Pad erstellen", - "Choose how you want to create the public pad." => "Wähle aus, wie du das öffentliche Pad erstellen möchtest.", - "Internal public pad" => "Internes öffentliches Pad", - "External public pad (URL)" => "Externes öffentliches Pad (URL)", - "Could not create public pad." => "Öffentliches Pad konnte nicht erstellt werden.", - "Could not import public pad URL." => "Öffentliche Pad-URL konnte nicht importiert werden.", - "Cancel" => "Abbrechen", - "Close" => "Schließen", - "Create" => "Erstellen", - "File name is required." => "Dateiname ist erforderlich.", - "External pad URL is required." => "Externe Pad-URL ist erforderlich.", - "Externes Pad" => "Externes Pad", - "Open in Etherpad" => "In Etherpad öffnen", "Open original pad" => "Original-Pad öffnen", - "Open in new tab" => "In neuem Tab öffnen", - "Pad in neuem Tab öffnen" => "Pad in neuem Tab öffnen", - "Sync now" => "Jetzt synchronisieren", - "Save pad to file" => "Pad in Datei speichern", - "Pad in Datei speichern" => "Pad in Datei speichern", - "Synchronized" => "Synchronisiert", - "Sync pending" => "Synchronisierung ausstehend", - "Sync failed" => "Synchronisierung fehlgeschlagen", - "Sync status unavailable" => "Sync-Status nicht verfügbar", - "Sync status: syncing" => "Sync-Status: synchronisiere ...", - "Sync status: synced" => "Sync-Status: synchronisiert", - "Sync status: error" => "Sync-Status: Fehler", - "Sync status: pending" => "Sync-Status: ausstehend", - "Sync status: unavailable" => "Sync-Status: nicht verfügbar", "Unable to open pad" => "Pad konnte nicht geöffnet werden", "This .pad file has no matching pad in this Nextcloud." => "Für diese .pad-Datei existiert in dieser Nextcloud kein passendes Pad.", "Checking for the original pad..." => "Suche nach dem Original-Pad ...", @@ -103,7 +57,6 @@ "Create new pad from this file" => "Neues Pad aus dieser Datei erstellen", "Creating new pad..." => "Neues Pad wird erstellt ...", "Open the original .pad file" => "Originale .pad-Datei öffnen", - "Could not fetch the pad content from the remote server. The new file is empty for now — open the pad in the viewer to populate it." => "Pad-Inhalt konnte nicht vom Remote-Server geladen werden. Die neue Datei ist vorerst leer — öffne das Pad im Viewer, um sie zu befüllen.", "Could not create pad." => "Pad konnte nicht erstellt werden.", "Could not import external pad." => "Externes Pad konnte nicht importiert werden.", "Could not open pad." => "Pad konnte nicht geöffnet werden.", @@ -111,7 +64,7 @@ "Could not read pad metadata." => "Pad-Metadaten konnten nicht gelesen werden.", "Could not resolve pad file." => "Pad-Datei konnte nicht aufgelöst werden.", "Could not sync pad content." => "Pad-Inhalt konnte nicht synchronisiert werden.", - "Could not check pad sync status." => "Pad-Sync-Status konnte nicht ermittelt werden.", + "Could not check pad sync status." => "Synchronisierungsstatus des Pads konnte nicht ermittelt werden.", "Could not move pad to trash." => "Pad konnte nicht in den Papierkorb verschoben werden.", "Could not look up the original pad." => "Original-Pad konnte nicht ermittelt werden.", "Could not recover pad from this file." => "Pad konnte aus dieser Datei nicht wiederhergestellt werden.", @@ -129,8 +82,6 @@ "Invalid file path." => "Ungültiger Dateipfad.", "Invalid pad name." => "Ungültiger Pad-Name.", "Invalid input." => "Ungültige Eingabe.", - "Invalid parentFolderId." => "Ungültige Ordner-ID.", - "Invalid accessMode. Use public or protected." => "Ungültiger Zugriffsmodus. Verwende public oder protected.", "Cannot resolve selected parent folder." => "Ausgewählter Zielordner konnte nicht aufgelöst werden.", "Cannot open selected .pad file." => "Ausgewählte .pad-Datei konnte nicht geöffnet werden.", "Cannot resolve selected .pad file." => "Ausgewählte .pad-Datei konnte nicht aufgelöst werden.", @@ -138,6 +89,37 @@ "Cannot resolve file path for file ID." => "Dateipfad zur Datei-ID konnte nicht ermittelt werden.", "Pad file not found." => "Pad-Datei nicht gefunden.", "A file with this name already exists." => "Eine Datei mit diesem Namen existiert bereits.", + "Absolute https origins allowed to embed the /embed/by-id and /embed/create-by-parent routes. Leave empty to disable external embedding." => "Absolute https-Origins, die die Routen /embed/by-id und /embed/create-by-parent einbetten dürfen. Leer lassen, um externes Einbetten zu deaktivieren.", + "Back" => "Zurück", + "Cookie domain must be a hostname, not a URL." => "Cookie-Domain muss ein Hostname sein, keine URL.", + "Cookie domain must be a valid shared hostname." => "Cookie-Domain muss ein gültiger gemeinsamer Hostname sein.", + "Could not create pad from template." => "Pad konnte nicht aus Vorlage erstellt werden.", + "Creating pad..." => "Pad wird erstellt...", + "Embed configuration is incomplete." => "Embed-Konfiguration ist unvollständig.", + "Failed to update test fault." => "Test-Fehler konnte nicht aktualisiert werden.", + "Invalid access mode." => "Ungültiger Zugriffsmodus.", + "Invalid parent folder ID." => "Ungültige übergeordnete Ordner-ID.", + "Loading pad..." => "Pad wird geladen...", + "No synced snapshot is stored in this .pad file yet." => "In dieser .pad-Datei ist noch kein synchronisierter Snapshot gespeichert.", + "Pad from another server" => "Pad von einem anderen Server", + "Pad name is required." => "Pad-Name ist erforderlich.", + "Read-only snapshot" => "Schreibgeschützter Snapshot", + "Read-only snapshot from the .pad file." => "Schreibgeschützter Snapshot aus der .pad-Datei.", + "Selected file is not a .pad file." => "Ausgewählte Datei ist keine .pad-Datei.", + "Selected parent folder is not writable." => "Ausgewählter Zielordner ist nicht beschreibbar.", + "Template file not found." => "Vorlagendatei nicht gefunden.", + "Trusted embed origins (optional)" => "Vertrauenswürdige Embed-Origins (optional)", + "Unable to create pad" => "Pad kann nicht erstellt werden", + "Unknown error." => "Unbekannter Fehler.", + "Retry pending deletes now" => "Ausstehende Löschungen jetzt wiederholen", + "Failed to save settings." => "Einstellungen konnten nicht gespeichert werden.", + "Pending delete retry failed." => "Wiederholung ausstehender Löschungen fehlgeschlagen.", + "Pending delete retry finished." => "Wiederholung ausstehender Löschungen abgeschlossen.", + ".pad file sync interval (seconds)" => ".pad-Datei-Synchronisierungsintervall (Sekunden)", + "Delete linked Etherpad pad when .pad file is moved to trash" => "Verknüpftes Etherpad-Pad löschen, wenn die .pad-Datei in den Papierkorb verschoben wird", + "If enabled, moving a .pad file to the trash also deletes the linked Etherpad pad." => "Wenn aktiviert, wird beim Verschieben einer .pad-Datei in den Papierkorb auch das verknüpfte Etherpad-Pad gelöscht.", + "Add trusted Etherpad hostnames or HTTPS origins. Leave empty only if all public HTTPS hosts should be trusted." => "Vertrauenswürdige Etherpad-Hostnamen oder HTTPS-Ursprünge eintragen. Nur leer lassen, wenn alle öffentlichen HTTPS-Hosts vertrauenswürdig sein sollen.", + "Hint: Set \"authenticationMethod\": \"apikey\" in Etherpad's settings.json." => "Hinweis: Setze in Etherpads settings.json \"authenticationMethod\": \"apikey\".", ]; $PLURAL_FORMS = "nplurals=2; plural=(n != 1);"; diff --git a/l10n/es.js b/l10n/es.js index 17038c0..b792397 100644 --- a/l10n/es.js +++ b/l10n/es.js @@ -10,38 +10,25 @@ OC.L10N.register( "Auto-filled from the Nextcloud and Etherpad hosts when possible. Adjust it if your deployment uses a proxy path or a different trusted parent domain; leave empty for a host-only cookie.": "Se completa automaticamente desde los hosts de Nextcloud y Etherpad cuando es posible. Ajustalo si la instalacion usa una ruta de proxy u otro dominio padre de confianza; deja vacio para una cookie solo de host.", "Etherpad API key": "Clave API de Etherpad", "Detected API version:": "Version de API detectada:", - "Copy content to .pad file interval (seconds)": "Intervalo para copiar contenido al archivo .pad (segundos)", "Controls how often pad content is copied from Etherpad into the .pad file while the pad is open.": "Controla con que frecuencia se copia el contenido del pad desde Etherpad al archivo .pad mientras el pad esta abierto.", - "Delete pad on trash": "Eliminar el pad al moverlo a la papelera", - "If enabled, moving a .pad file to trash triggers Etherpad delete.": "Si esta activado, mover un archivo .pad a la papelera activa la eliminacion en Etherpad.", "Allow linking external public pads": "Permitir enlazar pads publicos externos", "External host allowlist (optional)": "Lista de permitidos de hosts externos (opcional)", - "Add trusted Etherpad hostnames or https origins. Leave empty only if all public HTTPS hosts should be trusted.": "Agrega nombres de host de Etherpad u origenes https de confianza. Deja vacio solo si se deben confiar todos los hosts HTTPS publicos.", "Save settings": "Guardar ajustes", "Health check": "Comprobacion de estado", "Consistency check": "Comprobacion de consistencia", - "Retry deferred deletes now": "Reintentar ahora eliminaciones aplazadas", "Pending Etherpad deletes": "Eliminaciones pendientes en Etherpad", - "Trashed bindings without file": "Vinculaciones en papelera sin archivo", "Saving settings...": "Guardando ajustes...", "Settings saved.": "Ajustes guardados.", - "Saving...": "Guardando...", "Running health check...": "Ejecutando comprobacion de estado...", "Running consistency check...": "Ejecutando comprobacion de consistencia...", - "Checking sync status...": "Comprobando estado de sincronizacion...", "Health check successful.": "Comprobacion de estado correcta.", "Consistency check successful.": "Comprobacion de consistencia correcta.", "Consistency check successful. No issues found.": "Comprobacion de consistencia correcta. No se encontraron problemas.", "Consistency check finished with issues.": "Comprobacion de consistencia finalizada con problemas.", - "Lifecycle delete retry finished.": "Finalizo el reintento de eliminacion del ciclo de vida.", "Request failed.": "La solicitud fallo.", - "Saving settings failed.": "Fallo al guardar los ajustes.", "Health check failed.": "La comprobacion de estado fallo.", "Health check failed: {detail}": "La comprobacion de estado fallo: {detail}", "Consistency check failed.": "La comprobacion de consistencia fallo.", - "Lifecycle delete retry failed.": "Fallo el reintento de eliminacion del ciclo de vida.", - "Pending delete retry failed.": "Fallo el reintento de eliminaciones pendientes.", - "Failed to save settings.": "No se pudieron guardar los ajustes.", "Etherpad API key is required.": "La clave API de Etherpad es obligatoria.", "Etherpad Base URL is required.": "La URL base de Etherpad es obligatoria.", "Etherpad Base URL must use https.": "La URL base de Etherpad debe usar HTTPS.", @@ -50,7 +37,6 @@ OC.L10N.register( "Etherpad API URL must use http or https.": "La URL API de Etherpad debe usar HTTP o HTTPS.", "Invalid Etherpad API URL.": "URL API de Etherpad no valida.", "Etherpad API URL must not include query or fragment.": "La URL API de Etherpad no debe incluir query ni fragmento.", - "Hint: In Etherpad settings.json set \"authenticationMethod\": \"apikey\".": "Pista: en settings.json de Etherpad, establece \"authenticationMethod\": \"apikey\".", "Invalid Etherpad API version format.": "Formato de version de API de Etherpad no valido.", "Sync interval must be between 5 and 3600 seconds.": "El intervalo de sincronizacion debe estar entre 5 y 3600 segundos.", "External allowlist contains invalid host: {host}": "La lista de permitidos externa contiene un host no valido: {host}", @@ -62,39 +48,78 @@ OC.L10N.register( "Authentication required.": "Autenticacion requerida.", "Admin permissions required.": "Se requieren permisos de administrador.", "New pad": "Nuevo pad", - "New Pad": "Nuevo pad", - "External pad": "Pad externo", - "External pad URL": "URL de pad externo", - "File name": "Nombre de archivo", - "Public pad": "Pad publico", - "Create public pad": "Crear pad publico", - "Choose how you want to create the public pad.": "Elige como quieres crear el pad publico.", - "Internal public pad": "Pad publico interno", - "External public pad (URL)": "Pad publico externo (URL)", - "Could not create public pad.": "No se pudo crear el pad publico.", - "Could not import public pad URL.": "No se pudo importar la URL del pad publico.", - "Cancel": "Cancelar", - "Close": "Cerrar", - "Create": "Crear", - "File name is required.": "El nombre de archivo es obligatorio.", - "External pad URL is required.": "La URL de pad externo es obligatoria.", - "Externes Pad": "Pad externo", - "Open in Etherpad": "Abrir en Etherpad", "Open original pad": "Abrir pad original", - "Open in new tab": "Abrir en una pestana nueva", - "Pad in neuem Tab öffnen": "Abrir pad en una pestana nueva", - "Sync now": "Sincronizar ahora", - "Save pad to file": "Guardar pad en archivo", - "Pad in Datei speichern": "Guardar pad en archivo", - "Synchronized": "Sincronizado", - "Sync pending": "Sincronizacion pendiente", - "Sync failed": "Error de sincronizacion", - "Sync status unavailable": "Estado de sincronizacion no disponible", - "Sync status: syncing": "Estado de sincronizacion: sincronizando...", - "Sync status: synced": "Estado de sincronizacion: sincronizado", - "Sync status: error": "Estado de sincronizacion: error", - "Sync status: pending": "Estado de sincronizacion: pendiente", - "Sync status: unavailable": "Estado de sincronizacion: no disponible" + "A file with this name already exists.": "Ya existe un archivo con este nombre.", + "Absolute https origins allowed to embed the /embed/by-id and /embed/create-by-parent routes. Leave empty to disable external embedding.": "Orígenes https absolutos permitidos para incrustar las rutas /embed/by-id y /embed/create-by-parent. Déjelo vacío para desactivar la incrustación externa.", + "Back": "Atrás", + "Cannot open selected .pad file.": "No se puede abrir el archivo .pad seleccionado.", + "Cannot read selected .pad file.": "No se puede leer el archivo .pad seleccionado.", + "Cannot resolve file path for file ID.": "No se puede resolver la ruta del archivo para el ID del archivo.", + "Cannot resolve selected .pad file.": "No se puede resolver el archivo .pad seleccionado.", + "Cannot resolve selected parent folder.": "No se puede resolver la carpeta principal seleccionada.", + "Checking for the original pad...": "Buscando el pad original...", + "Cookie domain must be a hostname, not a URL.": "El dominio de la cookie debe ser un nombre de host, no una URL.", + "Cookie domain must be a valid shared hostname.": "El dominio de la cookie debe ser un nombre de host compartido válido.", + "Could not check pad sync status.": "No se pudo comprobar el estado de sincronización del pad.", + "Could not create pad from template.": "No se pudo crear el pad desde la plantilla.", + "Could not create pad.": "No se pudo crear el pad.", + "Could not import external pad.": "No se pudo importar el pad externo.", + "Could not initialize pad file.": "No se pudo inicializar el archivo de pad.", + "Could not look up the original pad.": "No se pudo localizar el pad original.", + "Could not move pad to trash.": "No se pudo mover el pad a la papelera.", + "Could not open pad.": "No se pudo abrir el pad.", + "Could not read pad metadata.": "No se pudieron leer los metadatos del pad.", + "Could not recover pad from this file.": "No se pudo recuperar el pad de este archivo.", + "Could not resolve pad file.": "No se pudo resolver el archivo de pad.", + "Could not restore pad from trash.": "No se pudo restaurar el pad de la papelera.", + "Could not sync pad content.": "No se pudo sincronizar el contenido del pad.", + "Create new pad from this file": "Crear nuevo pad a partir de este archivo", + "Creating new pad...": "Creando nuevo pad...", + "Creating pad...": "Creando pad...", + "Embed configuration is incomplete.": "La configuración de incrustación está incompleta.", + "Failed to update test fault.": "No se pudo actualizar el fallo de prueba.", + "Hint: API endpoint not found. Check the API host and that the configured API version is supported by your Etherpad.": "Sugerencia: punto de acceso de la API no encontrado. Comprueba el host de la API y que la versión configurada sea compatible con tu Etherpad.", + "Hint: Connection refused. Etherpad does not appear to be running on the configured host and port.": "Sugerencia: conexión rechazada. Etherpad no parece estar ejecutándose en el host y puerto configurados.", + "Hint: Connection timed out. Check that this server can reach the Etherpad host (firewall, network).": "Sugerencia: tiempo de conexión agotado. Comprueba que este servidor pueda acceder al host de Etherpad (cortafuegos, red).", + "Hint: Could not reach Etherpad. Check the API host and that this server can connect to it.": "Sugerencia: no se pudo contactar con Etherpad. Comprueba el host de la API y que este servidor pueda conectarse a él.", + "Hint: Etherpad rejected the API key. Check that the key matches Etherpad's APIKEY.txt.": "Sugerencia: Etherpad rechazó la clave de API. Comprueba que la clave coincida con APIKEY.txt de Etherpad.", + "Hint: Etherpad returned a server error. Check the Etherpad server logs.": "Sugerencia: Etherpad devolvió un error de servidor. Comprueba los registros del servidor de Etherpad.", + "Hint: Etherpad returned non-JSON. Likely a reverse proxy or HTML error page in front of the API host.": "Sugerencia: Etherpad devolvió contenido no JSON. Probablemente un proxy inverso o una página HTML de error delante del host de la API.", + "Hint: TLS handshake failed. Check the Etherpad certificate and that the configured URL uses the right scheme.": "Sugerencia: el establecimiento de la conexión TLS falló. Comprueba el certificado de Etherpad y que la URL configurada use el esquema correcto.", + "Hint: The configured Etherpad host did not resolve. Check the hostname for typos and that DNS reaches it from this server.": "Sugerencia: el host de Etherpad configurado no se resolvió. Comprueba el nombre del host por erratas y que el DNS llegue a él desde este servidor.", + "Invalid access mode.": "Modo de acceso no válido.", + "Invalid file ID.": "ID de archivo no válido.", + "Invalid file path.": "Ruta de archivo no válida.", + "Invalid input.": "Entrada no válida.", + "Invalid pad name.": "Nombre de pad no válido.", + "Invalid parent folder ID.": "ID de carpeta principal no válido.", + "Loading pad...": "Cargando pad...", + "No synced snapshot is stored in this .pad file yet.": "Aún no hay una instantánea sincronizada almacenada en este archivo .pad.", + "Open the original .pad file": "Abrir el archivo .pad original", + "Pad file not found.": "Archivo de pad no encontrado.", + "Pad from another server": "Pad de otro servidor", + "Pad name is required.": "Se requiere el nombre del pad.", + "Read-only snapshot": "Instantánea de solo lectura", + "Read-only snapshot from the .pad file.": "Instantánea de solo lectura del archivo .pad.", + "Selected file is not a .pad file.": "El archivo seleccionado no es un archivo .pad.", + "Selected parent folder is not writable.": "La carpeta principal seleccionada no es modificable.", + "Template file not found.": "Archivo de plantilla no encontrado.", + "This .pad file has no matching pad in this Nextcloud.": "Este archivo .pad no tiene un pad asociado en este Nextcloud.", + "This file looks like a copy of an existing .pad file in your account. Open the original to keep editing the linked pad, or create a new pad to fork the content stored in this file.": "Este archivo parece ser una copia de un archivo .pad existente en tu cuenta. Abre el original para seguir editando el pad enlazado, o crea un nuevo pad para bifurcar el contenido almacenado en este archivo.", + "Trusted embed origins (optional)": "Orígenes de incrustación de confianza (opcional)", + "Unable to create pad": "No se puede crear el pad", + "Unable to open pad": "No se puede abrir el pad", + "Unknown error.": "Error desconocido.", + "We couldn't find a matching pad in this Nextcloud. You can create a new pad from the text stored in this file; from then on, opening this file will load the new pad.": "No pudimos encontrar un pad asociado en este Nextcloud. Puedes crear un nuevo pad a partir del texto almacenado en este archivo; a partir de ese momento, abrir este archivo cargará el nuevo pad.", + "Retry pending deletes now": "Reintentar las eliminaciones pendientes ahora", + "Failed to save settings.": "No se han podido guardar los ajustes.", + "Pending delete retry failed.": "No se pudo reintentar las eliminaciones pendientes.", + "Pending delete retry finished.": "Reintento de eliminaciones pendientes completado.", + ".pad file sync interval (seconds)": "Intervalo de sincronización del archivo .pad (segundos)", + "Delete linked Etherpad pad when .pad file is moved to trash": "Eliminar el pad de Etherpad enlazado cuando el archivo .pad se mueve a la papelera", + "If enabled, moving a .pad file to the trash also deletes the linked Etherpad pad.": "Si está activado, al mover un archivo .pad a la papelera también se elimina el pad de Etherpad enlazado.", + "Add trusted Etherpad hostnames or HTTPS origins. Leave empty only if all public HTTPS hosts should be trusted.": "Agrega nombres de host de Etherpad u orígenes HTTPS de confianza. Déjalo vacío solo si se debe confiar en todos los hosts HTTPS públicos.", + "Hint: Set \"authenticationMethod\": \"apikey\" in Etherpad's settings.json.": "Sugerencia: establece \"authenticationMethod\": \"apikey\" en settings.json de Etherpad." }, "nplurals=2; plural=(n != 1);" ); diff --git a/l10n/es.json b/l10n/es.json index 9bd4fb1..d45a0ef 100644 --- a/l10n/es.json +++ b/l10n/es.json @@ -9,38 +9,25 @@ "Auto-filled from the Nextcloud and Etherpad hosts when possible. Adjust it if your deployment uses a proxy path or a different trusted parent domain; leave empty for a host-only cookie.": "Se completa automaticamente desde los hosts de Nextcloud y Etherpad cuando es posible. Ajustalo si la instalacion usa una ruta de proxy u otro dominio padre de confianza; deja vacio para una cookie solo de host.", "Etherpad API key": "Clave API de Etherpad", "Detected API version:": "Version de API detectada:", - "Copy content to .pad file interval (seconds)": "Intervalo para copiar contenido al archivo .pad (segundos)", "Controls how often pad content is copied from Etherpad into the .pad file while the pad is open.": "Controla con que frecuencia se copia el contenido del pad desde Etherpad al archivo .pad mientras el pad esta abierto.", - "Delete pad on trash": "Eliminar el pad al moverlo a la papelera", - "If enabled, moving a .pad file to trash triggers Etherpad delete.": "Si esta activado, mover un archivo .pad a la papelera activa la eliminacion en Etherpad.", "Allow linking external public pads": "Permitir enlazar pads publicos externos", "External host allowlist (optional)": "Lista de permitidos de hosts externos (opcional)", - "Add trusted Etherpad hostnames or https origins. Leave empty only if all public HTTPS hosts should be trusted.": "Agrega nombres de host de Etherpad u origenes https de confianza. Deja vacio solo si se deben confiar todos los hosts HTTPS publicos.", "Save settings": "Guardar ajustes", "Health check": "Comprobacion de estado", "Consistency check": "Comprobacion de consistencia", - "Retry deferred deletes now": "Reintentar ahora eliminaciones aplazadas", "Pending Etherpad deletes": "Eliminaciones pendientes en Etherpad", - "Trashed bindings without file": "Vinculaciones en papelera sin archivo", "Saving settings...": "Guardando ajustes...", "Settings saved.": "Ajustes guardados.", - "Saving...": "Guardando...", "Running health check...": "Ejecutando comprobacion de estado...", "Running consistency check...": "Ejecutando comprobacion de consistencia...", - "Checking sync status...": "Comprobando estado de sincronizacion...", "Health check successful.": "Comprobacion de estado correcta.", "Consistency check successful.": "Comprobacion de consistencia correcta.", "Consistency check successful. No issues found.": "Comprobacion de consistencia correcta. No se encontraron problemas.", "Consistency check finished with issues.": "Comprobacion de consistencia finalizada con problemas.", - "Lifecycle delete retry finished.": "Finalizo el reintento de eliminacion del ciclo de vida.", "Request failed.": "La solicitud fallo.", - "Saving settings failed.": "Fallo al guardar los ajustes.", "Health check failed.": "La comprobacion de estado fallo.", "Health check failed: {detail}": "La comprobacion de estado fallo: {detail}", "Consistency check failed.": "La comprobacion de consistencia fallo.", - "Lifecycle delete retry failed.": "Fallo el reintento de eliminacion del ciclo de vida.", - "Pending delete retry failed.": "Fallo el reintento de eliminaciones pendientes.", - "Failed to save settings.": "No se pudieron guardar los ajustes.", "Etherpad API key is required.": "La clave API de Etherpad es obligatoria.", "Etherpad Base URL is required.": "La URL base de Etherpad es obligatoria.", "Etherpad Base URL must use https.": "La URL base de Etherpad debe usar HTTPS.", @@ -49,7 +36,6 @@ "Etherpad API URL must use http or https.": "La URL API de Etherpad debe usar HTTP o HTTPS.", "Invalid Etherpad API URL.": "URL API de Etherpad no valida.", "Etherpad API URL must not include query or fragment.": "La URL API de Etherpad no debe incluir query ni fragmento.", - "Hint: In Etherpad settings.json set \"authenticationMethod\": \"apikey\".": "Pista: en settings.json de Etherpad, establece \"authenticationMethod\": \"apikey\".", "Invalid Etherpad API version format.": "Formato de version de API de Etherpad no valido.", "Sync interval must be between 5 and 3600 seconds.": "El intervalo de sincronizacion debe estar entre 5 y 3600 segundos.", "External allowlist contains invalid host: {host}": "La lista de permitidos externa contiene un host no valido: {host}", @@ -61,39 +47,78 @@ "Authentication required.": "Autenticacion requerida.", "Admin permissions required.": "Se requieren permisos de administrador.", "New pad": "Nuevo pad", - "New Pad": "Nuevo pad", - "External pad": "Pad externo", - "External pad URL": "URL de pad externo", - "File name": "Nombre de archivo", - "Public pad": "Pad publico", - "Create public pad": "Crear pad publico", - "Choose how you want to create the public pad.": "Elige como quieres crear el pad publico.", - "Internal public pad": "Pad publico interno", - "External public pad (URL)": "Pad publico externo (URL)", - "Could not create public pad.": "No se pudo crear el pad publico.", - "Could not import public pad URL.": "No se pudo importar la URL del pad publico.", - "Cancel": "Cancelar", - "Close": "Cerrar", - "Create": "Crear", - "File name is required.": "El nombre de archivo es obligatorio.", - "External pad URL is required.": "La URL de pad externo es obligatoria.", - "Externes Pad": "Pad externo", - "Open in Etherpad": "Abrir en Etherpad", "Open original pad": "Abrir pad original", - "Open in new tab": "Abrir en una pestana nueva", - "Pad in neuem Tab öffnen": "Abrir pad en una pestana nueva", - "Sync now": "Sincronizar ahora", - "Save pad to file": "Guardar pad en archivo", - "Pad in Datei speichern": "Guardar pad en archivo", - "Synchronized": "Sincronizado", - "Sync pending": "Sincronizacion pendiente", - "Sync failed": "Error de sincronizacion", - "Sync status unavailable": "Estado de sincronizacion no disponible", - "Sync status: syncing": "Estado de sincronizacion: sincronizando...", - "Sync status: synced": "Estado de sincronizacion: sincronizado", - "Sync status: error": "Estado de sincronizacion: error", - "Sync status: pending": "Estado de sincronizacion: pendiente", - "Sync status: unavailable": "Estado de sincronizacion: no disponible" + "A file with this name already exists.": "Ya existe un archivo con este nombre.", + "Absolute https origins allowed to embed the /embed/by-id and /embed/create-by-parent routes. Leave empty to disable external embedding.": "Orígenes https absolutos permitidos para incrustar las rutas /embed/by-id y /embed/create-by-parent. Déjelo vacío para desactivar la incrustación externa.", + "Back": "Atrás", + "Cannot open selected .pad file.": "No se puede abrir el archivo .pad seleccionado.", + "Cannot read selected .pad file.": "No se puede leer el archivo .pad seleccionado.", + "Cannot resolve file path for file ID.": "No se puede resolver la ruta del archivo para el ID del archivo.", + "Cannot resolve selected .pad file.": "No se puede resolver el archivo .pad seleccionado.", + "Cannot resolve selected parent folder.": "No se puede resolver la carpeta principal seleccionada.", + "Checking for the original pad...": "Buscando el pad original...", + "Cookie domain must be a hostname, not a URL.": "El dominio de la cookie debe ser un nombre de host, no una URL.", + "Cookie domain must be a valid shared hostname.": "El dominio de la cookie debe ser un nombre de host compartido válido.", + "Could not check pad sync status.": "No se pudo comprobar el estado de sincronización del pad.", + "Could not create pad from template.": "No se pudo crear el pad desde la plantilla.", + "Could not create pad.": "No se pudo crear el pad.", + "Could not import external pad.": "No se pudo importar el pad externo.", + "Could not initialize pad file.": "No se pudo inicializar el archivo de pad.", + "Could not look up the original pad.": "No se pudo localizar el pad original.", + "Could not move pad to trash.": "No se pudo mover el pad a la papelera.", + "Could not open pad.": "No se pudo abrir el pad.", + "Could not read pad metadata.": "No se pudieron leer los metadatos del pad.", + "Could not recover pad from this file.": "No se pudo recuperar el pad de este archivo.", + "Could not resolve pad file.": "No se pudo resolver el archivo de pad.", + "Could not restore pad from trash.": "No se pudo restaurar el pad de la papelera.", + "Could not sync pad content.": "No se pudo sincronizar el contenido del pad.", + "Create new pad from this file": "Crear nuevo pad a partir de este archivo", + "Creating new pad...": "Creando nuevo pad...", + "Creating pad...": "Creando pad...", + "Embed configuration is incomplete.": "La configuración de incrustación está incompleta.", + "Failed to update test fault.": "No se pudo actualizar el fallo de prueba.", + "Hint: API endpoint not found. Check the API host and that the configured API version is supported by your Etherpad.": "Sugerencia: punto de acceso de la API no encontrado. Comprueba el host de la API y que la versión configurada sea compatible con tu Etherpad.", + "Hint: Connection refused. Etherpad does not appear to be running on the configured host and port.": "Sugerencia: conexión rechazada. Etherpad no parece estar ejecutándose en el host y puerto configurados.", + "Hint: Connection timed out. Check that this server can reach the Etherpad host (firewall, network).": "Sugerencia: tiempo de conexión agotado. Comprueba que este servidor pueda acceder al host de Etherpad (cortafuegos, red).", + "Hint: Could not reach Etherpad. Check the API host and that this server can connect to it.": "Sugerencia: no se pudo contactar con Etherpad. Comprueba el host de la API y que este servidor pueda conectarse a él.", + "Hint: Etherpad rejected the API key. Check that the key matches Etherpad's APIKEY.txt.": "Sugerencia: Etherpad rechazó la clave de API. Comprueba que la clave coincida con APIKEY.txt de Etherpad.", + "Hint: Etherpad returned a server error. Check the Etherpad server logs.": "Sugerencia: Etherpad devolvió un error de servidor. Comprueba los registros del servidor de Etherpad.", + "Hint: Etherpad returned non-JSON. Likely a reverse proxy or HTML error page in front of the API host.": "Sugerencia: Etherpad devolvió contenido no JSON. Probablemente un proxy inverso o una página HTML de error delante del host de la API.", + "Hint: TLS handshake failed. Check the Etherpad certificate and that the configured URL uses the right scheme.": "Sugerencia: el establecimiento de la conexión TLS falló. Comprueba el certificado de Etherpad y que la URL configurada use el esquema correcto.", + "Hint: The configured Etherpad host did not resolve. Check the hostname for typos and that DNS reaches it from this server.": "Sugerencia: el host de Etherpad configurado no se resolvió. Comprueba el nombre del host por erratas y que el DNS llegue a él desde este servidor.", + "Invalid access mode.": "Modo de acceso no válido.", + "Invalid file ID.": "ID de archivo no válido.", + "Invalid file path.": "Ruta de archivo no válida.", + "Invalid input.": "Entrada no válida.", + "Invalid pad name.": "Nombre de pad no válido.", + "Invalid parent folder ID.": "ID de carpeta principal no válido.", + "Loading pad...": "Cargando pad...", + "No synced snapshot is stored in this .pad file yet.": "Aún no hay una instantánea sincronizada almacenada en este archivo .pad.", + "Open the original .pad file": "Abrir el archivo .pad original", + "Pad file not found.": "Archivo de pad no encontrado.", + "Pad from another server": "Pad de otro servidor", + "Pad name is required.": "Se requiere el nombre del pad.", + "Read-only snapshot": "Instantánea de solo lectura", + "Read-only snapshot from the .pad file.": "Instantánea de solo lectura del archivo .pad.", + "Selected file is not a .pad file.": "El archivo seleccionado no es un archivo .pad.", + "Selected parent folder is not writable.": "La carpeta principal seleccionada no es modificable.", + "Template file not found.": "Archivo de plantilla no encontrado.", + "This .pad file has no matching pad in this Nextcloud.": "Este archivo .pad no tiene un pad asociado en este Nextcloud.", + "This file looks like a copy of an existing .pad file in your account. Open the original to keep editing the linked pad, or create a new pad to fork the content stored in this file.": "Este archivo parece ser una copia de un archivo .pad existente en tu cuenta. Abre el original para seguir editando el pad enlazado, o crea un nuevo pad para bifurcar el contenido almacenado en este archivo.", + "Trusted embed origins (optional)": "Orígenes de incrustación de confianza (opcional)", + "Unable to create pad": "No se puede crear el pad", + "Unable to open pad": "No se puede abrir el pad", + "Unknown error.": "Error desconocido.", + "We couldn't find a matching pad in this Nextcloud. You can create a new pad from the text stored in this file; from then on, opening this file will load the new pad.": "No pudimos encontrar un pad asociado en este Nextcloud. Puedes crear un nuevo pad a partir del texto almacenado en este archivo; a partir de ese momento, abrir este archivo cargará el nuevo pad.", + "Retry pending deletes now": "Reintentar las eliminaciones pendientes ahora", + "Failed to save settings.": "No se han podido guardar los ajustes.", + "Pending delete retry failed.": "No se pudo reintentar las eliminaciones pendientes.", + "Pending delete retry finished.": "Reintento de eliminaciones pendientes completado.", + ".pad file sync interval (seconds)": "Intervalo de sincronización del archivo .pad (segundos)", + "Delete linked Etherpad pad when .pad file is moved to trash": "Eliminar el pad de Etherpad enlazado cuando el archivo .pad se mueve a la papelera", + "If enabled, moving a .pad file to the trash also deletes the linked Etherpad pad.": "Si está activado, al mover un archivo .pad a la papelera también se elimina el pad de Etherpad enlazado.", + "Add trusted Etherpad hostnames or HTTPS origins. Leave empty only if all public HTTPS hosts should be trusted.": "Agrega nombres de host de Etherpad u orígenes HTTPS de confianza. Déjalo vacío solo si se debe confiar en todos los hosts HTTPS públicos.", + "Hint: Set \"authenticationMethod\": \"apikey\" in Etherpad's settings.json.": "Sugerencia: establece \"authenticationMethod\": \"apikey\" en settings.json de Etherpad." }, "pluralForm": "nplurals=2; plural=(n != 1);" } diff --git a/l10n/es.php b/l10n/es.php index 385d5a3..05f257e 100644 --- a/l10n/es.php +++ b/l10n/es.php @@ -10,38 +10,25 @@ "Auto-filled from the Nextcloud and Etherpad hosts when possible. Adjust it if your deployment uses a proxy path or a different trusted parent domain; leave empty for a host-only cookie." => "Se completa automaticamente desde los hosts de Nextcloud y Etherpad cuando es posible. Ajustalo si la instalacion usa una ruta de proxy u otro dominio padre de confianza; deja vacio para una cookie solo de host.", "Etherpad API key" => "Clave API de Etherpad", "Detected API version:" => "Version de API detectada:", - "Copy content to .pad file interval (seconds)" => "Intervalo para copiar contenido al archivo .pad (segundos)", "Controls how often pad content is copied from Etherpad into the .pad file while the pad is open." => "Controla con que frecuencia se copia el contenido del pad desde Etherpad al archivo .pad mientras el pad esta abierto.", - "Delete pad on trash" => "Eliminar el pad al moverlo a la papelera", - "If enabled, moving a .pad file to trash triggers Etherpad delete." => "Si esta activado, mover un archivo .pad a la papelera activa la eliminacion en Etherpad.", "Allow linking external public pads" => "Permitir enlazar pads publicos externos", "External host allowlist (optional)" => "Lista de permitidos de hosts externos (opcional)", - "Add trusted Etherpad hostnames or https origins. Leave empty only if all public HTTPS hosts should be trusted." => "Agrega nombres de host de Etherpad u origenes https de confianza. Deja vacio solo si se deben confiar todos los hosts HTTPS publicos.", "Save settings" => "Guardar ajustes", "Health check" => "Comprobacion de estado", "Consistency check" => "Comprobacion de consistencia", - "Retry deferred deletes now" => "Reintentar ahora eliminaciones aplazadas", "Pending Etherpad deletes" => "Eliminaciones pendientes en Etherpad", - "Trashed bindings without file" => "Vinculaciones en papelera sin archivo", "Saving settings..." => "Guardando ajustes...", "Settings saved." => "Ajustes guardados.", - "Saving..." => "Guardando...", "Running health check..." => "Ejecutando comprobacion de estado...", "Running consistency check..." => "Ejecutando comprobacion de consistencia...", - "Checking sync status..." => "Comprobando estado de sincronizacion...", "Health check successful." => "Comprobacion de estado correcta.", "Consistency check successful." => "Comprobacion de consistencia correcta.", "Consistency check successful. No issues found." => "Comprobacion de consistencia correcta. No se encontraron problemas.", "Consistency check finished with issues." => "Comprobacion de consistencia finalizada con problemas.", - "Lifecycle delete retry finished." => "Finalizo el reintento de eliminacion del ciclo de vida.", "Request failed." => "La solicitud fallo.", - "Saving settings failed." => "Fallo al guardar los ajustes.", "Health check failed." => "La comprobacion de estado fallo.", "Health check failed: {detail}" => "La comprobacion de estado fallo: {detail}", "Consistency check failed." => "La comprobacion de consistencia fallo.", - "Lifecycle delete retry failed." => "Fallo el reintento de eliminacion del ciclo de vida.", - "Pending delete retry failed." => "Fallo el reintento de eliminaciones pendientes.", - "Failed to save settings." => "No se pudieron guardar los ajustes.", "Etherpad API key is required." => "La clave API de Etherpad es obligatoria.", "Etherpad Base URL is required." => "La URL base de Etherpad es obligatoria.", "Etherpad Base URL must use https." => "La URL base de Etherpad debe usar HTTPS.", @@ -50,7 +37,6 @@ "Etherpad API URL must use http or https." => "La URL API de Etherpad debe usar HTTP o HTTPS.", "Invalid Etherpad API URL." => "URL API de Etherpad no valida.", "Etherpad API URL must not include query or fragment." => "La URL API de Etherpad no debe incluir query ni fragmento.", - "Hint: In Etherpad settings.json set \"authenticationMethod\": \"apikey\"." => "Pista: en settings.json de Etherpad, establece \"authenticationMethod\": \"apikey\".", "Invalid Etherpad API version format." => "Formato de version de API de Etherpad no valido.", "Sync interval must be between 5 and 3600 seconds." => "El intervalo de sincronizacion debe estar entre 5 y 3600 segundos.", "External allowlist contains invalid host: {host}" => "La lista de permitidos externa contiene un host no valido: {host}", @@ -62,39 +48,78 @@ "Authentication required." => "Autenticacion requerida.", "Admin permissions required." => "Se requieren permisos de administrador.", "New pad" => "Nuevo pad", - "New Pad" => "Nuevo pad", - "External pad" => "Pad externo", - "External pad URL" => "URL de pad externo", - "File name" => "Nombre de archivo", - "Public pad" => "Pad publico", - "Create public pad" => "Crear pad publico", - "Choose how you want to create the public pad." => "Elige como quieres crear el pad publico.", - "Internal public pad" => "Pad publico interno", - "External public pad (URL)" => "Pad publico externo (URL)", - "Could not create public pad." => "No se pudo crear el pad publico.", - "Could not import public pad URL." => "No se pudo importar la URL del pad publico.", - "Cancel" => "Cancelar", - "Close" => "Cerrar", - "Create" => "Crear", - "File name is required." => "El nombre de archivo es obligatorio.", - "External pad URL is required." => "La URL de pad externo es obligatoria.", - "Externes Pad" => "Pad externo", - "Open in Etherpad" => "Abrir en Etherpad", "Open original pad" => "Abrir pad original", - "Open in new tab" => "Abrir en una pestana nueva", - "Pad in neuem Tab öffnen" => "Abrir pad en una pestana nueva", - "Sync now" => "Sincronizar ahora", - "Save pad to file" => "Guardar pad en archivo", - "Pad in Datei speichern" => "Guardar pad en archivo", - "Synchronized" => "Sincronizado", - "Sync pending" => "Sincronizacion pendiente", - "Sync failed" => "Error de sincronizacion", - "Sync status unavailable" => "Estado de sincronizacion no disponible", - "Sync status: syncing" => "Estado de sincronizacion: sincronizando...", - "Sync status: synced" => "Estado de sincronizacion: sincronizado", - "Sync status: error" => "Estado de sincronizacion: error", - "Sync status: pending" => "Estado de sincronizacion: pendiente", - "Sync status: unavailable" => "Estado de sincronizacion: no disponible", + "A file with this name already exists." => "Ya existe un archivo con este nombre.", + "Absolute https origins allowed to embed the /embed/by-id and /embed/create-by-parent routes. Leave empty to disable external embedding." => "Orígenes https absolutos permitidos para incrustar las rutas /embed/by-id y /embed/create-by-parent. Déjelo vacío para desactivar la incrustación externa.", + "Back" => "Atrás", + "Cannot open selected .pad file." => "No se puede abrir el archivo .pad seleccionado.", + "Cannot read selected .pad file." => "No se puede leer el archivo .pad seleccionado.", + "Cannot resolve file path for file ID." => "No se puede resolver la ruta del archivo para el ID del archivo.", + "Cannot resolve selected .pad file." => "No se puede resolver el archivo .pad seleccionado.", + "Cannot resolve selected parent folder." => "No se puede resolver la carpeta principal seleccionada.", + "Checking for the original pad..." => "Buscando el pad original...", + "Cookie domain must be a hostname, not a URL." => "El dominio de la cookie debe ser un nombre de host, no una URL.", + "Cookie domain must be a valid shared hostname." => "El dominio de la cookie debe ser un nombre de host compartido válido.", + "Could not check pad sync status." => "No se pudo comprobar el estado de sincronización del pad.", + "Could not create pad from template." => "No se pudo crear el pad desde la plantilla.", + "Could not create pad." => "No se pudo crear el pad.", + "Could not import external pad." => "No se pudo importar el pad externo.", + "Could not initialize pad file." => "No se pudo inicializar el archivo de pad.", + "Could not look up the original pad." => "No se pudo localizar el pad original.", + "Could not move pad to trash." => "No se pudo mover el pad a la papelera.", + "Could not open pad." => "No se pudo abrir el pad.", + "Could not read pad metadata." => "No se pudieron leer los metadatos del pad.", + "Could not recover pad from this file." => "No se pudo recuperar el pad de este archivo.", + "Could not resolve pad file." => "No se pudo resolver el archivo de pad.", + "Could not restore pad from trash." => "No se pudo restaurar el pad de la papelera.", + "Could not sync pad content." => "No se pudo sincronizar el contenido del pad.", + "Create new pad from this file" => "Crear nuevo pad a partir de este archivo", + "Creating new pad..." => "Creando nuevo pad...", + "Creating pad..." => "Creando pad...", + "Embed configuration is incomplete." => "La configuración de incrustación está incompleta.", + "Failed to update test fault." => "No se pudo actualizar el fallo de prueba.", + "Hint: API endpoint not found. Check the API host and that the configured API version is supported by your Etherpad." => "Sugerencia: punto de acceso de la API no encontrado. Comprueba el host de la API y que la versión configurada sea compatible con tu Etherpad.", + "Hint: Connection refused. Etherpad does not appear to be running on the configured host and port." => "Sugerencia: conexión rechazada. Etherpad no parece estar ejecutándose en el host y puerto configurados.", + "Hint: Connection timed out. Check that this server can reach the Etherpad host (firewall, network)." => "Sugerencia: tiempo de conexión agotado. Comprueba que este servidor pueda acceder al host de Etherpad (cortafuegos, red).", + "Hint: Could not reach Etherpad. Check the API host and that this server can connect to it." => "Sugerencia: no se pudo contactar con Etherpad. Comprueba el host de la API y que este servidor pueda conectarse a él.", + "Hint: Etherpad rejected the API key. Check that the key matches Etherpad's APIKEY.txt." => "Sugerencia: Etherpad rechazó la clave de API. Comprueba que la clave coincida con APIKEY.txt de Etherpad.", + "Hint: Etherpad returned a server error. Check the Etherpad server logs." => "Sugerencia: Etherpad devolvió un error de servidor. Comprueba los registros del servidor de Etherpad.", + "Hint: Etherpad returned non-JSON. Likely a reverse proxy or HTML error page in front of the API host." => "Sugerencia: Etherpad devolvió contenido no JSON. Probablemente un proxy inverso o una página HTML de error delante del host de la API.", + "Hint: TLS handshake failed. Check the Etherpad certificate and that the configured URL uses the right scheme." => "Sugerencia: el establecimiento de la conexión TLS falló. Comprueba el certificado de Etherpad y que la URL configurada use el esquema correcto.", + "Hint: The configured Etherpad host did not resolve. Check the hostname for typos and that DNS reaches it from this server." => "Sugerencia: el host de Etherpad configurado no se resolvió. Comprueba el nombre del host por erratas y que el DNS llegue a él desde este servidor.", + "Invalid access mode." => "Modo de acceso no válido.", + "Invalid file ID." => "ID de archivo no válido.", + "Invalid file path." => "Ruta de archivo no válida.", + "Invalid input." => "Entrada no válida.", + "Invalid pad name." => "Nombre de pad no válido.", + "Invalid parent folder ID." => "ID de carpeta principal no válido.", + "Loading pad..." => "Cargando pad...", + "No synced snapshot is stored in this .pad file yet." => "Aún no hay una instantánea sincronizada almacenada en este archivo .pad.", + "Open the original .pad file" => "Abrir el archivo .pad original", + "Pad file not found." => "Archivo de pad no encontrado.", + "Pad from another server" => "Pad de otro servidor", + "Pad name is required." => "Se requiere el nombre del pad.", + "Read-only snapshot" => "Instantánea de solo lectura", + "Read-only snapshot from the .pad file." => "Instantánea de solo lectura del archivo .pad.", + "Selected file is not a .pad file." => "El archivo seleccionado no es un archivo .pad.", + "Selected parent folder is not writable." => "La carpeta principal seleccionada no es modificable.", + "Template file not found." => "Archivo de plantilla no encontrado.", + "This .pad file has no matching pad in this Nextcloud." => "Este archivo .pad no tiene un pad asociado en este Nextcloud.", + "This file looks like a copy of an existing .pad file in your account. Open the original to keep editing the linked pad, or create a new pad to fork the content stored in this file." => "Este archivo parece ser una copia de un archivo .pad existente en tu cuenta. Abre el original para seguir editando el pad enlazado, o crea un nuevo pad para bifurcar el contenido almacenado en este archivo.", + "Trusted embed origins (optional)" => "Orígenes de incrustación de confianza (opcional)", + "Unable to create pad" => "No se puede crear el pad", + "Unable to open pad" => "No se puede abrir el pad", + "Unknown error." => "Error desconocido.", + "We couldn't find a matching pad in this Nextcloud. You can create a new pad from the text stored in this file; from then on, opening this file will load the new pad." => "No pudimos encontrar un pad asociado en este Nextcloud. Puedes crear un nuevo pad a partir del texto almacenado en este archivo; a partir de ese momento, abrir este archivo cargará el nuevo pad.", + "Retry pending deletes now" => "Reintentar las eliminaciones pendientes ahora", + "Failed to save settings." => "No se han podido guardar los ajustes.", + "Pending delete retry failed." => "No se pudo reintentar las eliminaciones pendientes.", + "Pending delete retry finished." => "Reintento de eliminaciones pendientes completado.", + ".pad file sync interval (seconds)" => "Intervalo de sincronización del archivo .pad (segundos)", + "Delete linked Etherpad pad when .pad file is moved to trash" => "Eliminar el pad de Etherpad enlazado cuando el archivo .pad se mueve a la papelera", + "If enabled, moving a .pad file to the trash also deletes the linked Etherpad pad." => "Si está activado, al mover un archivo .pad a la papelera también se elimina el pad de Etherpad enlazado.", + "Add trusted Etherpad hostnames or HTTPS origins. Leave empty only if all public HTTPS hosts should be trusted." => "Agrega nombres de host de Etherpad u orígenes HTTPS de confianza. Déjalo vacío solo si se debe confiar en todos los hosts HTTPS públicos.", + "Hint: Set \"authenticationMethod\": \"apikey\" in Etherpad's settings.json." => "Sugerencia: establece \"authenticationMethod\": \"apikey\" en settings.json de Etherpad.", ]; $PLURAL_FORMS = "nplurals=2; plural=(n != 1);"; diff --git a/l10n/fr.js b/l10n/fr.js index bf6ead9..b92dc47 100644 --- a/l10n/fr.js +++ b/l10n/fr.js @@ -10,38 +10,25 @@ OC.L10N.register( "Auto-filled from the Nextcloud and Etherpad hosts when possible. Adjust it if your deployment uses a proxy path or a different trusted parent domain; leave empty for a host-only cookie.": "Renseigne automatiquement depuis les hotes Nextcloud et Etherpad lorsque possible. Ajustez si le deploiement utilise un chemin proxy ou un autre domaine parent de confiance; laissez vide pour un cookie limite a l'hote.", "Etherpad API key": "Cle API Etherpad", "Detected API version:": "Version API detectee :", - "Copy content to .pad file interval (seconds)": "Intervalle de copie du contenu vers le fichier .pad (secondes)", "Controls how often pad content is copied from Etherpad into the .pad file while the pad is open.": "Controle la frequence de copie du contenu du pad depuis Etherpad vers le fichier .pad pendant que le pad est ouvert.", - "Delete pad on trash": "Supprimer le pad lors de la mise a la corbeille", - "If enabled, moving a .pad file to trash triggers Etherpad delete.": "Si active, le deplacement d'un fichier .pad vers la corbeille declenche la suppression dans Etherpad.", "Allow linking external public pads": "Autoriser les liens vers des pads publics externes", "External host allowlist (optional)": "Liste d'autorisation d'hotes externes (optionnel)", - "Add trusted Etherpad hostnames or https origins. Leave empty only if all public HTTPS hosts should be trusted.": "Ajoutez des noms d'hote Etherpad ou des origines https de confiance. Ne laissez vide que si tous les hotes HTTPS publics doivent etre consideres comme fiables.", "Save settings": "Enregistrer les parametres", "Health check": "Verification de sante", "Consistency check": "Verification de coherence", - "Retry deferred deletes now": "Relancer maintenant les suppressions differees", "Pending Etherpad deletes": "Suppressions Etherpad en attente", - "Trashed bindings without file": "Liaisons en corbeille sans fichier", "Saving settings...": "Enregistrement des parametres...", "Settings saved.": "Parametres enregistres.", - "Saving...": "Enregistrement...", "Running health check...": "Verification de sante en cours...", "Running consistency check...": "Verification de coherence en cours...", - "Checking sync status...": "Verification de l'etat de synchronisation...", "Health check successful.": "Verification de sante reussie.", "Consistency check successful.": "Verification de coherence reussie.", "Consistency check successful. No issues found.": "Verification de coherence reussie. Aucun probleme trouve.", "Consistency check finished with issues.": "Verification de coherence terminee avec des problemes.", - "Lifecycle delete retry finished.": "Nouvelle tentative de suppression du cycle de vie terminee.", "Request failed.": "La requete a echoue.", - "Saving settings failed.": "Echec de l'enregistrement des parametres.", "Health check failed.": "La verification de sante a echoue.", "Health check failed: {detail}": "La verification de sante a echoue : {detail}", "Consistency check failed.": "La verification de coherence a echoue.", - "Lifecycle delete retry failed.": "La nouvelle tentative de suppression du cycle de vie a echoue.", - "Pending delete retry failed.": "La nouvelle tentative des suppressions en attente a echoue.", - "Failed to save settings.": "Impossible d'enregistrer les parametres.", "Etherpad API key is required.": "La cle API Etherpad est requise.", "Etherpad Base URL is required.": "L'URL de base Etherpad est requise.", "Etherpad Base URL must use https.": "L'URL de base Etherpad doit utiliser HTTPS.", @@ -50,7 +37,6 @@ OC.L10N.register( "Etherpad API URL must use http or https.": "L'URL API Etherpad doit utiliser HTTP ou HTTPS.", "Invalid Etherpad API URL.": "URL API Etherpad invalide.", "Etherpad API URL must not include query or fragment.": "L'URL API Etherpad ne doit pas contenir de requete ni de fragment.", - "Hint: In Etherpad settings.json set \"authenticationMethod\": \"apikey\".": "Indice : dans le fichier settings.json d'Etherpad, definir \"authenticationMethod\": \"apikey\".", "Invalid Etherpad API version format.": "Format de version API Etherpad invalide.", "Sync interval must be between 5 and 3600 seconds.": "L'intervalle de synchronisation doit etre compris entre 5 et 3600 secondes.", "External allowlist contains invalid host: {host}": "La liste d'autorisation externe contient un hote invalide : {host}", @@ -62,39 +48,78 @@ OC.L10N.register( "Authentication required.": "Authentification requise.", "Admin permissions required.": "Permissions administrateur requises.", "New pad": "Nouveau pad", - "New Pad": "Nouveau pad", - "External pad": "Pad externe", - "External pad URL": "URL du pad externe", - "File name": "Nom de fichier", - "Public pad": "Pad public", - "Create public pad": "Creer un pad public", - "Choose how you want to create the public pad.": "Choisissez comment vous souhaitez creer le pad public.", - "Internal public pad": "Pad public interne", - "External public pad (URL)": "Pad public externe (URL)", - "Could not create public pad.": "Impossible de creer le pad public.", - "Could not import public pad URL.": "Impossible d'importer l'URL du pad public.", - "Cancel": "Annuler", - "Close": "Fermer", - "Create": "Creer", - "File name is required.": "Le nom de fichier est requis.", - "External pad URL is required.": "L'URL du pad externe est requise.", - "Externes Pad": "Pad externe", - "Open in Etherpad": "Ouvrir dans Etherpad", "Open original pad": "Ouvrir le pad d'origine", - "Open in new tab": "Ouvrir dans un nouvel onglet", - "Pad in neuem Tab öffnen": "Ouvrir le pad dans un nouvel onglet", - "Sync now": "Synchroniser maintenant", - "Save pad to file": "Enregistrer le pad dans le fichier", - "Pad in Datei speichern": "Enregistrer le pad dans le fichier", - "Synchronized": "Synchronise", - "Sync pending": "Synchronisation en attente", - "Sync failed": "Echec de la synchronisation", - "Sync status unavailable": "Etat de synchronisation indisponible", - "Sync status: syncing": "Etat de synchronisation : synchronisation...", - "Sync status: synced": "Etat de synchronisation : synchronise", - "Sync status: error": "Etat de synchronisation : erreur", - "Sync status: pending": "Etat de synchronisation : en attente", - "Sync status: unavailable": "Etat de synchronisation : indisponible" + "A file with this name already exists.": "Un fichier portant ce nom existe déjà.", + "Absolute https origins allowed to embed the /embed/by-id and /embed/create-by-parent routes. Leave empty to disable external embedding.": "Origines https absolues autorisées à intégrer les routes /embed/by-id et /embed/create-by-parent. Laisser vide pour désactiver l'intégration externe.", + "Back": "Retour", + "Cannot open selected .pad file.": "Impossible d'ouvrir le fichier .pad sélectionné.", + "Cannot read selected .pad file.": "Impossible de lire le fichier .pad sélectionné.", + "Cannot resolve file path for file ID.": "Impossible de résoudre le chemin du fichier pour l'identifiant.", + "Cannot resolve selected .pad file.": "Impossible de résoudre le fichier .pad sélectionné.", + "Cannot resolve selected parent folder.": "Impossible de résoudre le dossier parent sélectionné.", + "Checking for the original pad...": "Recherche du pad original...", + "Cookie domain must be a hostname, not a URL.": "Le domaine du cookie doit être un nom d'hôte, pas une URL.", + "Cookie domain must be a valid shared hostname.": "Le domaine du cookie doit être un nom d'hôte partagé valide.", + "Could not check pad sync status.": "Impossible de vérifier l'état de synchronisation du pad.", + "Could not create pad from template.": "Impossible de créer le pad à partir du modèle.", + "Could not create pad.": "Impossible de créer le pad.", + "Could not import external pad.": "Impossible d'importer le pad externe.", + "Could not initialize pad file.": "Impossible d'initialiser le fichier pad.", + "Could not look up the original pad.": "Impossible de retrouver le pad original.", + "Could not move pad to trash.": "Impossible de déplacer le pad vers la corbeille.", + "Could not open pad.": "Impossible d'ouvrir le pad.", + "Could not read pad metadata.": "Impossible de lire les métadonnées du pad.", + "Could not recover pad from this file.": "Impossible de récupérer le pad depuis ce fichier.", + "Could not resolve pad file.": "Impossible de résoudre le fichier pad.", + "Could not restore pad from trash.": "Impossible de restaurer le pad depuis la corbeille.", + "Could not sync pad content.": "Impossible de synchroniser le contenu du pad.", + "Create new pad from this file": "Créer un nouveau pad à partir de ce fichier", + "Creating new pad...": "Création d'un nouveau pad...", + "Creating pad...": "Création du pad...", + "Embed configuration is incomplete.": "La configuration d'intégration est incomplète.", + "Failed to update test fault.": "Échec de la mise à jour de l'erreur de test.", + "Hint: API endpoint not found. Check the API host and that the configured API version is supported by your Etherpad.": "Indice : point d'accès de l'API introuvable. Vérifiez l'hôte de l'API et que la version configurée est prise en charge par votre Etherpad.", + "Hint: Connection refused. Etherpad does not appear to be running on the configured host and port.": "Indice : connexion refusée. Etherpad ne semble pas être en cours d'exécution sur l'hôte et le port configurés.", + "Hint: Connection timed out. Check that this server can reach the Etherpad host (firewall, network).": "Indice : délai de connexion dépassé. Vérifiez que ce serveur peut joindre l'hôte Etherpad (pare-feu, réseau).", + "Hint: Could not reach Etherpad. Check the API host and that this server can connect to it.": "Indice : impossible de joindre Etherpad. Vérifiez l'hôte de l'API et que ce serveur peut s'y connecter.", + "Hint: Etherpad rejected the API key. Check that the key matches Etherpad's APIKEY.txt.": "Indice : Etherpad a rejeté la clé d'API. Vérifiez que la clé correspond au fichier APIKEY.txt d'Etherpad.", + "Hint: Etherpad returned a server error. Check the Etherpad server logs.": "Indice : Etherpad a renvoyé une erreur serveur. Consultez les journaux du serveur Etherpad.", + "Hint: Etherpad returned non-JSON. Likely a reverse proxy or HTML error page in front of the API host.": "Indice : Etherpad a renvoyé un contenu non JSON. Probablement un proxy inverse ou une page d'erreur HTML devant l'hôte de l'API.", + "Hint: TLS handshake failed. Check the Etherpad certificate and that the configured URL uses the right scheme.": "Indice : l'établissement de la connexion TLS a échoué. Vérifiez le certificat Etherpad et que l'URL configurée utilise le bon schéma.", + "Hint: The configured Etherpad host did not resolve. Check the hostname for typos and that DNS reaches it from this server.": "Indice : l'hôte Etherpad configuré n'a pas été résolu. Vérifiez l'absence de fautes de frappe et que le DNS l'atteint depuis ce serveur.", + "Invalid access mode.": "Mode d'accès non valide.", + "Invalid file ID.": "Identifiant de fichier non valide.", + "Invalid file path.": "Chemin de fichier non valide.", + "Invalid input.": "Entrée non valide.", + "Invalid pad name.": "Nom de pad non valide.", + "Invalid parent folder ID.": "Identifiant de dossier parent non valide.", + "Loading pad...": "Chargement du pad...", + "No synced snapshot is stored in this .pad file yet.": "Aucun instantané synchronisé n'est encore stocké dans ce fichier .pad.", + "Open the original .pad file": "Ouvrir le fichier .pad original", + "Pad file not found.": "Fichier pad introuvable.", + "Pad from another server": "Pad d'un autre serveur", + "Pad name is required.": "Le nom du pad est obligatoire.", + "Read-only snapshot": "Instantané en lecture seule", + "Read-only snapshot from the .pad file.": "Instantané en lecture seule du fichier .pad.", + "Selected file is not a .pad file.": "Le fichier sélectionné n'est pas un fichier .pad.", + "Selected parent folder is not writable.": "Le dossier parent sélectionné n'est pas modifiable.", + "Template file not found.": "Fichier modèle introuvable.", + "This .pad file has no matching pad in this Nextcloud.": "Ce fichier .pad n'a pas de pad correspondant dans ce Nextcloud.", + "This file looks like a copy of an existing .pad file in your account. Open the original to keep editing the linked pad, or create a new pad to fork the content stored in this file.": "Ce fichier ressemble à une copie d'un fichier .pad existant dans votre compte. Ouvrez l'original pour continuer à modifier le pad lié, ou créez un nouveau pad pour dupliquer le contenu stocké dans ce fichier.", + "Trusted embed origins (optional)": "Origines d'intégration de confiance (optionnel)", + "Unable to create pad": "Impossible de créer le pad", + "Unable to open pad": "Impossible d'ouvrir le pad", + "Unknown error.": "Erreur inconnue.", + "We couldn't find a matching pad in this Nextcloud. You can create a new pad from the text stored in this file; from then on, opening this file will load the new pad.": "Nous n'avons pas trouvé de pad correspondant dans ce Nextcloud. Vous pouvez créer un nouveau pad à partir du texte stocké dans ce fichier ; à partir de là, ouvrir ce fichier chargera le nouveau pad.", + "Retry pending deletes now": "Réessayer les suppressions en attente maintenant", + "Failed to save settings.": "Impossible d'enregistrer les paramètres.", + "Pending delete retry failed.": "Impossible de réessayer les suppressions en attente.", + "Pending delete retry finished.": "Réessai des suppressions en attente terminé.", + ".pad file sync interval (seconds)": "Intervalle de synchronisation du fichier .pad (secondes)", + "Delete linked Etherpad pad when .pad file is moved to trash": "Supprimer le pad Etherpad lié lorsque le fichier .pad est déplacé vers la corbeille", + "If enabled, moving a .pad file to the trash also deletes the linked Etherpad pad.": "Si activé, déplacer un fichier .pad vers la corbeille supprime également le pad Etherpad lié.", + "Add trusted Etherpad hostnames or HTTPS origins. Leave empty only if all public HTTPS hosts should be trusted.": "Ajoutez des noms d'hôte Etherpad ou des origines HTTPS de confiance. Ne laissez vide que si tous les hôtes HTTPS publics doivent être considérés comme de confiance.", + "Hint: Set \"authenticationMethod\": \"apikey\" in Etherpad's settings.json.": "Indice : définissez \"authenticationMethod\": \"apikey\" dans le fichier settings.json d'Etherpad." }, "nplurals=2; plural=(n > 1);" ); diff --git a/l10n/fr.json b/l10n/fr.json index 63101a5..0ba82b7 100644 --- a/l10n/fr.json +++ b/l10n/fr.json @@ -9,38 +9,25 @@ "Auto-filled from the Nextcloud and Etherpad hosts when possible. Adjust it if your deployment uses a proxy path or a different trusted parent domain; leave empty for a host-only cookie.": "Renseigne automatiquement depuis les hotes Nextcloud et Etherpad lorsque possible. Ajustez si le deploiement utilise un chemin proxy ou un autre domaine parent de confiance; laissez vide pour un cookie limite a l'hote.", "Etherpad API key": "Cle API Etherpad", "Detected API version:": "Version API detectee :", - "Copy content to .pad file interval (seconds)": "Intervalle de copie du contenu vers le fichier .pad (secondes)", "Controls how often pad content is copied from Etherpad into the .pad file while the pad is open.": "Controle la frequence de copie du contenu du pad depuis Etherpad vers le fichier .pad pendant que le pad est ouvert.", - "Delete pad on trash": "Supprimer le pad lors de la mise a la corbeille", - "If enabled, moving a .pad file to trash triggers Etherpad delete.": "Si active, le deplacement d'un fichier .pad vers la corbeille declenche la suppression dans Etherpad.", "Allow linking external public pads": "Autoriser les liens vers des pads publics externes", "External host allowlist (optional)": "Liste d'autorisation d'hotes externes (optionnel)", - "Add trusted Etherpad hostnames or https origins. Leave empty only if all public HTTPS hosts should be trusted.": "Ajoutez des noms d'hote Etherpad ou des origines https de confiance. Ne laissez vide que si tous les hotes HTTPS publics doivent etre consideres comme fiables.", "Save settings": "Enregistrer les parametres", "Health check": "Verification de sante", "Consistency check": "Verification de coherence", - "Retry deferred deletes now": "Relancer maintenant les suppressions differees", "Pending Etherpad deletes": "Suppressions Etherpad en attente", - "Trashed bindings without file": "Liaisons en corbeille sans fichier", "Saving settings...": "Enregistrement des parametres...", "Settings saved.": "Parametres enregistres.", - "Saving...": "Enregistrement...", "Running health check...": "Verification de sante en cours...", "Running consistency check...": "Verification de coherence en cours...", - "Checking sync status...": "Verification de l'etat de synchronisation...", "Health check successful.": "Verification de sante reussie.", "Consistency check successful.": "Verification de coherence reussie.", "Consistency check successful. No issues found.": "Verification de coherence reussie. Aucun probleme trouve.", "Consistency check finished with issues.": "Verification de coherence terminee avec des problemes.", - "Lifecycle delete retry finished.": "Nouvelle tentative de suppression du cycle de vie terminee.", "Request failed.": "La requete a echoue.", - "Saving settings failed.": "Echec de l'enregistrement des parametres.", "Health check failed.": "La verification de sante a echoue.", "Health check failed: {detail}": "La verification de sante a echoue : {detail}", "Consistency check failed.": "La verification de coherence a echoue.", - "Lifecycle delete retry failed.": "La nouvelle tentative de suppression du cycle de vie a echoue.", - "Pending delete retry failed.": "La nouvelle tentative des suppressions en attente a echoue.", - "Failed to save settings.": "Impossible d'enregistrer les parametres.", "Etherpad API key is required.": "La cle API Etherpad est requise.", "Etherpad Base URL is required.": "L'URL de base Etherpad est requise.", "Etherpad Base URL must use https.": "L'URL de base Etherpad doit utiliser HTTPS.", @@ -49,7 +36,6 @@ "Etherpad API URL must use http or https.": "L'URL API Etherpad doit utiliser HTTP ou HTTPS.", "Invalid Etherpad API URL.": "URL API Etherpad invalide.", "Etherpad API URL must not include query or fragment.": "L'URL API Etherpad ne doit pas contenir de requete ni de fragment.", - "Hint: In Etherpad settings.json set \"authenticationMethod\": \"apikey\".": "Indice : dans le fichier settings.json d'Etherpad, definir \"authenticationMethod\": \"apikey\".", "Invalid Etherpad API version format.": "Format de version API Etherpad invalide.", "Sync interval must be between 5 and 3600 seconds.": "L'intervalle de synchronisation doit etre compris entre 5 et 3600 secondes.", "External allowlist contains invalid host: {host}": "La liste d'autorisation externe contient un hote invalide : {host}", @@ -61,39 +47,78 @@ "Authentication required.": "Authentification requise.", "Admin permissions required.": "Permissions administrateur requises.", "New pad": "Nouveau pad", - "New Pad": "Nouveau pad", - "External pad": "Pad externe", - "External pad URL": "URL du pad externe", - "File name": "Nom de fichier", - "Public pad": "Pad public", - "Create public pad": "Creer un pad public", - "Choose how you want to create the public pad.": "Choisissez comment vous souhaitez creer le pad public.", - "Internal public pad": "Pad public interne", - "External public pad (URL)": "Pad public externe (URL)", - "Could not create public pad.": "Impossible de creer le pad public.", - "Could not import public pad URL.": "Impossible d'importer l'URL du pad public.", - "Cancel": "Annuler", - "Close": "Fermer", - "Create": "Creer", - "File name is required.": "Le nom de fichier est requis.", - "External pad URL is required.": "L'URL du pad externe est requise.", - "Externes Pad": "Pad externe", - "Open in Etherpad": "Ouvrir dans Etherpad", "Open original pad": "Ouvrir le pad d'origine", - "Open in new tab": "Ouvrir dans un nouvel onglet", - "Pad in neuem Tab öffnen": "Ouvrir le pad dans un nouvel onglet", - "Sync now": "Synchroniser maintenant", - "Save pad to file": "Enregistrer le pad dans le fichier", - "Pad in Datei speichern": "Enregistrer le pad dans le fichier", - "Synchronized": "Synchronise", - "Sync pending": "Synchronisation en attente", - "Sync failed": "Echec de la synchronisation", - "Sync status unavailable": "Etat de synchronisation indisponible", - "Sync status: syncing": "Etat de synchronisation : synchronisation...", - "Sync status: synced": "Etat de synchronisation : synchronise", - "Sync status: error": "Etat de synchronisation : erreur", - "Sync status: pending": "Etat de synchronisation : en attente", - "Sync status: unavailable": "Etat de synchronisation : indisponible" + "A file with this name already exists.": "Un fichier portant ce nom existe déjà.", + "Absolute https origins allowed to embed the /embed/by-id and /embed/create-by-parent routes. Leave empty to disable external embedding.": "Origines https absolues autorisées à intégrer les routes /embed/by-id et /embed/create-by-parent. Laisser vide pour désactiver l'intégration externe.", + "Back": "Retour", + "Cannot open selected .pad file.": "Impossible d'ouvrir le fichier .pad sélectionné.", + "Cannot read selected .pad file.": "Impossible de lire le fichier .pad sélectionné.", + "Cannot resolve file path for file ID.": "Impossible de résoudre le chemin du fichier pour l'identifiant.", + "Cannot resolve selected .pad file.": "Impossible de résoudre le fichier .pad sélectionné.", + "Cannot resolve selected parent folder.": "Impossible de résoudre le dossier parent sélectionné.", + "Checking for the original pad...": "Recherche du pad original...", + "Cookie domain must be a hostname, not a URL.": "Le domaine du cookie doit être un nom d'hôte, pas une URL.", + "Cookie domain must be a valid shared hostname.": "Le domaine du cookie doit être un nom d'hôte partagé valide.", + "Could not check pad sync status.": "Impossible de vérifier l'état de synchronisation du pad.", + "Could not create pad from template.": "Impossible de créer le pad à partir du modèle.", + "Could not create pad.": "Impossible de créer le pad.", + "Could not import external pad.": "Impossible d'importer le pad externe.", + "Could not initialize pad file.": "Impossible d'initialiser le fichier pad.", + "Could not look up the original pad.": "Impossible de retrouver le pad original.", + "Could not move pad to trash.": "Impossible de déplacer le pad vers la corbeille.", + "Could not open pad.": "Impossible d'ouvrir le pad.", + "Could not read pad metadata.": "Impossible de lire les métadonnées du pad.", + "Could not recover pad from this file.": "Impossible de récupérer le pad depuis ce fichier.", + "Could not resolve pad file.": "Impossible de résoudre le fichier pad.", + "Could not restore pad from trash.": "Impossible de restaurer le pad depuis la corbeille.", + "Could not sync pad content.": "Impossible de synchroniser le contenu du pad.", + "Create new pad from this file": "Créer un nouveau pad à partir de ce fichier", + "Creating new pad...": "Création d'un nouveau pad...", + "Creating pad...": "Création du pad...", + "Embed configuration is incomplete.": "La configuration d'intégration est incomplète.", + "Failed to update test fault.": "Échec de la mise à jour de l'erreur de test.", + "Hint: API endpoint not found. Check the API host and that the configured API version is supported by your Etherpad.": "Indice : point d'accès de l'API introuvable. Vérifiez l'hôte de l'API et que la version configurée est prise en charge par votre Etherpad.", + "Hint: Connection refused. Etherpad does not appear to be running on the configured host and port.": "Indice : connexion refusée. Etherpad ne semble pas être en cours d'exécution sur l'hôte et le port configurés.", + "Hint: Connection timed out. Check that this server can reach the Etherpad host (firewall, network).": "Indice : délai de connexion dépassé. Vérifiez que ce serveur peut joindre l'hôte Etherpad (pare-feu, réseau).", + "Hint: Could not reach Etherpad. Check the API host and that this server can connect to it.": "Indice : impossible de joindre Etherpad. Vérifiez l'hôte de l'API et que ce serveur peut s'y connecter.", + "Hint: Etherpad rejected the API key. Check that the key matches Etherpad's APIKEY.txt.": "Indice : Etherpad a rejeté la clé d'API. Vérifiez que la clé correspond au fichier APIKEY.txt d'Etherpad.", + "Hint: Etherpad returned a server error. Check the Etherpad server logs.": "Indice : Etherpad a renvoyé une erreur serveur. Consultez les journaux du serveur Etherpad.", + "Hint: Etherpad returned non-JSON. Likely a reverse proxy or HTML error page in front of the API host.": "Indice : Etherpad a renvoyé un contenu non JSON. Probablement un proxy inverse ou une page d'erreur HTML devant l'hôte de l'API.", + "Hint: TLS handshake failed. Check the Etherpad certificate and that the configured URL uses the right scheme.": "Indice : l'établissement de la connexion TLS a échoué. Vérifiez le certificat Etherpad et que l'URL configurée utilise le bon schéma.", + "Hint: The configured Etherpad host did not resolve. Check the hostname for typos and that DNS reaches it from this server.": "Indice : l'hôte Etherpad configuré n'a pas été résolu. Vérifiez l'absence de fautes de frappe et que le DNS l'atteint depuis ce serveur.", + "Invalid access mode.": "Mode d'accès non valide.", + "Invalid file ID.": "Identifiant de fichier non valide.", + "Invalid file path.": "Chemin de fichier non valide.", + "Invalid input.": "Entrée non valide.", + "Invalid pad name.": "Nom de pad non valide.", + "Invalid parent folder ID.": "Identifiant de dossier parent non valide.", + "Loading pad...": "Chargement du pad...", + "No synced snapshot is stored in this .pad file yet.": "Aucun instantané synchronisé n'est encore stocké dans ce fichier .pad.", + "Open the original .pad file": "Ouvrir le fichier .pad original", + "Pad file not found.": "Fichier pad introuvable.", + "Pad from another server": "Pad d'un autre serveur", + "Pad name is required.": "Le nom du pad est obligatoire.", + "Read-only snapshot": "Instantané en lecture seule", + "Read-only snapshot from the .pad file.": "Instantané en lecture seule du fichier .pad.", + "Selected file is not a .pad file.": "Le fichier sélectionné n'est pas un fichier .pad.", + "Selected parent folder is not writable.": "Le dossier parent sélectionné n'est pas modifiable.", + "Template file not found.": "Fichier modèle introuvable.", + "This .pad file has no matching pad in this Nextcloud.": "Ce fichier .pad n'a pas de pad correspondant dans ce Nextcloud.", + "This file looks like a copy of an existing .pad file in your account. Open the original to keep editing the linked pad, or create a new pad to fork the content stored in this file.": "Ce fichier ressemble à une copie d'un fichier .pad existant dans votre compte. Ouvrez l'original pour continuer à modifier le pad lié, ou créez un nouveau pad pour dupliquer le contenu stocké dans ce fichier.", + "Trusted embed origins (optional)": "Origines d'intégration de confiance (optionnel)", + "Unable to create pad": "Impossible de créer le pad", + "Unable to open pad": "Impossible d'ouvrir le pad", + "Unknown error.": "Erreur inconnue.", + "We couldn't find a matching pad in this Nextcloud. You can create a new pad from the text stored in this file; from then on, opening this file will load the new pad.": "Nous n'avons pas trouvé de pad correspondant dans ce Nextcloud. Vous pouvez créer un nouveau pad à partir du texte stocké dans ce fichier ; à partir de là, ouvrir ce fichier chargera le nouveau pad.", + "Retry pending deletes now": "Réessayer les suppressions en attente maintenant", + "Failed to save settings.": "Impossible d'enregistrer les paramètres.", + "Pending delete retry failed.": "Impossible de réessayer les suppressions en attente.", + "Pending delete retry finished.": "Réessai des suppressions en attente terminé.", + ".pad file sync interval (seconds)": "Intervalle de synchronisation du fichier .pad (secondes)", + "Delete linked Etherpad pad when .pad file is moved to trash": "Supprimer le pad Etherpad lié lorsque le fichier .pad est déplacé vers la corbeille", + "If enabled, moving a .pad file to the trash also deletes the linked Etherpad pad.": "Si activé, déplacer un fichier .pad vers la corbeille supprime également le pad Etherpad lié.", + "Add trusted Etherpad hostnames or HTTPS origins. Leave empty only if all public HTTPS hosts should be trusted.": "Ajoutez des noms d'hôte Etherpad ou des origines HTTPS de confiance. Ne laissez vide que si tous les hôtes HTTPS publics doivent être considérés comme de confiance.", + "Hint: Set \"authenticationMethod\": \"apikey\" in Etherpad's settings.json.": "Indice : définissez \"authenticationMethod\": \"apikey\" dans le fichier settings.json d'Etherpad." }, "pluralForm": "nplurals=2; plural=(n > 1);" } diff --git a/l10n/fr.php b/l10n/fr.php index 251e818..75211a5 100644 --- a/l10n/fr.php +++ b/l10n/fr.php @@ -10,38 +10,25 @@ "Auto-filled from the Nextcloud and Etherpad hosts when possible. Adjust it if your deployment uses a proxy path or a different trusted parent domain; leave empty for a host-only cookie." => "Renseigne automatiquement depuis les hotes Nextcloud et Etherpad lorsque possible. Ajustez si le deploiement utilise un chemin proxy ou un autre domaine parent de confiance; laissez vide pour un cookie limite a l'hote.", "Etherpad API key" => "Cle API Etherpad", "Detected API version:" => "Version API detectee :", - "Copy content to .pad file interval (seconds)" => "Intervalle de copie du contenu vers le fichier .pad (secondes)", "Controls how often pad content is copied from Etherpad into the .pad file while the pad is open." => "Controle la frequence de copie du contenu du pad depuis Etherpad vers le fichier .pad pendant que le pad est ouvert.", - "Delete pad on trash" => "Supprimer le pad lors de la mise a la corbeille", - "If enabled, moving a .pad file to trash triggers Etherpad delete." => "Si active, le deplacement d'un fichier .pad vers la corbeille declenche la suppression dans Etherpad.", "Allow linking external public pads" => "Autoriser les liens vers des pads publics externes", "External host allowlist (optional)" => "Liste d'autorisation d'hotes externes (optionnel)", - "Add trusted Etherpad hostnames or https origins. Leave empty only if all public HTTPS hosts should be trusted." => "Ajoutez des noms d'hote Etherpad ou des origines https de confiance. Ne laissez vide que si tous les hotes HTTPS publics doivent etre consideres comme fiables.", "Save settings" => "Enregistrer les parametres", "Health check" => "Verification de sante", "Consistency check" => "Verification de coherence", - "Retry deferred deletes now" => "Relancer maintenant les suppressions differees", "Pending Etherpad deletes" => "Suppressions Etherpad en attente", - "Trashed bindings without file" => "Liaisons en corbeille sans fichier", "Saving settings..." => "Enregistrement des parametres...", "Settings saved." => "Parametres enregistres.", - "Saving..." => "Enregistrement...", "Running health check..." => "Verification de sante en cours...", "Running consistency check..." => "Verification de coherence en cours...", - "Checking sync status..." => "Verification de l'etat de synchronisation...", "Health check successful." => "Verification de sante reussie.", "Consistency check successful." => "Verification de coherence reussie.", "Consistency check successful. No issues found." => "Verification de coherence reussie. Aucun probleme trouve.", "Consistency check finished with issues." => "Verification de coherence terminee avec des problemes.", - "Lifecycle delete retry finished." => "Nouvelle tentative de suppression du cycle de vie terminee.", "Request failed." => "La requete a echoue.", - "Saving settings failed." => "Echec de l'enregistrement des parametres.", "Health check failed." => "La verification de sante a echoue.", "Health check failed: {detail}" => "La verification de sante a echoue : {detail}", "Consistency check failed." => "La verification de coherence a echoue.", - "Lifecycle delete retry failed." => "La nouvelle tentative de suppression du cycle de vie a echoue.", - "Pending delete retry failed." => "La nouvelle tentative des suppressions en attente a echoue.", - "Failed to save settings." => "Impossible d'enregistrer les parametres.", "Etherpad API key is required." => "La cle API Etherpad est requise.", "Etherpad Base URL is required." => "L'URL de base Etherpad est requise.", "Etherpad Base URL must use https." => "L'URL de base Etherpad doit utiliser HTTPS.", @@ -50,7 +37,6 @@ "Etherpad API URL must use http or https." => "L'URL API Etherpad doit utiliser HTTP ou HTTPS.", "Invalid Etherpad API URL." => "URL API Etherpad invalide.", "Etherpad API URL must not include query or fragment." => "L'URL API Etherpad ne doit pas contenir de requete ni de fragment.", - "Hint: In Etherpad settings.json set \"authenticationMethod\": \"apikey\"." => "Indice : dans le fichier settings.json d'Etherpad, definir \"authenticationMethod\": \"apikey\".", "Invalid Etherpad API version format." => "Format de version API Etherpad invalide.", "Sync interval must be between 5 and 3600 seconds." => "L'intervalle de synchronisation doit etre compris entre 5 et 3600 secondes.", "External allowlist contains invalid host: {host}" => "La liste d'autorisation externe contient un hote invalide : {host}", @@ -62,39 +48,78 @@ "Authentication required." => "Authentification requise.", "Admin permissions required." => "Permissions administrateur requises.", "New pad" => "Nouveau pad", - "New Pad" => "Nouveau pad", - "External pad" => "Pad externe", - "External pad URL" => "URL du pad externe", - "File name" => "Nom de fichier", - "Public pad" => "Pad public", - "Create public pad" => "Creer un pad public", - "Choose how you want to create the public pad." => "Choisissez comment vous souhaitez creer le pad public.", - "Internal public pad" => "Pad public interne", - "External public pad (URL)" => "Pad public externe (URL)", - "Could not create public pad." => "Impossible de creer le pad public.", - "Could not import public pad URL." => "Impossible d'importer l'URL du pad public.", - "Cancel" => "Annuler", - "Close" => "Fermer", - "Create" => "Creer", - "File name is required." => "Le nom de fichier est requis.", - "External pad URL is required." => "L'URL du pad externe est requise.", - "Externes Pad" => "Pad externe", - "Open in Etherpad" => "Ouvrir dans Etherpad", "Open original pad" => "Ouvrir le pad d'origine", - "Open in new tab" => "Ouvrir dans un nouvel onglet", - "Pad in neuem Tab öffnen" => "Ouvrir le pad dans un nouvel onglet", - "Sync now" => "Synchroniser maintenant", - "Save pad to file" => "Enregistrer le pad dans le fichier", - "Pad in Datei speichern" => "Enregistrer le pad dans le fichier", - "Synchronized" => "Synchronise", - "Sync pending" => "Synchronisation en attente", - "Sync failed" => "Echec de la synchronisation", - "Sync status unavailable" => "Etat de synchronisation indisponible", - "Sync status: syncing" => "Etat de synchronisation : synchronisation...", - "Sync status: synced" => "Etat de synchronisation : synchronise", - "Sync status: error" => "Etat de synchronisation : erreur", - "Sync status: pending" => "Etat de synchronisation : en attente", - "Sync status: unavailable" => "Etat de synchronisation : indisponible", + "A file with this name already exists." => "Un fichier portant ce nom existe déjà.", + "Absolute https origins allowed to embed the /embed/by-id and /embed/create-by-parent routes. Leave empty to disable external embedding." => "Origines https absolues autorisées à intégrer les routes /embed/by-id et /embed/create-by-parent. Laisser vide pour désactiver l'intégration externe.", + "Back" => "Retour", + "Cannot open selected .pad file." => "Impossible d'ouvrir le fichier .pad sélectionné.", + "Cannot read selected .pad file." => "Impossible de lire le fichier .pad sélectionné.", + "Cannot resolve file path for file ID." => "Impossible de résoudre le chemin du fichier pour l'identifiant.", + "Cannot resolve selected .pad file." => "Impossible de résoudre le fichier .pad sélectionné.", + "Cannot resolve selected parent folder." => "Impossible de résoudre le dossier parent sélectionné.", + "Checking for the original pad..." => "Recherche du pad original...", + "Cookie domain must be a hostname, not a URL." => "Le domaine du cookie doit être un nom d'hôte, pas une URL.", + "Cookie domain must be a valid shared hostname." => "Le domaine du cookie doit être un nom d'hôte partagé valide.", + "Could not check pad sync status." => "Impossible de vérifier l'état de synchronisation du pad.", + "Could not create pad from template." => "Impossible de créer le pad à partir du modèle.", + "Could not create pad." => "Impossible de créer le pad.", + "Could not import external pad." => "Impossible d'importer le pad externe.", + "Could not initialize pad file." => "Impossible d'initialiser le fichier pad.", + "Could not look up the original pad." => "Impossible de retrouver le pad original.", + "Could not move pad to trash." => "Impossible de déplacer le pad vers la corbeille.", + "Could not open pad." => "Impossible d'ouvrir le pad.", + "Could not read pad metadata." => "Impossible de lire les métadonnées du pad.", + "Could not recover pad from this file." => "Impossible de récupérer le pad depuis ce fichier.", + "Could not resolve pad file." => "Impossible de résoudre le fichier pad.", + "Could not restore pad from trash." => "Impossible de restaurer le pad depuis la corbeille.", + "Could not sync pad content." => "Impossible de synchroniser le contenu du pad.", + "Create new pad from this file" => "Créer un nouveau pad à partir de ce fichier", + "Creating new pad..." => "Création d'un nouveau pad...", + "Creating pad..." => "Création du pad...", + "Embed configuration is incomplete." => "La configuration d'intégration est incomplète.", + "Failed to update test fault." => "Échec de la mise à jour de l'erreur de test.", + "Hint: API endpoint not found. Check the API host and that the configured API version is supported by your Etherpad." => "Indice : point d'accès de l'API introuvable. Vérifiez l'hôte de l'API et que la version configurée est prise en charge par votre Etherpad.", + "Hint: Connection refused. Etherpad does not appear to be running on the configured host and port." => "Indice : connexion refusée. Etherpad ne semble pas être en cours d'exécution sur l'hôte et le port configurés.", + "Hint: Connection timed out. Check that this server can reach the Etherpad host (firewall, network)." => "Indice : délai de connexion dépassé. Vérifiez que ce serveur peut joindre l'hôte Etherpad (pare-feu, réseau).", + "Hint: Could not reach Etherpad. Check the API host and that this server can connect to it." => "Indice : impossible de joindre Etherpad. Vérifiez l'hôte de l'API et que ce serveur peut s'y connecter.", + "Hint: Etherpad rejected the API key. Check that the key matches Etherpad's APIKEY.txt." => "Indice : Etherpad a rejeté la clé d'API. Vérifiez que la clé correspond au fichier APIKEY.txt d'Etherpad.", + "Hint: Etherpad returned a server error. Check the Etherpad server logs." => "Indice : Etherpad a renvoyé une erreur serveur. Consultez les journaux du serveur Etherpad.", + "Hint: Etherpad returned non-JSON. Likely a reverse proxy or HTML error page in front of the API host." => "Indice : Etherpad a renvoyé un contenu non JSON. Probablement un proxy inverse ou une page d'erreur HTML devant l'hôte de l'API.", + "Hint: TLS handshake failed. Check the Etherpad certificate and that the configured URL uses the right scheme." => "Indice : l'établissement de la connexion TLS a échoué. Vérifiez le certificat Etherpad et que l'URL configurée utilise le bon schéma.", + "Hint: The configured Etherpad host did not resolve. Check the hostname for typos and that DNS reaches it from this server." => "Indice : l'hôte Etherpad configuré n'a pas été résolu. Vérifiez l'absence de fautes de frappe et que le DNS l'atteint depuis ce serveur.", + "Invalid access mode." => "Mode d'accès non valide.", + "Invalid file ID." => "Identifiant de fichier non valide.", + "Invalid file path." => "Chemin de fichier non valide.", + "Invalid input." => "Entrée non valide.", + "Invalid pad name." => "Nom de pad non valide.", + "Invalid parent folder ID." => "Identifiant de dossier parent non valide.", + "Loading pad..." => "Chargement du pad...", + "No synced snapshot is stored in this .pad file yet." => "Aucun instantané synchronisé n'est encore stocké dans ce fichier .pad.", + "Open the original .pad file" => "Ouvrir le fichier .pad original", + "Pad file not found." => "Fichier pad introuvable.", + "Pad from another server" => "Pad d'un autre serveur", + "Pad name is required." => "Le nom du pad est obligatoire.", + "Read-only snapshot" => "Instantané en lecture seule", + "Read-only snapshot from the .pad file." => "Instantané en lecture seule du fichier .pad.", + "Selected file is not a .pad file." => "Le fichier sélectionné n'est pas un fichier .pad.", + "Selected parent folder is not writable." => "Le dossier parent sélectionné n'est pas modifiable.", + "Template file not found." => "Fichier modèle introuvable.", + "This .pad file has no matching pad in this Nextcloud." => "Ce fichier .pad n'a pas de pad correspondant dans ce Nextcloud.", + "This file looks like a copy of an existing .pad file in your account. Open the original to keep editing the linked pad, or create a new pad to fork the content stored in this file." => "Ce fichier ressemble à une copie d'un fichier .pad existant dans votre compte. Ouvrez l'original pour continuer à modifier le pad lié, ou créez un nouveau pad pour dupliquer le contenu stocké dans ce fichier.", + "Trusted embed origins (optional)" => "Origines d'intégration de confiance (optionnel)", + "Unable to create pad" => "Impossible de créer le pad", + "Unable to open pad" => "Impossible d'ouvrir le pad", + "Unknown error." => "Erreur inconnue.", + "We couldn't find a matching pad in this Nextcloud. You can create a new pad from the text stored in this file; from then on, opening this file will load the new pad." => "Nous n'avons pas trouvé de pad correspondant dans ce Nextcloud. Vous pouvez créer un nouveau pad à partir du texte stocké dans ce fichier ; à partir de là, ouvrir ce fichier chargera le nouveau pad.", + "Retry pending deletes now" => "Réessayer les suppressions en attente maintenant", + "Failed to save settings." => "Impossible d'enregistrer les paramètres.", + "Pending delete retry failed." => "Impossible de réessayer les suppressions en attente.", + "Pending delete retry finished." => "Réessai des suppressions en attente terminé.", + ".pad file sync interval (seconds)" => "Intervalle de synchronisation du fichier .pad (secondes)", + "Delete linked Etherpad pad when .pad file is moved to trash" => "Supprimer le pad Etherpad lié lorsque le fichier .pad est déplacé vers la corbeille", + "If enabled, moving a .pad file to the trash also deletes the linked Etherpad pad." => "Si activé, déplacer un fichier .pad vers la corbeille supprime également le pad Etherpad lié.", + "Add trusted Etherpad hostnames or HTTPS origins. Leave empty only if all public HTTPS hosts should be trusted." => "Ajoutez des noms d'hôte Etherpad ou des origines HTTPS de confiance. Ne laissez vide que si tous les hôtes HTTPS publics doivent être considérés comme de confiance.", + "Hint: Set \"authenticationMethod\": \"apikey\" in Etherpad's settings.json." => "Indice : définissez \"authenticationMethod\": \"apikey\" dans le fichier settings.json d'Etherpad.", ]; $PLURAL_FORMS = "nplurals=2; plural=(n > 1);"; diff --git a/lib/Controller/AdminController.php b/lib/Controller/AdminController.php index 7bf0513..8a24abf 100644 --- a/lib/Controller/AdminController.php +++ b/lib/Controller/AdminController.php @@ -108,7 +108,7 @@ function (): array { }, fn(array $result): DataResponse => new DataResponse([ 'ok' => true, - 'message' => $this->l10n->t('Lifecycle delete retry finished.'), + 'message' => $this->l10n->t('Pending delete retry finished.'), 'attempted' => $result['attempted'], 'resolved' => $result['resolved'], 'failed' => $result['failed'], diff --git a/lib/Controller/EmbedControllerErrorMapper.php b/lib/Controller/EmbedControllerErrorMapper.php index a65c4cb..a1a9a39 100644 --- a/lib/Controller/EmbedControllerErrorMapper.php +++ b/lib/Controller/EmbedControllerErrorMapper.php @@ -75,7 +75,7 @@ public function runForTemplate( 'app' => Application::APP_ID, 'exception' => $e, ]); - return $this->errorTemplate($this->l10n->t('Unable to open pad.'), $errorTitle); + return $this->errorTemplate($this->l10n->t('Could not open pad.'), $errorTitle); } } diff --git a/lib/Controller/PublicViewerControllerErrorMapper.php b/lib/Controller/PublicViewerControllerErrorMapper.php index b900f6b..d3d0066 100644 --- a/lib/Controller/PublicViewerControllerErrorMapper.php +++ b/lib/Controller/PublicViewerControllerErrorMapper.php @@ -102,7 +102,7 @@ private function messageFor(\Throwable $e): string { if ($this->isExpectedPublicError($e)) { return $e->getMessage(); } - return 'Unable to open pad.'; + return 'Could not open pad.'; } private function logUnexpected(\Throwable $e): void { diff --git a/lib/Controller/ViewerControllerErrorMapper.php b/lib/Controller/ViewerControllerErrorMapper.php index cf82b4e..f2102a1 100644 --- a/lib/Controller/ViewerControllerErrorMapper.php +++ b/lib/Controller/ViewerControllerErrorMapper.php @@ -57,7 +57,7 @@ public function runForTemplate( 'app' => Application::APP_ID, 'exception' => $e, ]); - return $this->errorTemplate($this->l10n->t('Unable to open pad.')); + return $this->errorTemplate($this->l10n->t('Could not open pad.')); } } diff --git a/lib/Service/EtherpadHealthCheckService.php b/lib/Service/EtherpadHealthCheckService.php index e8fd163..86a0809 100644 --- a/lib/Service/EtherpadHealthCheckService.php +++ b/lib/Service/EtherpadHealthCheckService.php @@ -86,7 +86,7 @@ private function hintForFailureMessage(string $rawMessage): string { if (str_contains($message, 'no or wrong api key') || str_contains($message, 'wrong api key') || str_contains($message, 'invalid apikey')) { - return $this->l10n->t('Hint: In Etherpad settings.json set "authenticationMethod": "apikey".'); + return $this->l10n->t('Hint: Set "authenticationMethod": "apikey" in Etherpad\'s settings.json.'); } // HTTP status hints come before transport hints because they diff --git a/lib/Settings/AdminSettings.php b/lib/Settings/AdminSettings.php index d0598d4..11f2a87 100644 --- a/lib/Settings/AdminSettings.php +++ b/lib/Settings/AdminSettings.php @@ -72,19 +72,19 @@ public function getForm(): TemplateResponse { 'etherpad_cookie_domain_hint' => $this->l10n->t('Auto-filled from the Nextcloud and Etherpad hosts when possible. Adjust it if your deployment uses a proxy path or a different trusted parent domain; leave empty for a host-only cookie.'), 'etherpad_api_key' => $this->l10n->t('Etherpad API key'), 'detected_api_version' => $this->l10n->t('Detected API version:'), - 'copy_interval' => $this->l10n->t('Copy content to .pad file interval (seconds)'), + 'copy_interval' => $this->l10n->t('.pad file sync interval (seconds)'), 'copy_interval_hint' => $this->l10n->t('Controls how often pad content is copied from Etherpad into the .pad file while the pad is open.'), - 'delete_on_trash' => $this->l10n->t('Delete pad on trash'), - 'delete_on_trash_hint' => $this->l10n->t('If enabled, moving a .pad file to trash triggers Etherpad delete.'), + 'delete_on_trash' => $this->l10n->t('Delete linked Etherpad pad when .pad file is moved to trash'), + 'delete_on_trash_hint' => $this->l10n->t('If enabled, moving a .pad file to the trash also deletes the linked Etherpad pad.'), 'allow_external_pads' => $this->l10n->t('Allow linking external public pads'), 'external_allowlist' => $this->l10n->t('External host allowlist (optional)'), - 'external_allowlist_hint' => $this->l10n->t('Add trusted Etherpad hostnames or https origins. Leave empty only if all public HTTPS hosts should be trusted.'), + 'external_allowlist_hint' => $this->l10n->t('Add trusted Etherpad hostnames or HTTPS origins. Leave empty only if all public HTTPS hosts should be trusted.'), 'trusted_embed_origins' => $this->l10n->t('Trusted embed origins (optional)'), 'trusted_embed_origins_hint' => $this->l10n->t('Absolute https origins allowed to embed the /embed/by-id and /embed/create-by-parent routes. Leave empty to disable external embedding.'), 'save_button' => $this->l10n->t('Save settings'), 'health_button' => $this->l10n->t('Health check'), 'consistency_button' => $this->l10n->t('Consistency check'), - 'retry_pending_button' => $this->l10n->t('Retry deferred deletes now'), + 'retry_pending_button' => $this->l10n->t('Retry pending deletes now'), 'pending_delete_label' => $this->l10n->t('Pending Etherpad deletes'), 'saving' => $this->l10n->t('Saving settings...'), 'saved' => $this->l10n->t('Settings saved.'), @@ -93,10 +93,10 @@ public function getForm(): TemplateResponse { 'health_ok' => $this->l10n->t('Health check successful.'), 'consistency_ok' => $this->l10n->t('Consistency check successful.'), 'request_failed' => $this->l10n->t('Request failed.'), - 'saving_failed' => $this->l10n->t('Saving settings failed.'), + 'saving_failed' => $this->l10n->t('Failed to save settings.'), 'health_failed' => $this->l10n->t('Health check failed.'), 'consistency_failed' => $this->l10n->t('Consistency check failed.'), - 'retry_failed' => $this->l10n->t('Lifecycle delete retry failed.'), + 'retry_failed' => $this->l10n->t('Pending delete retry failed.'), ], ]); } diff --git a/src/admin-settings.js b/src/admin-settings.js index d8f9314..b1f09c3 100644 --- a/src/admin-settings.js +++ b/src/admin-settings.js @@ -39,11 +39,11 @@ healthOk: root.getAttribute('data-l10n-health-ok') || 'Health check successful.', consistencyOk: root.getAttribute('data-l10n-consistency-ok') || 'Consistency check successful.', requestFailed: root.getAttribute('data-l10n-request-failed') || 'Request failed.', - savingFailed: root.getAttribute('data-l10n-saving-failed') || 'Saving settings failed.', + savingFailed: root.getAttribute('data-l10n-saving-failed') || 'Failed to save settings.', healthFailed: root.getAttribute('data-l10n-health-failed') || 'Health check failed.', consistencyFailed: root.getAttribute('data-l10n-consistency-failed') || 'Consistency check failed.', pendingDeleteLabel: root.getAttribute('data-l10n-pending-delete-label') || 'Pending Etherpad deletes', - retryFailed: root.getAttribute('data-l10n-retry-failed') || 'Lifecycle delete retry failed.', + retryFailed: root.getAttribute('data-l10n-retry-failed') || 'Pending delete retry failed.', } if (saveUrl === '' || healthUrl === '' || consistencyUrl === '' || retryPendingUrl === '') { diff --git a/tests/phpunit/unit/EmbedControllerErrorMapperTest.php b/tests/phpunit/unit/EmbedControllerErrorMapperTest.php index 3a28c92..03b3b64 100644 --- a/tests/phpunit/unit/EmbedControllerErrorMapperTest.php +++ b/tests/phpunit/unit/EmbedControllerErrorMapperTest.php @@ -110,7 +110,7 @@ public function testRunLogsUnhandledExceptionAndReturnsGenericMessage(): void { errorTitle: 'Unable to open pad', ); - $this->assertSame('Unable to open pad.', $response->getParams()['error']); + $this->assertSame('Could not open pad.', $response->getParams()['error']); } private function buildMapper(?LoggerInterface $logger = null): EmbedControllerErrorMapper { diff --git a/tests/phpunit/unit/PublicViewerControllerErrorMapperTest.php b/tests/phpunit/unit/PublicViewerControllerErrorMapperTest.php index 078044e..3eff28f 100644 --- a/tests/phpunit/unit/PublicViewerControllerErrorMapperTest.php +++ b/tests/phpunit/unit/PublicViewerControllerErrorMapperTest.php @@ -158,7 +158,7 @@ public function testRunForDataLogsAndMasksUnexpectedFailures(): void { ); $this->assertSame(Http::STATUS_INTERNAL_SERVER_ERROR, $response->getStatus()); - $this->assertSame('Unable to open pad.', $response->getData()['message']); + $this->assertSame('Could not open pad.', $response->getData()['message']); } public function testRunForTemplateLogsAndMasksUnexpectedFailures(): void { @@ -180,7 +180,7 @@ public function testRunForTemplateLogsAndMasksUnexpectedFailures(): void { $this->assertInstanceOf(TemplateResponse::class, $response); $this->assertSame(Http::STATUS_INTERNAL_SERVER_ERROR, $response->getStatus()); - $this->assertSame('Unable to open pad.', $response->getParams()['error']); + $this->assertSame('Could not open pad.', $response->getParams()['error']); $this->assertSame('/nc/s/token', $response->getParams()['back_url']); } diff --git a/tests/phpunit/unit/ViewerControllerErrorMapperTest.php b/tests/phpunit/unit/ViewerControllerErrorMapperTest.php index fdfe4dc..6a1336f 100644 --- a/tests/phpunit/unit/ViewerControllerErrorMapperTest.php +++ b/tests/phpunit/unit/ViewerControllerErrorMapperTest.php @@ -79,7 +79,7 @@ public function testRunLogsUnhandledExceptionAndReturnsGenericMessage(): void { ); $this->assertInstanceOf(TemplateResponse::class, $response); - $this->assertSame('Unable to open pad.', $response->getParams()['error']); + $this->assertSame('Could not open pad.', $response->getParams()['error']); } private function buildMapper(?LoggerInterface $logger = null): ViewerControllerErrorMapper { From a5c63e51e52a73f873c18e7a007776e1a9aba623 Mon Sep 17 00:00:00 2001 From: Jaggob <37583151+Jaggob@users.noreply.github.com> Date: Tue, 26 May 2026 18:52:09 +0200 Subject: [PATCH 02/13] l10n: unify Unable to X/Could not X title/message pairs MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Title and message strings now only differ in the trailing period — same verb (Could not) across all four locales' translations. Affects open + create pad: title is the dialog/template heading (no period), message is the full sentence (with period). Updated 6 call sites (EmbedController, viewer-main.js, noviewer.php, comment in EmbedControllerErrorMapper) and the matching asserts in EmbedControllerErrorMapperTest + EmbedControllerTest. PHPUnit 395/395, vitest 107/107. --- l10n/de.js | 6 ++--- l10n/de.json | 6 ++--- l10n/de.php | 4 ++-- l10n/de_DE.js | 6 ++--- l10n/de_DE.json | 6 ++--- l10n/de_DE.php | 4 ++-- l10n/es.js | 8 +++---- l10n/es.json | 8 +++---- l10n/es.php | 6 ++--- l10n/fr.js | 8 +++---- l10n/fr.json | 8 +++---- l10n/fr.php | 6 ++--- lib/Controller/EmbedController.php | 8 +++---- lib/Controller/EmbedControllerErrorMapper.php | 2 +- src/viewer-main.js | 2 +- templates/noviewer.php | 2 +- .../unit/EmbedControllerErrorMapperTest.php | 22 +++++++++---------- tests/phpunit/unit/EmbedControllerTest.php | 12 +++++----- 18 files changed, 62 insertions(+), 62 deletions(-) diff --git a/l10n/de.js b/l10n/de.js index 2e4cddc..8bacd0d 100644 --- a/l10n/de.js +++ b/l10n/de.js @@ -49,7 +49,6 @@ OC.L10N.register( "Admin permissions required.": "Administratorrechte erforderlich.", "New pad": "Neues Pad", "Open original pad": "Original-Pad öffnen", - "Unable to open pad": "Pad konnte nicht geöffnet werden", "This .pad file has no matching pad in this Nextcloud.": "Für diese .pad-Datei existiert in dieser Nextcloud kein passendes Pad.", "Checking for the original pad...": "Suche nach dem Original-Pad ...", "This file looks like a copy of an existing .pad file in your account. Open the original to keep editing the linked pad, or create a new pad to fork the content stored in this file.": "Diese Datei sieht aus wie eine Kopie einer bereits vorhandenen .pad-Datei in deinem Konto. Öffne das Original, um am verknüpften Pad weiterzuarbeiten, oder erstelle aus dem in dieser Datei gespeicherten Inhalt ein neues Pad als eigene Kopie.", @@ -109,7 +108,6 @@ OC.L10N.register( "Selected parent folder is not writable.": "Ausgewählter Zielordner ist nicht beschreibbar.", "Template file not found.": "Vorlagendatei nicht gefunden.", "Trusted embed origins (optional)": "Vertrauenswürdige Embed-Origins (optional)", - "Unable to create pad": "Pad kann nicht erstellt werden", "Unknown error.": "Unbekannter Fehler.", "Retry pending deletes now": "Ausstehende Löschungen jetzt wiederholen", "Failed to save settings.": "Einstellungen konnten nicht gespeichert werden.", @@ -119,7 +117,9 @@ OC.L10N.register( "Delete linked Etherpad pad when .pad file is moved to trash": "Verknüpftes Etherpad-Pad löschen, wenn die .pad-Datei in den Papierkorb verschoben wird", "If enabled, moving a .pad file to the trash also deletes the linked Etherpad pad.": "Wenn aktiviert, wird beim Verschieben einer .pad-Datei in den Papierkorb auch das verknüpfte Etherpad-Pad gelöscht.", "Add trusted Etherpad hostnames or HTTPS origins. Leave empty only if all public HTTPS hosts should be trusted.": "Vertrauenswürdige Etherpad-Hostnamen oder HTTPS-Ursprünge eintragen. Nur leer lassen, wenn alle öffentlichen HTTPS-Hosts vertrauenswürdig sein sollen.", - "Hint: Set \"authenticationMethod\": \"apikey\" in Etherpad's settings.json.": "Hinweis: Setze in Etherpads settings.json \"authenticationMethod\": \"apikey\"." + "Hint: Set \"authenticationMethod\": \"apikey\" in Etherpad's settings.json.": "Hinweis: Setze in Etherpads settings.json \"authenticationMethod\": \"apikey\".", + "Could not create pad": "Pad konnte nicht erstellt werden", + "Could not open pad": "Pad konnte nicht geöffnet werden" }, "nplurals=2; plural=(n != 1);" ); diff --git a/l10n/de.json b/l10n/de.json index d50ecfd..bdc59a1 100644 --- a/l10n/de.json +++ b/l10n/de.json @@ -48,7 +48,6 @@ "Admin permissions required.": "Administratorrechte erforderlich.", "New pad": "Neues Pad", "Open original pad": "Original-Pad öffnen", - "Unable to open pad": "Pad konnte nicht geöffnet werden", "This .pad file has no matching pad in this Nextcloud.": "Für diese .pad-Datei existiert in dieser Nextcloud kein passendes Pad.", "Checking for the original pad...": "Suche nach dem Original-Pad ...", "This file looks like a copy of an existing .pad file in your account. Open the original to keep editing the linked pad, or create a new pad to fork the content stored in this file.": "Diese Datei sieht aus wie eine Kopie einer bereits vorhandenen .pad-Datei in deinem Konto. Öffne das Original, um am verknüpften Pad weiterzuarbeiten, oder erstelle aus dem in dieser Datei gespeicherten Inhalt ein neues Pad als eigene Kopie.", @@ -108,7 +107,6 @@ "Selected parent folder is not writable.": "Ausgewählter Zielordner ist nicht beschreibbar.", "Template file not found.": "Vorlagendatei nicht gefunden.", "Trusted embed origins (optional)": "Vertrauenswürdige Embed-Origins (optional)", - "Unable to create pad": "Pad kann nicht erstellt werden", "Unknown error.": "Unbekannter Fehler.", "Retry pending deletes now": "Ausstehende Löschungen jetzt wiederholen", "Failed to save settings.": "Einstellungen konnten nicht gespeichert werden.", @@ -118,7 +116,9 @@ "Delete linked Etherpad pad when .pad file is moved to trash": "Verknüpftes Etherpad-Pad löschen, wenn die .pad-Datei in den Papierkorb verschoben wird", "If enabled, moving a .pad file to the trash also deletes the linked Etherpad pad.": "Wenn aktiviert, wird beim Verschieben einer .pad-Datei in den Papierkorb auch das verknüpfte Etherpad-Pad gelöscht.", "Add trusted Etherpad hostnames or HTTPS origins. Leave empty only if all public HTTPS hosts should be trusted.": "Vertrauenswürdige Etherpad-Hostnamen oder HTTPS-Ursprünge eintragen. Nur leer lassen, wenn alle öffentlichen HTTPS-Hosts vertrauenswürdig sein sollen.", - "Hint: Set \"authenticationMethod\": \"apikey\" in Etherpad's settings.json.": "Hinweis: Setze in Etherpads settings.json \"authenticationMethod\": \"apikey\"." + "Hint: Set \"authenticationMethod\": \"apikey\" in Etherpad's settings.json.": "Hinweis: Setze in Etherpads settings.json \"authenticationMethod\": \"apikey\".", + "Could not create pad": "Pad konnte nicht erstellt werden", + "Could not open pad": "Pad konnte nicht geöffnet werden" }, "pluralForm": "nplurals=2; plural=(n != 1);" } diff --git a/l10n/de.php b/l10n/de.php index 31fde7e..d4e432e 100644 --- a/l10n/de.php +++ b/l10n/de.php @@ -49,7 +49,6 @@ "Admin permissions required." => "Administratorrechte erforderlich.", "New pad" => "Neues Pad", "Open original pad" => "Original-Pad öffnen", - "Unable to open pad" => "Pad konnte nicht geöffnet werden", "This .pad file has no matching pad in this Nextcloud." => "Für diese .pad-Datei existiert in dieser Nextcloud kein passendes Pad.", "Checking for the original pad..." => "Suche nach dem Original-Pad ...", "This file looks like a copy of an existing .pad file in your account. Open the original to keep editing the linked pad, or create a new pad to fork the content stored in this file." => "Diese Datei sieht aus wie eine Kopie einer bereits vorhandenen .pad-Datei in deinem Konto. Öffne das Original, um am verknüpften Pad weiterzuarbeiten, oder erstelle aus dem in dieser Datei gespeicherten Inhalt ein neues Pad als eigene Kopie.", @@ -109,7 +108,6 @@ "Selected parent folder is not writable." => "Ausgewählter Zielordner ist nicht beschreibbar.", "Template file not found." => "Vorlagendatei nicht gefunden.", "Trusted embed origins (optional)" => "Vertrauenswürdige Embed-Origins (optional)", - "Unable to create pad" => "Pad kann nicht erstellt werden", "Unknown error." => "Unbekannter Fehler.", "Retry pending deletes now" => "Ausstehende Löschungen jetzt wiederholen", "Failed to save settings." => "Einstellungen konnten nicht gespeichert werden.", @@ -120,6 +118,8 @@ "If enabled, moving a .pad file to the trash also deletes the linked Etherpad pad." => "Wenn aktiviert, wird beim Verschieben einer .pad-Datei in den Papierkorb auch das verknüpfte Etherpad-Pad gelöscht.", "Add trusted Etherpad hostnames or HTTPS origins. Leave empty only if all public HTTPS hosts should be trusted." => "Vertrauenswürdige Etherpad-Hostnamen oder HTTPS-Ursprünge eintragen. Nur leer lassen, wenn alle öffentlichen HTTPS-Hosts vertrauenswürdig sein sollen.", "Hint: Set \"authenticationMethod\": \"apikey\" in Etherpad's settings.json." => "Hinweis: Setze in Etherpads settings.json \"authenticationMethod\": \"apikey\".", + "Could not create pad" => "Pad konnte nicht erstellt werden", + "Could not open pad" => "Pad konnte nicht geöffnet werden", ]; $PLURAL_FORMS = "nplurals=2; plural=(n != 1);"; diff --git a/l10n/de_DE.js b/l10n/de_DE.js index 2e4cddc..8bacd0d 100644 --- a/l10n/de_DE.js +++ b/l10n/de_DE.js @@ -49,7 +49,6 @@ OC.L10N.register( "Admin permissions required.": "Administratorrechte erforderlich.", "New pad": "Neues Pad", "Open original pad": "Original-Pad öffnen", - "Unable to open pad": "Pad konnte nicht geöffnet werden", "This .pad file has no matching pad in this Nextcloud.": "Für diese .pad-Datei existiert in dieser Nextcloud kein passendes Pad.", "Checking for the original pad...": "Suche nach dem Original-Pad ...", "This file looks like a copy of an existing .pad file in your account. Open the original to keep editing the linked pad, or create a new pad to fork the content stored in this file.": "Diese Datei sieht aus wie eine Kopie einer bereits vorhandenen .pad-Datei in deinem Konto. Öffne das Original, um am verknüpften Pad weiterzuarbeiten, oder erstelle aus dem in dieser Datei gespeicherten Inhalt ein neues Pad als eigene Kopie.", @@ -109,7 +108,6 @@ OC.L10N.register( "Selected parent folder is not writable.": "Ausgewählter Zielordner ist nicht beschreibbar.", "Template file not found.": "Vorlagendatei nicht gefunden.", "Trusted embed origins (optional)": "Vertrauenswürdige Embed-Origins (optional)", - "Unable to create pad": "Pad kann nicht erstellt werden", "Unknown error.": "Unbekannter Fehler.", "Retry pending deletes now": "Ausstehende Löschungen jetzt wiederholen", "Failed to save settings.": "Einstellungen konnten nicht gespeichert werden.", @@ -119,7 +117,9 @@ OC.L10N.register( "Delete linked Etherpad pad when .pad file is moved to trash": "Verknüpftes Etherpad-Pad löschen, wenn die .pad-Datei in den Papierkorb verschoben wird", "If enabled, moving a .pad file to the trash also deletes the linked Etherpad pad.": "Wenn aktiviert, wird beim Verschieben einer .pad-Datei in den Papierkorb auch das verknüpfte Etherpad-Pad gelöscht.", "Add trusted Etherpad hostnames or HTTPS origins. Leave empty only if all public HTTPS hosts should be trusted.": "Vertrauenswürdige Etherpad-Hostnamen oder HTTPS-Ursprünge eintragen. Nur leer lassen, wenn alle öffentlichen HTTPS-Hosts vertrauenswürdig sein sollen.", - "Hint: Set \"authenticationMethod\": \"apikey\" in Etherpad's settings.json.": "Hinweis: Setze in Etherpads settings.json \"authenticationMethod\": \"apikey\"." + "Hint: Set \"authenticationMethod\": \"apikey\" in Etherpad's settings.json.": "Hinweis: Setze in Etherpads settings.json \"authenticationMethod\": \"apikey\".", + "Could not create pad": "Pad konnte nicht erstellt werden", + "Could not open pad": "Pad konnte nicht geöffnet werden" }, "nplurals=2; plural=(n != 1);" ); diff --git a/l10n/de_DE.json b/l10n/de_DE.json index d50ecfd..bdc59a1 100644 --- a/l10n/de_DE.json +++ b/l10n/de_DE.json @@ -48,7 +48,6 @@ "Admin permissions required.": "Administratorrechte erforderlich.", "New pad": "Neues Pad", "Open original pad": "Original-Pad öffnen", - "Unable to open pad": "Pad konnte nicht geöffnet werden", "This .pad file has no matching pad in this Nextcloud.": "Für diese .pad-Datei existiert in dieser Nextcloud kein passendes Pad.", "Checking for the original pad...": "Suche nach dem Original-Pad ...", "This file looks like a copy of an existing .pad file in your account. Open the original to keep editing the linked pad, or create a new pad to fork the content stored in this file.": "Diese Datei sieht aus wie eine Kopie einer bereits vorhandenen .pad-Datei in deinem Konto. Öffne das Original, um am verknüpften Pad weiterzuarbeiten, oder erstelle aus dem in dieser Datei gespeicherten Inhalt ein neues Pad als eigene Kopie.", @@ -108,7 +107,6 @@ "Selected parent folder is not writable.": "Ausgewählter Zielordner ist nicht beschreibbar.", "Template file not found.": "Vorlagendatei nicht gefunden.", "Trusted embed origins (optional)": "Vertrauenswürdige Embed-Origins (optional)", - "Unable to create pad": "Pad kann nicht erstellt werden", "Unknown error.": "Unbekannter Fehler.", "Retry pending deletes now": "Ausstehende Löschungen jetzt wiederholen", "Failed to save settings.": "Einstellungen konnten nicht gespeichert werden.", @@ -118,7 +116,9 @@ "Delete linked Etherpad pad when .pad file is moved to trash": "Verknüpftes Etherpad-Pad löschen, wenn die .pad-Datei in den Papierkorb verschoben wird", "If enabled, moving a .pad file to the trash also deletes the linked Etherpad pad.": "Wenn aktiviert, wird beim Verschieben einer .pad-Datei in den Papierkorb auch das verknüpfte Etherpad-Pad gelöscht.", "Add trusted Etherpad hostnames or HTTPS origins. Leave empty only if all public HTTPS hosts should be trusted.": "Vertrauenswürdige Etherpad-Hostnamen oder HTTPS-Ursprünge eintragen. Nur leer lassen, wenn alle öffentlichen HTTPS-Hosts vertrauenswürdig sein sollen.", - "Hint: Set \"authenticationMethod\": \"apikey\" in Etherpad's settings.json.": "Hinweis: Setze in Etherpads settings.json \"authenticationMethod\": \"apikey\"." + "Hint: Set \"authenticationMethod\": \"apikey\" in Etherpad's settings.json.": "Hinweis: Setze in Etherpads settings.json \"authenticationMethod\": \"apikey\".", + "Could not create pad": "Pad konnte nicht erstellt werden", + "Could not open pad": "Pad konnte nicht geöffnet werden" }, "pluralForm": "nplurals=2; plural=(n != 1);" } diff --git a/l10n/de_DE.php b/l10n/de_DE.php index 31fde7e..d4e432e 100644 --- a/l10n/de_DE.php +++ b/l10n/de_DE.php @@ -49,7 +49,6 @@ "Admin permissions required." => "Administratorrechte erforderlich.", "New pad" => "Neues Pad", "Open original pad" => "Original-Pad öffnen", - "Unable to open pad" => "Pad konnte nicht geöffnet werden", "This .pad file has no matching pad in this Nextcloud." => "Für diese .pad-Datei existiert in dieser Nextcloud kein passendes Pad.", "Checking for the original pad..." => "Suche nach dem Original-Pad ...", "This file looks like a copy of an existing .pad file in your account. Open the original to keep editing the linked pad, or create a new pad to fork the content stored in this file." => "Diese Datei sieht aus wie eine Kopie einer bereits vorhandenen .pad-Datei in deinem Konto. Öffne das Original, um am verknüpften Pad weiterzuarbeiten, oder erstelle aus dem in dieser Datei gespeicherten Inhalt ein neues Pad als eigene Kopie.", @@ -109,7 +108,6 @@ "Selected parent folder is not writable." => "Ausgewählter Zielordner ist nicht beschreibbar.", "Template file not found." => "Vorlagendatei nicht gefunden.", "Trusted embed origins (optional)" => "Vertrauenswürdige Embed-Origins (optional)", - "Unable to create pad" => "Pad kann nicht erstellt werden", "Unknown error." => "Unbekannter Fehler.", "Retry pending deletes now" => "Ausstehende Löschungen jetzt wiederholen", "Failed to save settings." => "Einstellungen konnten nicht gespeichert werden.", @@ -120,6 +118,8 @@ "If enabled, moving a .pad file to the trash also deletes the linked Etherpad pad." => "Wenn aktiviert, wird beim Verschieben einer .pad-Datei in den Papierkorb auch das verknüpfte Etherpad-Pad gelöscht.", "Add trusted Etherpad hostnames or HTTPS origins. Leave empty only if all public HTTPS hosts should be trusted." => "Vertrauenswürdige Etherpad-Hostnamen oder HTTPS-Ursprünge eintragen. Nur leer lassen, wenn alle öffentlichen HTTPS-Hosts vertrauenswürdig sein sollen.", "Hint: Set \"authenticationMethod\": \"apikey\" in Etherpad's settings.json." => "Hinweis: Setze in Etherpads settings.json \"authenticationMethod\": \"apikey\".", + "Could not create pad" => "Pad konnte nicht erstellt werden", + "Could not open pad" => "Pad konnte nicht geöffnet werden", ]; $PLURAL_FORMS = "nplurals=2; plural=(n != 1);"; diff --git a/l10n/es.js b/l10n/es.js index b792397..0959401 100644 --- a/l10n/es.js +++ b/l10n/es.js @@ -50,7 +50,7 @@ OC.L10N.register( "New pad": "Nuevo pad", "Open original pad": "Abrir pad original", "A file with this name already exists.": "Ya existe un archivo con este nombre.", - "Absolute https origins allowed to embed the /embed/by-id and /embed/create-by-parent routes. Leave empty to disable external embedding.": "Orígenes https absolutos permitidos para incrustar las rutas /embed/by-id y /embed/create-by-parent. Déjelo vacío para desactivar la incrustación externa.", + "Absolute https origins allowed to embed the /embed/by-id and /embed/create-by-parent routes. Leave empty to disable external embedding.": "Orígenes HTTPS absolutos permitidos para incrustar las rutas /embed/by-id y /embed/create-by-parent. Déjalo vacío para desactivar la incrustación externa.", "Back": "Atrás", "Cannot open selected .pad file.": "No se puede abrir el archivo .pad seleccionado.", "Cannot read selected .pad file.": "No se puede leer el archivo .pad seleccionado.", @@ -107,8 +107,6 @@ OC.L10N.register( "This .pad file has no matching pad in this Nextcloud.": "Este archivo .pad no tiene un pad asociado en este Nextcloud.", "This file looks like a copy of an existing .pad file in your account. Open the original to keep editing the linked pad, or create a new pad to fork the content stored in this file.": "Este archivo parece ser una copia de un archivo .pad existente en tu cuenta. Abre el original para seguir editando el pad enlazado, o crea un nuevo pad para bifurcar el contenido almacenado en este archivo.", "Trusted embed origins (optional)": "Orígenes de incrustación de confianza (opcional)", - "Unable to create pad": "No se puede crear el pad", - "Unable to open pad": "No se puede abrir el pad", "Unknown error.": "Error desconocido.", "We couldn't find a matching pad in this Nextcloud. You can create a new pad from the text stored in this file; from then on, opening this file will load the new pad.": "No pudimos encontrar un pad asociado en este Nextcloud. Puedes crear un nuevo pad a partir del texto almacenado en este archivo; a partir de ese momento, abrir este archivo cargará el nuevo pad.", "Retry pending deletes now": "Reintentar las eliminaciones pendientes ahora", @@ -119,7 +117,9 @@ OC.L10N.register( "Delete linked Etherpad pad when .pad file is moved to trash": "Eliminar el pad de Etherpad enlazado cuando el archivo .pad se mueve a la papelera", "If enabled, moving a .pad file to the trash also deletes the linked Etherpad pad.": "Si está activado, al mover un archivo .pad a la papelera también se elimina el pad de Etherpad enlazado.", "Add trusted Etherpad hostnames or HTTPS origins. Leave empty only if all public HTTPS hosts should be trusted.": "Agrega nombres de host de Etherpad u orígenes HTTPS de confianza. Déjalo vacío solo si se debe confiar en todos los hosts HTTPS públicos.", - "Hint: Set \"authenticationMethod\": \"apikey\" in Etherpad's settings.json.": "Sugerencia: establece \"authenticationMethod\": \"apikey\" en settings.json de Etherpad." + "Hint: Set \"authenticationMethod\": \"apikey\" in Etherpad's settings.json.": "Sugerencia: establece \"authenticationMethod\": \"apikey\" en settings.json de Etherpad.", + "Could not create pad": "No se pudo crear el pad", + "Could not open pad": "No se pudo abrir el pad" }, "nplurals=2; plural=(n != 1);" ); diff --git a/l10n/es.json b/l10n/es.json index d45a0ef..d35f744 100644 --- a/l10n/es.json +++ b/l10n/es.json @@ -49,7 +49,7 @@ "New pad": "Nuevo pad", "Open original pad": "Abrir pad original", "A file with this name already exists.": "Ya existe un archivo con este nombre.", - "Absolute https origins allowed to embed the /embed/by-id and /embed/create-by-parent routes. Leave empty to disable external embedding.": "Orígenes https absolutos permitidos para incrustar las rutas /embed/by-id y /embed/create-by-parent. Déjelo vacío para desactivar la incrustación externa.", + "Absolute https origins allowed to embed the /embed/by-id and /embed/create-by-parent routes. Leave empty to disable external embedding.": "Orígenes HTTPS absolutos permitidos para incrustar las rutas /embed/by-id y /embed/create-by-parent. Déjalo vacío para desactivar la incrustación externa.", "Back": "Atrás", "Cannot open selected .pad file.": "No se puede abrir el archivo .pad seleccionado.", "Cannot read selected .pad file.": "No se puede leer el archivo .pad seleccionado.", @@ -106,8 +106,6 @@ "This .pad file has no matching pad in this Nextcloud.": "Este archivo .pad no tiene un pad asociado en este Nextcloud.", "This file looks like a copy of an existing .pad file in your account. Open the original to keep editing the linked pad, or create a new pad to fork the content stored in this file.": "Este archivo parece ser una copia de un archivo .pad existente en tu cuenta. Abre el original para seguir editando el pad enlazado, o crea un nuevo pad para bifurcar el contenido almacenado en este archivo.", "Trusted embed origins (optional)": "Orígenes de incrustación de confianza (opcional)", - "Unable to create pad": "No se puede crear el pad", - "Unable to open pad": "No se puede abrir el pad", "Unknown error.": "Error desconocido.", "We couldn't find a matching pad in this Nextcloud. You can create a new pad from the text stored in this file; from then on, opening this file will load the new pad.": "No pudimos encontrar un pad asociado en este Nextcloud. Puedes crear un nuevo pad a partir del texto almacenado en este archivo; a partir de ese momento, abrir este archivo cargará el nuevo pad.", "Retry pending deletes now": "Reintentar las eliminaciones pendientes ahora", @@ -118,7 +116,9 @@ "Delete linked Etherpad pad when .pad file is moved to trash": "Eliminar el pad de Etherpad enlazado cuando el archivo .pad se mueve a la papelera", "If enabled, moving a .pad file to the trash also deletes the linked Etherpad pad.": "Si está activado, al mover un archivo .pad a la papelera también se elimina el pad de Etherpad enlazado.", "Add trusted Etherpad hostnames or HTTPS origins. Leave empty only if all public HTTPS hosts should be trusted.": "Agrega nombres de host de Etherpad u orígenes HTTPS de confianza. Déjalo vacío solo si se debe confiar en todos los hosts HTTPS públicos.", - "Hint: Set \"authenticationMethod\": \"apikey\" in Etherpad's settings.json.": "Sugerencia: establece \"authenticationMethod\": \"apikey\" en settings.json de Etherpad." + "Hint: Set \"authenticationMethod\": \"apikey\" in Etherpad's settings.json.": "Sugerencia: establece \"authenticationMethod\": \"apikey\" en settings.json de Etherpad.", + "Could not create pad": "No se pudo crear el pad", + "Could not open pad": "No se pudo abrir el pad" }, "pluralForm": "nplurals=2; plural=(n != 1);" } diff --git a/l10n/es.php b/l10n/es.php index 05f257e..1780b62 100644 --- a/l10n/es.php +++ b/l10n/es.php @@ -50,7 +50,7 @@ "New pad" => "Nuevo pad", "Open original pad" => "Abrir pad original", "A file with this name already exists." => "Ya existe un archivo con este nombre.", - "Absolute https origins allowed to embed the /embed/by-id and /embed/create-by-parent routes. Leave empty to disable external embedding." => "Orígenes https absolutos permitidos para incrustar las rutas /embed/by-id y /embed/create-by-parent. Déjelo vacío para desactivar la incrustación externa.", + "Absolute https origins allowed to embed the /embed/by-id and /embed/create-by-parent routes. Leave empty to disable external embedding." => "Orígenes HTTPS absolutos permitidos para incrustar las rutas /embed/by-id y /embed/create-by-parent. Déjalo vacío para desactivar la incrustación externa.", "Back" => "Atrás", "Cannot open selected .pad file." => "No se puede abrir el archivo .pad seleccionado.", "Cannot read selected .pad file." => "No se puede leer el archivo .pad seleccionado.", @@ -107,8 +107,6 @@ "This .pad file has no matching pad in this Nextcloud." => "Este archivo .pad no tiene un pad asociado en este Nextcloud.", "This file looks like a copy of an existing .pad file in your account. Open the original to keep editing the linked pad, or create a new pad to fork the content stored in this file." => "Este archivo parece ser una copia de un archivo .pad existente en tu cuenta. Abre el original para seguir editando el pad enlazado, o crea un nuevo pad para bifurcar el contenido almacenado en este archivo.", "Trusted embed origins (optional)" => "Orígenes de incrustación de confianza (opcional)", - "Unable to create pad" => "No se puede crear el pad", - "Unable to open pad" => "No se puede abrir el pad", "Unknown error." => "Error desconocido.", "We couldn't find a matching pad in this Nextcloud. You can create a new pad from the text stored in this file; from then on, opening this file will load the new pad." => "No pudimos encontrar un pad asociado en este Nextcloud. Puedes crear un nuevo pad a partir del texto almacenado en este archivo; a partir de ese momento, abrir este archivo cargará el nuevo pad.", "Retry pending deletes now" => "Reintentar las eliminaciones pendientes ahora", @@ -120,6 +118,8 @@ "If enabled, moving a .pad file to the trash also deletes the linked Etherpad pad." => "Si está activado, al mover un archivo .pad a la papelera también se elimina el pad de Etherpad enlazado.", "Add trusted Etherpad hostnames or HTTPS origins. Leave empty only if all public HTTPS hosts should be trusted." => "Agrega nombres de host de Etherpad u orígenes HTTPS de confianza. Déjalo vacío solo si se debe confiar en todos los hosts HTTPS públicos.", "Hint: Set \"authenticationMethod\": \"apikey\" in Etherpad's settings.json." => "Sugerencia: establece \"authenticationMethod\": \"apikey\" en settings.json de Etherpad.", + "Could not create pad" => "No se pudo crear el pad", + "Could not open pad" => "No se pudo abrir el pad", ]; $PLURAL_FORMS = "nplurals=2; plural=(n != 1);"; diff --git a/l10n/fr.js b/l10n/fr.js index b92dc47..22f47c9 100644 --- a/l10n/fr.js +++ b/l10n/fr.js @@ -50,7 +50,7 @@ OC.L10N.register( "New pad": "Nouveau pad", "Open original pad": "Ouvrir le pad d'origine", "A file with this name already exists.": "Un fichier portant ce nom existe déjà.", - "Absolute https origins allowed to embed the /embed/by-id and /embed/create-by-parent routes. Leave empty to disable external embedding.": "Origines https absolues autorisées à intégrer les routes /embed/by-id et /embed/create-by-parent. Laisser vide pour désactiver l'intégration externe.", + "Absolute https origins allowed to embed the /embed/by-id and /embed/create-by-parent routes. Leave empty to disable external embedding.": "Origines HTTPS absolues autorisées à intégrer les routes /embed/by-id et /embed/create-by-parent. Laisser vide pour désactiver l'intégration externe.", "Back": "Retour", "Cannot open selected .pad file.": "Impossible d'ouvrir le fichier .pad sélectionné.", "Cannot read selected .pad file.": "Impossible de lire le fichier .pad sélectionné.", @@ -107,8 +107,6 @@ OC.L10N.register( "This .pad file has no matching pad in this Nextcloud.": "Ce fichier .pad n'a pas de pad correspondant dans ce Nextcloud.", "This file looks like a copy of an existing .pad file in your account. Open the original to keep editing the linked pad, or create a new pad to fork the content stored in this file.": "Ce fichier ressemble à une copie d'un fichier .pad existant dans votre compte. Ouvrez l'original pour continuer à modifier le pad lié, ou créez un nouveau pad pour dupliquer le contenu stocké dans ce fichier.", "Trusted embed origins (optional)": "Origines d'intégration de confiance (optionnel)", - "Unable to create pad": "Impossible de créer le pad", - "Unable to open pad": "Impossible d'ouvrir le pad", "Unknown error.": "Erreur inconnue.", "We couldn't find a matching pad in this Nextcloud. You can create a new pad from the text stored in this file; from then on, opening this file will load the new pad.": "Nous n'avons pas trouvé de pad correspondant dans ce Nextcloud. Vous pouvez créer un nouveau pad à partir du texte stocké dans ce fichier ; à partir de là, ouvrir ce fichier chargera le nouveau pad.", "Retry pending deletes now": "Réessayer les suppressions en attente maintenant", @@ -119,7 +117,9 @@ OC.L10N.register( "Delete linked Etherpad pad when .pad file is moved to trash": "Supprimer le pad Etherpad lié lorsque le fichier .pad est déplacé vers la corbeille", "If enabled, moving a .pad file to the trash also deletes the linked Etherpad pad.": "Si activé, déplacer un fichier .pad vers la corbeille supprime également le pad Etherpad lié.", "Add trusted Etherpad hostnames or HTTPS origins. Leave empty only if all public HTTPS hosts should be trusted.": "Ajoutez des noms d'hôte Etherpad ou des origines HTTPS de confiance. Ne laissez vide que si tous les hôtes HTTPS publics doivent être considérés comme de confiance.", - "Hint: Set \"authenticationMethod\": \"apikey\" in Etherpad's settings.json.": "Indice : définissez \"authenticationMethod\": \"apikey\" dans le fichier settings.json d'Etherpad." + "Hint: Set \"authenticationMethod\": \"apikey\" in Etherpad's settings.json.": "Indice : définissez \"authenticationMethod\": \"apikey\" dans le fichier settings.json d'Etherpad.", + "Could not create pad": "Impossible de créer le pad", + "Could not open pad": "Impossible d'ouvrir le pad" }, "nplurals=2; plural=(n > 1);" ); diff --git a/l10n/fr.json b/l10n/fr.json index 0ba82b7..4c4affe 100644 --- a/l10n/fr.json +++ b/l10n/fr.json @@ -49,7 +49,7 @@ "New pad": "Nouveau pad", "Open original pad": "Ouvrir le pad d'origine", "A file with this name already exists.": "Un fichier portant ce nom existe déjà.", - "Absolute https origins allowed to embed the /embed/by-id and /embed/create-by-parent routes. Leave empty to disable external embedding.": "Origines https absolues autorisées à intégrer les routes /embed/by-id et /embed/create-by-parent. Laisser vide pour désactiver l'intégration externe.", + "Absolute https origins allowed to embed the /embed/by-id and /embed/create-by-parent routes. Leave empty to disable external embedding.": "Origines HTTPS absolues autorisées à intégrer les routes /embed/by-id et /embed/create-by-parent. Laisser vide pour désactiver l'intégration externe.", "Back": "Retour", "Cannot open selected .pad file.": "Impossible d'ouvrir le fichier .pad sélectionné.", "Cannot read selected .pad file.": "Impossible de lire le fichier .pad sélectionné.", @@ -106,8 +106,6 @@ "This .pad file has no matching pad in this Nextcloud.": "Ce fichier .pad n'a pas de pad correspondant dans ce Nextcloud.", "This file looks like a copy of an existing .pad file in your account. Open the original to keep editing the linked pad, or create a new pad to fork the content stored in this file.": "Ce fichier ressemble à une copie d'un fichier .pad existant dans votre compte. Ouvrez l'original pour continuer à modifier le pad lié, ou créez un nouveau pad pour dupliquer le contenu stocké dans ce fichier.", "Trusted embed origins (optional)": "Origines d'intégration de confiance (optionnel)", - "Unable to create pad": "Impossible de créer le pad", - "Unable to open pad": "Impossible d'ouvrir le pad", "Unknown error.": "Erreur inconnue.", "We couldn't find a matching pad in this Nextcloud. You can create a new pad from the text stored in this file; from then on, opening this file will load the new pad.": "Nous n'avons pas trouvé de pad correspondant dans ce Nextcloud. Vous pouvez créer un nouveau pad à partir du texte stocké dans ce fichier ; à partir de là, ouvrir ce fichier chargera le nouveau pad.", "Retry pending deletes now": "Réessayer les suppressions en attente maintenant", @@ -118,7 +116,9 @@ "Delete linked Etherpad pad when .pad file is moved to trash": "Supprimer le pad Etherpad lié lorsque le fichier .pad est déplacé vers la corbeille", "If enabled, moving a .pad file to the trash also deletes the linked Etherpad pad.": "Si activé, déplacer un fichier .pad vers la corbeille supprime également le pad Etherpad lié.", "Add trusted Etherpad hostnames or HTTPS origins. Leave empty only if all public HTTPS hosts should be trusted.": "Ajoutez des noms d'hôte Etherpad ou des origines HTTPS de confiance. Ne laissez vide que si tous les hôtes HTTPS publics doivent être considérés comme de confiance.", - "Hint: Set \"authenticationMethod\": \"apikey\" in Etherpad's settings.json.": "Indice : définissez \"authenticationMethod\": \"apikey\" dans le fichier settings.json d'Etherpad." + "Hint: Set \"authenticationMethod\": \"apikey\" in Etherpad's settings.json.": "Indice : définissez \"authenticationMethod\": \"apikey\" dans le fichier settings.json d'Etherpad.", + "Could not create pad": "Impossible de créer le pad", + "Could not open pad": "Impossible d'ouvrir le pad" }, "pluralForm": "nplurals=2; plural=(n > 1);" } diff --git a/l10n/fr.php b/l10n/fr.php index 75211a5..38f0f96 100644 --- a/l10n/fr.php +++ b/l10n/fr.php @@ -50,7 +50,7 @@ "New pad" => "Nouveau pad", "Open original pad" => "Ouvrir le pad d'origine", "A file with this name already exists." => "Un fichier portant ce nom existe déjà.", - "Absolute https origins allowed to embed the /embed/by-id and /embed/create-by-parent routes. Leave empty to disable external embedding." => "Origines https absolues autorisées à intégrer les routes /embed/by-id et /embed/create-by-parent. Laisser vide pour désactiver l'intégration externe.", + "Absolute https origins allowed to embed the /embed/by-id and /embed/create-by-parent routes. Leave empty to disable external embedding." => "Origines HTTPS absolues autorisées à intégrer les routes /embed/by-id et /embed/create-by-parent. Laisser vide pour désactiver l'intégration externe.", "Back" => "Retour", "Cannot open selected .pad file." => "Impossible d'ouvrir le fichier .pad sélectionné.", "Cannot read selected .pad file." => "Impossible de lire le fichier .pad sélectionné.", @@ -107,8 +107,6 @@ "This .pad file has no matching pad in this Nextcloud." => "Ce fichier .pad n'a pas de pad correspondant dans ce Nextcloud.", "This file looks like a copy of an existing .pad file in your account. Open the original to keep editing the linked pad, or create a new pad to fork the content stored in this file." => "Ce fichier ressemble à une copie d'un fichier .pad existant dans votre compte. Ouvrez l'original pour continuer à modifier le pad lié, ou créez un nouveau pad pour dupliquer le contenu stocké dans ce fichier.", "Trusted embed origins (optional)" => "Origines d'intégration de confiance (optionnel)", - "Unable to create pad" => "Impossible de créer le pad", - "Unable to open pad" => "Impossible d'ouvrir le pad", "Unknown error." => "Erreur inconnue.", "We couldn't find a matching pad in this Nextcloud. You can create a new pad from the text stored in this file; from then on, opening this file will load the new pad." => "Nous n'avons pas trouvé de pad correspondant dans ce Nextcloud. Vous pouvez créer un nouveau pad à partir du texte stocké dans ce fichier ; à partir de là, ouvrir ce fichier chargera le nouveau pad.", "Retry pending deletes now" => "Réessayer les suppressions en attente maintenant", @@ -120,6 +118,8 @@ "If enabled, moving a .pad file to the trash also deletes the linked Etherpad pad." => "Si activé, déplacer un fichier .pad vers la corbeille supprime également le pad Etherpad lié.", "Add trusted Etherpad hostnames or HTTPS origins. Leave empty only if all public HTTPS hosts should be trusted." => "Ajoutez des noms d'hôte Etherpad ou des origines HTTPS de confiance. Ne laissez vide que si tous les hôtes HTTPS publics doivent être considérés comme de confiance.", "Hint: Set \"authenticationMethod\": \"apikey\" in Etherpad's settings.json." => "Indice : définissez \"authenticationMethod\": \"apikey\" dans le fichier settings.json d'Etherpad.", + "Could not create pad" => "Impossible de créer le pad", + "Could not open pad" => "Impossible d'ouvrir le pad", ]; $PLURAL_FORMS = "nplurals=2; plural=(n > 1);"; diff --git a/lib/Controller/EmbedController.php b/lib/Controller/EmbedController.php index 99bf448..4793f58 100644 --- a/lib/Controller/EmbedController.php +++ b/lib/Controller/EmbedController.php @@ -66,7 +66,7 @@ function () use ($fileId): array { ), 'l10n' => [ 'loading' => $this->l10n->t('Loading pad...'), - 'error_title' => $this->l10n->t('Unable to open pad'), + 'error_title' => $this->l10n->t('Could not open pad'), 'external_title' => $this->l10n->t('Pad from another server'), 'external_message' => $this->l10n->t('Read-only snapshot from the .pad file.'), 'external_empty' => $this->l10n->t('No synced snapshot is stored in this .pad file yet.'), @@ -79,7 +79,7 @@ function () use ($fileId): array { 'recovery_creating' => $this->l10n->t('Creating new pad...'), ], ]), - errorTitle: $this->l10n->t('Unable to open pad'), + errorTitle: $this->l10n->t('Could not open pad'), ); } @@ -101,13 +101,13 @@ function () use ($parentFolderId): array { 'create_by_parent_url' => $this->urlGenerator->linkToRoute($this->appName . '.padCreate.createByParent'), 'l10n' => [ 'loading' => $this->l10n->t('Creating pad...'), - 'error_title' => $this->l10n->t('Unable to create pad'), + 'error_title' => $this->l10n->t('Could not create pad'), 'missing_name' => $this->l10n->t('Pad name is required.'), 'invalid_access_mode' => $this->l10n->t('Invalid access mode.'), 'incomplete_config' => $this->l10n->t('Embed configuration is incomplete.'), ], ]), - errorTitle: $this->l10n->t('Unable to create pad'), + errorTitle: $this->l10n->t('Could not create pad'), notFoundMessage: $this->l10n->t('Cannot resolve selected parent folder.'), ); } diff --git a/lib/Controller/EmbedControllerErrorMapper.php b/lib/Controller/EmbedControllerErrorMapper.php index a1a9a39..d53fd89 100644 --- a/lib/Controller/EmbedControllerErrorMapper.php +++ b/lib/Controller/EmbedControllerErrorMapper.php @@ -23,7 +23,7 @@ * Maps embed-controller exceptions to embed-shaped TemplateResponses. * * Endpoints provide an `error_title` so the noviewer template can show a - * context-appropriate heading (e.g. "Unable to open pad" vs. "Unable to create + * context-appropriate heading (e.g. "Could not open pad" vs. "Could not create * pad"). Unhandled errors are logged and rendered with a generic message. */ class EmbedControllerErrorMapper { diff --git a/src/viewer-main.js b/src/viewer-main.js index df69306..48c9ed9 100644 --- a/src/viewer-main.js +++ b/src/viewer-main.js @@ -480,7 +480,7 @@ import { parsePadPathFromDavHref, parsePublicShareTokenFromLocation } from './li render(createElement) { if (this.loadError) { const cardChildren = [ - createElement('div', { class: 'epnc-native-error-title' }, translate('Unable to open pad')), + createElement('div', { class: 'epnc-native-error-title' }, translate('Could not open pad')), createElement('div', { class: 'epnc-native-error-message' }, this.loadError), ] if (this.canRecover) { diff --git a/templates/noviewer.php b/templates/noviewer.php index b7388fc..3c265df 100644 --- a/templates/noviewer.php +++ b/templates/noviewer.php @@ -7,7 +7,7 @@ /** @var \OCP\IL10N $l */ ?>
t('Unknown error.'))); ?>
diff --git a/tests/phpunit/unit/EmbedControllerErrorMapperTest.php b/tests/phpunit/unit/EmbedControllerErrorMapperTest.php
index 03b3b64..d1cb37b 100644
--- a/tests/phpunit/unit/EmbedControllerErrorMapperTest.php
+++ b/tests/phpunit/unit/EmbedControllerErrorMapperTest.php
@@ -26,7 +26,7 @@ public function testRunReturnsSuccessTemplateWhenActionSucceeds(): void {
$response = $mapper->runForTemplate(
static fn (): string => 'payload',
static fn (string $value): TemplateResponse => new TemplateResponse('etherpad_nextcloud', 'embed', ['value' => $value], 'blank'),
- errorTitle: 'Unable to open pad',
+ errorTitle: 'Could not open pad',
);
$this->assertSame('embed', $response->getTemplateName());
@@ -37,19 +37,19 @@ public function testRunMapsUnauthorizedToNoviewer(): void {
$response = $this->buildMapper()->runForTemplate(
static fn (): never => throw new UnauthorizedRequestException(),
static fn ($value) => $this->fail('success handler must not run on error'),
- errorTitle: 'Unable to open pad',
+ errorTitle: 'Could not open pad',
);
$this->assertSame('noviewer', $response->getTemplateName());
$this->assertSame('Authentication required.', $response->getParams()['error']);
- $this->assertSame('Unable to open pad', $response->getParams()['title']);
+ $this->assertSame('Could not open pad', $response->getParams()['title']);
}
public function testRunMapsControllerBadRequestUsingException(): void {
$response = $this->buildMapper()->runForTemplate(
static fn (): never => throw new ControllerBadRequestException('Invalid file ID.'),
static fn ($value) => $this->fail('unreachable'),
- errorTitle: 'Unable to open pad',
+ errorTitle: 'Could not open pad',
);
$this->assertSame('Invalid file ID.', $response->getParams()['error']);
@@ -59,7 +59,7 @@ public function testRunMapsNotFoundExceptionToNoviewer(): void {
$response = $this->buildMapper()->runForTemplate(
static fn (): never => throw new NotFoundException(),
static fn ($value) => $this->fail('unreachable'),
- errorTitle: 'Unable to open pad',
+ errorTitle: 'Could not open pad',
);
$this->assertSame('Cannot open selected .pad file.', $response->getParams()['error']);
@@ -69,19 +69,19 @@ public function testRunUsesEndpointSpecificNotFoundMessageWhenProvided(): void {
$response = $this->buildMapper()->runForTemplate(
static fn (): never => throw new NotFoundException(),
static fn ($value) => $this->fail('unreachable'),
- errorTitle: 'Unable to create pad',
+ errorTitle: 'Could not create pad',
notFoundMessage: 'Cannot resolve selected parent folder.',
);
$this->assertSame('Cannot resolve selected parent folder.', $response->getParams()['error']);
- $this->assertSame('Unable to create pad', $response->getParams()['title']);
+ $this->assertSame('Could not create pad', $response->getParams()['title']);
}
public function testRunMapsNotAPadFile(): void {
$response = $this->buildMapper()->runForTemplate(
static fn (): never => throw new NotAPadFileException('Selected file is not a .pad file.'),
static fn ($value) => $this->fail('unreachable'),
- errorTitle: 'Unable to open pad',
+ errorTitle: 'Could not open pad',
);
$this->assertSame('Selected file is not a .pad file.', $response->getParams()['error']);
@@ -91,11 +91,11 @@ public function testRunMapsParentFolderNotWritable(): void {
$response = $this->buildMapper()->runForTemplate(
static fn (): never => throw new PadParentFolderNotWritableException(),
static fn ($value) => $this->fail('unreachable'),
- errorTitle: 'Unable to create pad',
+ errorTitle: 'Could not create pad',
);
$this->assertSame('Selected parent folder is not writable.', $response->getParams()['error']);
- $this->assertSame('Unable to create pad', $response->getParams()['title']);
+ $this->assertSame('Could not create pad', $response->getParams()['title']);
}
public function testRunLogsUnhandledExceptionAndReturnsGenericMessage(): void {
@@ -107,7 +107,7 @@ public function testRunLogsUnhandledExceptionAndReturnsGenericMessage(): void {
$response = $this->buildMapper($logger)->runForTemplate(
static fn (): never => throw new \RuntimeException('Internal pipe burst'),
static fn ($value) => $this->fail('unreachable'),
- errorTitle: 'Unable to open pad',
+ errorTitle: 'Could not open pad',
);
$this->assertSame('Could not open pad.', $response->getParams()['error']);
diff --git a/tests/phpunit/unit/EmbedControllerTest.php b/tests/phpunit/unit/EmbedControllerTest.php
index 11eadfb..3a94621 100644
--- a/tests/phpunit/unit/EmbedControllerTest.php
+++ b/tests/phpunit/unit/EmbedControllerTest.php
@@ -56,7 +56,7 @@ public function testShowByIdReturnsNoviewerOnInvalidFileId(): void {
$this->assertSame('noviewer', $response->getTemplateName());
$this->assertSame('Invalid file ID.', $params['error']);
- $this->assertSame('Unable to open pad', $params['title']);
+ $this->assertSame('Could not open pad', $params['title']);
}
public function testShowByIdReturnsNoviewerWhenFileIsNotPad(): void {
@@ -72,7 +72,7 @@ public function testShowByIdReturnsNoviewerWhenFileIsNotPad(): void {
$this->assertSame('noviewer', $response->getTemplateName());
$this->assertSame('Selected file is not a .pad file.', $params['error']);
- $this->assertSame('Unable to open pad', $params['title']);
+ $this->assertSame('Could not open pad', $params['title']);
}
public function testShowByIdReturnsNoviewerWhenFileCannotBeResolved(): void {
@@ -87,7 +87,7 @@ public function testShowByIdReturnsNoviewerWhenFileCannotBeResolved(): void {
$this->assertSame('noviewer', $response->getTemplateName());
$this->assertSame('Cannot open selected .pad file.', $params['error']);
- $this->assertSame('Unable to open pad', $params['title']);
+ $this->assertSame('Could not open pad', $params['title']);
}
public function testShowByIdReturnsNoviewerWhenNotLoggedIn(): void {
@@ -109,7 +109,7 @@ public function testCreateByParentRejectsInvalidParentFolderId(): void {
$this->assertSame('noviewer', $response->getTemplateName());
$this->assertSame('Invalid parent folder ID.', $params['error']);
- $this->assertSame('Unable to create pad', $params['title']);
+ $this->assertSame('Could not create pad', $params['title']);
}
public function testCreateByParentReturnsNoviewerForNonWritableParent(): void {
@@ -126,7 +126,7 @@ public function testCreateByParentReturnsNoviewerForNonWritableParent(): void {
$this->assertSame('noviewer', $response->getTemplateName());
$this->assertSame('Selected parent folder is not writable.', $params['error']);
- $this->assertSame('Unable to create pad', $params['title']);
+ $this->assertSame('Could not create pad', $params['title']);
}
public function testCreateByParentReturnsParentFolderErrorWhenResolverThrowsNotFound(): void {
@@ -143,7 +143,7 @@ public function testCreateByParentReturnsParentFolderErrorWhenResolverThrowsNotF
$this->assertSame('noviewer', $response->getTemplateName());
$this->assertSame('Cannot resolve selected parent folder.', $params['error']);
- $this->assertSame('Unable to create pad', $params['title']);
+ $this->assertSame('Could not create pad', $params['title']);
}
public function testCreateByParentBuildsEmbedCreateTemplate(): void {
From e89a0d1b24fca71cc440e87bfb80d0a81203e6cb Mon Sep 17 00:00:00 2001
From: Jaggob <37583151+Jaggob@users.noreply.github.com>
Date: Tue, 26 May 2026 18:59:07 +0200
Subject: [PATCH 03/13] i18n: rename pad-file source keys and polish DE wording
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
- Rename English keys: "Pad file" -> ".pad file" in three error
messages (Could not initialize, Could not resolve, not found),
matching the .pad-Datei naming used elsewhere.
- DE: fix DNS-hint grammar ("ob er ... aufgelöst werden kann"),
uppercase HTTPS in the embed-origins label, "Ursprüngliche"
statt "Originale", and "Zielordner-ID" statt "übergeordnete
Ordner-ID" for consistency.
- ES/FR: first-pass translations for the renamed keys.
---
l10n/de.js | 16 ++++++++--------
l10n/de.json | 16 ++++++++--------
l10n/de.php | 14 +++++++-------
l10n/de_DE.js | 16 ++++++++--------
l10n/de_DE.json | 16 ++++++++--------
l10n/de_DE.php | 14 +++++++-------
l10n/es.js | 8 ++++----
l10n/es.json | 8 ++++----
l10n/es.php | 6 +++---
l10n/fr.js | 8 ++++----
l10n/fr.json | 8 ++++----
l10n/fr.php | 6 +++---
lib/Controller/PadLifecycleController.php | 6 +++---
lib/Controller/PadSessionController.php | 6 +++---
tests/phpunit/unit/PadSessionControllerTest.php | 2 +-
15 files changed, 75 insertions(+), 75 deletions(-)
diff --git a/l10n/de.js b/l10n/de.js
index 8bacd0d..e9d8608 100644
--- a/l10n/de.js
+++ b/l10n/de.js
@@ -55,13 +55,11 @@ OC.L10N.register(
"We couldn't find a matching pad in this Nextcloud. You can create a new pad from the text stored in this file; from then on, opening this file will load the new pad.": "Wir konnten in dieser Nextcloud kein zugehöriges Pad finden. Du kannst aus dem in dieser Datei gespeicherten Text ein neues Pad erstellen; ab dann öffnet diese Datei das neue Pad.",
"Create new pad from this file": "Neues Pad aus dieser Datei erstellen",
"Creating new pad...": "Neues Pad wird erstellt ...",
- "Open the original .pad file": "Originale .pad-Datei öffnen",
+ "Open the original .pad file": "Ursprüngliche .pad-Datei öffnen",
"Could not create pad.": "Pad konnte nicht erstellt werden.",
"Could not import external pad.": "Externes Pad konnte nicht importiert werden.",
"Could not open pad.": "Pad konnte nicht geöffnet werden.",
- "Could not initialize pad file.": "Pad-Datei konnte nicht initialisiert werden.",
"Could not read pad metadata.": "Pad-Metadaten konnten nicht gelesen werden.",
- "Could not resolve pad file.": "Pad-Datei konnte nicht aufgelöst werden.",
"Could not sync pad content.": "Pad-Inhalt konnte nicht synchronisiert werden.",
"Could not check pad sync status.": "Synchronisierungsstatus des Pads konnte nicht ermittelt werden.",
"Could not move pad to trash.": "Pad konnte nicht in den Papierkorb verschoben werden.",
@@ -71,7 +69,7 @@ OC.L10N.register(
"Hint: Etherpad rejected the API key. Check that the key matches Etherpad's APIKEY.txt.": "Hinweis: Etherpad hat den API-Schlüssel abgelehnt. Prüfe, ob er mit Etherpads APIKEY.txt übereinstimmt.",
"Hint: API endpoint not found. Check the API host and that the configured API version is supported by your Etherpad.": "Hinweis: API-Endpunkt nicht gefunden. Prüfe den API-Host und ob die konfigurierte API-Version von deinem Etherpad unterstützt wird.",
"Hint: Etherpad returned a server error. Check the Etherpad server logs.": "Hinweis: Etherpad hat einen Server-Fehler zurückgegeben. Prüfe die Etherpad-Server-Logs.",
- "Hint: The configured Etherpad host did not resolve. Check the hostname for typos and that DNS reaches it from this server.": "Hinweis: Der konfigurierte Etherpad-Host konnte nicht aufgelöst werden. Prüfe den Hostnamen auf Tippfehler und dass DNS ihn von diesem Server erreicht.",
+ "Hint: The configured Etherpad host did not resolve. Check the hostname for typos and that DNS reaches it from this server.": "Hinweis: Der konfigurierte Etherpad-Host konnte nicht aufgelöst werden. Prüfe den Hostnamen auf Tippfehler und ob er von diesem Server per DNS aufgelöst werden kann.",
"Hint: Connection refused. Etherpad does not appear to be running on the configured host and port.": "Hinweis: Verbindung verweigert. Etherpad läuft anscheinend nicht auf dem konfigurierten Host und Port.",
"Hint: Connection timed out. Check that this server can reach the Etherpad host (firewall, network).": "Hinweis: Zeitüberschreitung bei der Verbindung. Prüfe, ob dieser Server den Etherpad-Host erreichen kann (Firewall, Netzwerk).",
"Hint: TLS handshake failed. Check the Etherpad certificate and that the configured URL uses the right scheme.": "Hinweis: TLS-Handshake fehlgeschlagen. Prüfe das Etherpad-Zertifikat und ob die konfigurierte URL das richtige Schema verwendet.",
@@ -86,9 +84,8 @@ OC.L10N.register(
"Cannot resolve selected .pad file.": "Ausgewählte .pad-Datei konnte nicht aufgelöst werden.",
"Cannot read selected .pad file.": "Ausgewählte .pad-Datei konnte nicht gelesen werden.",
"Cannot resolve file path for file ID.": "Dateipfad zur Datei-ID konnte nicht ermittelt werden.",
- "Pad file not found.": "Pad-Datei nicht gefunden.",
"A file with this name already exists.": "Eine Datei mit diesem Namen existiert bereits.",
- "Absolute https origins allowed to embed the /embed/by-id and /embed/create-by-parent routes. Leave empty to disable external embedding.": "Absolute https-Origins, die die Routen /embed/by-id und /embed/create-by-parent einbetten dürfen. Leer lassen, um externes Einbetten zu deaktivieren.",
+ "Absolute https origins allowed to embed the /embed/by-id and /embed/create-by-parent routes. Leave empty to disable external embedding.": "Absolute HTTPS-Origins, die die Routen /embed/by-id und /embed/create-by-parent einbetten dürfen. Leer lassen, um externes Einbetten zu deaktivieren.",
"Back": "Zurück",
"Cookie domain must be a hostname, not a URL.": "Cookie-Domain muss ein Hostname sein, keine URL.",
"Cookie domain must be a valid shared hostname.": "Cookie-Domain muss ein gültiger gemeinsamer Hostname sein.",
@@ -97,7 +94,7 @@ OC.L10N.register(
"Embed configuration is incomplete.": "Embed-Konfiguration ist unvollständig.",
"Failed to update test fault.": "Test-Fehler konnte nicht aktualisiert werden.",
"Invalid access mode.": "Ungültiger Zugriffsmodus.",
- "Invalid parent folder ID.": "Ungültige übergeordnete Ordner-ID.",
+ "Invalid parent folder ID.": "Ungültige Zielordner-ID.",
"Loading pad...": "Pad wird geladen...",
"No synced snapshot is stored in this .pad file yet.": "In dieser .pad-Datei ist noch kein synchronisierter Snapshot gespeichert.",
"Pad from another server": "Pad von einem anderen Server",
@@ -119,7 +116,10 @@ OC.L10N.register(
"Add trusted Etherpad hostnames or HTTPS origins. Leave empty only if all public HTTPS hosts should be trusted.": "Vertrauenswürdige Etherpad-Hostnamen oder HTTPS-Ursprünge eintragen. Nur leer lassen, wenn alle öffentlichen HTTPS-Hosts vertrauenswürdig sein sollen.",
"Hint: Set \"authenticationMethod\": \"apikey\" in Etherpad's settings.json.": "Hinweis: Setze in Etherpads settings.json \"authenticationMethod\": \"apikey\".",
"Could not create pad": "Pad konnte nicht erstellt werden",
- "Could not open pad": "Pad konnte nicht geöffnet werden"
+ "Could not open pad": "Pad konnte nicht geöffnet werden",
+ "Could not initialize .pad file.": ".pad-Datei konnte nicht initialisiert werden.",
+ "Could not resolve .pad file.": ".pad-Datei konnte nicht aufgelöst werden.",
+ ".pad file not found.": ".pad-Datei nicht gefunden."
},
"nplurals=2; plural=(n != 1);"
);
diff --git a/l10n/de.json b/l10n/de.json
index bdc59a1..62ce78e 100644
--- a/l10n/de.json
+++ b/l10n/de.json
@@ -54,13 +54,11 @@
"We couldn't find a matching pad in this Nextcloud. You can create a new pad from the text stored in this file; from then on, opening this file will load the new pad.": "Wir konnten in dieser Nextcloud kein zugehöriges Pad finden. Du kannst aus dem in dieser Datei gespeicherten Text ein neues Pad erstellen; ab dann öffnet diese Datei das neue Pad.",
"Create new pad from this file": "Neues Pad aus dieser Datei erstellen",
"Creating new pad...": "Neues Pad wird erstellt ...",
- "Open the original .pad file": "Originale .pad-Datei öffnen",
+ "Open the original .pad file": "Ursprüngliche .pad-Datei öffnen",
"Could not create pad.": "Pad konnte nicht erstellt werden.",
"Could not import external pad.": "Externes Pad konnte nicht importiert werden.",
"Could not open pad.": "Pad konnte nicht geöffnet werden.",
- "Could not initialize pad file.": "Pad-Datei konnte nicht initialisiert werden.",
"Could not read pad metadata.": "Pad-Metadaten konnten nicht gelesen werden.",
- "Could not resolve pad file.": "Pad-Datei konnte nicht aufgelöst werden.",
"Could not sync pad content.": "Pad-Inhalt konnte nicht synchronisiert werden.",
"Could not check pad sync status.": "Synchronisierungsstatus des Pads konnte nicht ermittelt werden.",
"Could not move pad to trash.": "Pad konnte nicht in den Papierkorb verschoben werden.",
@@ -70,7 +68,7 @@
"Hint: Etherpad rejected the API key. Check that the key matches Etherpad's APIKEY.txt.": "Hinweis: Etherpad hat den API-Schlüssel abgelehnt. Prüfe, ob er mit Etherpads APIKEY.txt übereinstimmt.",
"Hint: API endpoint not found. Check the API host and that the configured API version is supported by your Etherpad.": "Hinweis: API-Endpunkt nicht gefunden. Prüfe den API-Host und ob die konfigurierte API-Version von deinem Etherpad unterstützt wird.",
"Hint: Etherpad returned a server error. Check the Etherpad server logs.": "Hinweis: Etherpad hat einen Server-Fehler zurückgegeben. Prüfe die Etherpad-Server-Logs.",
- "Hint: The configured Etherpad host did not resolve. Check the hostname for typos and that DNS reaches it from this server.": "Hinweis: Der konfigurierte Etherpad-Host konnte nicht aufgelöst werden. Prüfe den Hostnamen auf Tippfehler und dass DNS ihn von diesem Server erreicht.",
+ "Hint: The configured Etherpad host did not resolve. Check the hostname for typos and that DNS reaches it from this server.": "Hinweis: Der konfigurierte Etherpad-Host konnte nicht aufgelöst werden. Prüfe den Hostnamen auf Tippfehler und ob er von diesem Server per DNS aufgelöst werden kann.",
"Hint: Connection refused. Etherpad does not appear to be running on the configured host and port.": "Hinweis: Verbindung verweigert. Etherpad läuft anscheinend nicht auf dem konfigurierten Host und Port.",
"Hint: Connection timed out. Check that this server can reach the Etherpad host (firewall, network).": "Hinweis: Zeitüberschreitung bei der Verbindung. Prüfe, ob dieser Server den Etherpad-Host erreichen kann (Firewall, Netzwerk).",
"Hint: TLS handshake failed. Check the Etherpad certificate and that the configured URL uses the right scheme.": "Hinweis: TLS-Handshake fehlgeschlagen. Prüfe das Etherpad-Zertifikat und ob die konfigurierte URL das richtige Schema verwendet.",
@@ -85,9 +83,8 @@
"Cannot resolve selected .pad file.": "Ausgewählte .pad-Datei konnte nicht aufgelöst werden.",
"Cannot read selected .pad file.": "Ausgewählte .pad-Datei konnte nicht gelesen werden.",
"Cannot resolve file path for file ID.": "Dateipfad zur Datei-ID konnte nicht ermittelt werden.",
- "Pad file not found.": "Pad-Datei nicht gefunden.",
"A file with this name already exists.": "Eine Datei mit diesem Namen existiert bereits.",
- "Absolute https origins allowed to embed the /embed/by-id and /embed/create-by-parent routes. Leave empty to disable external embedding.": "Absolute https-Origins, die die Routen /embed/by-id und /embed/create-by-parent einbetten dürfen. Leer lassen, um externes Einbetten zu deaktivieren.",
+ "Absolute https origins allowed to embed the /embed/by-id and /embed/create-by-parent routes. Leave empty to disable external embedding.": "Absolute HTTPS-Origins, die die Routen /embed/by-id und /embed/create-by-parent einbetten dürfen. Leer lassen, um externes Einbetten zu deaktivieren.",
"Back": "Zurück",
"Cookie domain must be a hostname, not a URL.": "Cookie-Domain muss ein Hostname sein, keine URL.",
"Cookie domain must be a valid shared hostname.": "Cookie-Domain muss ein gültiger gemeinsamer Hostname sein.",
@@ -96,7 +93,7 @@
"Embed configuration is incomplete.": "Embed-Konfiguration ist unvollständig.",
"Failed to update test fault.": "Test-Fehler konnte nicht aktualisiert werden.",
"Invalid access mode.": "Ungültiger Zugriffsmodus.",
- "Invalid parent folder ID.": "Ungültige übergeordnete Ordner-ID.",
+ "Invalid parent folder ID.": "Ungültige Zielordner-ID.",
"Loading pad...": "Pad wird geladen...",
"No synced snapshot is stored in this .pad file yet.": "In dieser .pad-Datei ist noch kein synchronisierter Snapshot gespeichert.",
"Pad from another server": "Pad von einem anderen Server",
@@ -118,7 +115,10 @@
"Add trusted Etherpad hostnames or HTTPS origins. Leave empty only if all public HTTPS hosts should be trusted.": "Vertrauenswürdige Etherpad-Hostnamen oder HTTPS-Ursprünge eintragen. Nur leer lassen, wenn alle öffentlichen HTTPS-Hosts vertrauenswürdig sein sollen.",
"Hint: Set \"authenticationMethod\": \"apikey\" in Etherpad's settings.json.": "Hinweis: Setze in Etherpads settings.json \"authenticationMethod\": \"apikey\".",
"Could not create pad": "Pad konnte nicht erstellt werden",
- "Could not open pad": "Pad konnte nicht geöffnet werden"
+ "Could not open pad": "Pad konnte nicht geöffnet werden",
+ "Could not initialize .pad file.": ".pad-Datei konnte nicht initialisiert werden.",
+ "Could not resolve .pad file.": ".pad-Datei konnte nicht aufgelöst werden.",
+ ".pad file not found.": ".pad-Datei nicht gefunden."
},
"pluralForm": "nplurals=2; plural=(n != 1);"
}
diff --git a/l10n/de.php b/l10n/de.php
index d4e432e..b88a493 100644
--- a/l10n/de.php
+++ b/l10n/de.php
@@ -55,13 +55,11 @@
"We couldn't find a matching pad in this Nextcloud. You can create a new pad from the text stored in this file; from then on, opening this file will load the new pad." => "Wir konnten in dieser Nextcloud kein zugehöriges Pad finden. Du kannst aus dem in dieser Datei gespeicherten Text ein neues Pad erstellen; ab dann öffnet diese Datei das neue Pad.",
"Create new pad from this file" => "Neues Pad aus dieser Datei erstellen",
"Creating new pad..." => "Neues Pad wird erstellt ...",
- "Open the original .pad file" => "Originale .pad-Datei öffnen",
+ "Open the original .pad file" => "Ursprüngliche .pad-Datei öffnen",
"Could not create pad." => "Pad konnte nicht erstellt werden.",
"Could not import external pad." => "Externes Pad konnte nicht importiert werden.",
"Could not open pad." => "Pad konnte nicht geöffnet werden.",
- "Could not initialize pad file." => "Pad-Datei konnte nicht initialisiert werden.",
"Could not read pad metadata." => "Pad-Metadaten konnten nicht gelesen werden.",
- "Could not resolve pad file." => "Pad-Datei konnte nicht aufgelöst werden.",
"Could not sync pad content." => "Pad-Inhalt konnte nicht synchronisiert werden.",
"Could not check pad sync status." => "Synchronisierungsstatus des Pads konnte nicht ermittelt werden.",
"Could not move pad to trash." => "Pad konnte nicht in den Papierkorb verschoben werden.",
@@ -71,7 +69,7 @@
"Hint: Etherpad rejected the API key. Check that the key matches Etherpad's APIKEY.txt." => "Hinweis: Etherpad hat den API-Schlüssel abgelehnt. Prüfe, ob er mit Etherpads APIKEY.txt übereinstimmt.",
"Hint: API endpoint not found. Check the API host and that the configured API version is supported by your Etherpad." => "Hinweis: API-Endpunkt nicht gefunden. Prüfe den API-Host und ob die konfigurierte API-Version von deinem Etherpad unterstützt wird.",
"Hint: Etherpad returned a server error. Check the Etherpad server logs." => "Hinweis: Etherpad hat einen Server-Fehler zurückgegeben. Prüfe die Etherpad-Server-Logs.",
- "Hint: The configured Etherpad host did not resolve. Check the hostname for typos and that DNS reaches it from this server." => "Hinweis: Der konfigurierte Etherpad-Host konnte nicht aufgelöst werden. Prüfe den Hostnamen auf Tippfehler und dass DNS ihn von diesem Server erreicht.",
+ "Hint: The configured Etherpad host did not resolve. Check the hostname for typos and that DNS reaches it from this server." => "Hinweis: Der konfigurierte Etherpad-Host konnte nicht aufgelöst werden. Prüfe den Hostnamen auf Tippfehler und ob er von diesem Server per DNS aufgelöst werden kann.",
"Hint: Connection refused. Etherpad does not appear to be running on the configured host and port." => "Hinweis: Verbindung verweigert. Etherpad läuft anscheinend nicht auf dem konfigurierten Host und Port.",
"Hint: Connection timed out. Check that this server can reach the Etherpad host (firewall, network)." => "Hinweis: Zeitüberschreitung bei der Verbindung. Prüfe, ob dieser Server den Etherpad-Host erreichen kann (Firewall, Netzwerk).",
"Hint: TLS handshake failed. Check the Etherpad certificate and that the configured URL uses the right scheme." => "Hinweis: TLS-Handshake fehlgeschlagen. Prüfe das Etherpad-Zertifikat und ob die konfigurierte URL das richtige Schema verwendet.",
@@ -86,9 +84,8 @@
"Cannot resolve selected .pad file." => "Ausgewählte .pad-Datei konnte nicht aufgelöst werden.",
"Cannot read selected .pad file." => "Ausgewählte .pad-Datei konnte nicht gelesen werden.",
"Cannot resolve file path for file ID." => "Dateipfad zur Datei-ID konnte nicht ermittelt werden.",
- "Pad file not found." => "Pad-Datei nicht gefunden.",
"A file with this name already exists." => "Eine Datei mit diesem Namen existiert bereits.",
- "Absolute https origins allowed to embed the /embed/by-id and /embed/create-by-parent routes. Leave empty to disable external embedding." => "Absolute https-Origins, die die Routen /embed/by-id und /embed/create-by-parent einbetten dürfen. Leer lassen, um externes Einbetten zu deaktivieren.",
+ "Absolute https origins allowed to embed the /embed/by-id and /embed/create-by-parent routes. Leave empty to disable external embedding." => "Absolute HTTPS-Origins, die die Routen /embed/by-id und /embed/create-by-parent einbetten dürfen. Leer lassen, um externes Einbetten zu deaktivieren.",
"Back" => "Zurück",
"Cookie domain must be a hostname, not a URL." => "Cookie-Domain muss ein Hostname sein, keine URL.",
"Cookie domain must be a valid shared hostname." => "Cookie-Domain muss ein gültiger gemeinsamer Hostname sein.",
@@ -97,7 +94,7 @@
"Embed configuration is incomplete." => "Embed-Konfiguration ist unvollständig.",
"Failed to update test fault." => "Test-Fehler konnte nicht aktualisiert werden.",
"Invalid access mode." => "Ungültiger Zugriffsmodus.",
- "Invalid parent folder ID." => "Ungültige übergeordnete Ordner-ID.",
+ "Invalid parent folder ID." => "Ungültige Zielordner-ID.",
"Loading pad..." => "Pad wird geladen...",
"No synced snapshot is stored in this .pad file yet." => "In dieser .pad-Datei ist noch kein synchronisierter Snapshot gespeichert.",
"Pad from another server" => "Pad von einem anderen Server",
@@ -120,6 +117,9 @@
"Hint: Set \"authenticationMethod\": \"apikey\" in Etherpad's settings.json." => "Hinweis: Setze in Etherpads settings.json \"authenticationMethod\": \"apikey\".",
"Could not create pad" => "Pad konnte nicht erstellt werden",
"Could not open pad" => "Pad konnte nicht geöffnet werden",
+ "Could not initialize .pad file." => ".pad-Datei konnte nicht initialisiert werden.",
+ "Could not resolve .pad file." => ".pad-Datei konnte nicht aufgelöst werden.",
+ ".pad file not found." => ".pad-Datei nicht gefunden.",
];
$PLURAL_FORMS = "nplurals=2; plural=(n != 1);";
diff --git a/l10n/de_DE.js b/l10n/de_DE.js
index 8bacd0d..e9d8608 100644
--- a/l10n/de_DE.js
+++ b/l10n/de_DE.js
@@ -55,13 +55,11 @@ OC.L10N.register(
"We couldn't find a matching pad in this Nextcloud. You can create a new pad from the text stored in this file; from then on, opening this file will load the new pad.": "Wir konnten in dieser Nextcloud kein zugehöriges Pad finden. Du kannst aus dem in dieser Datei gespeicherten Text ein neues Pad erstellen; ab dann öffnet diese Datei das neue Pad.",
"Create new pad from this file": "Neues Pad aus dieser Datei erstellen",
"Creating new pad...": "Neues Pad wird erstellt ...",
- "Open the original .pad file": "Originale .pad-Datei öffnen",
+ "Open the original .pad file": "Ursprüngliche .pad-Datei öffnen",
"Could not create pad.": "Pad konnte nicht erstellt werden.",
"Could not import external pad.": "Externes Pad konnte nicht importiert werden.",
"Could not open pad.": "Pad konnte nicht geöffnet werden.",
- "Could not initialize pad file.": "Pad-Datei konnte nicht initialisiert werden.",
"Could not read pad metadata.": "Pad-Metadaten konnten nicht gelesen werden.",
- "Could not resolve pad file.": "Pad-Datei konnte nicht aufgelöst werden.",
"Could not sync pad content.": "Pad-Inhalt konnte nicht synchronisiert werden.",
"Could not check pad sync status.": "Synchronisierungsstatus des Pads konnte nicht ermittelt werden.",
"Could not move pad to trash.": "Pad konnte nicht in den Papierkorb verschoben werden.",
@@ -71,7 +69,7 @@ OC.L10N.register(
"Hint: Etherpad rejected the API key. Check that the key matches Etherpad's APIKEY.txt.": "Hinweis: Etherpad hat den API-Schlüssel abgelehnt. Prüfe, ob er mit Etherpads APIKEY.txt übereinstimmt.",
"Hint: API endpoint not found. Check the API host and that the configured API version is supported by your Etherpad.": "Hinweis: API-Endpunkt nicht gefunden. Prüfe den API-Host und ob die konfigurierte API-Version von deinem Etherpad unterstützt wird.",
"Hint: Etherpad returned a server error. Check the Etherpad server logs.": "Hinweis: Etherpad hat einen Server-Fehler zurückgegeben. Prüfe die Etherpad-Server-Logs.",
- "Hint: The configured Etherpad host did not resolve. Check the hostname for typos and that DNS reaches it from this server.": "Hinweis: Der konfigurierte Etherpad-Host konnte nicht aufgelöst werden. Prüfe den Hostnamen auf Tippfehler und dass DNS ihn von diesem Server erreicht.",
+ "Hint: The configured Etherpad host did not resolve. Check the hostname for typos and that DNS reaches it from this server.": "Hinweis: Der konfigurierte Etherpad-Host konnte nicht aufgelöst werden. Prüfe den Hostnamen auf Tippfehler und ob er von diesem Server per DNS aufgelöst werden kann.",
"Hint: Connection refused. Etherpad does not appear to be running on the configured host and port.": "Hinweis: Verbindung verweigert. Etherpad läuft anscheinend nicht auf dem konfigurierten Host und Port.",
"Hint: Connection timed out. Check that this server can reach the Etherpad host (firewall, network).": "Hinweis: Zeitüberschreitung bei der Verbindung. Prüfe, ob dieser Server den Etherpad-Host erreichen kann (Firewall, Netzwerk).",
"Hint: TLS handshake failed. Check the Etherpad certificate and that the configured URL uses the right scheme.": "Hinweis: TLS-Handshake fehlgeschlagen. Prüfe das Etherpad-Zertifikat und ob die konfigurierte URL das richtige Schema verwendet.",
@@ -86,9 +84,8 @@ OC.L10N.register(
"Cannot resolve selected .pad file.": "Ausgewählte .pad-Datei konnte nicht aufgelöst werden.",
"Cannot read selected .pad file.": "Ausgewählte .pad-Datei konnte nicht gelesen werden.",
"Cannot resolve file path for file ID.": "Dateipfad zur Datei-ID konnte nicht ermittelt werden.",
- "Pad file not found.": "Pad-Datei nicht gefunden.",
"A file with this name already exists.": "Eine Datei mit diesem Namen existiert bereits.",
- "Absolute https origins allowed to embed the /embed/by-id and /embed/create-by-parent routes. Leave empty to disable external embedding.": "Absolute https-Origins, die die Routen /embed/by-id und /embed/create-by-parent einbetten dürfen. Leer lassen, um externes Einbetten zu deaktivieren.",
+ "Absolute https origins allowed to embed the /embed/by-id and /embed/create-by-parent routes. Leave empty to disable external embedding.": "Absolute HTTPS-Origins, die die Routen /embed/by-id und /embed/create-by-parent einbetten dürfen. Leer lassen, um externes Einbetten zu deaktivieren.",
"Back": "Zurück",
"Cookie domain must be a hostname, not a URL.": "Cookie-Domain muss ein Hostname sein, keine URL.",
"Cookie domain must be a valid shared hostname.": "Cookie-Domain muss ein gültiger gemeinsamer Hostname sein.",
@@ -97,7 +94,7 @@ OC.L10N.register(
"Embed configuration is incomplete.": "Embed-Konfiguration ist unvollständig.",
"Failed to update test fault.": "Test-Fehler konnte nicht aktualisiert werden.",
"Invalid access mode.": "Ungültiger Zugriffsmodus.",
- "Invalid parent folder ID.": "Ungültige übergeordnete Ordner-ID.",
+ "Invalid parent folder ID.": "Ungültige Zielordner-ID.",
"Loading pad...": "Pad wird geladen...",
"No synced snapshot is stored in this .pad file yet.": "In dieser .pad-Datei ist noch kein synchronisierter Snapshot gespeichert.",
"Pad from another server": "Pad von einem anderen Server",
@@ -119,7 +116,10 @@ OC.L10N.register(
"Add trusted Etherpad hostnames or HTTPS origins. Leave empty only if all public HTTPS hosts should be trusted.": "Vertrauenswürdige Etherpad-Hostnamen oder HTTPS-Ursprünge eintragen. Nur leer lassen, wenn alle öffentlichen HTTPS-Hosts vertrauenswürdig sein sollen.",
"Hint: Set \"authenticationMethod\": \"apikey\" in Etherpad's settings.json.": "Hinweis: Setze in Etherpads settings.json \"authenticationMethod\": \"apikey\".",
"Could not create pad": "Pad konnte nicht erstellt werden",
- "Could not open pad": "Pad konnte nicht geöffnet werden"
+ "Could not open pad": "Pad konnte nicht geöffnet werden",
+ "Could not initialize .pad file.": ".pad-Datei konnte nicht initialisiert werden.",
+ "Could not resolve .pad file.": ".pad-Datei konnte nicht aufgelöst werden.",
+ ".pad file not found.": ".pad-Datei nicht gefunden."
},
"nplurals=2; plural=(n != 1);"
);
diff --git a/l10n/de_DE.json b/l10n/de_DE.json
index bdc59a1..62ce78e 100644
--- a/l10n/de_DE.json
+++ b/l10n/de_DE.json
@@ -54,13 +54,11 @@
"We couldn't find a matching pad in this Nextcloud. You can create a new pad from the text stored in this file; from then on, opening this file will load the new pad.": "Wir konnten in dieser Nextcloud kein zugehöriges Pad finden. Du kannst aus dem in dieser Datei gespeicherten Text ein neues Pad erstellen; ab dann öffnet diese Datei das neue Pad.",
"Create new pad from this file": "Neues Pad aus dieser Datei erstellen",
"Creating new pad...": "Neues Pad wird erstellt ...",
- "Open the original .pad file": "Originale .pad-Datei öffnen",
+ "Open the original .pad file": "Ursprüngliche .pad-Datei öffnen",
"Could not create pad.": "Pad konnte nicht erstellt werden.",
"Could not import external pad.": "Externes Pad konnte nicht importiert werden.",
"Could not open pad.": "Pad konnte nicht geöffnet werden.",
- "Could not initialize pad file.": "Pad-Datei konnte nicht initialisiert werden.",
"Could not read pad metadata.": "Pad-Metadaten konnten nicht gelesen werden.",
- "Could not resolve pad file.": "Pad-Datei konnte nicht aufgelöst werden.",
"Could not sync pad content.": "Pad-Inhalt konnte nicht synchronisiert werden.",
"Could not check pad sync status.": "Synchronisierungsstatus des Pads konnte nicht ermittelt werden.",
"Could not move pad to trash.": "Pad konnte nicht in den Papierkorb verschoben werden.",
@@ -70,7 +68,7 @@
"Hint: Etherpad rejected the API key. Check that the key matches Etherpad's APIKEY.txt.": "Hinweis: Etherpad hat den API-Schlüssel abgelehnt. Prüfe, ob er mit Etherpads APIKEY.txt übereinstimmt.",
"Hint: API endpoint not found. Check the API host and that the configured API version is supported by your Etherpad.": "Hinweis: API-Endpunkt nicht gefunden. Prüfe den API-Host und ob die konfigurierte API-Version von deinem Etherpad unterstützt wird.",
"Hint: Etherpad returned a server error. Check the Etherpad server logs.": "Hinweis: Etherpad hat einen Server-Fehler zurückgegeben. Prüfe die Etherpad-Server-Logs.",
- "Hint: The configured Etherpad host did not resolve. Check the hostname for typos and that DNS reaches it from this server.": "Hinweis: Der konfigurierte Etherpad-Host konnte nicht aufgelöst werden. Prüfe den Hostnamen auf Tippfehler und dass DNS ihn von diesem Server erreicht.",
+ "Hint: The configured Etherpad host did not resolve. Check the hostname for typos and that DNS reaches it from this server.": "Hinweis: Der konfigurierte Etherpad-Host konnte nicht aufgelöst werden. Prüfe den Hostnamen auf Tippfehler und ob er von diesem Server per DNS aufgelöst werden kann.",
"Hint: Connection refused. Etherpad does not appear to be running on the configured host and port.": "Hinweis: Verbindung verweigert. Etherpad läuft anscheinend nicht auf dem konfigurierten Host und Port.",
"Hint: Connection timed out. Check that this server can reach the Etherpad host (firewall, network).": "Hinweis: Zeitüberschreitung bei der Verbindung. Prüfe, ob dieser Server den Etherpad-Host erreichen kann (Firewall, Netzwerk).",
"Hint: TLS handshake failed. Check the Etherpad certificate and that the configured URL uses the right scheme.": "Hinweis: TLS-Handshake fehlgeschlagen. Prüfe das Etherpad-Zertifikat und ob die konfigurierte URL das richtige Schema verwendet.",
@@ -85,9 +83,8 @@
"Cannot resolve selected .pad file.": "Ausgewählte .pad-Datei konnte nicht aufgelöst werden.",
"Cannot read selected .pad file.": "Ausgewählte .pad-Datei konnte nicht gelesen werden.",
"Cannot resolve file path for file ID.": "Dateipfad zur Datei-ID konnte nicht ermittelt werden.",
- "Pad file not found.": "Pad-Datei nicht gefunden.",
"A file with this name already exists.": "Eine Datei mit diesem Namen existiert bereits.",
- "Absolute https origins allowed to embed the /embed/by-id and /embed/create-by-parent routes. Leave empty to disable external embedding.": "Absolute https-Origins, die die Routen /embed/by-id und /embed/create-by-parent einbetten dürfen. Leer lassen, um externes Einbetten zu deaktivieren.",
+ "Absolute https origins allowed to embed the /embed/by-id and /embed/create-by-parent routes. Leave empty to disable external embedding.": "Absolute HTTPS-Origins, die die Routen /embed/by-id und /embed/create-by-parent einbetten dürfen. Leer lassen, um externes Einbetten zu deaktivieren.",
"Back": "Zurück",
"Cookie domain must be a hostname, not a URL.": "Cookie-Domain muss ein Hostname sein, keine URL.",
"Cookie domain must be a valid shared hostname.": "Cookie-Domain muss ein gültiger gemeinsamer Hostname sein.",
@@ -96,7 +93,7 @@
"Embed configuration is incomplete.": "Embed-Konfiguration ist unvollständig.",
"Failed to update test fault.": "Test-Fehler konnte nicht aktualisiert werden.",
"Invalid access mode.": "Ungültiger Zugriffsmodus.",
- "Invalid parent folder ID.": "Ungültige übergeordnete Ordner-ID.",
+ "Invalid parent folder ID.": "Ungültige Zielordner-ID.",
"Loading pad...": "Pad wird geladen...",
"No synced snapshot is stored in this .pad file yet.": "In dieser .pad-Datei ist noch kein synchronisierter Snapshot gespeichert.",
"Pad from another server": "Pad von einem anderen Server",
@@ -118,7 +115,10 @@
"Add trusted Etherpad hostnames or HTTPS origins. Leave empty only if all public HTTPS hosts should be trusted.": "Vertrauenswürdige Etherpad-Hostnamen oder HTTPS-Ursprünge eintragen. Nur leer lassen, wenn alle öffentlichen HTTPS-Hosts vertrauenswürdig sein sollen.",
"Hint: Set \"authenticationMethod\": \"apikey\" in Etherpad's settings.json.": "Hinweis: Setze in Etherpads settings.json \"authenticationMethod\": \"apikey\".",
"Could not create pad": "Pad konnte nicht erstellt werden",
- "Could not open pad": "Pad konnte nicht geöffnet werden"
+ "Could not open pad": "Pad konnte nicht geöffnet werden",
+ "Could not initialize .pad file.": ".pad-Datei konnte nicht initialisiert werden.",
+ "Could not resolve .pad file.": ".pad-Datei konnte nicht aufgelöst werden.",
+ ".pad file not found.": ".pad-Datei nicht gefunden."
},
"pluralForm": "nplurals=2; plural=(n != 1);"
}
diff --git a/l10n/de_DE.php b/l10n/de_DE.php
index d4e432e..b88a493 100644
--- a/l10n/de_DE.php
+++ b/l10n/de_DE.php
@@ -55,13 +55,11 @@
"We couldn't find a matching pad in this Nextcloud. You can create a new pad from the text stored in this file; from then on, opening this file will load the new pad." => "Wir konnten in dieser Nextcloud kein zugehöriges Pad finden. Du kannst aus dem in dieser Datei gespeicherten Text ein neues Pad erstellen; ab dann öffnet diese Datei das neue Pad.",
"Create new pad from this file" => "Neues Pad aus dieser Datei erstellen",
"Creating new pad..." => "Neues Pad wird erstellt ...",
- "Open the original .pad file" => "Originale .pad-Datei öffnen",
+ "Open the original .pad file" => "Ursprüngliche .pad-Datei öffnen",
"Could not create pad." => "Pad konnte nicht erstellt werden.",
"Could not import external pad." => "Externes Pad konnte nicht importiert werden.",
"Could not open pad." => "Pad konnte nicht geöffnet werden.",
- "Could not initialize pad file." => "Pad-Datei konnte nicht initialisiert werden.",
"Could not read pad metadata." => "Pad-Metadaten konnten nicht gelesen werden.",
- "Could not resolve pad file." => "Pad-Datei konnte nicht aufgelöst werden.",
"Could not sync pad content." => "Pad-Inhalt konnte nicht synchronisiert werden.",
"Could not check pad sync status." => "Synchronisierungsstatus des Pads konnte nicht ermittelt werden.",
"Could not move pad to trash." => "Pad konnte nicht in den Papierkorb verschoben werden.",
@@ -71,7 +69,7 @@
"Hint: Etherpad rejected the API key. Check that the key matches Etherpad's APIKEY.txt." => "Hinweis: Etherpad hat den API-Schlüssel abgelehnt. Prüfe, ob er mit Etherpads APIKEY.txt übereinstimmt.",
"Hint: API endpoint not found. Check the API host and that the configured API version is supported by your Etherpad." => "Hinweis: API-Endpunkt nicht gefunden. Prüfe den API-Host und ob die konfigurierte API-Version von deinem Etherpad unterstützt wird.",
"Hint: Etherpad returned a server error. Check the Etherpad server logs." => "Hinweis: Etherpad hat einen Server-Fehler zurückgegeben. Prüfe die Etherpad-Server-Logs.",
- "Hint: The configured Etherpad host did not resolve. Check the hostname for typos and that DNS reaches it from this server." => "Hinweis: Der konfigurierte Etherpad-Host konnte nicht aufgelöst werden. Prüfe den Hostnamen auf Tippfehler und dass DNS ihn von diesem Server erreicht.",
+ "Hint: The configured Etherpad host did not resolve. Check the hostname for typos and that DNS reaches it from this server." => "Hinweis: Der konfigurierte Etherpad-Host konnte nicht aufgelöst werden. Prüfe den Hostnamen auf Tippfehler und ob er von diesem Server per DNS aufgelöst werden kann.",
"Hint: Connection refused. Etherpad does not appear to be running on the configured host and port." => "Hinweis: Verbindung verweigert. Etherpad läuft anscheinend nicht auf dem konfigurierten Host und Port.",
"Hint: Connection timed out. Check that this server can reach the Etherpad host (firewall, network)." => "Hinweis: Zeitüberschreitung bei der Verbindung. Prüfe, ob dieser Server den Etherpad-Host erreichen kann (Firewall, Netzwerk).",
"Hint: TLS handshake failed. Check the Etherpad certificate and that the configured URL uses the right scheme." => "Hinweis: TLS-Handshake fehlgeschlagen. Prüfe das Etherpad-Zertifikat und ob die konfigurierte URL das richtige Schema verwendet.",
@@ -86,9 +84,8 @@
"Cannot resolve selected .pad file." => "Ausgewählte .pad-Datei konnte nicht aufgelöst werden.",
"Cannot read selected .pad file." => "Ausgewählte .pad-Datei konnte nicht gelesen werden.",
"Cannot resolve file path for file ID." => "Dateipfad zur Datei-ID konnte nicht ermittelt werden.",
- "Pad file not found." => "Pad-Datei nicht gefunden.",
"A file with this name already exists." => "Eine Datei mit diesem Namen existiert bereits.",
- "Absolute https origins allowed to embed the /embed/by-id and /embed/create-by-parent routes. Leave empty to disable external embedding." => "Absolute https-Origins, die die Routen /embed/by-id und /embed/create-by-parent einbetten dürfen. Leer lassen, um externes Einbetten zu deaktivieren.",
+ "Absolute https origins allowed to embed the /embed/by-id and /embed/create-by-parent routes. Leave empty to disable external embedding." => "Absolute HTTPS-Origins, die die Routen /embed/by-id und /embed/create-by-parent einbetten dürfen. Leer lassen, um externes Einbetten zu deaktivieren.",
"Back" => "Zurück",
"Cookie domain must be a hostname, not a URL." => "Cookie-Domain muss ein Hostname sein, keine URL.",
"Cookie domain must be a valid shared hostname." => "Cookie-Domain muss ein gültiger gemeinsamer Hostname sein.",
@@ -97,7 +94,7 @@
"Embed configuration is incomplete." => "Embed-Konfiguration ist unvollständig.",
"Failed to update test fault." => "Test-Fehler konnte nicht aktualisiert werden.",
"Invalid access mode." => "Ungültiger Zugriffsmodus.",
- "Invalid parent folder ID." => "Ungültige übergeordnete Ordner-ID.",
+ "Invalid parent folder ID." => "Ungültige Zielordner-ID.",
"Loading pad..." => "Pad wird geladen...",
"No synced snapshot is stored in this .pad file yet." => "In dieser .pad-Datei ist noch kein synchronisierter Snapshot gespeichert.",
"Pad from another server" => "Pad von einem anderen Server",
@@ -120,6 +117,9 @@
"Hint: Set \"authenticationMethod\": \"apikey\" in Etherpad's settings.json." => "Hinweis: Setze in Etherpads settings.json \"authenticationMethod\": \"apikey\".",
"Could not create pad" => "Pad konnte nicht erstellt werden",
"Could not open pad" => "Pad konnte nicht geöffnet werden",
+ "Could not initialize .pad file." => ".pad-Datei konnte nicht initialisiert werden.",
+ "Could not resolve .pad file." => ".pad-Datei konnte nicht aufgelöst werden.",
+ ".pad file not found." => ".pad-Datei nicht gefunden.",
];
$PLURAL_FORMS = "nplurals=2; plural=(n != 1);";
diff --git a/l10n/es.js b/l10n/es.js
index 0959401..c79dcf9 100644
--- a/l10n/es.js
+++ b/l10n/es.js
@@ -64,13 +64,11 @@ OC.L10N.register(
"Could not create pad from template.": "No se pudo crear el pad desde la plantilla.",
"Could not create pad.": "No se pudo crear el pad.",
"Could not import external pad.": "No se pudo importar el pad externo.",
- "Could not initialize pad file.": "No se pudo inicializar el archivo de pad.",
"Could not look up the original pad.": "No se pudo localizar el pad original.",
"Could not move pad to trash.": "No se pudo mover el pad a la papelera.",
"Could not open pad.": "No se pudo abrir el pad.",
"Could not read pad metadata.": "No se pudieron leer los metadatos del pad.",
"Could not recover pad from this file.": "No se pudo recuperar el pad de este archivo.",
- "Could not resolve pad file.": "No se pudo resolver el archivo de pad.",
"Could not restore pad from trash.": "No se pudo restaurar el pad de la papelera.",
"Could not sync pad content.": "No se pudo sincronizar el contenido del pad.",
"Create new pad from this file": "Crear nuevo pad a partir de este archivo",
@@ -96,7 +94,6 @@ OC.L10N.register(
"Loading pad...": "Cargando pad...",
"No synced snapshot is stored in this .pad file yet.": "Aún no hay una instantánea sincronizada almacenada en este archivo .pad.",
"Open the original .pad file": "Abrir el archivo .pad original",
- "Pad file not found.": "Archivo de pad no encontrado.",
"Pad from another server": "Pad de otro servidor",
"Pad name is required.": "Se requiere el nombre del pad.",
"Read-only snapshot": "Instantánea de solo lectura",
@@ -119,7 +116,10 @@ OC.L10N.register(
"Add trusted Etherpad hostnames or HTTPS origins. Leave empty only if all public HTTPS hosts should be trusted.": "Agrega nombres de host de Etherpad u orígenes HTTPS de confianza. Déjalo vacío solo si se debe confiar en todos los hosts HTTPS públicos.",
"Hint: Set \"authenticationMethod\": \"apikey\" in Etherpad's settings.json.": "Sugerencia: establece \"authenticationMethod\": \"apikey\" en settings.json de Etherpad.",
"Could not create pad": "No se pudo crear el pad",
- "Could not open pad": "No se pudo abrir el pad"
+ "Could not open pad": "No se pudo abrir el pad",
+ "Could not initialize .pad file.": "No se ha podido inicializar el archivo .pad.",
+ "Could not resolve .pad file.": "No se ha podido resolver el archivo .pad.",
+ ".pad file not found.": "No se ha encontrado el archivo .pad."
},
"nplurals=2; plural=(n != 1);"
);
diff --git a/l10n/es.json b/l10n/es.json
index d35f744..a96da3c 100644
--- a/l10n/es.json
+++ b/l10n/es.json
@@ -63,13 +63,11 @@
"Could not create pad from template.": "No se pudo crear el pad desde la plantilla.",
"Could not create pad.": "No se pudo crear el pad.",
"Could not import external pad.": "No se pudo importar el pad externo.",
- "Could not initialize pad file.": "No se pudo inicializar el archivo de pad.",
"Could not look up the original pad.": "No se pudo localizar el pad original.",
"Could not move pad to trash.": "No se pudo mover el pad a la papelera.",
"Could not open pad.": "No se pudo abrir el pad.",
"Could not read pad metadata.": "No se pudieron leer los metadatos del pad.",
"Could not recover pad from this file.": "No se pudo recuperar el pad de este archivo.",
- "Could not resolve pad file.": "No se pudo resolver el archivo de pad.",
"Could not restore pad from trash.": "No se pudo restaurar el pad de la papelera.",
"Could not sync pad content.": "No se pudo sincronizar el contenido del pad.",
"Create new pad from this file": "Crear nuevo pad a partir de este archivo",
@@ -95,7 +93,6 @@
"Loading pad...": "Cargando pad...",
"No synced snapshot is stored in this .pad file yet.": "Aún no hay una instantánea sincronizada almacenada en este archivo .pad.",
"Open the original .pad file": "Abrir el archivo .pad original",
- "Pad file not found.": "Archivo de pad no encontrado.",
"Pad from another server": "Pad de otro servidor",
"Pad name is required.": "Se requiere el nombre del pad.",
"Read-only snapshot": "Instantánea de solo lectura",
@@ -118,7 +115,10 @@
"Add trusted Etherpad hostnames or HTTPS origins. Leave empty only if all public HTTPS hosts should be trusted.": "Agrega nombres de host de Etherpad u orígenes HTTPS de confianza. Déjalo vacío solo si se debe confiar en todos los hosts HTTPS públicos.",
"Hint: Set \"authenticationMethod\": \"apikey\" in Etherpad's settings.json.": "Sugerencia: establece \"authenticationMethod\": \"apikey\" en settings.json de Etherpad.",
"Could not create pad": "No se pudo crear el pad",
- "Could not open pad": "No se pudo abrir el pad"
+ "Could not open pad": "No se pudo abrir el pad",
+ "Could not initialize .pad file.": "No se ha podido inicializar el archivo .pad.",
+ "Could not resolve .pad file.": "No se ha podido resolver el archivo .pad.",
+ ".pad file not found.": "No se ha encontrado el archivo .pad."
},
"pluralForm": "nplurals=2; plural=(n != 1);"
}
diff --git a/l10n/es.php b/l10n/es.php
index 1780b62..2e0fdc7 100644
--- a/l10n/es.php
+++ b/l10n/es.php
@@ -64,13 +64,11 @@
"Could not create pad from template." => "No se pudo crear el pad desde la plantilla.",
"Could not create pad." => "No se pudo crear el pad.",
"Could not import external pad." => "No se pudo importar el pad externo.",
- "Could not initialize pad file." => "No se pudo inicializar el archivo de pad.",
"Could not look up the original pad." => "No se pudo localizar el pad original.",
"Could not move pad to trash." => "No se pudo mover el pad a la papelera.",
"Could not open pad." => "No se pudo abrir el pad.",
"Could not read pad metadata." => "No se pudieron leer los metadatos del pad.",
"Could not recover pad from this file." => "No se pudo recuperar el pad de este archivo.",
- "Could not resolve pad file." => "No se pudo resolver el archivo de pad.",
"Could not restore pad from trash." => "No se pudo restaurar el pad de la papelera.",
"Could not sync pad content." => "No se pudo sincronizar el contenido del pad.",
"Create new pad from this file" => "Crear nuevo pad a partir de este archivo",
@@ -96,7 +94,6 @@
"Loading pad..." => "Cargando pad...",
"No synced snapshot is stored in this .pad file yet." => "Aún no hay una instantánea sincronizada almacenada en este archivo .pad.",
"Open the original .pad file" => "Abrir el archivo .pad original",
- "Pad file not found." => "Archivo de pad no encontrado.",
"Pad from another server" => "Pad de otro servidor",
"Pad name is required." => "Se requiere el nombre del pad.",
"Read-only snapshot" => "Instantánea de solo lectura",
@@ -120,6 +117,9 @@
"Hint: Set \"authenticationMethod\": \"apikey\" in Etherpad's settings.json." => "Sugerencia: establece \"authenticationMethod\": \"apikey\" en settings.json de Etherpad.",
"Could not create pad" => "No se pudo crear el pad",
"Could not open pad" => "No se pudo abrir el pad",
+ "Could not initialize .pad file." => "No se ha podido inicializar el archivo .pad.",
+ "Could not resolve .pad file." => "No se ha podido resolver el archivo .pad.",
+ ".pad file not found." => "No se ha encontrado el archivo .pad.",
];
$PLURAL_FORMS = "nplurals=2; plural=(n != 1);";
diff --git a/l10n/fr.js b/l10n/fr.js
index 22f47c9..cba86d2 100644
--- a/l10n/fr.js
+++ b/l10n/fr.js
@@ -64,13 +64,11 @@ OC.L10N.register(
"Could not create pad from template.": "Impossible de créer le pad à partir du modèle.",
"Could not create pad.": "Impossible de créer le pad.",
"Could not import external pad.": "Impossible d'importer le pad externe.",
- "Could not initialize pad file.": "Impossible d'initialiser le fichier pad.",
"Could not look up the original pad.": "Impossible de retrouver le pad original.",
"Could not move pad to trash.": "Impossible de déplacer le pad vers la corbeille.",
"Could not open pad.": "Impossible d'ouvrir le pad.",
"Could not read pad metadata.": "Impossible de lire les métadonnées du pad.",
"Could not recover pad from this file.": "Impossible de récupérer le pad depuis ce fichier.",
- "Could not resolve pad file.": "Impossible de résoudre le fichier pad.",
"Could not restore pad from trash.": "Impossible de restaurer le pad depuis la corbeille.",
"Could not sync pad content.": "Impossible de synchroniser le contenu du pad.",
"Create new pad from this file": "Créer un nouveau pad à partir de ce fichier",
@@ -96,7 +94,6 @@ OC.L10N.register(
"Loading pad...": "Chargement du pad...",
"No synced snapshot is stored in this .pad file yet.": "Aucun instantané synchronisé n'est encore stocké dans ce fichier .pad.",
"Open the original .pad file": "Ouvrir le fichier .pad original",
- "Pad file not found.": "Fichier pad introuvable.",
"Pad from another server": "Pad d'un autre serveur",
"Pad name is required.": "Le nom du pad est obligatoire.",
"Read-only snapshot": "Instantané en lecture seule",
@@ -119,7 +116,10 @@ OC.L10N.register(
"Add trusted Etherpad hostnames or HTTPS origins. Leave empty only if all public HTTPS hosts should be trusted.": "Ajoutez des noms d'hôte Etherpad ou des origines HTTPS de confiance. Ne laissez vide que si tous les hôtes HTTPS publics doivent être considérés comme de confiance.",
"Hint: Set \"authenticationMethod\": \"apikey\" in Etherpad's settings.json.": "Indice : définissez \"authenticationMethod\": \"apikey\" dans le fichier settings.json d'Etherpad.",
"Could not create pad": "Impossible de créer le pad",
- "Could not open pad": "Impossible d'ouvrir le pad"
+ "Could not open pad": "Impossible d'ouvrir le pad",
+ "Could not initialize .pad file.": "Impossible d'initialiser le fichier .pad.",
+ "Could not resolve .pad file.": "Impossible de résoudre le fichier .pad.",
+ ".pad file not found.": "Fichier .pad introuvable."
},
"nplurals=2; plural=(n > 1);"
);
diff --git a/l10n/fr.json b/l10n/fr.json
index 4c4affe..baadf4b 100644
--- a/l10n/fr.json
+++ b/l10n/fr.json
@@ -63,13 +63,11 @@
"Could not create pad from template.": "Impossible de créer le pad à partir du modèle.",
"Could not create pad.": "Impossible de créer le pad.",
"Could not import external pad.": "Impossible d'importer le pad externe.",
- "Could not initialize pad file.": "Impossible d'initialiser le fichier pad.",
"Could not look up the original pad.": "Impossible de retrouver le pad original.",
"Could not move pad to trash.": "Impossible de déplacer le pad vers la corbeille.",
"Could not open pad.": "Impossible d'ouvrir le pad.",
"Could not read pad metadata.": "Impossible de lire les métadonnées du pad.",
"Could not recover pad from this file.": "Impossible de récupérer le pad depuis ce fichier.",
- "Could not resolve pad file.": "Impossible de résoudre le fichier pad.",
"Could not restore pad from trash.": "Impossible de restaurer le pad depuis la corbeille.",
"Could not sync pad content.": "Impossible de synchroniser le contenu du pad.",
"Create new pad from this file": "Créer un nouveau pad à partir de ce fichier",
@@ -95,7 +93,6 @@
"Loading pad...": "Chargement du pad...",
"No synced snapshot is stored in this .pad file yet.": "Aucun instantané synchronisé n'est encore stocké dans ce fichier .pad.",
"Open the original .pad file": "Ouvrir le fichier .pad original",
- "Pad file not found.": "Fichier pad introuvable.",
"Pad from another server": "Pad d'un autre serveur",
"Pad name is required.": "Le nom du pad est obligatoire.",
"Read-only snapshot": "Instantané en lecture seule",
@@ -118,7 +115,10 @@
"Add trusted Etherpad hostnames or HTTPS origins. Leave empty only if all public HTTPS hosts should be trusted.": "Ajoutez des noms d'hôte Etherpad ou des origines HTTPS de confiance. Ne laissez vide que si tous les hôtes HTTPS publics doivent être considérés comme de confiance.",
"Hint: Set \"authenticationMethod\": \"apikey\" in Etherpad's settings.json.": "Indice : définissez \"authenticationMethod\": \"apikey\" dans le fichier settings.json d'Etherpad.",
"Could not create pad": "Impossible de créer le pad",
- "Could not open pad": "Impossible d'ouvrir le pad"
+ "Could not open pad": "Impossible d'ouvrir le pad",
+ "Could not initialize .pad file.": "Impossible d'initialiser le fichier .pad.",
+ "Could not resolve .pad file.": "Impossible de résoudre le fichier .pad.",
+ ".pad file not found.": "Fichier .pad introuvable."
},
"pluralForm": "nplurals=2; plural=(n > 1);"
}
diff --git a/l10n/fr.php b/l10n/fr.php
index 38f0f96..17a6915 100644
--- a/l10n/fr.php
+++ b/l10n/fr.php
@@ -64,13 +64,11 @@
"Could not create pad from template." => "Impossible de créer le pad à partir du modèle.",
"Could not create pad." => "Impossible de créer le pad.",
"Could not import external pad." => "Impossible d'importer le pad externe.",
- "Could not initialize pad file." => "Impossible d'initialiser le fichier pad.",
"Could not look up the original pad." => "Impossible de retrouver le pad original.",
"Could not move pad to trash." => "Impossible de déplacer le pad vers la corbeille.",
"Could not open pad." => "Impossible d'ouvrir le pad.",
"Could not read pad metadata." => "Impossible de lire les métadonnées du pad.",
"Could not recover pad from this file." => "Impossible de récupérer le pad depuis ce fichier.",
- "Could not resolve pad file." => "Impossible de résoudre le fichier pad.",
"Could not restore pad from trash." => "Impossible de restaurer le pad depuis la corbeille.",
"Could not sync pad content." => "Impossible de synchroniser le contenu du pad.",
"Create new pad from this file" => "Créer un nouveau pad à partir de ce fichier",
@@ -96,7 +94,6 @@
"Loading pad..." => "Chargement du pad...",
"No synced snapshot is stored in this .pad file yet." => "Aucun instantané synchronisé n'est encore stocké dans ce fichier .pad.",
"Open the original .pad file" => "Ouvrir le fichier .pad original",
- "Pad file not found." => "Fichier pad introuvable.",
"Pad from another server" => "Pad d'un autre serveur",
"Pad name is required." => "Le nom du pad est obligatoire.",
"Read-only snapshot" => "Instantané en lecture seule",
@@ -120,6 +117,9 @@
"Hint: Set \"authenticationMethod\": \"apikey\" in Etherpad's settings.json." => "Indice : définissez \"authenticationMethod\": \"apikey\" dans le fichier settings.json d'Etherpad.",
"Could not create pad" => "Impossible de créer le pad",
"Could not open pad" => "Impossible d'ouvrir le pad",
+ "Could not initialize .pad file." => "Impossible d'initialiser le fichier .pad.",
+ "Could not resolve .pad file." => "Impossible de résoudre le fichier .pad.",
+ ".pad file not found." => "Fichier .pad introuvable.",
];
$PLURAL_FORMS = "nplurals=2; plural=(n > 1);";
diff --git a/lib/Controller/PadLifecycleController.php b/lib/Controller/PadLifecycleController.php
index 3a1f239..dea34b5 100644
--- a/lib/Controller/PadLifecycleController.php
+++ b/lib/Controller/PadLifecycleController.php
@@ -51,7 +51,7 @@ public function trash(string $file): DataResponse {
fn(array $result): DataResponse => $this->padResponses->lifecycleResponse($result),
[
'invalid_argument' => $this->l10n->t('Invalid file path.'),
- 'not_found' => $this->l10n->t('Pad file not found.'),
+ 'not_found' => $this->l10n->t('.pad file not found.'),
'generic' => $this->l10n->t('Could not move pad to trash.'),
'on_throwable' => fn(\Throwable $e) => $this->logError('Pad trash API failed', [
'file' => $file,
@@ -68,7 +68,7 @@ public function restore(string $file): DataResponse {
fn(array $result): DataResponse => $this->padResponses->lifecycleResponse($result),
[
'invalid_argument' => $this->l10n->t('Invalid file path.'),
- 'not_found' => $this->l10n->t('Pad file not found.'),
+ 'not_found' => $this->l10n->t('.pad file not found.'),
'generic' => $this->l10n->t('Could not restore pad from trash.'),
'on_throwable' => fn(\Throwable $e) => $this->logError('Pad restore API failed', [
'file' => $file,
@@ -84,7 +84,7 @@ public function recoverByFileId(int $fileId): DataResponse {
fn(IUser $user): array => $this->lifecycleService->recoverByFileId($user->getUID(), $this->requireFileId($fileId)),
fn(array $result): DataResponse => $this->padResponses->lifecycleResponse($result),
[
- 'not_found' => $this->l10n->t('Pad file not found.'),
+ 'not_found' => $this->l10n->t('.pad file not found.'),
'generic' => $this->l10n->t('Could not recover pad from this file.'),
'on_throwable' => fn(\Throwable $e) => $this->logError('Pad recovery API failed', [
'fileId' => $fileId,
diff --git a/lib/Controller/PadSessionController.php b/lib/Controller/PadSessionController.php
index 3d62673..f08eb04 100644
--- a/lib/Controller/PadSessionController.php
+++ b/lib/Controller/PadSessionController.php
@@ -79,7 +79,7 @@ public function initialize(string $file): DataResponse {
[
'invalid_argument' => $this->l10n->t('Invalid file path.'),
'not_found' => $this->l10n->t('Cannot open selected .pad file.'),
- 'generic' => $this->l10n->t('Could not initialize pad file.'),
+ 'generic' => $this->l10n->t('Could not initialize .pad file.'),
'on_throwable' => fn(\Throwable $e) => $this->logError('Pad frontmatter initialization failed in API initialize', [
'file' => $file,
'exception' => $e,
@@ -95,7 +95,7 @@ public function initializeById(int $fileId): DataResponse {
fn(PadInitializationResult $result): DataResponse => new DataResponse($this->padResponses->initializationResponse($result)),
[
'not_found' => $this->l10n->t('Cannot open selected .pad file.'),
- 'generic' => $this->l10n->t('Could not initialize pad file.'),
+ 'generic' => $this->l10n->t('Could not initialize .pad file.'),
'on_throwable' => fn(\Throwable $e) => $this->logError('Pad frontmatter initialization failed in API initialize-by-id', [
'fileId' => $fileId,
'exception' => $e,
@@ -125,7 +125,7 @@ public function resolveById(int $fileId = 0, string $file = ''): DataResponse {
fn(PadResolution $resolution): DataResponse => new DataResponse($this->padResponses->resolveResponse($resolution)),
[
'invalid_argument' => $this->l10n->t('Invalid file path.'),
- 'generic' => $this->l10n->t('Could not resolve pad file.'),
+ 'generic' => $this->l10n->t('Could not resolve .pad file.'),
],
);
}
diff --git a/tests/phpunit/unit/PadSessionControllerTest.php b/tests/phpunit/unit/PadSessionControllerTest.php
index e79b427..e3eeded 100644
--- a/tests/phpunit/unit/PadSessionControllerTest.php
+++ b/tests/phpunit/unit/PadSessionControllerTest.php
@@ -325,7 +325,7 @@ public function testResolveByIdReturnsGenericServerErrorForUnexpectedFailures():
$response = $controller->resolveById(138);
$this->assertSame(Http::STATUS_INTERNAL_SERVER_ERROR, $response->getStatus());
- $this->assertSame('Could not resolve pad file.', $response->getData()['message']);
+ $this->assertSame('Could not resolve .pad file.', $response->getData()['message']);
}
private function buildController(
From aaa94959e944ef08d3fa9eb474311580d0d6501d Mon Sep 17 00:00:00 2001
From: Jaggob <37583151+Jaggob@users.noreply.github.com>
Date: Tue, 26 May 2026 19:21:19 +0200
Subject: [PATCH 04/13] i18n: rename Health check -> Etherpad connection test,
snapshot -> copy
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
- Rename "Health check" source strings to "Test Etherpad connection"
family (button label, running, success, failed, failed-with-detail)
so the user-visible wording matches what's actually tested.
- Snapshot -> "Kopie" / "copia" / "copie" across DE/ES/FR for a more
user-friendly term (already aligned with "fork the content" copy).
- ES/FR admin-screen polish: drop stray "públicos/publics", fix
accents, spell out "cadena de consulta" / "chaîne de requête"
instead of literal "query", and rephrase the external-host
allowlist label.
---
l10n/de.js | 18 ++++++------
l10n/de.json | 18 ++++++------
l10n/de.php | 16 +++++------
l10n/de_DE.js | 18 ++++++------
l10n/de_DE.json | 18 ++++++------
l10n/de_DE.php | 16 +++++------
l10n/es.js | 28 +++++++++----------
l10n/es.json | 28 +++++++++----------
l10n/es.php | 26 ++++++++---------
l10n/fr.js | 28 +++++++++----------
l10n/fr.json | 28 +++++++++----------
l10n/fr.php | 26 ++++++++---------
lib/Controller/AdminController.php | 4 +--
lib/Service/EtherpadHealthCheckService.php | 2 +-
lib/Settings/AdminSettings.php | 8 +++---
src/admin-settings.js | 6 ++--
.../unit/AdminControllerErrorMapperTest.php | 4 +--
.../unit/EtherpadHealthCheckServiceTest.php | 2 +-
18 files changed, 147 insertions(+), 147 deletions(-)
diff --git a/l10n/de.js b/l10n/de.js
index e9d8608..449ebab 100644
--- a/l10n/de.js
+++ b/l10n/de.js
@@ -14,20 +14,15 @@ OC.L10N.register(
"Allow linking external public pads": "Verlinken externer öffentlicher Pads erlauben",
"External host allowlist (optional)": "Allowlist externer Hosts (optional)",
"Save settings": "Einstellungen speichern",
- "Health check": "Verbindungsprüfung",
"Consistency check": "Konsistenzprüfung",
"Pending Etherpad deletes": "Ausstehende Etherpad-Löschungen",
"Saving settings...": "Einstellungen werden gespeichert...",
"Settings saved.": "Einstellungen gespeichert.",
- "Running health check...": "Verbindungsprüfung läuft...",
"Running consistency check...": "Konsistenzprüfung läuft...",
- "Health check successful.": "Verbindungsprüfung erfolgreich.",
"Consistency check successful.": "Konsistenzprüfung erfolgreich.",
"Consistency check successful. No issues found.": "Konsistenzprüfung erfolgreich. Keine Probleme gefunden.",
"Consistency check finished with issues.": "Konsistenzprüfung mit Problemen abgeschlossen.",
"Request failed.": "Anfrage fehlgeschlagen.",
- "Health check failed.": "Verbindungsprüfung fehlgeschlagen.",
- "Health check failed: {detail}": "Verbindungsprüfung fehlgeschlagen: {detail}",
"Consistency check failed.": "Konsistenzprüfung fehlgeschlagen.",
"Etherpad API key is required.": "Ein Etherpad-API-Schlüssel ist erforderlich.",
"Etherpad Base URL is required.": "Eine Etherpad-Basis-URL ist erforderlich.",
@@ -96,11 +91,11 @@ OC.L10N.register(
"Invalid access mode.": "Ungültiger Zugriffsmodus.",
"Invalid parent folder ID.": "Ungültige Zielordner-ID.",
"Loading pad...": "Pad wird geladen...",
- "No synced snapshot is stored in this .pad file yet.": "In dieser .pad-Datei ist noch kein synchronisierter Snapshot gespeichert.",
+ "No synced snapshot is stored in this .pad file yet.": "In dieser .pad-Datei ist noch keine synchronisierte Kopie gespeichert.",
"Pad from another server": "Pad von einem anderen Server",
"Pad name is required.": "Pad-Name ist erforderlich.",
- "Read-only snapshot": "Schreibgeschützter Snapshot",
- "Read-only snapshot from the .pad file.": "Schreibgeschützter Snapshot aus der .pad-Datei.",
+ "Read-only snapshot": "Schreibgeschützte Kopie",
+ "Read-only snapshot from the .pad file.": "Schreibgeschützte Kopie aus der .pad-Datei.",
"Selected file is not a .pad file.": "Ausgewählte Datei ist keine .pad-Datei.",
"Selected parent folder is not writable.": "Ausgewählter Zielordner ist nicht beschreibbar.",
"Template file not found.": "Vorlagendatei nicht gefunden.",
@@ -119,7 +114,12 @@ OC.L10N.register(
"Could not open pad": "Pad konnte nicht geöffnet werden",
"Could not initialize .pad file.": ".pad-Datei konnte nicht initialisiert werden.",
"Could not resolve .pad file.": ".pad-Datei konnte nicht aufgelöst werden.",
- ".pad file not found.": ".pad-Datei nicht gefunden."
+ ".pad file not found.": ".pad-Datei nicht gefunden.",
+ "Test Etherpad connection": "Etherpad-Verbindung testen",
+ "Testing Etherpad connection...": "Etherpad-Verbindung wird geprüft...",
+ "Etherpad connection test successful.": "Etherpad-Verbindung erfolgreich geprüft.",
+ "Etherpad connection test failed.": "Etherpad-Verbindung konnte nicht geprüft werden.",
+ "Etherpad connection test failed: {detail}": "Etherpad-Verbindung konnte nicht geprüft werden: {detail}"
},
"nplurals=2; plural=(n != 1);"
);
diff --git a/l10n/de.json b/l10n/de.json
index 62ce78e..091329a 100644
--- a/l10n/de.json
+++ b/l10n/de.json
@@ -13,20 +13,15 @@
"Allow linking external public pads": "Verlinken externer öffentlicher Pads erlauben",
"External host allowlist (optional)": "Allowlist externer Hosts (optional)",
"Save settings": "Einstellungen speichern",
- "Health check": "Verbindungsprüfung",
"Consistency check": "Konsistenzprüfung",
"Pending Etherpad deletes": "Ausstehende Etherpad-Löschungen",
"Saving settings...": "Einstellungen werden gespeichert...",
"Settings saved.": "Einstellungen gespeichert.",
- "Running health check...": "Verbindungsprüfung läuft...",
"Running consistency check...": "Konsistenzprüfung läuft...",
- "Health check successful.": "Verbindungsprüfung erfolgreich.",
"Consistency check successful.": "Konsistenzprüfung erfolgreich.",
"Consistency check successful. No issues found.": "Konsistenzprüfung erfolgreich. Keine Probleme gefunden.",
"Consistency check finished with issues.": "Konsistenzprüfung mit Problemen abgeschlossen.",
"Request failed.": "Anfrage fehlgeschlagen.",
- "Health check failed.": "Verbindungsprüfung fehlgeschlagen.",
- "Health check failed: {detail}": "Verbindungsprüfung fehlgeschlagen: {detail}",
"Consistency check failed.": "Konsistenzprüfung fehlgeschlagen.",
"Etherpad API key is required.": "Ein Etherpad-API-Schlüssel ist erforderlich.",
"Etherpad Base URL is required.": "Eine Etherpad-Basis-URL ist erforderlich.",
@@ -95,11 +90,11 @@
"Invalid access mode.": "Ungültiger Zugriffsmodus.",
"Invalid parent folder ID.": "Ungültige Zielordner-ID.",
"Loading pad...": "Pad wird geladen...",
- "No synced snapshot is stored in this .pad file yet.": "In dieser .pad-Datei ist noch kein synchronisierter Snapshot gespeichert.",
+ "No synced snapshot is stored in this .pad file yet.": "In dieser .pad-Datei ist noch keine synchronisierte Kopie gespeichert.",
"Pad from another server": "Pad von einem anderen Server",
"Pad name is required.": "Pad-Name ist erforderlich.",
- "Read-only snapshot": "Schreibgeschützter Snapshot",
- "Read-only snapshot from the .pad file.": "Schreibgeschützter Snapshot aus der .pad-Datei.",
+ "Read-only snapshot": "Schreibgeschützte Kopie",
+ "Read-only snapshot from the .pad file.": "Schreibgeschützte Kopie aus der .pad-Datei.",
"Selected file is not a .pad file.": "Ausgewählte Datei ist keine .pad-Datei.",
"Selected parent folder is not writable.": "Ausgewählter Zielordner ist nicht beschreibbar.",
"Template file not found.": "Vorlagendatei nicht gefunden.",
@@ -118,7 +113,12 @@
"Could not open pad": "Pad konnte nicht geöffnet werden",
"Could not initialize .pad file.": ".pad-Datei konnte nicht initialisiert werden.",
"Could not resolve .pad file.": ".pad-Datei konnte nicht aufgelöst werden.",
- ".pad file not found.": ".pad-Datei nicht gefunden."
+ ".pad file not found.": ".pad-Datei nicht gefunden.",
+ "Test Etherpad connection": "Etherpad-Verbindung testen",
+ "Testing Etherpad connection...": "Etherpad-Verbindung wird geprüft...",
+ "Etherpad connection test successful.": "Etherpad-Verbindung erfolgreich geprüft.",
+ "Etherpad connection test failed.": "Etherpad-Verbindung konnte nicht geprüft werden.",
+ "Etherpad connection test failed: {detail}": "Etherpad-Verbindung konnte nicht geprüft werden: {detail}"
},
"pluralForm": "nplurals=2; plural=(n != 1);"
}
diff --git a/l10n/de.php b/l10n/de.php
index b88a493..aba35e6 100644
--- a/l10n/de.php
+++ b/l10n/de.php
@@ -14,20 +14,15 @@
"Allow linking external public pads" => "Verlinken externer öffentlicher Pads erlauben",
"External host allowlist (optional)" => "Allowlist externer Hosts (optional)",
"Save settings" => "Einstellungen speichern",
- "Health check" => "Verbindungsprüfung",
"Consistency check" => "Konsistenzprüfung",
"Pending Etherpad deletes" => "Ausstehende Etherpad-Löschungen",
"Saving settings..." => "Einstellungen werden gespeichert...",
"Settings saved." => "Einstellungen gespeichert.",
- "Running health check..." => "Verbindungsprüfung läuft...",
"Running consistency check..." => "Konsistenzprüfung läuft...",
- "Health check successful." => "Verbindungsprüfung erfolgreich.",
"Consistency check successful." => "Konsistenzprüfung erfolgreich.",
"Consistency check successful. No issues found." => "Konsistenzprüfung erfolgreich. Keine Probleme gefunden.",
"Consistency check finished with issues." => "Konsistenzprüfung mit Problemen abgeschlossen.",
"Request failed." => "Anfrage fehlgeschlagen.",
- "Health check failed." => "Verbindungsprüfung fehlgeschlagen.",
- "Health check failed: {detail}" => "Verbindungsprüfung fehlgeschlagen: {detail}",
"Consistency check failed." => "Konsistenzprüfung fehlgeschlagen.",
"Etherpad API key is required." => "Ein Etherpad-API-Schlüssel ist erforderlich.",
"Etherpad Base URL is required." => "Eine Etherpad-Basis-URL ist erforderlich.",
@@ -96,11 +91,11 @@
"Invalid access mode." => "Ungültiger Zugriffsmodus.",
"Invalid parent folder ID." => "Ungültige Zielordner-ID.",
"Loading pad..." => "Pad wird geladen...",
- "No synced snapshot is stored in this .pad file yet." => "In dieser .pad-Datei ist noch kein synchronisierter Snapshot gespeichert.",
+ "No synced snapshot is stored in this .pad file yet." => "In dieser .pad-Datei ist noch keine synchronisierte Kopie gespeichert.",
"Pad from another server" => "Pad von einem anderen Server",
"Pad name is required." => "Pad-Name ist erforderlich.",
- "Read-only snapshot" => "Schreibgeschützter Snapshot",
- "Read-only snapshot from the .pad file." => "Schreibgeschützter Snapshot aus der .pad-Datei.",
+ "Read-only snapshot" => "Schreibgeschützte Kopie",
+ "Read-only snapshot from the .pad file." => "Schreibgeschützte Kopie aus der .pad-Datei.",
"Selected file is not a .pad file." => "Ausgewählte Datei ist keine .pad-Datei.",
"Selected parent folder is not writable." => "Ausgewählter Zielordner ist nicht beschreibbar.",
"Template file not found." => "Vorlagendatei nicht gefunden.",
@@ -120,6 +115,11 @@
"Could not initialize .pad file." => ".pad-Datei konnte nicht initialisiert werden.",
"Could not resolve .pad file." => ".pad-Datei konnte nicht aufgelöst werden.",
".pad file not found." => ".pad-Datei nicht gefunden.",
+ "Test Etherpad connection" => "Etherpad-Verbindung testen",
+ "Testing Etherpad connection..." => "Etherpad-Verbindung wird geprüft...",
+ "Etherpad connection test successful." => "Etherpad-Verbindung erfolgreich geprüft.",
+ "Etherpad connection test failed." => "Etherpad-Verbindung konnte nicht geprüft werden.",
+ "Etherpad connection test failed: {detail}" => "Etherpad-Verbindung konnte nicht geprüft werden: {detail}",
];
$PLURAL_FORMS = "nplurals=2; plural=(n != 1);";
diff --git a/l10n/de_DE.js b/l10n/de_DE.js
index e9d8608..449ebab 100644
--- a/l10n/de_DE.js
+++ b/l10n/de_DE.js
@@ -14,20 +14,15 @@ OC.L10N.register(
"Allow linking external public pads": "Verlinken externer öffentlicher Pads erlauben",
"External host allowlist (optional)": "Allowlist externer Hosts (optional)",
"Save settings": "Einstellungen speichern",
- "Health check": "Verbindungsprüfung",
"Consistency check": "Konsistenzprüfung",
"Pending Etherpad deletes": "Ausstehende Etherpad-Löschungen",
"Saving settings...": "Einstellungen werden gespeichert...",
"Settings saved.": "Einstellungen gespeichert.",
- "Running health check...": "Verbindungsprüfung läuft...",
"Running consistency check...": "Konsistenzprüfung läuft...",
- "Health check successful.": "Verbindungsprüfung erfolgreich.",
"Consistency check successful.": "Konsistenzprüfung erfolgreich.",
"Consistency check successful. No issues found.": "Konsistenzprüfung erfolgreich. Keine Probleme gefunden.",
"Consistency check finished with issues.": "Konsistenzprüfung mit Problemen abgeschlossen.",
"Request failed.": "Anfrage fehlgeschlagen.",
- "Health check failed.": "Verbindungsprüfung fehlgeschlagen.",
- "Health check failed: {detail}": "Verbindungsprüfung fehlgeschlagen: {detail}",
"Consistency check failed.": "Konsistenzprüfung fehlgeschlagen.",
"Etherpad API key is required.": "Ein Etherpad-API-Schlüssel ist erforderlich.",
"Etherpad Base URL is required.": "Eine Etherpad-Basis-URL ist erforderlich.",
@@ -96,11 +91,11 @@ OC.L10N.register(
"Invalid access mode.": "Ungültiger Zugriffsmodus.",
"Invalid parent folder ID.": "Ungültige Zielordner-ID.",
"Loading pad...": "Pad wird geladen...",
- "No synced snapshot is stored in this .pad file yet.": "In dieser .pad-Datei ist noch kein synchronisierter Snapshot gespeichert.",
+ "No synced snapshot is stored in this .pad file yet.": "In dieser .pad-Datei ist noch keine synchronisierte Kopie gespeichert.",
"Pad from another server": "Pad von einem anderen Server",
"Pad name is required.": "Pad-Name ist erforderlich.",
- "Read-only snapshot": "Schreibgeschützter Snapshot",
- "Read-only snapshot from the .pad file.": "Schreibgeschützter Snapshot aus der .pad-Datei.",
+ "Read-only snapshot": "Schreibgeschützte Kopie",
+ "Read-only snapshot from the .pad file.": "Schreibgeschützte Kopie aus der .pad-Datei.",
"Selected file is not a .pad file.": "Ausgewählte Datei ist keine .pad-Datei.",
"Selected parent folder is not writable.": "Ausgewählter Zielordner ist nicht beschreibbar.",
"Template file not found.": "Vorlagendatei nicht gefunden.",
@@ -119,7 +114,12 @@ OC.L10N.register(
"Could not open pad": "Pad konnte nicht geöffnet werden",
"Could not initialize .pad file.": ".pad-Datei konnte nicht initialisiert werden.",
"Could not resolve .pad file.": ".pad-Datei konnte nicht aufgelöst werden.",
- ".pad file not found.": ".pad-Datei nicht gefunden."
+ ".pad file not found.": ".pad-Datei nicht gefunden.",
+ "Test Etherpad connection": "Etherpad-Verbindung testen",
+ "Testing Etherpad connection...": "Etherpad-Verbindung wird geprüft...",
+ "Etherpad connection test successful.": "Etherpad-Verbindung erfolgreich geprüft.",
+ "Etherpad connection test failed.": "Etherpad-Verbindung konnte nicht geprüft werden.",
+ "Etherpad connection test failed: {detail}": "Etherpad-Verbindung konnte nicht geprüft werden: {detail}"
},
"nplurals=2; plural=(n != 1);"
);
diff --git a/l10n/de_DE.json b/l10n/de_DE.json
index 62ce78e..091329a 100644
--- a/l10n/de_DE.json
+++ b/l10n/de_DE.json
@@ -13,20 +13,15 @@
"Allow linking external public pads": "Verlinken externer öffentlicher Pads erlauben",
"External host allowlist (optional)": "Allowlist externer Hosts (optional)",
"Save settings": "Einstellungen speichern",
- "Health check": "Verbindungsprüfung",
"Consistency check": "Konsistenzprüfung",
"Pending Etherpad deletes": "Ausstehende Etherpad-Löschungen",
"Saving settings...": "Einstellungen werden gespeichert...",
"Settings saved.": "Einstellungen gespeichert.",
- "Running health check...": "Verbindungsprüfung läuft...",
"Running consistency check...": "Konsistenzprüfung läuft...",
- "Health check successful.": "Verbindungsprüfung erfolgreich.",
"Consistency check successful.": "Konsistenzprüfung erfolgreich.",
"Consistency check successful. No issues found.": "Konsistenzprüfung erfolgreich. Keine Probleme gefunden.",
"Consistency check finished with issues.": "Konsistenzprüfung mit Problemen abgeschlossen.",
"Request failed.": "Anfrage fehlgeschlagen.",
- "Health check failed.": "Verbindungsprüfung fehlgeschlagen.",
- "Health check failed: {detail}": "Verbindungsprüfung fehlgeschlagen: {detail}",
"Consistency check failed.": "Konsistenzprüfung fehlgeschlagen.",
"Etherpad API key is required.": "Ein Etherpad-API-Schlüssel ist erforderlich.",
"Etherpad Base URL is required.": "Eine Etherpad-Basis-URL ist erforderlich.",
@@ -95,11 +90,11 @@
"Invalid access mode.": "Ungültiger Zugriffsmodus.",
"Invalid parent folder ID.": "Ungültige Zielordner-ID.",
"Loading pad...": "Pad wird geladen...",
- "No synced snapshot is stored in this .pad file yet.": "In dieser .pad-Datei ist noch kein synchronisierter Snapshot gespeichert.",
+ "No synced snapshot is stored in this .pad file yet.": "In dieser .pad-Datei ist noch keine synchronisierte Kopie gespeichert.",
"Pad from another server": "Pad von einem anderen Server",
"Pad name is required.": "Pad-Name ist erforderlich.",
- "Read-only snapshot": "Schreibgeschützter Snapshot",
- "Read-only snapshot from the .pad file.": "Schreibgeschützter Snapshot aus der .pad-Datei.",
+ "Read-only snapshot": "Schreibgeschützte Kopie",
+ "Read-only snapshot from the .pad file.": "Schreibgeschützte Kopie aus der .pad-Datei.",
"Selected file is not a .pad file.": "Ausgewählte Datei ist keine .pad-Datei.",
"Selected parent folder is not writable.": "Ausgewählter Zielordner ist nicht beschreibbar.",
"Template file not found.": "Vorlagendatei nicht gefunden.",
@@ -118,7 +113,12 @@
"Could not open pad": "Pad konnte nicht geöffnet werden",
"Could not initialize .pad file.": ".pad-Datei konnte nicht initialisiert werden.",
"Could not resolve .pad file.": ".pad-Datei konnte nicht aufgelöst werden.",
- ".pad file not found.": ".pad-Datei nicht gefunden."
+ ".pad file not found.": ".pad-Datei nicht gefunden.",
+ "Test Etherpad connection": "Etherpad-Verbindung testen",
+ "Testing Etherpad connection...": "Etherpad-Verbindung wird geprüft...",
+ "Etherpad connection test successful.": "Etherpad-Verbindung erfolgreich geprüft.",
+ "Etherpad connection test failed.": "Etherpad-Verbindung konnte nicht geprüft werden.",
+ "Etherpad connection test failed: {detail}": "Etherpad-Verbindung konnte nicht geprüft werden: {detail}"
},
"pluralForm": "nplurals=2; plural=(n != 1);"
}
diff --git a/l10n/de_DE.php b/l10n/de_DE.php
index b88a493..aba35e6 100644
--- a/l10n/de_DE.php
+++ b/l10n/de_DE.php
@@ -14,20 +14,15 @@
"Allow linking external public pads" => "Verlinken externer öffentlicher Pads erlauben",
"External host allowlist (optional)" => "Allowlist externer Hosts (optional)",
"Save settings" => "Einstellungen speichern",
- "Health check" => "Verbindungsprüfung",
"Consistency check" => "Konsistenzprüfung",
"Pending Etherpad deletes" => "Ausstehende Etherpad-Löschungen",
"Saving settings..." => "Einstellungen werden gespeichert...",
"Settings saved." => "Einstellungen gespeichert.",
- "Running health check..." => "Verbindungsprüfung läuft...",
"Running consistency check..." => "Konsistenzprüfung läuft...",
- "Health check successful." => "Verbindungsprüfung erfolgreich.",
"Consistency check successful." => "Konsistenzprüfung erfolgreich.",
"Consistency check successful. No issues found." => "Konsistenzprüfung erfolgreich. Keine Probleme gefunden.",
"Consistency check finished with issues." => "Konsistenzprüfung mit Problemen abgeschlossen.",
"Request failed." => "Anfrage fehlgeschlagen.",
- "Health check failed." => "Verbindungsprüfung fehlgeschlagen.",
- "Health check failed: {detail}" => "Verbindungsprüfung fehlgeschlagen: {detail}",
"Consistency check failed." => "Konsistenzprüfung fehlgeschlagen.",
"Etherpad API key is required." => "Ein Etherpad-API-Schlüssel ist erforderlich.",
"Etherpad Base URL is required." => "Eine Etherpad-Basis-URL ist erforderlich.",
@@ -96,11 +91,11 @@
"Invalid access mode." => "Ungültiger Zugriffsmodus.",
"Invalid parent folder ID." => "Ungültige Zielordner-ID.",
"Loading pad..." => "Pad wird geladen...",
- "No synced snapshot is stored in this .pad file yet." => "In dieser .pad-Datei ist noch kein synchronisierter Snapshot gespeichert.",
+ "No synced snapshot is stored in this .pad file yet." => "In dieser .pad-Datei ist noch keine synchronisierte Kopie gespeichert.",
"Pad from another server" => "Pad von einem anderen Server",
"Pad name is required." => "Pad-Name ist erforderlich.",
- "Read-only snapshot" => "Schreibgeschützter Snapshot",
- "Read-only snapshot from the .pad file." => "Schreibgeschützter Snapshot aus der .pad-Datei.",
+ "Read-only snapshot" => "Schreibgeschützte Kopie",
+ "Read-only snapshot from the .pad file." => "Schreibgeschützte Kopie aus der .pad-Datei.",
"Selected file is not a .pad file." => "Ausgewählte Datei ist keine .pad-Datei.",
"Selected parent folder is not writable." => "Ausgewählter Zielordner ist nicht beschreibbar.",
"Template file not found." => "Vorlagendatei nicht gefunden.",
@@ -120,6 +115,11 @@
"Could not initialize .pad file." => ".pad-Datei konnte nicht initialisiert werden.",
"Could not resolve .pad file." => ".pad-Datei konnte nicht aufgelöst werden.",
".pad file not found." => ".pad-Datei nicht gefunden.",
+ "Test Etherpad connection" => "Etherpad-Verbindung testen",
+ "Testing Etherpad connection..." => "Etherpad-Verbindung wird geprüft...",
+ "Etherpad connection test successful." => "Etherpad-Verbindung erfolgreich geprüft.",
+ "Etherpad connection test failed." => "Etherpad-Verbindung konnte nicht geprüft werden.",
+ "Etherpad connection test failed: {detail}" => "Etherpad-Verbindung konnte nicht geprüft werden: {detail}",
];
$PLURAL_FORMS = "nplurals=2; plural=(n != 1);";
diff --git a/l10n/es.js b/l10n/es.js
index c79dcf9..0f1da35 100644
--- a/l10n/es.js
+++ b/l10n/es.js
@@ -2,41 +2,36 @@ OC.L10N.register(
"etherpad_nextcloud",
{
"Pads": "Pads",
- "Configure the Etherpad server and external pad security policy for the Etherpad Nextcloud app.": "Configura el servidor de Etherpad y la politica de seguridad para pads publicos externos en la aplicacion Etherpad Nextcloud.",
+ "Configure the Etherpad server and external pad security policy for the Etherpad Nextcloud app.": "Configura el servidor de Etherpad y la política de seguridad para pads externos en la aplicación Etherpad Nextcloud.",
"Etherpad Base URL": "URL base de Etherpad",
"Etherpad API URL (optional)": "URL de API de Etherpad (opcional)",
- "Optional internal URL for server-side API calls. Leave empty to use Etherpad Base URL.": "URL interna opcional para llamadas API del lado del servidor. Dejala vacia para usar la URL base de Etherpad.",
+ "Optional internal URL for server-side API calls. Leave empty to use Etherpad Base URL.": "URL interna opcional para llamadas a la API del lado del servidor. Déjala vacía para usar la URL base de Etherpad.",
"Etherpad session cookie domain (optional)": "Dominio de cookie de sesion de Etherpad (opcional)",
"Auto-filled from the Nextcloud and Etherpad hosts when possible. Adjust it if your deployment uses a proxy path or a different trusted parent domain; leave empty for a host-only cookie.": "Se completa automaticamente desde los hosts de Nextcloud y Etherpad cuando es posible. Ajustalo si la instalacion usa una ruta de proxy u otro dominio padre de confianza; deja vacio para una cookie solo de host.",
"Etherpad API key": "Clave API de Etherpad",
"Detected API version:": "Version de API detectada:",
"Controls how often pad content is copied from Etherpad into the .pad file while the pad is open.": "Controla con que frecuencia se copia el contenido del pad desde Etherpad al archivo .pad mientras el pad esta abierto.",
"Allow linking external public pads": "Permitir enlazar pads publicos externos",
- "External host allowlist (optional)": "Lista de permitidos de hosts externos (opcional)",
+ "External host allowlist (optional)": "Lista de hosts externos permitidos (opcional)",
"Save settings": "Guardar ajustes",
- "Health check": "Comprobacion de estado",
"Consistency check": "Comprobacion de consistencia",
"Pending Etherpad deletes": "Eliminaciones pendientes en Etherpad",
"Saving settings...": "Guardando ajustes...",
"Settings saved.": "Ajustes guardados.",
- "Running health check...": "Ejecutando comprobacion de estado...",
"Running consistency check...": "Ejecutando comprobacion de consistencia...",
- "Health check successful.": "Comprobacion de estado correcta.",
"Consistency check successful.": "Comprobacion de consistencia correcta.",
"Consistency check successful. No issues found.": "Comprobacion de consistencia correcta. No se encontraron problemas.",
"Consistency check finished with issues.": "Comprobacion de consistencia finalizada con problemas.",
"Request failed.": "La solicitud fallo.",
- "Health check failed.": "La comprobacion de estado fallo.",
- "Health check failed: {detail}": "La comprobacion de estado fallo: {detail}",
"Consistency check failed.": "La comprobacion de consistencia fallo.",
"Etherpad API key is required.": "La clave API de Etherpad es obligatoria.",
"Etherpad Base URL is required.": "La URL base de Etherpad es obligatoria.",
"Etherpad Base URL must use https.": "La URL base de Etherpad debe usar HTTPS.",
"Invalid Etherpad Base URL.": "URL base de Etherpad no valida.",
- "Etherpad Base URL must not include query or fragment.": "La URL base de Etherpad no debe incluir query ni fragmento.",
+ "Etherpad Base URL must not include query or fragment.": "La URL base de Etherpad no debe incluir cadena de consulta ni fragmento.",
"Etherpad API URL must use http or https.": "La URL API de Etherpad debe usar HTTP o HTTPS.",
"Invalid Etherpad API URL.": "URL API de Etherpad no valida.",
- "Etherpad API URL must not include query or fragment.": "La URL API de Etherpad no debe incluir query ni fragmento.",
+ "Etherpad API URL must not include query or fragment.": "La URL API de Etherpad no debe incluir cadena de consulta ni fragmento.",
"Invalid Etherpad API version format.": "Formato de version de API de Etherpad no valido.",
"Sync interval must be between 5 and 3600 seconds.": "El intervalo de sincronizacion debe estar entre 5 y 3600 segundos.",
"External allowlist contains invalid host: {host}": "La lista de permitidos externa contiene un host no valido: {host}",
@@ -92,12 +87,12 @@ OC.L10N.register(
"Invalid pad name.": "Nombre de pad no válido.",
"Invalid parent folder ID.": "ID de carpeta principal no válido.",
"Loading pad...": "Cargando pad...",
- "No synced snapshot is stored in this .pad file yet.": "Aún no hay una instantánea sincronizada almacenada en este archivo .pad.",
+ "No synced snapshot is stored in this .pad file yet.": "Aún no hay ninguna copia sincronizada almacenada en este archivo .pad.",
"Open the original .pad file": "Abrir el archivo .pad original",
"Pad from another server": "Pad de otro servidor",
"Pad name is required.": "Se requiere el nombre del pad.",
- "Read-only snapshot": "Instantánea de solo lectura",
- "Read-only snapshot from the .pad file.": "Instantánea de solo lectura del archivo .pad.",
+ "Read-only snapshot": "Copia de solo lectura",
+ "Read-only snapshot from the .pad file.": "Copia de solo lectura del archivo .pad.",
"Selected file is not a .pad file.": "El archivo seleccionado no es un archivo .pad.",
"Selected parent folder is not writable.": "La carpeta principal seleccionada no es modificable.",
"Template file not found.": "Archivo de plantilla no encontrado.",
@@ -119,7 +114,12 @@ OC.L10N.register(
"Could not open pad": "No se pudo abrir el pad",
"Could not initialize .pad file.": "No se ha podido inicializar el archivo .pad.",
"Could not resolve .pad file.": "No se ha podido resolver el archivo .pad.",
- ".pad file not found.": "No se ha encontrado el archivo .pad."
+ ".pad file not found.": "No se ha encontrado el archivo .pad.",
+ "Test Etherpad connection": "Probar conexión con Etherpad",
+ "Testing Etherpad connection...": "Comprobando la conexión con Etherpad...",
+ "Etherpad connection test successful.": "Conexión con Etherpad comprobada correctamente.",
+ "Etherpad connection test failed.": "No se pudo comprobar la conexión con Etherpad.",
+ "Etherpad connection test failed: {detail}": "No se pudo comprobar la conexión con Etherpad: {detail}"
},
"nplurals=2; plural=(n != 1);"
);
diff --git a/l10n/es.json b/l10n/es.json
index a96da3c..306e186 100644
--- a/l10n/es.json
+++ b/l10n/es.json
@@ -1,41 +1,36 @@
{
"translations": {
"Pads": "Pads",
- "Configure the Etherpad server and external pad security policy for the Etherpad Nextcloud app.": "Configura el servidor de Etherpad y la politica de seguridad para pads publicos externos en la aplicacion Etherpad Nextcloud.",
+ "Configure the Etherpad server and external pad security policy for the Etherpad Nextcloud app.": "Configura el servidor de Etherpad y la política de seguridad para pads externos en la aplicación Etherpad Nextcloud.",
"Etherpad Base URL": "URL base de Etherpad",
"Etherpad API URL (optional)": "URL de API de Etherpad (opcional)",
- "Optional internal URL for server-side API calls. Leave empty to use Etherpad Base URL.": "URL interna opcional para llamadas API del lado del servidor. Dejala vacia para usar la URL base de Etherpad.",
+ "Optional internal URL for server-side API calls. Leave empty to use Etherpad Base URL.": "URL interna opcional para llamadas a la API del lado del servidor. Déjala vacía para usar la URL base de Etherpad.",
"Etherpad session cookie domain (optional)": "Dominio de cookie de sesion de Etherpad (opcional)",
"Auto-filled from the Nextcloud and Etherpad hosts when possible. Adjust it if your deployment uses a proxy path or a different trusted parent domain; leave empty for a host-only cookie.": "Se completa automaticamente desde los hosts de Nextcloud y Etherpad cuando es posible. Ajustalo si la instalacion usa una ruta de proxy u otro dominio padre de confianza; deja vacio para una cookie solo de host.",
"Etherpad API key": "Clave API de Etherpad",
"Detected API version:": "Version de API detectada:",
"Controls how often pad content is copied from Etherpad into the .pad file while the pad is open.": "Controla con que frecuencia se copia el contenido del pad desde Etherpad al archivo .pad mientras el pad esta abierto.",
"Allow linking external public pads": "Permitir enlazar pads publicos externos",
- "External host allowlist (optional)": "Lista de permitidos de hosts externos (opcional)",
+ "External host allowlist (optional)": "Lista de hosts externos permitidos (opcional)",
"Save settings": "Guardar ajustes",
- "Health check": "Comprobacion de estado",
"Consistency check": "Comprobacion de consistencia",
"Pending Etherpad deletes": "Eliminaciones pendientes en Etherpad",
"Saving settings...": "Guardando ajustes...",
"Settings saved.": "Ajustes guardados.",
- "Running health check...": "Ejecutando comprobacion de estado...",
"Running consistency check...": "Ejecutando comprobacion de consistencia...",
- "Health check successful.": "Comprobacion de estado correcta.",
"Consistency check successful.": "Comprobacion de consistencia correcta.",
"Consistency check successful. No issues found.": "Comprobacion de consistencia correcta. No se encontraron problemas.",
"Consistency check finished with issues.": "Comprobacion de consistencia finalizada con problemas.",
"Request failed.": "La solicitud fallo.",
- "Health check failed.": "La comprobacion de estado fallo.",
- "Health check failed: {detail}": "La comprobacion de estado fallo: {detail}",
"Consistency check failed.": "La comprobacion de consistencia fallo.",
"Etherpad API key is required.": "La clave API de Etherpad es obligatoria.",
"Etherpad Base URL is required.": "La URL base de Etherpad es obligatoria.",
"Etherpad Base URL must use https.": "La URL base de Etherpad debe usar HTTPS.",
"Invalid Etherpad Base URL.": "URL base de Etherpad no valida.",
- "Etherpad Base URL must not include query or fragment.": "La URL base de Etherpad no debe incluir query ni fragmento.",
+ "Etherpad Base URL must not include query or fragment.": "La URL base de Etherpad no debe incluir cadena de consulta ni fragmento.",
"Etherpad API URL must use http or https.": "La URL API de Etherpad debe usar HTTP o HTTPS.",
"Invalid Etherpad API URL.": "URL API de Etherpad no valida.",
- "Etherpad API URL must not include query or fragment.": "La URL API de Etherpad no debe incluir query ni fragmento.",
+ "Etherpad API URL must not include query or fragment.": "La URL API de Etherpad no debe incluir cadena de consulta ni fragmento.",
"Invalid Etherpad API version format.": "Formato de version de API de Etherpad no valido.",
"Sync interval must be between 5 and 3600 seconds.": "El intervalo de sincronizacion debe estar entre 5 y 3600 segundos.",
"External allowlist contains invalid host: {host}": "La lista de permitidos externa contiene un host no valido: {host}",
@@ -91,12 +86,12 @@
"Invalid pad name.": "Nombre de pad no válido.",
"Invalid parent folder ID.": "ID de carpeta principal no válido.",
"Loading pad...": "Cargando pad...",
- "No synced snapshot is stored in this .pad file yet.": "Aún no hay una instantánea sincronizada almacenada en este archivo .pad.",
+ "No synced snapshot is stored in this .pad file yet.": "Aún no hay ninguna copia sincronizada almacenada en este archivo .pad.",
"Open the original .pad file": "Abrir el archivo .pad original",
"Pad from another server": "Pad de otro servidor",
"Pad name is required.": "Se requiere el nombre del pad.",
- "Read-only snapshot": "Instantánea de solo lectura",
- "Read-only snapshot from the .pad file.": "Instantánea de solo lectura del archivo .pad.",
+ "Read-only snapshot": "Copia de solo lectura",
+ "Read-only snapshot from the .pad file.": "Copia de solo lectura del archivo .pad.",
"Selected file is not a .pad file.": "El archivo seleccionado no es un archivo .pad.",
"Selected parent folder is not writable.": "La carpeta principal seleccionada no es modificable.",
"Template file not found.": "Archivo de plantilla no encontrado.",
@@ -118,7 +113,12 @@
"Could not open pad": "No se pudo abrir el pad",
"Could not initialize .pad file.": "No se ha podido inicializar el archivo .pad.",
"Could not resolve .pad file.": "No se ha podido resolver el archivo .pad.",
- ".pad file not found.": "No se ha encontrado el archivo .pad."
+ ".pad file not found.": "No se ha encontrado el archivo .pad.",
+ "Test Etherpad connection": "Probar conexión con Etherpad",
+ "Testing Etherpad connection...": "Comprobando la conexión con Etherpad...",
+ "Etherpad connection test successful.": "Conexión con Etherpad comprobada correctamente.",
+ "Etherpad connection test failed.": "No se pudo comprobar la conexión con Etherpad.",
+ "Etherpad connection test failed: {detail}": "No se pudo comprobar la conexión con Etherpad: {detail}"
},
"pluralForm": "nplurals=2; plural=(n != 1);"
}
diff --git a/l10n/es.php b/l10n/es.php
index 2e0fdc7..ed02231 100644
--- a/l10n/es.php
+++ b/l10n/es.php
@@ -2,41 +2,36 @@
$TRANSLATIONS = [
"Pads" => "Pads",
- "Configure the Etherpad server and external pad security policy for the Etherpad Nextcloud app." => "Configura el servidor de Etherpad y la politica de seguridad para pads publicos externos en la aplicacion Etherpad Nextcloud.",
+ "Configure the Etherpad server and external pad security policy for the Etherpad Nextcloud app." => "Configura el servidor de Etherpad y la política de seguridad para pads externos en la aplicación Etherpad Nextcloud.",
"Etherpad Base URL" => "URL base de Etherpad",
"Etherpad API URL (optional)" => "URL de API de Etherpad (opcional)",
- "Optional internal URL for server-side API calls. Leave empty to use Etherpad Base URL." => "URL interna opcional para llamadas API del lado del servidor. Dejala vacia para usar la URL base de Etherpad.",
+ "Optional internal URL for server-side API calls. Leave empty to use Etherpad Base URL." => "URL interna opcional para llamadas a la API del lado del servidor. Déjala vacía para usar la URL base de Etherpad.",
"Etherpad session cookie domain (optional)" => "Dominio de cookie de sesion de Etherpad (opcional)",
"Auto-filled from the Nextcloud and Etherpad hosts when possible. Adjust it if your deployment uses a proxy path or a different trusted parent domain; leave empty for a host-only cookie." => "Se completa automaticamente desde los hosts de Nextcloud y Etherpad cuando es posible. Ajustalo si la instalacion usa una ruta de proxy u otro dominio padre de confianza; deja vacio para una cookie solo de host.",
"Etherpad API key" => "Clave API de Etherpad",
"Detected API version:" => "Version de API detectada:",
"Controls how often pad content is copied from Etherpad into the .pad file while the pad is open." => "Controla con que frecuencia se copia el contenido del pad desde Etherpad al archivo .pad mientras el pad esta abierto.",
"Allow linking external public pads" => "Permitir enlazar pads publicos externos",
- "External host allowlist (optional)" => "Lista de permitidos de hosts externos (opcional)",
+ "External host allowlist (optional)" => "Lista de hosts externos permitidos (opcional)",
"Save settings" => "Guardar ajustes",
- "Health check" => "Comprobacion de estado",
"Consistency check" => "Comprobacion de consistencia",
"Pending Etherpad deletes" => "Eliminaciones pendientes en Etherpad",
"Saving settings..." => "Guardando ajustes...",
"Settings saved." => "Ajustes guardados.",
- "Running health check..." => "Ejecutando comprobacion de estado...",
"Running consistency check..." => "Ejecutando comprobacion de consistencia...",
- "Health check successful." => "Comprobacion de estado correcta.",
"Consistency check successful." => "Comprobacion de consistencia correcta.",
"Consistency check successful. No issues found." => "Comprobacion de consistencia correcta. No se encontraron problemas.",
"Consistency check finished with issues." => "Comprobacion de consistencia finalizada con problemas.",
"Request failed." => "La solicitud fallo.",
- "Health check failed." => "La comprobacion de estado fallo.",
- "Health check failed: {detail}" => "La comprobacion de estado fallo: {detail}",
"Consistency check failed." => "La comprobacion de consistencia fallo.",
"Etherpad API key is required." => "La clave API de Etherpad es obligatoria.",
"Etherpad Base URL is required." => "La URL base de Etherpad es obligatoria.",
"Etherpad Base URL must use https." => "La URL base de Etherpad debe usar HTTPS.",
"Invalid Etherpad Base URL." => "URL base de Etherpad no valida.",
- "Etherpad Base URL must not include query or fragment." => "La URL base de Etherpad no debe incluir query ni fragmento.",
+ "Etherpad Base URL must not include query or fragment." => "La URL base de Etherpad no debe incluir cadena de consulta ni fragmento.",
"Etherpad API URL must use http or https." => "La URL API de Etherpad debe usar HTTP o HTTPS.",
"Invalid Etherpad API URL." => "URL API de Etherpad no valida.",
- "Etherpad API URL must not include query or fragment." => "La URL API de Etherpad no debe incluir query ni fragmento.",
+ "Etherpad API URL must not include query or fragment." => "La URL API de Etherpad no debe incluir cadena de consulta ni fragmento.",
"Invalid Etherpad API version format." => "Formato de version de API de Etherpad no valido.",
"Sync interval must be between 5 and 3600 seconds." => "El intervalo de sincronizacion debe estar entre 5 y 3600 segundos.",
"External allowlist contains invalid host: {host}" => "La lista de permitidos externa contiene un host no valido: {host}",
@@ -92,12 +87,12 @@
"Invalid pad name." => "Nombre de pad no válido.",
"Invalid parent folder ID." => "ID de carpeta principal no válido.",
"Loading pad..." => "Cargando pad...",
- "No synced snapshot is stored in this .pad file yet." => "Aún no hay una instantánea sincronizada almacenada en este archivo .pad.",
+ "No synced snapshot is stored in this .pad file yet." => "Aún no hay ninguna copia sincronizada almacenada en este archivo .pad.",
"Open the original .pad file" => "Abrir el archivo .pad original",
"Pad from another server" => "Pad de otro servidor",
"Pad name is required." => "Se requiere el nombre del pad.",
- "Read-only snapshot" => "Instantánea de solo lectura",
- "Read-only snapshot from the .pad file." => "Instantánea de solo lectura del archivo .pad.",
+ "Read-only snapshot" => "Copia de solo lectura",
+ "Read-only snapshot from the .pad file." => "Copia de solo lectura del archivo .pad.",
"Selected file is not a .pad file." => "El archivo seleccionado no es un archivo .pad.",
"Selected parent folder is not writable." => "La carpeta principal seleccionada no es modificable.",
"Template file not found." => "Archivo de plantilla no encontrado.",
@@ -120,6 +115,11 @@
"Could not initialize .pad file." => "No se ha podido inicializar el archivo .pad.",
"Could not resolve .pad file." => "No se ha podido resolver el archivo .pad.",
".pad file not found." => "No se ha encontrado el archivo .pad.",
+ "Test Etherpad connection" => "Probar conexión con Etherpad",
+ "Testing Etherpad connection..." => "Comprobando la conexión con Etherpad...",
+ "Etherpad connection test successful." => "Conexión con Etherpad comprobada correctamente.",
+ "Etherpad connection test failed." => "No se pudo comprobar la conexión con Etherpad.",
+ "Etherpad connection test failed: {detail}" => "No se pudo comprobar la conexión con Etherpad: {detail}",
];
$PLURAL_FORMS = "nplurals=2; plural=(n != 1);";
diff --git a/l10n/fr.js b/l10n/fr.js
index cba86d2..1ad7e3c 100644
--- a/l10n/fr.js
+++ b/l10n/fr.js
@@ -2,41 +2,36 @@ OC.L10N.register(
"etherpad_nextcloud",
{
"Pads": "Pads",
- "Configure the Etherpad server and external pad security policy for the Etherpad Nextcloud app.": "Configurez le serveur Etherpad et la politique de securite des pads publics externes pour l'application Etherpad Nextcloud.",
+ "Configure the Etherpad server and external pad security policy for the Etherpad Nextcloud app.": "Configurez le serveur Etherpad et la politique de sécurité des pads externes pour l'application Etherpad Nextcloud.",
"Etherpad Base URL": "URL de base Etherpad",
"Etherpad API URL (optional)": "URL API Etherpad (optionnel)",
- "Optional internal URL for server-side API calls. Leave empty to use Etherpad Base URL.": "URL interne optionnelle pour les appels API cote serveur. Laisser vide pour utiliser l'URL de base Etherpad.",
+ "Optional internal URL for server-side API calls. Leave empty to use Etherpad Base URL.": "URL interne optionnelle pour les appels à l'API côté serveur. Laisser vide pour utiliser l'URL de base Etherpad.",
"Etherpad session cookie domain (optional)": "Domaine du cookie de session Etherpad (optionnel)",
"Auto-filled from the Nextcloud and Etherpad hosts when possible. Adjust it if your deployment uses a proxy path or a different trusted parent domain; leave empty for a host-only cookie.": "Renseigne automatiquement depuis les hotes Nextcloud et Etherpad lorsque possible. Ajustez si le deploiement utilise un chemin proxy ou un autre domaine parent de confiance; laissez vide pour un cookie limite a l'hote.",
"Etherpad API key": "Cle API Etherpad",
"Detected API version:": "Version API detectee :",
"Controls how often pad content is copied from Etherpad into the .pad file while the pad is open.": "Controle la frequence de copie du contenu du pad depuis Etherpad vers le fichier .pad pendant que le pad est ouvert.",
"Allow linking external public pads": "Autoriser les liens vers des pads publics externes",
- "External host allowlist (optional)": "Liste d'autorisation d'hotes externes (optionnel)",
+ "External host allowlist (optional)": "Liste des hôtes externes autorisés (facultatif)",
"Save settings": "Enregistrer les parametres",
- "Health check": "Verification de sante",
"Consistency check": "Verification de coherence",
"Pending Etherpad deletes": "Suppressions Etherpad en attente",
"Saving settings...": "Enregistrement des parametres...",
"Settings saved.": "Parametres enregistres.",
- "Running health check...": "Verification de sante en cours...",
"Running consistency check...": "Verification de coherence en cours...",
- "Health check successful.": "Verification de sante reussie.",
"Consistency check successful.": "Verification de coherence reussie.",
"Consistency check successful. No issues found.": "Verification de coherence reussie. Aucun probleme trouve.",
"Consistency check finished with issues.": "Verification de coherence terminee avec des problemes.",
"Request failed.": "La requete a echoue.",
- "Health check failed.": "La verification de sante a echoue.",
- "Health check failed: {detail}": "La verification de sante a echoue : {detail}",
"Consistency check failed.": "La verification de coherence a echoue.",
"Etherpad API key is required.": "La cle API Etherpad est requise.",
"Etherpad Base URL is required.": "L'URL de base Etherpad est requise.",
"Etherpad Base URL must use https.": "L'URL de base Etherpad doit utiliser HTTPS.",
"Invalid Etherpad Base URL.": "URL de base Etherpad invalide.",
- "Etherpad Base URL must not include query or fragment.": "L'URL de base Etherpad ne doit pas contenir de requete ni de fragment.",
+ "Etherpad Base URL must not include query or fragment.": "L'URL de base Etherpad ne doit pas contenir de chaîne de requête ni de fragment.",
"Etherpad API URL must use http or https.": "L'URL API Etherpad doit utiliser HTTP ou HTTPS.",
"Invalid Etherpad API URL.": "URL API Etherpad invalide.",
- "Etherpad API URL must not include query or fragment.": "L'URL API Etherpad ne doit pas contenir de requete ni de fragment.",
+ "Etherpad API URL must not include query or fragment.": "L'URL API Etherpad ne doit pas contenir de chaîne de requête ni de fragment.",
"Invalid Etherpad API version format.": "Format de version API Etherpad invalide.",
"Sync interval must be between 5 and 3600 seconds.": "L'intervalle de synchronisation doit etre compris entre 5 et 3600 secondes.",
"External allowlist contains invalid host: {host}": "La liste d'autorisation externe contient un hote invalide : {host}",
@@ -92,12 +87,12 @@ OC.L10N.register(
"Invalid pad name.": "Nom de pad non valide.",
"Invalid parent folder ID.": "Identifiant de dossier parent non valide.",
"Loading pad...": "Chargement du pad...",
- "No synced snapshot is stored in this .pad file yet.": "Aucun instantané synchronisé n'est encore stocké dans ce fichier .pad.",
+ "No synced snapshot is stored in this .pad file yet.": "Aucune copie synchronisée n'est encore stockée dans ce fichier .pad.",
"Open the original .pad file": "Ouvrir le fichier .pad original",
"Pad from another server": "Pad d'un autre serveur",
"Pad name is required.": "Le nom du pad est obligatoire.",
- "Read-only snapshot": "Instantané en lecture seule",
- "Read-only snapshot from the .pad file.": "Instantané en lecture seule du fichier .pad.",
+ "Read-only snapshot": "Copie en lecture seule",
+ "Read-only snapshot from the .pad file.": "Copie en lecture seule du fichier .pad.",
"Selected file is not a .pad file.": "Le fichier sélectionné n'est pas un fichier .pad.",
"Selected parent folder is not writable.": "Le dossier parent sélectionné n'est pas modifiable.",
"Template file not found.": "Fichier modèle introuvable.",
@@ -119,7 +114,12 @@ OC.L10N.register(
"Could not open pad": "Impossible d'ouvrir le pad",
"Could not initialize .pad file.": "Impossible d'initialiser le fichier .pad.",
"Could not resolve .pad file.": "Impossible de résoudre le fichier .pad.",
- ".pad file not found.": "Fichier .pad introuvable."
+ ".pad file not found.": "Fichier .pad introuvable.",
+ "Test Etherpad connection": "Tester la connexion à Etherpad",
+ "Testing Etherpad connection...": "Vérification de la connexion à Etherpad...",
+ "Etherpad connection test successful.": "Connexion à Etherpad vérifiée avec succès.",
+ "Etherpad connection test failed.": "Impossible de vérifier la connexion à Etherpad.",
+ "Etherpad connection test failed: {detail}": "Impossible de vérifier la connexion à Etherpad : {detail}"
},
"nplurals=2; plural=(n > 1);"
);
diff --git a/l10n/fr.json b/l10n/fr.json
index baadf4b..dcb9a01 100644
--- a/l10n/fr.json
+++ b/l10n/fr.json
@@ -1,41 +1,36 @@
{
"translations": {
"Pads": "Pads",
- "Configure the Etherpad server and external pad security policy for the Etherpad Nextcloud app.": "Configurez le serveur Etherpad et la politique de securite des pads publics externes pour l'application Etherpad Nextcloud.",
+ "Configure the Etherpad server and external pad security policy for the Etherpad Nextcloud app.": "Configurez le serveur Etherpad et la politique de sécurité des pads externes pour l'application Etherpad Nextcloud.",
"Etherpad Base URL": "URL de base Etherpad",
"Etherpad API URL (optional)": "URL API Etherpad (optionnel)",
- "Optional internal URL for server-side API calls. Leave empty to use Etherpad Base URL.": "URL interne optionnelle pour les appels API cote serveur. Laisser vide pour utiliser l'URL de base Etherpad.",
+ "Optional internal URL for server-side API calls. Leave empty to use Etherpad Base URL.": "URL interne optionnelle pour les appels à l'API côté serveur. Laisser vide pour utiliser l'URL de base Etherpad.",
"Etherpad session cookie domain (optional)": "Domaine du cookie de session Etherpad (optionnel)",
"Auto-filled from the Nextcloud and Etherpad hosts when possible. Adjust it if your deployment uses a proxy path or a different trusted parent domain; leave empty for a host-only cookie.": "Renseigne automatiquement depuis les hotes Nextcloud et Etherpad lorsque possible. Ajustez si le deploiement utilise un chemin proxy ou un autre domaine parent de confiance; laissez vide pour un cookie limite a l'hote.",
"Etherpad API key": "Cle API Etherpad",
"Detected API version:": "Version API detectee :",
"Controls how often pad content is copied from Etherpad into the .pad file while the pad is open.": "Controle la frequence de copie du contenu du pad depuis Etherpad vers le fichier .pad pendant que le pad est ouvert.",
"Allow linking external public pads": "Autoriser les liens vers des pads publics externes",
- "External host allowlist (optional)": "Liste d'autorisation d'hotes externes (optionnel)",
+ "External host allowlist (optional)": "Liste des hôtes externes autorisés (facultatif)",
"Save settings": "Enregistrer les parametres",
- "Health check": "Verification de sante",
"Consistency check": "Verification de coherence",
"Pending Etherpad deletes": "Suppressions Etherpad en attente",
"Saving settings...": "Enregistrement des parametres...",
"Settings saved.": "Parametres enregistres.",
- "Running health check...": "Verification de sante en cours...",
"Running consistency check...": "Verification de coherence en cours...",
- "Health check successful.": "Verification de sante reussie.",
"Consistency check successful.": "Verification de coherence reussie.",
"Consistency check successful. No issues found.": "Verification de coherence reussie. Aucun probleme trouve.",
"Consistency check finished with issues.": "Verification de coherence terminee avec des problemes.",
"Request failed.": "La requete a echoue.",
- "Health check failed.": "La verification de sante a echoue.",
- "Health check failed: {detail}": "La verification de sante a echoue : {detail}",
"Consistency check failed.": "La verification de coherence a echoue.",
"Etherpad API key is required.": "La cle API Etherpad est requise.",
"Etherpad Base URL is required.": "L'URL de base Etherpad est requise.",
"Etherpad Base URL must use https.": "L'URL de base Etherpad doit utiliser HTTPS.",
"Invalid Etherpad Base URL.": "URL de base Etherpad invalide.",
- "Etherpad Base URL must not include query or fragment.": "L'URL de base Etherpad ne doit pas contenir de requete ni de fragment.",
+ "Etherpad Base URL must not include query or fragment.": "L'URL de base Etherpad ne doit pas contenir de chaîne de requête ni de fragment.",
"Etherpad API URL must use http or https.": "L'URL API Etherpad doit utiliser HTTP ou HTTPS.",
"Invalid Etherpad API URL.": "URL API Etherpad invalide.",
- "Etherpad API URL must not include query or fragment.": "L'URL API Etherpad ne doit pas contenir de requete ni de fragment.",
+ "Etherpad API URL must not include query or fragment.": "L'URL API Etherpad ne doit pas contenir de chaîne de requête ni de fragment.",
"Invalid Etherpad API version format.": "Format de version API Etherpad invalide.",
"Sync interval must be between 5 and 3600 seconds.": "L'intervalle de synchronisation doit etre compris entre 5 et 3600 secondes.",
"External allowlist contains invalid host: {host}": "La liste d'autorisation externe contient un hote invalide : {host}",
@@ -91,12 +86,12 @@
"Invalid pad name.": "Nom de pad non valide.",
"Invalid parent folder ID.": "Identifiant de dossier parent non valide.",
"Loading pad...": "Chargement du pad...",
- "No synced snapshot is stored in this .pad file yet.": "Aucun instantané synchronisé n'est encore stocké dans ce fichier .pad.",
+ "No synced snapshot is stored in this .pad file yet.": "Aucune copie synchronisée n'est encore stockée dans ce fichier .pad.",
"Open the original .pad file": "Ouvrir le fichier .pad original",
"Pad from another server": "Pad d'un autre serveur",
"Pad name is required.": "Le nom du pad est obligatoire.",
- "Read-only snapshot": "Instantané en lecture seule",
- "Read-only snapshot from the .pad file.": "Instantané en lecture seule du fichier .pad.",
+ "Read-only snapshot": "Copie en lecture seule",
+ "Read-only snapshot from the .pad file.": "Copie en lecture seule du fichier .pad.",
"Selected file is not a .pad file.": "Le fichier sélectionné n'est pas un fichier .pad.",
"Selected parent folder is not writable.": "Le dossier parent sélectionné n'est pas modifiable.",
"Template file not found.": "Fichier modèle introuvable.",
@@ -118,7 +113,12 @@
"Could not open pad": "Impossible d'ouvrir le pad",
"Could not initialize .pad file.": "Impossible d'initialiser le fichier .pad.",
"Could not resolve .pad file.": "Impossible de résoudre le fichier .pad.",
- ".pad file not found.": "Fichier .pad introuvable."
+ ".pad file not found.": "Fichier .pad introuvable.",
+ "Test Etherpad connection": "Tester la connexion à Etherpad",
+ "Testing Etherpad connection...": "Vérification de la connexion à Etherpad...",
+ "Etherpad connection test successful.": "Connexion à Etherpad vérifiée avec succès.",
+ "Etherpad connection test failed.": "Impossible de vérifier la connexion à Etherpad.",
+ "Etherpad connection test failed: {detail}": "Impossible de vérifier la connexion à Etherpad : {detail}"
},
"pluralForm": "nplurals=2; plural=(n > 1);"
}
diff --git a/l10n/fr.php b/l10n/fr.php
index 17a6915..f3d30e3 100644
--- a/l10n/fr.php
+++ b/l10n/fr.php
@@ -2,41 +2,36 @@
$TRANSLATIONS = [
"Pads" => "Pads",
- "Configure the Etherpad server and external pad security policy for the Etherpad Nextcloud app." => "Configurez le serveur Etherpad et la politique de securite des pads publics externes pour l'application Etherpad Nextcloud.",
+ "Configure the Etherpad server and external pad security policy for the Etherpad Nextcloud app." => "Configurez le serveur Etherpad et la politique de sécurité des pads externes pour l'application Etherpad Nextcloud.",
"Etherpad Base URL" => "URL de base Etherpad",
"Etherpad API URL (optional)" => "URL API Etherpad (optionnel)",
- "Optional internal URL for server-side API calls. Leave empty to use Etherpad Base URL." => "URL interne optionnelle pour les appels API cote serveur. Laisser vide pour utiliser l'URL de base Etherpad.",
+ "Optional internal URL for server-side API calls. Leave empty to use Etherpad Base URL." => "URL interne optionnelle pour les appels à l'API côté serveur. Laisser vide pour utiliser l'URL de base Etherpad.",
"Etherpad session cookie domain (optional)" => "Domaine du cookie de session Etherpad (optionnel)",
"Auto-filled from the Nextcloud and Etherpad hosts when possible. Adjust it if your deployment uses a proxy path or a different trusted parent domain; leave empty for a host-only cookie." => "Renseigne automatiquement depuis les hotes Nextcloud et Etherpad lorsque possible. Ajustez si le deploiement utilise un chemin proxy ou un autre domaine parent de confiance; laissez vide pour un cookie limite a l'hote.",
"Etherpad API key" => "Cle API Etherpad",
"Detected API version:" => "Version API detectee :",
"Controls how often pad content is copied from Etherpad into the .pad file while the pad is open." => "Controle la frequence de copie du contenu du pad depuis Etherpad vers le fichier .pad pendant que le pad est ouvert.",
"Allow linking external public pads" => "Autoriser les liens vers des pads publics externes",
- "External host allowlist (optional)" => "Liste d'autorisation d'hotes externes (optionnel)",
+ "External host allowlist (optional)" => "Liste des hôtes externes autorisés (facultatif)",
"Save settings" => "Enregistrer les parametres",
- "Health check" => "Verification de sante",
"Consistency check" => "Verification de coherence",
"Pending Etherpad deletes" => "Suppressions Etherpad en attente",
"Saving settings..." => "Enregistrement des parametres...",
"Settings saved." => "Parametres enregistres.",
- "Running health check..." => "Verification de sante en cours...",
"Running consistency check..." => "Verification de coherence en cours...",
- "Health check successful." => "Verification de sante reussie.",
"Consistency check successful." => "Verification de coherence reussie.",
"Consistency check successful. No issues found." => "Verification de coherence reussie. Aucun probleme trouve.",
"Consistency check finished with issues." => "Verification de coherence terminee avec des problemes.",
"Request failed." => "La requete a echoue.",
- "Health check failed." => "La verification de sante a echoue.",
- "Health check failed: {detail}" => "La verification de sante a echoue : {detail}",
"Consistency check failed." => "La verification de coherence a echoue.",
"Etherpad API key is required." => "La cle API Etherpad est requise.",
"Etherpad Base URL is required." => "L'URL de base Etherpad est requise.",
"Etherpad Base URL must use https." => "L'URL de base Etherpad doit utiliser HTTPS.",
"Invalid Etherpad Base URL." => "URL de base Etherpad invalide.",
- "Etherpad Base URL must not include query or fragment." => "L'URL de base Etherpad ne doit pas contenir de requete ni de fragment.",
+ "Etherpad Base URL must not include query or fragment." => "L'URL de base Etherpad ne doit pas contenir de chaîne de requête ni de fragment.",
"Etherpad API URL must use http or https." => "L'URL API Etherpad doit utiliser HTTP ou HTTPS.",
"Invalid Etherpad API URL." => "URL API Etherpad invalide.",
- "Etherpad API URL must not include query or fragment." => "L'URL API Etherpad ne doit pas contenir de requete ni de fragment.",
+ "Etherpad API URL must not include query or fragment." => "L'URL API Etherpad ne doit pas contenir de chaîne de requête ni de fragment.",
"Invalid Etherpad API version format." => "Format de version API Etherpad invalide.",
"Sync interval must be between 5 and 3600 seconds." => "L'intervalle de synchronisation doit etre compris entre 5 et 3600 secondes.",
"External allowlist contains invalid host: {host}" => "La liste d'autorisation externe contient un hote invalide : {host}",
@@ -92,12 +87,12 @@
"Invalid pad name." => "Nom de pad non valide.",
"Invalid parent folder ID." => "Identifiant de dossier parent non valide.",
"Loading pad..." => "Chargement du pad...",
- "No synced snapshot is stored in this .pad file yet." => "Aucun instantané synchronisé n'est encore stocké dans ce fichier .pad.",
+ "No synced snapshot is stored in this .pad file yet." => "Aucune copie synchronisée n'est encore stockée dans ce fichier .pad.",
"Open the original .pad file" => "Ouvrir le fichier .pad original",
"Pad from another server" => "Pad d'un autre serveur",
"Pad name is required." => "Le nom du pad est obligatoire.",
- "Read-only snapshot" => "Instantané en lecture seule",
- "Read-only snapshot from the .pad file." => "Instantané en lecture seule du fichier .pad.",
+ "Read-only snapshot" => "Copie en lecture seule",
+ "Read-only snapshot from the .pad file." => "Copie en lecture seule du fichier .pad.",
"Selected file is not a .pad file." => "Le fichier sélectionné n'est pas un fichier .pad.",
"Selected parent folder is not writable." => "Le dossier parent sélectionné n'est pas modifiable.",
"Template file not found." => "Fichier modèle introuvable.",
@@ -120,6 +115,11 @@
"Could not initialize .pad file." => "Impossible d'initialiser le fichier .pad.",
"Could not resolve .pad file." => "Impossible de résoudre le fichier .pad.",
".pad file not found." => "Fichier .pad introuvable.",
+ "Test Etherpad connection" => "Tester la connexion à Etherpad",
+ "Testing Etherpad connection..." => "Vérification de la connexion à Etherpad...",
+ "Etherpad connection test successful." => "Connexion à Etherpad vérifiée avec succès.",
+ "Etherpad connection test failed." => "Impossible de vérifier la connexion à Etherpad.",
+ "Etherpad connection test failed: {detail}" => "Impossible de vérifier la connexion à Etherpad : {detail}",
];
$PLURAL_FORMS = "nplurals=2; plural=(n > 1);";
diff --git a/lib/Controller/AdminController.php b/lib/Controller/AdminController.php
index 8a24abf..81aebb6 100644
--- a/lib/Controller/AdminController.php
+++ b/lib/Controller/AdminController.php
@@ -84,7 +84,7 @@ function (): HealthCheckResult {
},
fn(HealthCheckResult $result): DataResponse => new DataResponse([
'ok' => true,
- 'message' => $this->l10n->t('Health check successful.'),
+ 'message' => $this->l10n->t('Etherpad connection test successful.'),
'host' => $result->host,
'api_host' => $result->apiHost,
'api_version' => $result->apiVersion,
@@ -94,7 +94,7 @@ function (): HealthCheckResult {
'pending_delete_count' => $result->pendingDeleteCount,
]),
[
- 'generic' => $this->l10n->t('Health check failed.'),
+ 'generic' => $this->l10n->t('Etherpad connection test failed.'),
'log_message' => 'Etherpad health check failed',
],
);
diff --git a/lib/Service/EtherpadHealthCheckService.php b/lib/Service/EtherpadHealthCheckService.php
index 86a0809..d33364d 100644
--- a/lib/Service/EtherpadHealthCheckService.php
+++ b/lib/Service/EtherpadHealthCheckService.php
@@ -51,7 +51,7 @@ public function check(ValidatedAdminSettings $settings): HealthCheckResult {
// path leaks the literal '{detail}' through to consumers in
// some catalog setups. Doing the substitution here removes that
// surface area.
- $template = (string)$this->l10n->t('Health check failed: {detail}');
+ $template = (string)$this->l10n->t('Etherpad connection test failed: {detail}');
throw new AdminHealthCheckException(
str_replace('{detail}', $detail, $template),
0,
diff --git a/lib/Settings/AdminSettings.php b/lib/Settings/AdminSettings.php
index 11f2a87..358f0f8 100644
--- a/lib/Settings/AdminSettings.php
+++ b/lib/Settings/AdminSettings.php
@@ -82,19 +82,19 @@ public function getForm(): TemplateResponse {
'trusted_embed_origins' => $this->l10n->t('Trusted embed origins (optional)'),
'trusted_embed_origins_hint' => $this->l10n->t('Absolute https origins allowed to embed the /embed/by-id and /embed/create-by-parent routes. Leave empty to disable external embedding.'),
'save_button' => $this->l10n->t('Save settings'),
- 'health_button' => $this->l10n->t('Health check'),
+ 'health_button' => $this->l10n->t('Test Etherpad connection'),
'consistency_button' => $this->l10n->t('Consistency check'),
'retry_pending_button' => $this->l10n->t('Retry pending deletes now'),
'pending_delete_label' => $this->l10n->t('Pending Etherpad deletes'),
'saving' => $this->l10n->t('Saving settings...'),
'saved' => $this->l10n->t('Settings saved.'),
- 'checking' => $this->l10n->t('Running health check...'),
+ 'checking' => $this->l10n->t('Testing Etherpad connection...'),
'consistency_running' => $this->l10n->t('Running consistency check...'),
- 'health_ok' => $this->l10n->t('Health check successful.'),
+ 'health_ok' => $this->l10n->t('Etherpad connection test successful.'),
'consistency_ok' => $this->l10n->t('Consistency check successful.'),
'request_failed' => $this->l10n->t('Request failed.'),
'saving_failed' => $this->l10n->t('Failed to save settings.'),
- 'health_failed' => $this->l10n->t('Health check failed.'),
+ 'health_failed' => $this->l10n->t('Etherpad connection test failed.'),
'consistency_failed' => $this->l10n->t('Consistency check failed.'),
'retry_failed' => $this->l10n->t('Pending delete retry failed.'),
],
diff --git a/src/admin-settings.js b/src/admin-settings.js
index b1f09c3..dc142a9 100644
--- a/src/admin-settings.js
+++ b/src/admin-settings.js
@@ -34,13 +34,13 @@
const l10n = {
saving: root.getAttribute('data-l10n-saving') || 'Saving settings...',
saved: root.getAttribute('data-l10n-saved') || 'Settings saved.',
- checking: root.getAttribute('data-l10n-checking') || 'Running health check...',
+ checking: root.getAttribute('data-l10n-checking') || 'Testing Etherpad connection...',
consistencyRunning: root.getAttribute('data-l10n-consistency-running') || 'Running consistency check...',
- healthOk: root.getAttribute('data-l10n-health-ok') || 'Health check successful.',
+ healthOk: root.getAttribute('data-l10n-health-ok') || 'Etherpad connection test successful.',
consistencyOk: root.getAttribute('data-l10n-consistency-ok') || 'Consistency check successful.',
requestFailed: root.getAttribute('data-l10n-request-failed') || 'Request failed.',
savingFailed: root.getAttribute('data-l10n-saving-failed') || 'Failed to save settings.',
- healthFailed: root.getAttribute('data-l10n-health-failed') || 'Health check failed.',
+ healthFailed: root.getAttribute('data-l10n-health-failed') || 'Etherpad connection test failed.',
consistencyFailed: root.getAttribute('data-l10n-consistency-failed') || 'Consistency check failed.',
pendingDeleteLabel: root.getAttribute('data-l10n-pending-delete-label') || 'Pending Etherpad deletes',
retryFailed: root.getAttribute('data-l10n-retry-failed') || 'Pending delete retry failed.',
diff --git a/tests/phpunit/unit/AdminControllerErrorMapperTest.php b/tests/phpunit/unit/AdminControllerErrorMapperTest.php
index f122018..ad22d5f 100644
--- a/tests/phpunit/unit/AdminControllerErrorMapperTest.php
+++ b/tests/phpunit/unit/AdminControllerErrorMapperTest.php
@@ -71,12 +71,12 @@ public function testMapsUnsupportedTestFaultWithSupportedValues(): void {
public function testMapsHealthCheckExceptionToBadGateway(): void {
$response = $this->buildMapper()->run(
- static fn(): array => throw new AdminHealthCheckException('Health check failed: bad key'),
+ static fn(): array => throw new AdminHealthCheckException('Etherpad connection test failed: bad key'),
static fn(array $data): DataResponse => new DataResponse($data),
);
$this->assertSame(Http::STATUS_BAD_GATEWAY, $response->getStatus());
- $this->assertSame('Health check failed: bad key', $response->getData()['message']);
+ $this->assertSame('Etherpad connection test failed: bad key', $response->getData()['message']);
}
public function testLogsGenericFailures(): void {
diff --git a/tests/phpunit/unit/EtherpadHealthCheckServiceTest.php b/tests/phpunit/unit/EtherpadHealthCheckServiceTest.php
index 11421ef..52114c5 100644
--- a/tests/phpunit/unit/EtherpadHealthCheckServiceTest.php
+++ b/tests/phpunit/unit/EtherpadHealthCheckServiceTest.php
@@ -181,7 +181,7 @@ public function testCheckAttachesNoHintForUnrecognisedFailureShape(): void {
->check($this->settings());
$this->fail('Expected health check exception.');
} catch (AdminHealthCheckException $e) {
- $this->assertSame('Health check failed: something completely unexpected happened', $e->getMessage());
+ $this->assertSame('Etherpad connection test failed: something completely unexpected happened', $e->getMessage());
}
}
From 4cb6b5e7ce4360627892b485c269e57c2b96bd13 Mon Sep 17 00:00:00 2001
From: Jaggob <37583151+Jaggob@users.noreply.github.com>
Date: Tue, 26 May 2026 19:33:27 +0200
Subject: [PATCH 05/13] i18n: restore frontend strings missed by t(APP_ID, ...)
scan
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
The previous scanner regex only matched the t('foo') signature, so all
src/files/* calls using the t(APP_ID, 'foo') form were treated as
orphans and dropped — leaving the public-pad create dialogs, the
file-action label, and the api-client error fallbacks untranslated
in DE/ES/FR.
Tightened the scanner to accept an optional identifier as the first
argument, and re-added the 13 affected keys across all four locales.
Translations for the previously-shipped strings carry over verbatim;
"Creating...", "Public pad from URL" and the remote-snapshot warning
get first-pass translations (translatewiki can polish later).
---
l10n/de.js | 15 ++++++++++++++-
l10n/de.json | 15 ++++++++++++++-
l10n/de.php | 13 +++++++++++++
l10n/de_DE.js | 15 ++++++++++++++-
l10n/de_DE.json | 15 ++++++++++++++-
l10n/de_DE.php | 13 +++++++++++++
l10n/es.js | 15 ++++++++++++++-
l10n/es.json | 15 ++++++++++++++-
l10n/es.php | 13 +++++++++++++
l10n/fr.js | 15 ++++++++++++++-
l10n/fr.json | 15 ++++++++++++++-
l10n/fr.php | 13 +++++++++++++
12 files changed, 164 insertions(+), 8 deletions(-)
diff --git a/l10n/de.js b/l10n/de.js
index 449ebab..ae534b3 100644
--- a/l10n/de.js
+++ b/l10n/de.js
@@ -119,7 +119,20 @@ OC.L10N.register(
"Testing Etherpad connection...": "Etherpad-Verbindung wird geprüft...",
"Etherpad connection test successful.": "Etherpad-Verbindung erfolgreich geprüft.",
"Etherpad connection test failed.": "Etherpad-Verbindung konnte nicht geprüft werden.",
- "Etherpad connection test failed: {detail}": "Etherpad-Verbindung konnte nicht geprüft werden: {detail}"
+ "Etherpad connection test failed: {detail}": "Etherpad-Verbindung konnte nicht geprüft werden: {detail}",
+ "Close": "Schließen",
+ "Create": "Erstellen",
+ "Creating...": "Wird erstellt...",
+ "File name": "Dateiname",
+ "File name is required.": "Dateiname ist erforderlich.",
+ "Open in Etherpad": "In Etherpad öffnen",
+ "Public pad": "Öffentliches Pad",
+ "Public pad from URL": "Öffentliches Pad aus URL",
+ "External pad URL": "Externe Pad-URL",
+ "External pad URL is required.": "Externe Pad-URL ist erforderlich.",
+ "Could not create public pad.": "Öffentliches Pad konnte nicht erstellt werden.",
+ "Could not import public pad URL.": "Öffentliche Pad-URL konnte nicht importiert werden.",
+ "Could not fetch the pad content from the remote server. The new file is empty for now — open the pad in the viewer to populate it.": "Pad-Inhalt konnte nicht vom Remote-Server geladen werden. Die neue Datei ist vorerst leer — öffne das Pad im Viewer, um sie zu befüllen."
},
"nplurals=2; plural=(n != 1);"
);
diff --git a/l10n/de.json b/l10n/de.json
index 091329a..30a6f07 100644
--- a/l10n/de.json
+++ b/l10n/de.json
@@ -118,7 +118,20 @@
"Testing Etherpad connection...": "Etherpad-Verbindung wird geprüft...",
"Etherpad connection test successful.": "Etherpad-Verbindung erfolgreich geprüft.",
"Etherpad connection test failed.": "Etherpad-Verbindung konnte nicht geprüft werden.",
- "Etherpad connection test failed: {detail}": "Etherpad-Verbindung konnte nicht geprüft werden: {detail}"
+ "Etherpad connection test failed: {detail}": "Etherpad-Verbindung konnte nicht geprüft werden: {detail}",
+ "Close": "Schließen",
+ "Create": "Erstellen",
+ "Creating...": "Wird erstellt...",
+ "File name": "Dateiname",
+ "File name is required.": "Dateiname ist erforderlich.",
+ "Open in Etherpad": "In Etherpad öffnen",
+ "Public pad": "Öffentliches Pad",
+ "Public pad from URL": "Öffentliches Pad aus URL",
+ "External pad URL": "Externe Pad-URL",
+ "External pad URL is required.": "Externe Pad-URL ist erforderlich.",
+ "Could not create public pad.": "Öffentliches Pad konnte nicht erstellt werden.",
+ "Could not import public pad URL.": "Öffentliche Pad-URL konnte nicht importiert werden.",
+ "Could not fetch the pad content from the remote server. The new file is empty for now — open the pad in the viewer to populate it.": "Pad-Inhalt konnte nicht vom Remote-Server geladen werden. Die neue Datei ist vorerst leer — öffne das Pad im Viewer, um sie zu befüllen."
},
"pluralForm": "nplurals=2; plural=(n != 1);"
}
diff --git a/l10n/de.php b/l10n/de.php
index aba35e6..f68df14 100644
--- a/l10n/de.php
+++ b/l10n/de.php
@@ -120,6 +120,19 @@
"Etherpad connection test successful." => "Etherpad-Verbindung erfolgreich geprüft.",
"Etherpad connection test failed." => "Etherpad-Verbindung konnte nicht geprüft werden.",
"Etherpad connection test failed: {detail}" => "Etherpad-Verbindung konnte nicht geprüft werden: {detail}",
+ "Close" => "Schließen",
+ "Create" => "Erstellen",
+ "Creating..." => "Wird erstellt...",
+ "File name" => "Dateiname",
+ "File name is required." => "Dateiname ist erforderlich.",
+ "Open in Etherpad" => "In Etherpad öffnen",
+ "Public pad" => "Öffentliches Pad",
+ "Public pad from URL" => "Öffentliches Pad aus URL",
+ "External pad URL" => "Externe Pad-URL",
+ "External pad URL is required." => "Externe Pad-URL ist erforderlich.",
+ "Could not create public pad." => "Öffentliches Pad konnte nicht erstellt werden.",
+ "Could not import public pad URL." => "Öffentliche Pad-URL konnte nicht importiert werden.",
+ "Could not fetch the pad content from the remote server. The new file is empty for now — open the pad in the viewer to populate it." => "Pad-Inhalt konnte nicht vom Remote-Server geladen werden. Die neue Datei ist vorerst leer — öffne das Pad im Viewer, um sie zu befüllen.",
];
$PLURAL_FORMS = "nplurals=2; plural=(n != 1);";
diff --git a/l10n/de_DE.js b/l10n/de_DE.js
index 449ebab..ae534b3 100644
--- a/l10n/de_DE.js
+++ b/l10n/de_DE.js
@@ -119,7 +119,20 @@ OC.L10N.register(
"Testing Etherpad connection...": "Etherpad-Verbindung wird geprüft...",
"Etherpad connection test successful.": "Etherpad-Verbindung erfolgreich geprüft.",
"Etherpad connection test failed.": "Etherpad-Verbindung konnte nicht geprüft werden.",
- "Etherpad connection test failed: {detail}": "Etherpad-Verbindung konnte nicht geprüft werden: {detail}"
+ "Etherpad connection test failed: {detail}": "Etherpad-Verbindung konnte nicht geprüft werden: {detail}",
+ "Close": "Schließen",
+ "Create": "Erstellen",
+ "Creating...": "Wird erstellt...",
+ "File name": "Dateiname",
+ "File name is required.": "Dateiname ist erforderlich.",
+ "Open in Etherpad": "In Etherpad öffnen",
+ "Public pad": "Öffentliches Pad",
+ "Public pad from URL": "Öffentliches Pad aus URL",
+ "External pad URL": "Externe Pad-URL",
+ "External pad URL is required.": "Externe Pad-URL ist erforderlich.",
+ "Could not create public pad.": "Öffentliches Pad konnte nicht erstellt werden.",
+ "Could not import public pad URL.": "Öffentliche Pad-URL konnte nicht importiert werden.",
+ "Could not fetch the pad content from the remote server. The new file is empty for now — open the pad in the viewer to populate it.": "Pad-Inhalt konnte nicht vom Remote-Server geladen werden. Die neue Datei ist vorerst leer — öffne das Pad im Viewer, um sie zu befüllen."
},
"nplurals=2; plural=(n != 1);"
);
diff --git a/l10n/de_DE.json b/l10n/de_DE.json
index 091329a..30a6f07 100644
--- a/l10n/de_DE.json
+++ b/l10n/de_DE.json
@@ -118,7 +118,20 @@
"Testing Etherpad connection...": "Etherpad-Verbindung wird geprüft...",
"Etherpad connection test successful.": "Etherpad-Verbindung erfolgreich geprüft.",
"Etherpad connection test failed.": "Etherpad-Verbindung konnte nicht geprüft werden.",
- "Etherpad connection test failed: {detail}": "Etherpad-Verbindung konnte nicht geprüft werden: {detail}"
+ "Etherpad connection test failed: {detail}": "Etherpad-Verbindung konnte nicht geprüft werden: {detail}",
+ "Close": "Schließen",
+ "Create": "Erstellen",
+ "Creating...": "Wird erstellt...",
+ "File name": "Dateiname",
+ "File name is required.": "Dateiname ist erforderlich.",
+ "Open in Etherpad": "In Etherpad öffnen",
+ "Public pad": "Öffentliches Pad",
+ "Public pad from URL": "Öffentliches Pad aus URL",
+ "External pad URL": "Externe Pad-URL",
+ "External pad URL is required.": "Externe Pad-URL ist erforderlich.",
+ "Could not create public pad.": "Öffentliches Pad konnte nicht erstellt werden.",
+ "Could not import public pad URL.": "Öffentliche Pad-URL konnte nicht importiert werden.",
+ "Could not fetch the pad content from the remote server. The new file is empty for now — open the pad in the viewer to populate it.": "Pad-Inhalt konnte nicht vom Remote-Server geladen werden. Die neue Datei ist vorerst leer — öffne das Pad im Viewer, um sie zu befüllen."
},
"pluralForm": "nplurals=2; plural=(n != 1);"
}
diff --git a/l10n/de_DE.php b/l10n/de_DE.php
index aba35e6..f68df14 100644
--- a/l10n/de_DE.php
+++ b/l10n/de_DE.php
@@ -120,6 +120,19 @@
"Etherpad connection test successful." => "Etherpad-Verbindung erfolgreich geprüft.",
"Etherpad connection test failed." => "Etherpad-Verbindung konnte nicht geprüft werden.",
"Etherpad connection test failed: {detail}" => "Etherpad-Verbindung konnte nicht geprüft werden: {detail}",
+ "Close" => "Schließen",
+ "Create" => "Erstellen",
+ "Creating..." => "Wird erstellt...",
+ "File name" => "Dateiname",
+ "File name is required." => "Dateiname ist erforderlich.",
+ "Open in Etherpad" => "In Etherpad öffnen",
+ "Public pad" => "Öffentliches Pad",
+ "Public pad from URL" => "Öffentliches Pad aus URL",
+ "External pad URL" => "Externe Pad-URL",
+ "External pad URL is required." => "Externe Pad-URL ist erforderlich.",
+ "Could not create public pad." => "Öffentliches Pad konnte nicht erstellt werden.",
+ "Could not import public pad URL." => "Öffentliche Pad-URL konnte nicht importiert werden.",
+ "Could not fetch the pad content from the remote server. The new file is empty for now — open the pad in the viewer to populate it." => "Pad-Inhalt konnte nicht vom Remote-Server geladen werden. Die neue Datei ist vorerst leer — öffne das Pad im Viewer, um sie zu befüllen.",
];
$PLURAL_FORMS = "nplurals=2; plural=(n != 1);";
diff --git a/l10n/es.js b/l10n/es.js
index 0f1da35..4159b2f 100644
--- a/l10n/es.js
+++ b/l10n/es.js
@@ -119,7 +119,20 @@ OC.L10N.register(
"Testing Etherpad connection...": "Comprobando la conexión con Etherpad...",
"Etherpad connection test successful.": "Conexión con Etherpad comprobada correctamente.",
"Etherpad connection test failed.": "No se pudo comprobar la conexión con Etherpad.",
- "Etherpad connection test failed: {detail}": "No se pudo comprobar la conexión con Etherpad: {detail}"
+ "Etherpad connection test failed: {detail}": "No se pudo comprobar la conexión con Etherpad: {detail}",
+ "Close": "Cerrar",
+ "Create": "Crear",
+ "Creating...": "Creando...",
+ "File name": "Nombre de archivo",
+ "File name is required.": "El nombre de archivo es obligatorio.",
+ "Open in Etherpad": "Abrir en Etherpad",
+ "Public pad": "Pad público",
+ "Public pad from URL": "Pad público desde URL",
+ "External pad URL": "URL de pad externo",
+ "External pad URL is required.": "La URL de pad externo es obligatoria.",
+ "Could not create public pad.": "No se pudo crear el pad público.",
+ "Could not import public pad URL.": "No se pudo importar la URL del pad público.",
+ "Could not fetch the pad content from the remote server. The new file is empty for now — open the pad in the viewer to populate it.": "No se pudo obtener el contenido del pad desde el servidor remoto. El nuevo archivo está vacío por ahora — abre el pad en el visor para rellenarlo."
},
"nplurals=2; plural=(n != 1);"
);
diff --git a/l10n/es.json b/l10n/es.json
index 306e186..932be07 100644
--- a/l10n/es.json
+++ b/l10n/es.json
@@ -118,7 +118,20 @@
"Testing Etherpad connection...": "Comprobando la conexión con Etherpad...",
"Etherpad connection test successful.": "Conexión con Etherpad comprobada correctamente.",
"Etherpad connection test failed.": "No se pudo comprobar la conexión con Etherpad.",
- "Etherpad connection test failed: {detail}": "No se pudo comprobar la conexión con Etherpad: {detail}"
+ "Etherpad connection test failed: {detail}": "No se pudo comprobar la conexión con Etherpad: {detail}",
+ "Close": "Cerrar",
+ "Create": "Crear",
+ "Creating...": "Creando...",
+ "File name": "Nombre de archivo",
+ "File name is required.": "El nombre de archivo es obligatorio.",
+ "Open in Etherpad": "Abrir en Etherpad",
+ "Public pad": "Pad público",
+ "Public pad from URL": "Pad público desde URL",
+ "External pad URL": "URL de pad externo",
+ "External pad URL is required.": "La URL de pad externo es obligatoria.",
+ "Could not create public pad.": "No se pudo crear el pad público.",
+ "Could not import public pad URL.": "No se pudo importar la URL del pad público.",
+ "Could not fetch the pad content from the remote server. The new file is empty for now — open the pad in the viewer to populate it.": "No se pudo obtener el contenido del pad desde el servidor remoto. El nuevo archivo está vacío por ahora — abre el pad en el visor para rellenarlo."
},
"pluralForm": "nplurals=2; plural=(n != 1);"
}
diff --git a/l10n/es.php b/l10n/es.php
index ed02231..4e10017 100644
--- a/l10n/es.php
+++ b/l10n/es.php
@@ -120,6 +120,19 @@
"Etherpad connection test successful." => "Conexión con Etherpad comprobada correctamente.",
"Etherpad connection test failed." => "No se pudo comprobar la conexión con Etherpad.",
"Etherpad connection test failed: {detail}" => "No se pudo comprobar la conexión con Etherpad: {detail}",
+ "Close" => "Cerrar",
+ "Create" => "Crear",
+ "Creating..." => "Creando...",
+ "File name" => "Nombre de archivo",
+ "File name is required." => "El nombre de archivo es obligatorio.",
+ "Open in Etherpad" => "Abrir en Etherpad",
+ "Public pad" => "Pad público",
+ "Public pad from URL" => "Pad público desde URL",
+ "External pad URL" => "URL de pad externo",
+ "External pad URL is required." => "La URL de pad externo es obligatoria.",
+ "Could not create public pad." => "No se pudo crear el pad público.",
+ "Could not import public pad URL." => "No se pudo importar la URL del pad público.",
+ "Could not fetch the pad content from the remote server. The new file is empty for now — open the pad in the viewer to populate it." => "No se pudo obtener el contenido del pad desde el servidor remoto. El nuevo archivo está vacío por ahora — abre el pad en el visor para rellenarlo.",
];
$PLURAL_FORMS = "nplurals=2; plural=(n != 1);";
diff --git a/l10n/fr.js b/l10n/fr.js
index 1ad7e3c..c9f29b3 100644
--- a/l10n/fr.js
+++ b/l10n/fr.js
@@ -119,7 +119,20 @@ OC.L10N.register(
"Testing Etherpad connection...": "Vérification de la connexion à Etherpad...",
"Etherpad connection test successful.": "Connexion à Etherpad vérifiée avec succès.",
"Etherpad connection test failed.": "Impossible de vérifier la connexion à Etherpad.",
- "Etherpad connection test failed: {detail}": "Impossible de vérifier la connexion à Etherpad : {detail}"
+ "Etherpad connection test failed: {detail}": "Impossible de vérifier la connexion à Etherpad : {detail}",
+ "Close": "Fermer",
+ "Create": "Créer",
+ "Creating...": "Création...",
+ "File name": "Nom de fichier",
+ "File name is required.": "Le nom de fichier est requis.",
+ "Open in Etherpad": "Ouvrir dans Etherpad",
+ "Public pad": "Pad public",
+ "Public pad from URL": "Pad public depuis une URL",
+ "External pad URL": "URL du pad externe",
+ "External pad URL is required.": "L'URL du pad externe est requise.",
+ "Could not create public pad.": "Impossible de créer le pad public.",
+ "Could not import public pad URL.": "Impossible d'importer l'URL du pad public.",
+ "Could not fetch the pad content from the remote server. The new file is empty for now — open the pad in the viewer to populate it.": "Impossible de récupérer le contenu du pad depuis le serveur distant. Le nouveau fichier est vide pour l'instant — ouvre le pad dans la visionneuse pour le remplir."
},
"nplurals=2; plural=(n > 1);"
);
diff --git a/l10n/fr.json b/l10n/fr.json
index dcb9a01..feaa6d3 100644
--- a/l10n/fr.json
+++ b/l10n/fr.json
@@ -118,7 +118,20 @@
"Testing Etherpad connection...": "Vérification de la connexion à Etherpad...",
"Etherpad connection test successful.": "Connexion à Etherpad vérifiée avec succès.",
"Etherpad connection test failed.": "Impossible de vérifier la connexion à Etherpad.",
- "Etherpad connection test failed: {detail}": "Impossible de vérifier la connexion à Etherpad : {detail}"
+ "Etherpad connection test failed: {detail}": "Impossible de vérifier la connexion à Etherpad : {detail}",
+ "Close": "Fermer",
+ "Create": "Créer",
+ "Creating...": "Création...",
+ "File name": "Nom de fichier",
+ "File name is required.": "Le nom de fichier est requis.",
+ "Open in Etherpad": "Ouvrir dans Etherpad",
+ "Public pad": "Pad public",
+ "Public pad from URL": "Pad public depuis une URL",
+ "External pad URL": "URL du pad externe",
+ "External pad URL is required.": "L'URL du pad externe est requise.",
+ "Could not create public pad.": "Impossible de créer le pad public.",
+ "Could not import public pad URL.": "Impossible d'importer l'URL du pad public.",
+ "Could not fetch the pad content from the remote server. The new file is empty for now — open the pad in the viewer to populate it.": "Impossible de récupérer le contenu du pad depuis le serveur distant. Le nouveau fichier est vide pour l'instant — ouvre le pad dans la visionneuse pour le remplir."
},
"pluralForm": "nplurals=2; plural=(n > 1);"
}
diff --git a/l10n/fr.php b/l10n/fr.php
index f3d30e3..afea89c 100644
--- a/l10n/fr.php
+++ b/l10n/fr.php
@@ -120,6 +120,19 @@
"Etherpad connection test successful." => "Connexion à Etherpad vérifiée avec succès.",
"Etherpad connection test failed." => "Impossible de vérifier la connexion à Etherpad.",
"Etherpad connection test failed: {detail}" => "Impossible de vérifier la connexion à Etherpad : {detail}",
+ "Close" => "Fermer",
+ "Create" => "Créer",
+ "Creating..." => "Création...",
+ "File name" => "Nom de fichier",
+ "File name is required." => "Le nom de fichier est requis.",
+ "Open in Etherpad" => "Ouvrir dans Etherpad",
+ "Public pad" => "Pad public",
+ "Public pad from URL" => "Pad public depuis une URL",
+ "External pad URL" => "URL du pad externe",
+ "External pad URL is required." => "L'URL du pad externe est requise.",
+ "Could not create public pad." => "Impossible de créer le pad public.",
+ "Could not import public pad URL." => "Impossible d'importer l'URL du pad public.",
+ "Could not fetch the pad content from the remote server. The new file is empty for now — open the pad in the viewer to populate it." => "Impossible de récupérer le contenu du pad depuis le serveur distant. Le nouveau fichier est vide pour l'instant — ouvre le pad dans la visionneuse pour le remplir.",
];
$PLURAL_FORMS = "nplurals=2; plural=(n > 1);";
From f5adb7244c0806c996d60827871e6f8b54802ad7 Mon Sep 17 00:00:00 2001
From: Jaggob <37583151+Jaggob@users.noreply.github.com>
Date: Wed, 27 May 2026 12:42:30 +0200
Subject: [PATCH 06/13] i18n: sort locale catalogs alphabetically for stable
cross-locale diffs
Locale files used to keep whatever insertion order the previous JSON
had, with newly-added keys appended. That made DE / ES / FR
non-overlapping in line numbers and noisy to review side by side.
Sort all four locale catalogs (json/js/php) by key so the same string
lives on the same line everywhere.
---
l10n/de.js | 204 ++++++++++++++++++++++++------------------------
l10n/de.json | 204 ++++++++++++++++++++++++------------------------
l10n/de.php | 204 ++++++++++++++++++++++++------------------------
l10n/de_DE.js | 204 ++++++++++++++++++++++++------------------------
l10n/de_DE.json | 204 ++++++++++++++++++++++++------------------------
l10n/de_DE.php | 204 ++++++++++++++++++++++++------------------------
l10n/es.js | 152 ++++++++++++++++++------------------
l10n/es.json | 152 ++++++++++++++++++------------------
l10n/es.php | 150 +++++++++++++++++------------------
l10n/fr.js | 152 ++++++++++++++++++------------------
l10n/fr.json | 152 ++++++++++++++++++------------------
l10n/fr.php | 150 +++++++++++++++++------------------
12 files changed, 1066 insertions(+), 1066 deletions(-)
diff --git a/l10n/de.js b/l10n/de.js
index ae534b3..8025b2f 100644
--- a/l10n/de.js
+++ b/l10n/de.js
@@ -1,138 +1,138 @@
OC.L10N.register(
"etherpad_nextcloud",
{
- "Pads": "Pads",
- "Configure the Etherpad server and external pad security policy for the Etherpad Nextcloud app.": "Konfiguriere den Etherpad-Server und die Sicherheitsrichtlinie für externe Pads in der Etherpad-Nextcloud-App.",
- "Etherpad Base URL": "Etherpad-Basis-URL",
- "Etherpad API URL (optional)": "Etherpad-API-URL (optional)",
- "Optional internal URL for server-side API calls. Leave empty to use Etherpad Base URL.": "Optionale interne URL für serverseitige API-Aufrufe. Leer lassen, um die Etherpad-Basis-URL zu verwenden.",
- "Etherpad session cookie domain (optional)": "Etherpad-Session-Cookie-Domain (optional)",
- "Auto-filled from the Nextcloud and Etherpad hosts when possible. Adjust it if your deployment uses a proxy path or a different trusted parent domain; leave empty for a host-only cookie.": "Wird, wenn möglich, automatisch aus den Nextcloud- und Etherpad-Hosts abgeleitet. Anpassen, wenn die Installation einen Proxy-Pfad oder eine andere vertrauenswürdige Parent-Domain nutzt; leer lassen für ein Host-only-Cookie.",
- "Etherpad API key": "Etherpad-API-Schlüssel",
- "Detected API version:": "Erkannte API-Version:",
- "Controls how often pad content is copied from Etherpad into the .pad file while the pad is open.": "Steuert, wie oft der Pad-Inhalt aus Etherpad in die .pad-Datei kopiert wird, während das Pad geöffnet ist.",
+ ".pad file not found.": ".pad-Datei nicht gefunden.",
+ ".pad file sync interval (seconds)": ".pad-Datei-Synchronisierungsintervall (Sekunden)",
+ "A file with this name already exists.": "Eine Datei mit diesem Namen existiert bereits.",
+ "Absolute https origins allowed to embed the /embed/by-id and /embed/create-by-parent routes. Leave empty to disable external embedding.": "Absolute HTTPS-Origins, die die Routen /embed/by-id und /embed/create-by-parent einbetten dürfen. Leer lassen, um externes Einbetten zu deaktivieren.",
+ "Add trusted Etherpad hostnames or HTTPS origins. Leave empty only if all public HTTPS hosts should be trusted.": "Vertrauenswürdige Etherpad-Hostnamen oder HTTPS-Ursprünge eintragen. Nur leer lassen, wenn alle öffentlichen HTTPS-Hosts vertrauenswürdig sein sollen.",
+ "Admin permissions required.": "Administratorrechte erforderlich.",
"Allow linking external public pads": "Verlinken externer öffentlicher Pads erlauben",
- "External host allowlist (optional)": "Allowlist externer Hosts (optional)",
- "Save settings": "Einstellungen speichern",
+ "Authentication required.": "Authentifizierung erforderlich.",
+ "Auto-filled from the Nextcloud and Etherpad hosts when possible. Adjust it if your deployment uses a proxy path or a different trusted parent domain; leave empty for a host-only cookie.": "Wird, wenn möglich, automatisch aus den Nextcloud- und Etherpad-Hosts abgeleitet. Anpassen, wenn die Installation einen Proxy-Pfad oder eine andere vertrauenswürdige Parent-Domain nutzt; leer lassen für ein Host-only-Cookie.",
+ "Back": "Zurück",
+ "Cannot open selected .pad file.": "Ausgewählte .pad-Datei konnte nicht geöffnet werden.",
+ "Cannot read selected .pad file.": "Ausgewählte .pad-Datei konnte nicht gelesen werden.",
+ "Cannot resolve file path for file ID.": "Dateipfad zur Datei-ID konnte nicht ermittelt werden.",
+ "Cannot resolve selected .pad file.": "Ausgewählte .pad-Datei konnte nicht aufgelöst werden.",
+ "Cannot resolve selected parent folder.": "Ausgewählter Zielordner konnte nicht aufgelöst werden.",
+ "Checking for the original pad...": "Suche nach dem Original-Pad ...",
+ "Close": "Schließen",
+ "Configure the Etherpad server and external pad security policy for the Etherpad Nextcloud app.": "Konfiguriere den Etherpad-Server und die Sicherheitsrichtlinie für externe Pads in der Etherpad-Nextcloud-App.",
"Consistency check": "Konsistenzprüfung",
- "Pending Etherpad deletes": "Ausstehende Etherpad-Löschungen",
- "Saving settings...": "Einstellungen werden gespeichert...",
- "Settings saved.": "Einstellungen gespeichert.",
- "Running consistency check...": "Konsistenzprüfung läuft...",
+ "Consistency check failed.": "Konsistenzprüfung fehlgeschlagen.",
+ "Consistency check finished with issues.": "Konsistenzprüfung mit Problemen abgeschlossen.",
"Consistency check successful.": "Konsistenzprüfung erfolgreich.",
"Consistency check successful. No issues found.": "Konsistenzprüfung erfolgreich. Keine Probleme gefunden.",
- "Consistency check finished with issues.": "Konsistenzprüfung mit Problemen abgeschlossen.",
- "Request failed.": "Anfrage fehlgeschlagen.",
- "Consistency check failed.": "Konsistenzprüfung fehlgeschlagen.",
- "Etherpad API key is required.": "Ein Etherpad-API-Schlüssel ist erforderlich.",
- "Etherpad Base URL is required.": "Eine Etherpad-Basis-URL ist erforderlich.",
- "Etherpad Base URL must use https.": "Die Etherpad-Basis-URL muss HTTPS verwenden.",
- "Invalid Etherpad Base URL.": "Ungültige Etherpad-Basis-URL.",
- "Etherpad Base URL must not include query or fragment.": "Die Etherpad-Basis-URL darf keinen Query-String und kein Fragment enthalten.",
- "Etherpad API URL must use http or https.": "Die Etherpad-API-URL muss HTTP oder HTTPS verwenden.",
- "Invalid Etherpad API URL.": "Ungültige Etherpad-API-URL.",
- "Etherpad API URL must not include query or fragment.": "Die Etherpad-API-URL darf keinen Query-String und kein Fragment enthalten.",
- "Invalid Etherpad API version format.": "Ungültiges Format für die Etherpad-API-Version.",
- "Sync interval must be between 5 and 3600 seconds.": "Das Intervall muss zwischen 5 und 3600 Sekunden liegen.",
- "External allowlist contains invalid host: {host}": "Die externe Allowlist enthält einen ungültigen Host: {host}",
- "External allowlist URL must use https: {host}": "Die externe Allowlist-URL muss HTTPS verwenden: {host}",
- "Test fault cleared.": "Testfehler zurückgesetzt.",
- "Test fault set: {fault}": "Testfehler gesetzt: {fault}",
- "Unsupported test fault.": "Nicht unterstützter Testfehler.",
- "Test faults are available only when Nextcloud debug mode is enabled.": "Testfehler sind nur verfügbar, wenn der Nextcloud-Debug-Modus aktiviert ist.",
- "Authentication required.": "Authentifizierung erforderlich.",
- "Admin permissions required.": "Administratorrechte erforderlich.",
- "New pad": "Neues Pad",
- "Open original pad": "Original-Pad öffnen",
- "This .pad file has no matching pad in this Nextcloud.": "Für diese .pad-Datei existiert in dieser Nextcloud kein passendes Pad.",
- "Checking for the original pad...": "Suche nach dem Original-Pad ...",
- "This file looks like a copy of an existing .pad file in your account. Open the original to keep editing the linked pad, or create a new pad to fork the content stored in this file.": "Diese Datei sieht aus wie eine Kopie einer bereits vorhandenen .pad-Datei in deinem Konto. Öffne das Original, um am verknüpften Pad weiterzuarbeiten, oder erstelle aus dem in dieser Datei gespeicherten Inhalt ein neues Pad als eigene Kopie.",
- "We couldn't find a matching pad in this Nextcloud. You can create a new pad from the text stored in this file; from then on, opening this file will load the new pad.": "Wir konnten in dieser Nextcloud kein zugehöriges Pad finden. Du kannst aus dem in dieser Datei gespeicherten Text ein neues Pad erstellen; ab dann öffnet diese Datei das neue Pad.",
- "Create new pad from this file": "Neues Pad aus dieser Datei erstellen",
- "Creating new pad...": "Neues Pad wird erstellt ...",
- "Open the original .pad file": "Ursprüngliche .pad-Datei öffnen",
+ "Controls how often pad content is copied from Etherpad into the .pad file while the pad is open.": "Steuert, wie oft der Pad-Inhalt aus Etherpad in die .pad-Datei kopiert wird, während das Pad geöffnet ist.",
+ "Cookie domain must be a hostname, not a URL.": "Cookie-Domain muss ein Hostname sein, keine URL.",
+ "Cookie domain must be a valid shared hostname.": "Cookie-Domain muss ein gültiger gemeinsamer Hostname sein.",
+ "Could not check pad sync status.": "Synchronisierungsstatus des Pads konnte nicht ermittelt werden.",
+ "Could not create pad": "Pad konnte nicht erstellt werden",
+ "Could not create pad from template.": "Pad konnte nicht aus Vorlage erstellt werden.",
"Could not create pad.": "Pad konnte nicht erstellt werden.",
+ "Could not create public pad.": "Öffentliches Pad konnte nicht erstellt werden.",
+ "Could not fetch the pad content from the remote server. The new file is empty for now — open the pad in the viewer to populate it.": "Pad-Inhalt konnte nicht vom Remote-Server geladen werden. Die neue Datei ist vorerst leer — öffne das Pad im Viewer, um sie zu befüllen.",
"Could not import external pad.": "Externes Pad konnte nicht importiert werden.",
+ "Could not import public pad URL.": "Öffentliche Pad-URL konnte nicht importiert werden.",
+ "Could not initialize .pad file.": ".pad-Datei konnte nicht initialisiert werden.",
+ "Could not look up the original pad.": "Original-Pad konnte nicht ermittelt werden.",
+ "Could not move pad to trash.": "Pad konnte nicht in den Papierkorb verschoben werden.",
+ "Could not open pad": "Pad konnte nicht geöffnet werden",
"Could not open pad.": "Pad konnte nicht geöffnet werden.",
"Could not read pad metadata.": "Pad-Metadaten konnten nicht gelesen werden.",
- "Could not sync pad content.": "Pad-Inhalt konnte nicht synchronisiert werden.",
- "Could not check pad sync status.": "Synchronisierungsstatus des Pads konnte nicht ermittelt werden.",
- "Could not move pad to trash.": "Pad konnte nicht in den Papierkorb verschoben werden.",
- "Could not look up the original pad.": "Original-Pad konnte nicht ermittelt werden.",
"Could not recover pad from this file.": "Pad konnte aus dieser Datei nicht wiederhergestellt werden.",
+ "Could not resolve .pad file.": ".pad-Datei konnte nicht aufgelöst werden.",
"Could not restore pad from trash.": "Pad konnte nicht aus dem Papierkorb wiederhergestellt werden.",
- "Hint: Etherpad rejected the API key. Check that the key matches Etherpad's APIKEY.txt.": "Hinweis: Etherpad hat den API-Schlüssel abgelehnt. Prüfe, ob er mit Etherpads APIKEY.txt übereinstimmt.",
+ "Could not sync pad content.": "Pad-Inhalt konnte nicht synchronisiert werden.",
+ "Create": "Erstellen",
+ "Create new pad from this file": "Neues Pad aus dieser Datei erstellen",
+ "Creating new pad...": "Neues Pad wird erstellt ...",
+ "Creating pad...": "Pad wird erstellt...",
+ "Creating...": "Wird erstellt...",
+ "Delete linked Etherpad pad when .pad file is moved to trash": "Verknüpftes Etherpad-Pad löschen, wenn die .pad-Datei in den Papierkorb verschoben wird",
+ "Detected API version:": "Erkannte API-Version:",
+ "Embed configuration is incomplete.": "Embed-Konfiguration ist unvollständig.",
+ "Etherpad API URL (optional)": "Etherpad-API-URL (optional)",
+ "Etherpad API URL must not include query or fragment.": "Die Etherpad-API-URL darf keinen Query-String und kein Fragment enthalten.",
+ "Etherpad API URL must use http or https.": "Die Etherpad-API-URL muss HTTP oder HTTPS verwenden.",
+ "Etherpad API key": "Etherpad-API-Schlüssel",
+ "Etherpad API key is required.": "Ein Etherpad-API-Schlüssel ist erforderlich.",
+ "Etherpad Base URL": "Etherpad-Basis-URL",
+ "Etherpad Base URL is required.": "Eine Etherpad-Basis-URL ist erforderlich.",
+ "Etherpad Base URL must not include query or fragment.": "Die Etherpad-Basis-URL darf keinen Query-String und kein Fragment enthalten.",
+ "Etherpad Base URL must use https.": "Die Etherpad-Basis-URL muss HTTPS verwenden.",
+ "Etherpad connection test failed.": "Etherpad-Verbindung konnte nicht geprüft werden.",
+ "Etherpad connection test failed: {detail}": "Etherpad-Verbindung konnte nicht geprüft werden: {detail}",
+ "Etherpad connection test successful.": "Etherpad-Verbindung erfolgreich geprüft.",
+ "Etherpad session cookie domain (optional)": "Etherpad-Session-Cookie-Domain (optional)",
+ "External allowlist URL must use https: {host}": "Die externe Allowlist-URL muss HTTPS verwenden: {host}",
+ "External allowlist contains invalid host: {host}": "Die externe Allowlist enthält einen ungültigen Host: {host}",
+ "External host allowlist (optional)": "Allowlist externer Hosts (optional)",
+ "External pad URL": "Externe Pad-URL",
+ "External pad URL is required.": "Externe Pad-URL ist erforderlich.",
+ "Failed to save settings.": "Einstellungen konnten nicht gespeichert werden.",
+ "Failed to update test fault.": "Test-Fehler konnte nicht aktualisiert werden.",
+ "File name": "Dateiname",
+ "File name is required.": "Dateiname ist erforderlich.",
"Hint: API endpoint not found. Check the API host and that the configured API version is supported by your Etherpad.": "Hinweis: API-Endpunkt nicht gefunden. Prüfe den API-Host und ob die konfigurierte API-Version von deinem Etherpad unterstützt wird.",
- "Hint: Etherpad returned a server error. Check the Etherpad server logs.": "Hinweis: Etherpad hat einen Server-Fehler zurückgegeben. Prüfe die Etherpad-Server-Logs.",
- "Hint: The configured Etherpad host did not resolve. Check the hostname for typos and that DNS reaches it from this server.": "Hinweis: Der konfigurierte Etherpad-Host konnte nicht aufgelöst werden. Prüfe den Hostnamen auf Tippfehler und ob er von diesem Server per DNS aufgelöst werden kann.",
"Hint: Connection refused. Etherpad does not appear to be running on the configured host and port.": "Hinweis: Verbindung verweigert. Etherpad läuft anscheinend nicht auf dem konfigurierten Host und Port.",
"Hint: Connection timed out. Check that this server can reach the Etherpad host (firewall, network).": "Hinweis: Zeitüberschreitung bei der Verbindung. Prüfe, ob dieser Server den Etherpad-Host erreichen kann (Firewall, Netzwerk).",
- "Hint: TLS handshake failed. Check the Etherpad certificate and that the configured URL uses the right scheme.": "Hinweis: TLS-Handshake fehlgeschlagen. Prüfe das Etherpad-Zertifikat und ob die konfigurierte URL das richtige Schema verwendet.",
"Hint: Could not reach Etherpad. Check the API host and that this server can connect to it.": "Hinweis: Etherpad konnte nicht erreicht werden. Prüfe den API-Host und ob dieser Server eine Verbindung herstellen kann.",
+ "Hint: Etherpad rejected the API key. Check that the key matches Etherpad's APIKEY.txt.": "Hinweis: Etherpad hat den API-Schlüssel abgelehnt. Prüfe, ob er mit Etherpads APIKEY.txt übereinstimmt.",
+ "Hint: Etherpad returned a server error. Check the Etherpad server logs.": "Hinweis: Etherpad hat einen Server-Fehler zurückgegeben. Prüfe die Etherpad-Server-Logs.",
"Hint: Etherpad returned non-JSON. Likely a reverse proxy or HTML error page in front of the API host.": "Hinweis: Etherpad hat keine JSON-Antwort zurückgegeben. Wahrscheinlich steht ein Reverse-Proxy oder eine HTML-Fehlerseite vor dem API-Host.",
+ "Hint: Set \"authenticationMethod\": \"apikey\" in Etherpad's settings.json.": "Hinweis: Setze in Etherpads settings.json \"authenticationMethod\": \"apikey\".",
+ "Hint: TLS handshake failed. Check the Etherpad certificate and that the configured URL uses the right scheme.": "Hinweis: TLS-Handshake fehlgeschlagen. Prüfe das Etherpad-Zertifikat und ob die konfigurierte URL das richtige Schema verwendet.",
+ "Hint: The configured Etherpad host did not resolve. Check the hostname for typos and that DNS reaches it from this server.": "Hinweis: Der konfigurierte Etherpad-Host konnte nicht aufgelöst werden. Prüfe den Hostnamen auf Tippfehler und ob er von diesem Server per DNS aufgelöst werden kann.",
+ "If enabled, moving a .pad file to the trash also deletes the linked Etherpad pad.": "Wenn aktiviert, wird beim Verschieben einer .pad-Datei in den Papierkorb auch das verknüpfte Etherpad-Pad gelöscht.",
+ "Invalid Etherpad API URL.": "Ungültige Etherpad-API-URL.",
+ "Invalid Etherpad API version format.": "Ungültiges Format für die Etherpad-API-Version.",
+ "Invalid Etherpad Base URL.": "Ungültige Etherpad-Basis-URL.",
+ "Invalid access mode.": "Ungültiger Zugriffsmodus.",
"Invalid file ID.": "Ungültige Datei-ID.",
"Invalid file path.": "Ungültiger Dateipfad.",
- "Invalid pad name.": "Ungültiger Pad-Name.",
"Invalid input.": "Ungültige Eingabe.",
- "Cannot resolve selected parent folder.": "Ausgewählter Zielordner konnte nicht aufgelöst werden.",
- "Cannot open selected .pad file.": "Ausgewählte .pad-Datei konnte nicht geöffnet werden.",
- "Cannot resolve selected .pad file.": "Ausgewählte .pad-Datei konnte nicht aufgelöst werden.",
- "Cannot read selected .pad file.": "Ausgewählte .pad-Datei konnte nicht gelesen werden.",
- "Cannot resolve file path for file ID.": "Dateipfad zur Datei-ID konnte nicht ermittelt werden.",
- "A file with this name already exists.": "Eine Datei mit diesem Namen existiert bereits.",
- "Absolute https origins allowed to embed the /embed/by-id and /embed/create-by-parent routes. Leave empty to disable external embedding.": "Absolute HTTPS-Origins, die die Routen /embed/by-id und /embed/create-by-parent einbetten dürfen. Leer lassen, um externes Einbetten zu deaktivieren.",
- "Back": "Zurück",
- "Cookie domain must be a hostname, not a URL.": "Cookie-Domain muss ein Hostname sein, keine URL.",
- "Cookie domain must be a valid shared hostname.": "Cookie-Domain muss ein gültiger gemeinsamer Hostname sein.",
- "Could not create pad from template.": "Pad konnte nicht aus Vorlage erstellt werden.",
- "Creating pad...": "Pad wird erstellt...",
- "Embed configuration is incomplete.": "Embed-Konfiguration ist unvollständig.",
- "Failed to update test fault.": "Test-Fehler konnte nicht aktualisiert werden.",
- "Invalid access mode.": "Ungültiger Zugriffsmodus.",
+ "Invalid pad name.": "Ungültiger Pad-Name.",
"Invalid parent folder ID.": "Ungültige Zielordner-ID.",
"Loading pad...": "Pad wird geladen...",
+ "New pad": "Neues Pad",
"No synced snapshot is stored in this .pad file yet.": "In dieser .pad-Datei ist noch keine synchronisierte Kopie gespeichert.",
+ "Open in Etherpad": "In Etherpad öffnen",
+ "Open original pad": "Original-Pad öffnen",
+ "Open the original .pad file": "Ursprüngliche .pad-Datei öffnen",
+ "Optional internal URL for server-side API calls. Leave empty to use Etherpad Base URL.": "Optionale interne URL für serverseitige API-Aufrufe. Leer lassen, um die Etherpad-Basis-URL zu verwenden.",
"Pad from another server": "Pad von einem anderen Server",
"Pad name is required.": "Pad-Name ist erforderlich.",
+ "Pads": "Pads",
+ "Pending Etherpad deletes": "Ausstehende Etherpad-Löschungen",
+ "Pending delete retry failed.": "Wiederholung ausstehender Löschungen fehlgeschlagen.",
+ "Pending delete retry finished.": "Wiederholung ausstehender Löschungen abgeschlossen.",
+ "Public pad": "Öffentliches Pad",
+ "Public pad from URL": "Öffentliches Pad aus URL",
"Read-only snapshot": "Schreibgeschützte Kopie",
"Read-only snapshot from the .pad file.": "Schreibgeschützte Kopie aus der .pad-Datei.",
+ "Request failed.": "Anfrage fehlgeschlagen.",
+ "Retry pending deletes now": "Ausstehende Löschungen jetzt wiederholen",
+ "Running consistency check...": "Konsistenzprüfung läuft...",
+ "Save settings": "Einstellungen speichern",
+ "Saving settings...": "Einstellungen werden gespeichert...",
"Selected file is not a .pad file.": "Ausgewählte Datei ist keine .pad-Datei.",
"Selected parent folder is not writable.": "Ausgewählter Zielordner ist nicht beschreibbar.",
+ "Settings saved.": "Einstellungen gespeichert.",
+ "Sync interval must be between 5 and 3600 seconds.": "Das Intervall muss zwischen 5 und 3600 Sekunden liegen.",
"Template file not found.": "Vorlagendatei nicht gefunden.",
- "Trusted embed origins (optional)": "Vertrauenswürdige Embed-Origins (optional)",
- "Unknown error.": "Unbekannter Fehler.",
- "Retry pending deletes now": "Ausstehende Löschungen jetzt wiederholen",
- "Failed to save settings.": "Einstellungen konnten nicht gespeichert werden.",
- "Pending delete retry failed.": "Wiederholung ausstehender Löschungen fehlgeschlagen.",
- "Pending delete retry finished.": "Wiederholung ausstehender Löschungen abgeschlossen.",
- ".pad file sync interval (seconds)": ".pad-Datei-Synchronisierungsintervall (Sekunden)",
- "Delete linked Etherpad pad when .pad file is moved to trash": "Verknüpftes Etherpad-Pad löschen, wenn die .pad-Datei in den Papierkorb verschoben wird",
- "If enabled, moving a .pad file to the trash also deletes the linked Etherpad pad.": "Wenn aktiviert, wird beim Verschieben einer .pad-Datei in den Papierkorb auch das verknüpfte Etherpad-Pad gelöscht.",
- "Add trusted Etherpad hostnames or HTTPS origins. Leave empty only if all public HTTPS hosts should be trusted.": "Vertrauenswürdige Etherpad-Hostnamen oder HTTPS-Ursprünge eintragen. Nur leer lassen, wenn alle öffentlichen HTTPS-Hosts vertrauenswürdig sein sollen.",
- "Hint: Set \"authenticationMethod\": \"apikey\" in Etherpad's settings.json.": "Hinweis: Setze in Etherpads settings.json \"authenticationMethod\": \"apikey\".",
- "Could not create pad": "Pad konnte nicht erstellt werden",
- "Could not open pad": "Pad konnte nicht geöffnet werden",
- "Could not initialize .pad file.": ".pad-Datei konnte nicht initialisiert werden.",
- "Could not resolve .pad file.": ".pad-Datei konnte nicht aufgelöst werden.",
- ".pad file not found.": ".pad-Datei nicht gefunden.",
"Test Etherpad connection": "Etherpad-Verbindung testen",
+ "Test fault cleared.": "Testfehler zurückgesetzt.",
+ "Test fault set: {fault}": "Testfehler gesetzt: {fault}",
+ "Test faults are available only when Nextcloud debug mode is enabled.": "Testfehler sind nur verfügbar, wenn der Nextcloud-Debug-Modus aktiviert ist.",
"Testing Etherpad connection...": "Etherpad-Verbindung wird geprüft...",
- "Etherpad connection test successful.": "Etherpad-Verbindung erfolgreich geprüft.",
- "Etherpad connection test failed.": "Etherpad-Verbindung konnte nicht geprüft werden.",
- "Etherpad connection test failed: {detail}": "Etherpad-Verbindung konnte nicht geprüft werden: {detail}",
- "Close": "Schließen",
- "Create": "Erstellen",
- "Creating...": "Wird erstellt...",
- "File name": "Dateiname",
- "File name is required.": "Dateiname ist erforderlich.",
- "Open in Etherpad": "In Etherpad öffnen",
- "Public pad": "Öffentliches Pad",
- "Public pad from URL": "Öffentliches Pad aus URL",
- "External pad URL": "Externe Pad-URL",
- "External pad URL is required.": "Externe Pad-URL ist erforderlich.",
- "Could not create public pad.": "Öffentliches Pad konnte nicht erstellt werden.",
- "Could not import public pad URL.": "Öffentliche Pad-URL konnte nicht importiert werden.",
- "Could not fetch the pad content from the remote server. The new file is empty for now — open the pad in the viewer to populate it.": "Pad-Inhalt konnte nicht vom Remote-Server geladen werden. Die neue Datei ist vorerst leer — öffne das Pad im Viewer, um sie zu befüllen."
+ "This .pad file has no matching pad in this Nextcloud.": "Für diese .pad-Datei existiert in dieser Nextcloud kein passendes Pad.",
+ "This file looks like a copy of an existing .pad file in your account. Open the original to keep editing the linked pad, or create a new pad to fork the content stored in this file.": "Diese Datei sieht aus wie eine Kopie einer bereits vorhandenen .pad-Datei in deinem Konto. Öffne das Original, um am verknüpften Pad weiterzuarbeiten, oder erstelle aus dem in dieser Datei gespeicherten Inhalt ein neues Pad als eigene Kopie.",
+ "Trusted embed origins (optional)": "Vertrauenswürdige Embed-Origins (optional)",
+ "Unknown error.": "Unbekannter Fehler.",
+ "Unsupported test fault.": "Nicht unterstützter Testfehler.",
+ "We couldn't find a matching pad in this Nextcloud. You can create a new pad from the text stored in this file; from then on, opening this file will load the new pad.": "Wir konnten in dieser Nextcloud kein zugehöriges Pad finden. Du kannst aus dem in dieser Datei gespeicherten Text ein neues Pad erstellen; ab dann öffnet diese Datei das neue Pad."
},
"nplurals=2; plural=(n != 1);"
);
diff --git a/l10n/de.json b/l10n/de.json
index 30a6f07..d8630a2 100644
--- a/l10n/de.json
+++ b/l10n/de.json
@@ -1,137 +1,137 @@
{
"translations": {
- "Pads": "Pads",
- "Configure the Etherpad server and external pad security policy for the Etherpad Nextcloud app.": "Konfiguriere den Etherpad-Server und die Sicherheitsrichtlinie für externe Pads in der Etherpad-Nextcloud-App.",
- "Etherpad Base URL": "Etherpad-Basis-URL",
- "Etherpad API URL (optional)": "Etherpad-API-URL (optional)",
- "Optional internal URL for server-side API calls. Leave empty to use Etherpad Base URL.": "Optionale interne URL für serverseitige API-Aufrufe. Leer lassen, um die Etherpad-Basis-URL zu verwenden.",
- "Etherpad session cookie domain (optional)": "Etherpad-Session-Cookie-Domain (optional)",
- "Auto-filled from the Nextcloud and Etherpad hosts when possible. Adjust it if your deployment uses a proxy path or a different trusted parent domain; leave empty for a host-only cookie.": "Wird, wenn möglich, automatisch aus den Nextcloud- und Etherpad-Hosts abgeleitet. Anpassen, wenn die Installation einen Proxy-Pfad oder eine andere vertrauenswürdige Parent-Domain nutzt; leer lassen für ein Host-only-Cookie.",
- "Etherpad API key": "Etherpad-API-Schlüssel",
- "Detected API version:": "Erkannte API-Version:",
- "Controls how often pad content is copied from Etherpad into the .pad file while the pad is open.": "Steuert, wie oft der Pad-Inhalt aus Etherpad in die .pad-Datei kopiert wird, während das Pad geöffnet ist.",
+ ".pad file not found.": ".pad-Datei nicht gefunden.",
+ ".pad file sync interval (seconds)": ".pad-Datei-Synchronisierungsintervall (Sekunden)",
+ "A file with this name already exists.": "Eine Datei mit diesem Namen existiert bereits.",
+ "Absolute https origins allowed to embed the /embed/by-id and /embed/create-by-parent routes. Leave empty to disable external embedding.": "Absolute HTTPS-Origins, die die Routen /embed/by-id und /embed/create-by-parent einbetten dürfen. Leer lassen, um externes Einbetten zu deaktivieren.",
+ "Add trusted Etherpad hostnames or HTTPS origins. Leave empty only if all public HTTPS hosts should be trusted.": "Vertrauenswürdige Etherpad-Hostnamen oder HTTPS-Ursprünge eintragen. Nur leer lassen, wenn alle öffentlichen HTTPS-Hosts vertrauenswürdig sein sollen.",
+ "Admin permissions required.": "Administratorrechte erforderlich.",
"Allow linking external public pads": "Verlinken externer öffentlicher Pads erlauben",
- "External host allowlist (optional)": "Allowlist externer Hosts (optional)",
- "Save settings": "Einstellungen speichern",
+ "Authentication required.": "Authentifizierung erforderlich.",
+ "Auto-filled from the Nextcloud and Etherpad hosts when possible. Adjust it if your deployment uses a proxy path or a different trusted parent domain; leave empty for a host-only cookie.": "Wird, wenn möglich, automatisch aus den Nextcloud- und Etherpad-Hosts abgeleitet. Anpassen, wenn die Installation einen Proxy-Pfad oder eine andere vertrauenswürdige Parent-Domain nutzt; leer lassen für ein Host-only-Cookie.",
+ "Back": "Zurück",
+ "Cannot open selected .pad file.": "Ausgewählte .pad-Datei konnte nicht geöffnet werden.",
+ "Cannot read selected .pad file.": "Ausgewählte .pad-Datei konnte nicht gelesen werden.",
+ "Cannot resolve file path for file ID.": "Dateipfad zur Datei-ID konnte nicht ermittelt werden.",
+ "Cannot resolve selected .pad file.": "Ausgewählte .pad-Datei konnte nicht aufgelöst werden.",
+ "Cannot resolve selected parent folder.": "Ausgewählter Zielordner konnte nicht aufgelöst werden.",
+ "Checking for the original pad...": "Suche nach dem Original-Pad ...",
+ "Close": "Schließen",
+ "Configure the Etherpad server and external pad security policy for the Etherpad Nextcloud app.": "Konfiguriere den Etherpad-Server und die Sicherheitsrichtlinie für externe Pads in der Etherpad-Nextcloud-App.",
"Consistency check": "Konsistenzprüfung",
- "Pending Etherpad deletes": "Ausstehende Etherpad-Löschungen",
- "Saving settings...": "Einstellungen werden gespeichert...",
- "Settings saved.": "Einstellungen gespeichert.",
- "Running consistency check...": "Konsistenzprüfung läuft...",
+ "Consistency check failed.": "Konsistenzprüfung fehlgeschlagen.",
+ "Consistency check finished with issues.": "Konsistenzprüfung mit Problemen abgeschlossen.",
"Consistency check successful.": "Konsistenzprüfung erfolgreich.",
"Consistency check successful. No issues found.": "Konsistenzprüfung erfolgreich. Keine Probleme gefunden.",
- "Consistency check finished with issues.": "Konsistenzprüfung mit Problemen abgeschlossen.",
- "Request failed.": "Anfrage fehlgeschlagen.",
- "Consistency check failed.": "Konsistenzprüfung fehlgeschlagen.",
- "Etherpad API key is required.": "Ein Etherpad-API-Schlüssel ist erforderlich.",
- "Etherpad Base URL is required.": "Eine Etherpad-Basis-URL ist erforderlich.",
- "Etherpad Base URL must use https.": "Die Etherpad-Basis-URL muss HTTPS verwenden.",
- "Invalid Etherpad Base URL.": "Ungültige Etherpad-Basis-URL.",
- "Etherpad Base URL must not include query or fragment.": "Die Etherpad-Basis-URL darf keinen Query-String und kein Fragment enthalten.",
- "Etherpad API URL must use http or https.": "Die Etherpad-API-URL muss HTTP oder HTTPS verwenden.",
- "Invalid Etherpad API URL.": "Ungültige Etherpad-API-URL.",
- "Etherpad API URL must not include query or fragment.": "Die Etherpad-API-URL darf keinen Query-String und kein Fragment enthalten.",
- "Invalid Etherpad API version format.": "Ungültiges Format für die Etherpad-API-Version.",
- "Sync interval must be between 5 and 3600 seconds.": "Das Intervall muss zwischen 5 und 3600 Sekunden liegen.",
- "External allowlist contains invalid host: {host}": "Die externe Allowlist enthält einen ungültigen Host: {host}",
- "External allowlist URL must use https: {host}": "Die externe Allowlist-URL muss HTTPS verwenden: {host}",
- "Test fault cleared.": "Testfehler zurückgesetzt.",
- "Test fault set: {fault}": "Testfehler gesetzt: {fault}",
- "Unsupported test fault.": "Nicht unterstützter Testfehler.",
- "Test faults are available only when Nextcloud debug mode is enabled.": "Testfehler sind nur verfügbar, wenn der Nextcloud-Debug-Modus aktiviert ist.",
- "Authentication required.": "Authentifizierung erforderlich.",
- "Admin permissions required.": "Administratorrechte erforderlich.",
- "New pad": "Neues Pad",
- "Open original pad": "Original-Pad öffnen",
- "This .pad file has no matching pad in this Nextcloud.": "Für diese .pad-Datei existiert in dieser Nextcloud kein passendes Pad.",
- "Checking for the original pad...": "Suche nach dem Original-Pad ...",
- "This file looks like a copy of an existing .pad file in your account. Open the original to keep editing the linked pad, or create a new pad to fork the content stored in this file.": "Diese Datei sieht aus wie eine Kopie einer bereits vorhandenen .pad-Datei in deinem Konto. Öffne das Original, um am verknüpften Pad weiterzuarbeiten, oder erstelle aus dem in dieser Datei gespeicherten Inhalt ein neues Pad als eigene Kopie.",
- "We couldn't find a matching pad in this Nextcloud. You can create a new pad from the text stored in this file; from then on, opening this file will load the new pad.": "Wir konnten in dieser Nextcloud kein zugehöriges Pad finden. Du kannst aus dem in dieser Datei gespeicherten Text ein neues Pad erstellen; ab dann öffnet diese Datei das neue Pad.",
- "Create new pad from this file": "Neues Pad aus dieser Datei erstellen",
- "Creating new pad...": "Neues Pad wird erstellt ...",
- "Open the original .pad file": "Ursprüngliche .pad-Datei öffnen",
+ "Controls how often pad content is copied from Etherpad into the .pad file while the pad is open.": "Steuert, wie oft der Pad-Inhalt aus Etherpad in die .pad-Datei kopiert wird, während das Pad geöffnet ist.",
+ "Cookie domain must be a hostname, not a URL.": "Cookie-Domain muss ein Hostname sein, keine URL.",
+ "Cookie domain must be a valid shared hostname.": "Cookie-Domain muss ein gültiger gemeinsamer Hostname sein.",
+ "Could not check pad sync status.": "Synchronisierungsstatus des Pads konnte nicht ermittelt werden.",
+ "Could not create pad": "Pad konnte nicht erstellt werden",
+ "Could not create pad from template.": "Pad konnte nicht aus Vorlage erstellt werden.",
"Could not create pad.": "Pad konnte nicht erstellt werden.",
+ "Could not create public pad.": "Öffentliches Pad konnte nicht erstellt werden.",
+ "Could not fetch the pad content from the remote server. The new file is empty for now — open the pad in the viewer to populate it.": "Pad-Inhalt konnte nicht vom Remote-Server geladen werden. Die neue Datei ist vorerst leer — öffne das Pad im Viewer, um sie zu befüllen.",
"Could not import external pad.": "Externes Pad konnte nicht importiert werden.",
+ "Could not import public pad URL.": "Öffentliche Pad-URL konnte nicht importiert werden.",
+ "Could not initialize .pad file.": ".pad-Datei konnte nicht initialisiert werden.",
+ "Could not look up the original pad.": "Original-Pad konnte nicht ermittelt werden.",
+ "Could not move pad to trash.": "Pad konnte nicht in den Papierkorb verschoben werden.",
+ "Could not open pad": "Pad konnte nicht geöffnet werden",
"Could not open pad.": "Pad konnte nicht geöffnet werden.",
"Could not read pad metadata.": "Pad-Metadaten konnten nicht gelesen werden.",
- "Could not sync pad content.": "Pad-Inhalt konnte nicht synchronisiert werden.",
- "Could not check pad sync status.": "Synchronisierungsstatus des Pads konnte nicht ermittelt werden.",
- "Could not move pad to trash.": "Pad konnte nicht in den Papierkorb verschoben werden.",
- "Could not look up the original pad.": "Original-Pad konnte nicht ermittelt werden.",
"Could not recover pad from this file.": "Pad konnte aus dieser Datei nicht wiederhergestellt werden.",
+ "Could not resolve .pad file.": ".pad-Datei konnte nicht aufgelöst werden.",
"Could not restore pad from trash.": "Pad konnte nicht aus dem Papierkorb wiederhergestellt werden.",
- "Hint: Etherpad rejected the API key. Check that the key matches Etherpad's APIKEY.txt.": "Hinweis: Etherpad hat den API-Schlüssel abgelehnt. Prüfe, ob er mit Etherpads APIKEY.txt übereinstimmt.",
+ "Could not sync pad content.": "Pad-Inhalt konnte nicht synchronisiert werden.",
+ "Create": "Erstellen",
+ "Create new pad from this file": "Neues Pad aus dieser Datei erstellen",
+ "Creating new pad...": "Neues Pad wird erstellt ...",
+ "Creating pad...": "Pad wird erstellt...",
+ "Creating...": "Wird erstellt...",
+ "Delete linked Etherpad pad when .pad file is moved to trash": "Verknüpftes Etherpad-Pad löschen, wenn die .pad-Datei in den Papierkorb verschoben wird",
+ "Detected API version:": "Erkannte API-Version:",
+ "Embed configuration is incomplete.": "Embed-Konfiguration ist unvollständig.",
+ "Etherpad API URL (optional)": "Etherpad-API-URL (optional)",
+ "Etherpad API URL must not include query or fragment.": "Die Etherpad-API-URL darf keinen Query-String und kein Fragment enthalten.",
+ "Etherpad API URL must use http or https.": "Die Etherpad-API-URL muss HTTP oder HTTPS verwenden.",
+ "Etherpad API key": "Etherpad-API-Schlüssel",
+ "Etherpad API key is required.": "Ein Etherpad-API-Schlüssel ist erforderlich.",
+ "Etherpad Base URL": "Etherpad-Basis-URL",
+ "Etherpad Base URL is required.": "Eine Etherpad-Basis-URL ist erforderlich.",
+ "Etherpad Base URL must not include query or fragment.": "Die Etherpad-Basis-URL darf keinen Query-String und kein Fragment enthalten.",
+ "Etherpad Base URL must use https.": "Die Etherpad-Basis-URL muss HTTPS verwenden.",
+ "Etherpad connection test failed.": "Etherpad-Verbindung konnte nicht geprüft werden.",
+ "Etherpad connection test failed: {detail}": "Etherpad-Verbindung konnte nicht geprüft werden: {detail}",
+ "Etherpad connection test successful.": "Etherpad-Verbindung erfolgreich geprüft.",
+ "Etherpad session cookie domain (optional)": "Etherpad-Session-Cookie-Domain (optional)",
+ "External allowlist URL must use https: {host}": "Die externe Allowlist-URL muss HTTPS verwenden: {host}",
+ "External allowlist contains invalid host: {host}": "Die externe Allowlist enthält einen ungültigen Host: {host}",
+ "External host allowlist (optional)": "Allowlist externer Hosts (optional)",
+ "External pad URL": "Externe Pad-URL",
+ "External pad URL is required.": "Externe Pad-URL ist erforderlich.",
+ "Failed to save settings.": "Einstellungen konnten nicht gespeichert werden.",
+ "Failed to update test fault.": "Test-Fehler konnte nicht aktualisiert werden.",
+ "File name": "Dateiname",
+ "File name is required.": "Dateiname ist erforderlich.",
"Hint: API endpoint not found. Check the API host and that the configured API version is supported by your Etherpad.": "Hinweis: API-Endpunkt nicht gefunden. Prüfe den API-Host und ob die konfigurierte API-Version von deinem Etherpad unterstützt wird.",
- "Hint: Etherpad returned a server error. Check the Etherpad server logs.": "Hinweis: Etherpad hat einen Server-Fehler zurückgegeben. Prüfe die Etherpad-Server-Logs.",
- "Hint: The configured Etherpad host did not resolve. Check the hostname for typos and that DNS reaches it from this server.": "Hinweis: Der konfigurierte Etherpad-Host konnte nicht aufgelöst werden. Prüfe den Hostnamen auf Tippfehler und ob er von diesem Server per DNS aufgelöst werden kann.",
"Hint: Connection refused. Etherpad does not appear to be running on the configured host and port.": "Hinweis: Verbindung verweigert. Etherpad läuft anscheinend nicht auf dem konfigurierten Host und Port.",
"Hint: Connection timed out. Check that this server can reach the Etherpad host (firewall, network).": "Hinweis: Zeitüberschreitung bei der Verbindung. Prüfe, ob dieser Server den Etherpad-Host erreichen kann (Firewall, Netzwerk).",
- "Hint: TLS handshake failed. Check the Etherpad certificate and that the configured URL uses the right scheme.": "Hinweis: TLS-Handshake fehlgeschlagen. Prüfe das Etherpad-Zertifikat und ob die konfigurierte URL das richtige Schema verwendet.",
"Hint: Could not reach Etherpad. Check the API host and that this server can connect to it.": "Hinweis: Etherpad konnte nicht erreicht werden. Prüfe den API-Host und ob dieser Server eine Verbindung herstellen kann.",
+ "Hint: Etherpad rejected the API key. Check that the key matches Etherpad's APIKEY.txt.": "Hinweis: Etherpad hat den API-Schlüssel abgelehnt. Prüfe, ob er mit Etherpads APIKEY.txt übereinstimmt.",
+ "Hint: Etherpad returned a server error. Check the Etherpad server logs.": "Hinweis: Etherpad hat einen Server-Fehler zurückgegeben. Prüfe die Etherpad-Server-Logs.",
"Hint: Etherpad returned non-JSON. Likely a reverse proxy or HTML error page in front of the API host.": "Hinweis: Etherpad hat keine JSON-Antwort zurückgegeben. Wahrscheinlich steht ein Reverse-Proxy oder eine HTML-Fehlerseite vor dem API-Host.",
+ "Hint: Set \"authenticationMethod\": \"apikey\" in Etherpad's settings.json.": "Hinweis: Setze in Etherpads settings.json \"authenticationMethod\": \"apikey\".",
+ "Hint: TLS handshake failed. Check the Etherpad certificate and that the configured URL uses the right scheme.": "Hinweis: TLS-Handshake fehlgeschlagen. Prüfe das Etherpad-Zertifikat und ob die konfigurierte URL das richtige Schema verwendet.",
+ "Hint: The configured Etherpad host did not resolve. Check the hostname for typos and that DNS reaches it from this server.": "Hinweis: Der konfigurierte Etherpad-Host konnte nicht aufgelöst werden. Prüfe den Hostnamen auf Tippfehler und ob er von diesem Server per DNS aufgelöst werden kann.",
+ "If enabled, moving a .pad file to the trash also deletes the linked Etherpad pad.": "Wenn aktiviert, wird beim Verschieben einer .pad-Datei in den Papierkorb auch das verknüpfte Etherpad-Pad gelöscht.",
+ "Invalid Etherpad API URL.": "Ungültige Etherpad-API-URL.",
+ "Invalid Etherpad API version format.": "Ungültiges Format für die Etherpad-API-Version.",
+ "Invalid Etherpad Base URL.": "Ungültige Etherpad-Basis-URL.",
+ "Invalid access mode.": "Ungültiger Zugriffsmodus.",
"Invalid file ID.": "Ungültige Datei-ID.",
"Invalid file path.": "Ungültiger Dateipfad.",
- "Invalid pad name.": "Ungültiger Pad-Name.",
"Invalid input.": "Ungültige Eingabe.",
- "Cannot resolve selected parent folder.": "Ausgewählter Zielordner konnte nicht aufgelöst werden.",
- "Cannot open selected .pad file.": "Ausgewählte .pad-Datei konnte nicht geöffnet werden.",
- "Cannot resolve selected .pad file.": "Ausgewählte .pad-Datei konnte nicht aufgelöst werden.",
- "Cannot read selected .pad file.": "Ausgewählte .pad-Datei konnte nicht gelesen werden.",
- "Cannot resolve file path for file ID.": "Dateipfad zur Datei-ID konnte nicht ermittelt werden.",
- "A file with this name already exists.": "Eine Datei mit diesem Namen existiert bereits.",
- "Absolute https origins allowed to embed the /embed/by-id and /embed/create-by-parent routes. Leave empty to disable external embedding.": "Absolute HTTPS-Origins, die die Routen /embed/by-id und /embed/create-by-parent einbetten dürfen. Leer lassen, um externes Einbetten zu deaktivieren.",
- "Back": "Zurück",
- "Cookie domain must be a hostname, not a URL.": "Cookie-Domain muss ein Hostname sein, keine URL.",
- "Cookie domain must be a valid shared hostname.": "Cookie-Domain muss ein gültiger gemeinsamer Hostname sein.",
- "Could not create pad from template.": "Pad konnte nicht aus Vorlage erstellt werden.",
- "Creating pad...": "Pad wird erstellt...",
- "Embed configuration is incomplete.": "Embed-Konfiguration ist unvollständig.",
- "Failed to update test fault.": "Test-Fehler konnte nicht aktualisiert werden.",
- "Invalid access mode.": "Ungültiger Zugriffsmodus.",
+ "Invalid pad name.": "Ungültiger Pad-Name.",
"Invalid parent folder ID.": "Ungültige Zielordner-ID.",
"Loading pad...": "Pad wird geladen...",
+ "New pad": "Neues Pad",
"No synced snapshot is stored in this .pad file yet.": "In dieser .pad-Datei ist noch keine synchronisierte Kopie gespeichert.",
+ "Open in Etherpad": "In Etherpad öffnen",
+ "Open original pad": "Original-Pad öffnen",
+ "Open the original .pad file": "Ursprüngliche .pad-Datei öffnen",
+ "Optional internal URL for server-side API calls. Leave empty to use Etherpad Base URL.": "Optionale interne URL für serverseitige API-Aufrufe. Leer lassen, um die Etherpad-Basis-URL zu verwenden.",
"Pad from another server": "Pad von einem anderen Server",
"Pad name is required.": "Pad-Name ist erforderlich.",
+ "Pads": "Pads",
+ "Pending Etherpad deletes": "Ausstehende Etherpad-Löschungen",
+ "Pending delete retry failed.": "Wiederholung ausstehender Löschungen fehlgeschlagen.",
+ "Pending delete retry finished.": "Wiederholung ausstehender Löschungen abgeschlossen.",
+ "Public pad": "Öffentliches Pad",
+ "Public pad from URL": "Öffentliches Pad aus URL",
"Read-only snapshot": "Schreibgeschützte Kopie",
"Read-only snapshot from the .pad file.": "Schreibgeschützte Kopie aus der .pad-Datei.",
+ "Request failed.": "Anfrage fehlgeschlagen.",
+ "Retry pending deletes now": "Ausstehende Löschungen jetzt wiederholen",
+ "Running consistency check...": "Konsistenzprüfung läuft...",
+ "Save settings": "Einstellungen speichern",
+ "Saving settings...": "Einstellungen werden gespeichert...",
"Selected file is not a .pad file.": "Ausgewählte Datei ist keine .pad-Datei.",
"Selected parent folder is not writable.": "Ausgewählter Zielordner ist nicht beschreibbar.",
+ "Settings saved.": "Einstellungen gespeichert.",
+ "Sync interval must be between 5 and 3600 seconds.": "Das Intervall muss zwischen 5 und 3600 Sekunden liegen.",
"Template file not found.": "Vorlagendatei nicht gefunden.",
- "Trusted embed origins (optional)": "Vertrauenswürdige Embed-Origins (optional)",
- "Unknown error.": "Unbekannter Fehler.",
- "Retry pending deletes now": "Ausstehende Löschungen jetzt wiederholen",
- "Failed to save settings.": "Einstellungen konnten nicht gespeichert werden.",
- "Pending delete retry failed.": "Wiederholung ausstehender Löschungen fehlgeschlagen.",
- "Pending delete retry finished.": "Wiederholung ausstehender Löschungen abgeschlossen.",
- ".pad file sync interval (seconds)": ".pad-Datei-Synchronisierungsintervall (Sekunden)",
- "Delete linked Etherpad pad when .pad file is moved to trash": "Verknüpftes Etherpad-Pad löschen, wenn die .pad-Datei in den Papierkorb verschoben wird",
- "If enabled, moving a .pad file to the trash also deletes the linked Etherpad pad.": "Wenn aktiviert, wird beim Verschieben einer .pad-Datei in den Papierkorb auch das verknüpfte Etherpad-Pad gelöscht.",
- "Add trusted Etherpad hostnames or HTTPS origins. Leave empty only if all public HTTPS hosts should be trusted.": "Vertrauenswürdige Etherpad-Hostnamen oder HTTPS-Ursprünge eintragen. Nur leer lassen, wenn alle öffentlichen HTTPS-Hosts vertrauenswürdig sein sollen.",
- "Hint: Set \"authenticationMethod\": \"apikey\" in Etherpad's settings.json.": "Hinweis: Setze in Etherpads settings.json \"authenticationMethod\": \"apikey\".",
- "Could not create pad": "Pad konnte nicht erstellt werden",
- "Could not open pad": "Pad konnte nicht geöffnet werden",
- "Could not initialize .pad file.": ".pad-Datei konnte nicht initialisiert werden.",
- "Could not resolve .pad file.": ".pad-Datei konnte nicht aufgelöst werden.",
- ".pad file not found.": ".pad-Datei nicht gefunden.",
"Test Etherpad connection": "Etherpad-Verbindung testen",
+ "Test fault cleared.": "Testfehler zurückgesetzt.",
+ "Test fault set: {fault}": "Testfehler gesetzt: {fault}",
+ "Test faults are available only when Nextcloud debug mode is enabled.": "Testfehler sind nur verfügbar, wenn der Nextcloud-Debug-Modus aktiviert ist.",
"Testing Etherpad connection...": "Etherpad-Verbindung wird geprüft...",
- "Etherpad connection test successful.": "Etherpad-Verbindung erfolgreich geprüft.",
- "Etherpad connection test failed.": "Etherpad-Verbindung konnte nicht geprüft werden.",
- "Etherpad connection test failed: {detail}": "Etherpad-Verbindung konnte nicht geprüft werden: {detail}",
- "Close": "Schließen",
- "Create": "Erstellen",
- "Creating...": "Wird erstellt...",
- "File name": "Dateiname",
- "File name is required.": "Dateiname ist erforderlich.",
- "Open in Etherpad": "In Etherpad öffnen",
- "Public pad": "Öffentliches Pad",
- "Public pad from URL": "Öffentliches Pad aus URL",
- "External pad URL": "Externe Pad-URL",
- "External pad URL is required.": "Externe Pad-URL ist erforderlich.",
- "Could not create public pad.": "Öffentliches Pad konnte nicht erstellt werden.",
- "Could not import public pad URL.": "Öffentliche Pad-URL konnte nicht importiert werden.",
- "Could not fetch the pad content from the remote server. The new file is empty for now — open the pad in the viewer to populate it.": "Pad-Inhalt konnte nicht vom Remote-Server geladen werden. Die neue Datei ist vorerst leer — öffne das Pad im Viewer, um sie zu befüllen."
+ "This .pad file has no matching pad in this Nextcloud.": "Für diese .pad-Datei existiert in dieser Nextcloud kein passendes Pad.",
+ "This file looks like a copy of an existing .pad file in your account. Open the original to keep editing the linked pad, or create a new pad to fork the content stored in this file.": "Diese Datei sieht aus wie eine Kopie einer bereits vorhandenen .pad-Datei in deinem Konto. Öffne das Original, um am verknüpften Pad weiterzuarbeiten, oder erstelle aus dem in dieser Datei gespeicherten Inhalt ein neues Pad als eigene Kopie.",
+ "Trusted embed origins (optional)": "Vertrauenswürdige Embed-Origins (optional)",
+ "Unknown error.": "Unbekannter Fehler.",
+ "Unsupported test fault.": "Nicht unterstützter Testfehler.",
+ "We couldn't find a matching pad in this Nextcloud. You can create a new pad from the text stored in this file; from then on, opening this file will load the new pad.": "Wir konnten in dieser Nextcloud kein zugehöriges Pad finden. Du kannst aus dem in dieser Datei gespeicherten Text ein neues Pad erstellen; ab dann öffnet diese Datei das neue Pad."
},
"pluralForm": "nplurals=2; plural=(n != 1);"
}
diff --git a/l10n/de.php b/l10n/de.php
index f68df14..42f36b4 100644
--- a/l10n/de.php
+++ b/l10n/de.php
@@ -1,138 +1,138 @@
"Pads",
- "Configure the Etherpad server and external pad security policy for the Etherpad Nextcloud app." => "Konfiguriere den Etherpad-Server und die Sicherheitsrichtlinie für externe Pads in der Etherpad-Nextcloud-App.",
- "Etherpad Base URL" => "Etherpad-Basis-URL",
- "Etherpad API URL (optional)" => "Etherpad-API-URL (optional)",
- "Optional internal URL for server-side API calls. Leave empty to use Etherpad Base URL." => "Optionale interne URL für serverseitige API-Aufrufe. Leer lassen, um die Etherpad-Basis-URL zu verwenden.",
- "Etherpad session cookie domain (optional)" => "Etherpad-Session-Cookie-Domain (optional)",
- "Auto-filled from the Nextcloud and Etherpad hosts when possible. Adjust it if your deployment uses a proxy path or a different trusted parent domain; leave empty for a host-only cookie." => "Wird, wenn möglich, automatisch aus den Nextcloud- und Etherpad-Hosts abgeleitet. Anpassen, wenn die Installation einen Proxy-Pfad oder eine andere vertrauenswürdige Parent-Domain nutzt; leer lassen für ein Host-only-Cookie.",
- "Etherpad API key" => "Etherpad-API-Schlüssel",
- "Detected API version:" => "Erkannte API-Version:",
- "Controls how often pad content is copied from Etherpad into the .pad file while the pad is open." => "Steuert, wie oft der Pad-Inhalt aus Etherpad in die .pad-Datei kopiert wird, während das Pad geöffnet ist.",
+ ".pad file not found." => ".pad-Datei nicht gefunden.",
+ ".pad file sync interval (seconds)" => ".pad-Datei-Synchronisierungsintervall (Sekunden)",
+ "A file with this name already exists." => "Eine Datei mit diesem Namen existiert bereits.",
+ "Absolute https origins allowed to embed the /embed/by-id and /embed/create-by-parent routes. Leave empty to disable external embedding." => "Absolute HTTPS-Origins, die die Routen /embed/by-id und /embed/create-by-parent einbetten dürfen. Leer lassen, um externes Einbetten zu deaktivieren.",
+ "Add trusted Etherpad hostnames or HTTPS origins. Leave empty only if all public HTTPS hosts should be trusted." => "Vertrauenswürdige Etherpad-Hostnamen oder HTTPS-Ursprünge eintragen. Nur leer lassen, wenn alle öffentlichen HTTPS-Hosts vertrauenswürdig sein sollen.",
+ "Admin permissions required." => "Administratorrechte erforderlich.",
"Allow linking external public pads" => "Verlinken externer öffentlicher Pads erlauben",
- "External host allowlist (optional)" => "Allowlist externer Hosts (optional)",
- "Save settings" => "Einstellungen speichern",
+ "Authentication required." => "Authentifizierung erforderlich.",
+ "Auto-filled from the Nextcloud and Etherpad hosts when possible. Adjust it if your deployment uses a proxy path or a different trusted parent domain; leave empty for a host-only cookie." => "Wird, wenn möglich, automatisch aus den Nextcloud- und Etherpad-Hosts abgeleitet. Anpassen, wenn die Installation einen Proxy-Pfad oder eine andere vertrauenswürdige Parent-Domain nutzt; leer lassen für ein Host-only-Cookie.",
+ "Back" => "Zurück",
+ "Cannot open selected .pad file." => "Ausgewählte .pad-Datei konnte nicht geöffnet werden.",
+ "Cannot read selected .pad file." => "Ausgewählte .pad-Datei konnte nicht gelesen werden.",
+ "Cannot resolve file path for file ID." => "Dateipfad zur Datei-ID konnte nicht ermittelt werden.",
+ "Cannot resolve selected .pad file." => "Ausgewählte .pad-Datei konnte nicht aufgelöst werden.",
+ "Cannot resolve selected parent folder." => "Ausgewählter Zielordner konnte nicht aufgelöst werden.",
+ "Checking for the original pad..." => "Suche nach dem Original-Pad ...",
+ "Close" => "Schließen",
+ "Configure the Etherpad server and external pad security policy for the Etherpad Nextcloud app." => "Konfiguriere den Etherpad-Server und die Sicherheitsrichtlinie für externe Pads in der Etherpad-Nextcloud-App.",
"Consistency check" => "Konsistenzprüfung",
- "Pending Etherpad deletes" => "Ausstehende Etherpad-Löschungen",
- "Saving settings..." => "Einstellungen werden gespeichert...",
- "Settings saved." => "Einstellungen gespeichert.",
- "Running consistency check..." => "Konsistenzprüfung läuft...",
+ "Consistency check failed." => "Konsistenzprüfung fehlgeschlagen.",
+ "Consistency check finished with issues." => "Konsistenzprüfung mit Problemen abgeschlossen.",
"Consistency check successful." => "Konsistenzprüfung erfolgreich.",
"Consistency check successful. No issues found." => "Konsistenzprüfung erfolgreich. Keine Probleme gefunden.",
- "Consistency check finished with issues." => "Konsistenzprüfung mit Problemen abgeschlossen.",
- "Request failed." => "Anfrage fehlgeschlagen.",
- "Consistency check failed." => "Konsistenzprüfung fehlgeschlagen.",
- "Etherpad API key is required." => "Ein Etherpad-API-Schlüssel ist erforderlich.",
- "Etherpad Base URL is required." => "Eine Etherpad-Basis-URL ist erforderlich.",
- "Etherpad Base URL must use https." => "Die Etherpad-Basis-URL muss HTTPS verwenden.",
- "Invalid Etherpad Base URL." => "Ungültige Etherpad-Basis-URL.",
- "Etherpad Base URL must not include query or fragment." => "Die Etherpad-Basis-URL darf keinen Query-String und kein Fragment enthalten.",
- "Etherpad API URL must use http or https." => "Die Etherpad-API-URL muss HTTP oder HTTPS verwenden.",
- "Invalid Etherpad API URL." => "Ungültige Etherpad-API-URL.",
- "Etherpad API URL must not include query or fragment." => "Die Etherpad-API-URL darf keinen Query-String und kein Fragment enthalten.",
- "Invalid Etherpad API version format." => "Ungültiges Format für die Etherpad-API-Version.",
- "Sync interval must be between 5 and 3600 seconds." => "Das Intervall muss zwischen 5 und 3600 Sekunden liegen.",
- "External allowlist contains invalid host: {host}" => "Die externe Allowlist enthält einen ungültigen Host: {host}",
- "External allowlist URL must use https: {host}" => "Die externe Allowlist-URL muss HTTPS verwenden: {host}",
- "Test fault cleared." => "Testfehler zurückgesetzt.",
- "Test fault set: {fault}" => "Testfehler gesetzt: {fault}",
- "Unsupported test fault." => "Nicht unterstützter Testfehler.",
- "Test faults are available only when Nextcloud debug mode is enabled." => "Testfehler sind nur verfügbar, wenn der Nextcloud-Debug-Modus aktiviert ist.",
- "Authentication required." => "Authentifizierung erforderlich.",
- "Admin permissions required." => "Administratorrechte erforderlich.",
- "New pad" => "Neues Pad",
- "Open original pad" => "Original-Pad öffnen",
- "This .pad file has no matching pad in this Nextcloud." => "Für diese .pad-Datei existiert in dieser Nextcloud kein passendes Pad.",
- "Checking for the original pad..." => "Suche nach dem Original-Pad ...",
- "This file looks like a copy of an existing .pad file in your account. Open the original to keep editing the linked pad, or create a new pad to fork the content stored in this file." => "Diese Datei sieht aus wie eine Kopie einer bereits vorhandenen .pad-Datei in deinem Konto. Öffne das Original, um am verknüpften Pad weiterzuarbeiten, oder erstelle aus dem in dieser Datei gespeicherten Inhalt ein neues Pad als eigene Kopie.",
- "We couldn't find a matching pad in this Nextcloud. You can create a new pad from the text stored in this file; from then on, opening this file will load the new pad." => "Wir konnten in dieser Nextcloud kein zugehöriges Pad finden. Du kannst aus dem in dieser Datei gespeicherten Text ein neues Pad erstellen; ab dann öffnet diese Datei das neue Pad.",
- "Create new pad from this file" => "Neues Pad aus dieser Datei erstellen",
- "Creating new pad..." => "Neues Pad wird erstellt ...",
- "Open the original .pad file" => "Ursprüngliche .pad-Datei öffnen",
+ "Controls how often pad content is copied from Etherpad into the .pad file while the pad is open." => "Steuert, wie oft der Pad-Inhalt aus Etherpad in die .pad-Datei kopiert wird, während das Pad geöffnet ist.",
+ "Cookie domain must be a hostname, not a URL." => "Cookie-Domain muss ein Hostname sein, keine URL.",
+ "Cookie domain must be a valid shared hostname." => "Cookie-Domain muss ein gültiger gemeinsamer Hostname sein.",
+ "Could not check pad sync status." => "Synchronisierungsstatus des Pads konnte nicht ermittelt werden.",
+ "Could not create pad" => "Pad konnte nicht erstellt werden",
+ "Could not create pad from template." => "Pad konnte nicht aus Vorlage erstellt werden.",
"Could not create pad." => "Pad konnte nicht erstellt werden.",
+ "Could not create public pad." => "Öffentliches Pad konnte nicht erstellt werden.",
+ "Could not fetch the pad content from the remote server. The new file is empty for now — open the pad in the viewer to populate it." => "Pad-Inhalt konnte nicht vom Remote-Server geladen werden. Die neue Datei ist vorerst leer — öffne das Pad im Viewer, um sie zu befüllen.",
"Could not import external pad." => "Externes Pad konnte nicht importiert werden.",
+ "Could not import public pad URL." => "Öffentliche Pad-URL konnte nicht importiert werden.",
+ "Could not initialize .pad file." => ".pad-Datei konnte nicht initialisiert werden.",
+ "Could not look up the original pad." => "Original-Pad konnte nicht ermittelt werden.",
+ "Could not move pad to trash." => "Pad konnte nicht in den Papierkorb verschoben werden.",
+ "Could not open pad" => "Pad konnte nicht geöffnet werden",
"Could not open pad." => "Pad konnte nicht geöffnet werden.",
"Could not read pad metadata." => "Pad-Metadaten konnten nicht gelesen werden.",
- "Could not sync pad content." => "Pad-Inhalt konnte nicht synchronisiert werden.",
- "Could not check pad sync status." => "Synchronisierungsstatus des Pads konnte nicht ermittelt werden.",
- "Could not move pad to trash." => "Pad konnte nicht in den Papierkorb verschoben werden.",
- "Could not look up the original pad." => "Original-Pad konnte nicht ermittelt werden.",
"Could not recover pad from this file." => "Pad konnte aus dieser Datei nicht wiederhergestellt werden.",
+ "Could not resolve .pad file." => ".pad-Datei konnte nicht aufgelöst werden.",
"Could not restore pad from trash." => "Pad konnte nicht aus dem Papierkorb wiederhergestellt werden.",
- "Hint: Etherpad rejected the API key. Check that the key matches Etherpad's APIKEY.txt." => "Hinweis: Etherpad hat den API-Schlüssel abgelehnt. Prüfe, ob er mit Etherpads APIKEY.txt übereinstimmt.",
+ "Could not sync pad content." => "Pad-Inhalt konnte nicht synchronisiert werden.",
+ "Create" => "Erstellen",
+ "Create new pad from this file" => "Neues Pad aus dieser Datei erstellen",
+ "Creating new pad..." => "Neues Pad wird erstellt ...",
+ "Creating pad..." => "Pad wird erstellt...",
+ "Creating..." => "Wird erstellt...",
+ "Delete linked Etherpad pad when .pad file is moved to trash" => "Verknüpftes Etherpad-Pad löschen, wenn die .pad-Datei in den Papierkorb verschoben wird",
+ "Detected API version:" => "Erkannte API-Version:",
+ "Embed configuration is incomplete." => "Embed-Konfiguration ist unvollständig.",
+ "Etherpad API URL (optional)" => "Etherpad-API-URL (optional)",
+ "Etherpad API URL must not include query or fragment." => "Die Etherpad-API-URL darf keinen Query-String und kein Fragment enthalten.",
+ "Etherpad API URL must use http or https." => "Die Etherpad-API-URL muss HTTP oder HTTPS verwenden.",
+ "Etherpad API key" => "Etherpad-API-Schlüssel",
+ "Etherpad API key is required." => "Ein Etherpad-API-Schlüssel ist erforderlich.",
+ "Etherpad Base URL" => "Etherpad-Basis-URL",
+ "Etherpad Base URL is required." => "Eine Etherpad-Basis-URL ist erforderlich.",
+ "Etherpad Base URL must not include query or fragment." => "Die Etherpad-Basis-URL darf keinen Query-String und kein Fragment enthalten.",
+ "Etherpad Base URL must use https." => "Die Etherpad-Basis-URL muss HTTPS verwenden.",
+ "Etherpad connection test failed." => "Etherpad-Verbindung konnte nicht geprüft werden.",
+ "Etherpad connection test failed: {detail}" => "Etherpad-Verbindung konnte nicht geprüft werden: {detail}",
+ "Etherpad connection test successful." => "Etherpad-Verbindung erfolgreich geprüft.",
+ "Etherpad session cookie domain (optional)" => "Etherpad-Session-Cookie-Domain (optional)",
+ "External allowlist URL must use https: {host}" => "Die externe Allowlist-URL muss HTTPS verwenden: {host}",
+ "External allowlist contains invalid host: {host}" => "Die externe Allowlist enthält einen ungültigen Host: {host}",
+ "External host allowlist (optional)" => "Allowlist externer Hosts (optional)",
+ "External pad URL" => "Externe Pad-URL",
+ "External pad URL is required." => "Externe Pad-URL ist erforderlich.",
+ "Failed to save settings." => "Einstellungen konnten nicht gespeichert werden.",
+ "Failed to update test fault." => "Test-Fehler konnte nicht aktualisiert werden.",
+ "File name" => "Dateiname",
+ "File name is required." => "Dateiname ist erforderlich.",
"Hint: API endpoint not found. Check the API host and that the configured API version is supported by your Etherpad." => "Hinweis: API-Endpunkt nicht gefunden. Prüfe den API-Host und ob die konfigurierte API-Version von deinem Etherpad unterstützt wird.",
- "Hint: Etherpad returned a server error. Check the Etherpad server logs." => "Hinweis: Etherpad hat einen Server-Fehler zurückgegeben. Prüfe die Etherpad-Server-Logs.",
- "Hint: The configured Etherpad host did not resolve. Check the hostname for typos and that DNS reaches it from this server." => "Hinweis: Der konfigurierte Etherpad-Host konnte nicht aufgelöst werden. Prüfe den Hostnamen auf Tippfehler und ob er von diesem Server per DNS aufgelöst werden kann.",
"Hint: Connection refused. Etherpad does not appear to be running on the configured host and port." => "Hinweis: Verbindung verweigert. Etherpad läuft anscheinend nicht auf dem konfigurierten Host und Port.",
"Hint: Connection timed out. Check that this server can reach the Etherpad host (firewall, network)." => "Hinweis: Zeitüberschreitung bei der Verbindung. Prüfe, ob dieser Server den Etherpad-Host erreichen kann (Firewall, Netzwerk).",
- "Hint: TLS handshake failed. Check the Etherpad certificate and that the configured URL uses the right scheme." => "Hinweis: TLS-Handshake fehlgeschlagen. Prüfe das Etherpad-Zertifikat und ob die konfigurierte URL das richtige Schema verwendet.",
"Hint: Could not reach Etherpad. Check the API host and that this server can connect to it." => "Hinweis: Etherpad konnte nicht erreicht werden. Prüfe den API-Host und ob dieser Server eine Verbindung herstellen kann.",
+ "Hint: Etherpad rejected the API key. Check that the key matches Etherpad's APIKEY.txt." => "Hinweis: Etherpad hat den API-Schlüssel abgelehnt. Prüfe, ob er mit Etherpads APIKEY.txt übereinstimmt.",
+ "Hint: Etherpad returned a server error. Check the Etherpad server logs." => "Hinweis: Etherpad hat einen Server-Fehler zurückgegeben. Prüfe die Etherpad-Server-Logs.",
"Hint: Etherpad returned non-JSON. Likely a reverse proxy or HTML error page in front of the API host." => "Hinweis: Etherpad hat keine JSON-Antwort zurückgegeben. Wahrscheinlich steht ein Reverse-Proxy oder eine HTML-Fehlerseite vor dem API-Host.",
+ "Hint: Set \"authenticationMethod\": \"apikey\" in Etherpad's settings.json." => "Hinweis: Setze in Etherpads settings.json \"authenticationMethod\": \"apikey\".",
+ "Hint: TLS handshake failed. Check the Etherpad certificate and that the configured URL uses the right scheme." => "Hinweis: TLS-Handshake fehlgeschlagen. Prüfe das Etherpad-Zertifikat und ob die konfigurierte URL das richtige Schema verwendet.",
+ "Hint: The configured Etherpad host did not resolve. Check the hostname for typos and that DNS reaches it from this server." => "Hinweis: Der konfigurierte Etherpad-Host konnte nicht aufgelöst werden. Prüfe den Hostnamen auf Tippfehler und ob er von diesem Server per DNS aufgelöst werden kann.",
+ "If enabled, moving a .pad file to the trash also deletes the linked Etherpad pad." => "Wenn aktiviert, wird beim Verschieben einer .pad-Datei in den Papierkorb auch das verknüpfte Etherpad-Pad gelöscht.",
+ "Invalid Etherpad API URL." => "Ungültige Etherpad-API-URL.",
+ "Invalid Etherpad API version format." => "Ungültiges Format für die Etherpad-API-Version.",
+ "Invalid Etherpad Base URL." => "Ungültige Etherpad-Basis-URL.",
+ "Invalid access mode." => "Ungültiger Zugriffsmodus.",
"Invalid file ID." => "Ungültige Datei-ID.",
"Invalid file path." => "Ungültiger Dateipfad.",
- "Invalid pad name." => "Ungültiger Pad-Name.",
"Invalid input." => "Ungültige Eingabe.",
- "Cannot resolve selected parent folder." => "Ausgewählter Zielordner konnte nicht aufgelöst werden.",
- "Cannot open selected .pad file." => "Ausgewählte .pad-Datei konnte nicht geöffnet werden.",
- "Cannot resolve selected .pad file." => "Ausgewählte .pad-Datei konnte nicht aufgelöst werden.",
- "Cannot read selected .pad file." => "Ausgewählte .pad-Datei konnte nicht gelesen werden.",
- "Cannot resolve file path for file ID." => "Dateipfad zur Datei-ID konnte nicht ermittelt werden.",
- "A file with this name already exists." => "Eine Datei mit diesem Namen existiert bereits.",
- "Absolute https origins allowed to embed the /embed/by-id and /embed/create-by-parent routes. Leave empty to disable external embedding." => "Absolute HTTPS-Origins, die die Routen /embed/by-id und /embed/create-by-parent einbetten dürfen. Leer lassen, um externes Einbetten zu deaktivieren.",
- "Back" => "Zurück",
- "Cookie domain must be a hostname, not a URL." => "Cookie-Domain muss ein Hostname sein, keine URL.",
- "Cookie domain must be a valid shared hostname." => "Cookie-Domain muss ein gültiger gemeinsamer Hostname sein.",
- "Could not create pad from template." => "Pad konnte nicht aus Vorlage erstellt werden.",
- "Creating pad..." => "Pad wird erstellt...",
- "Embed configuration is incomplete." => "Embed-Konfiguration ist unvollständig.",
- "Failed to update test fault." => "Test-Fehler konnte nicht aktualisiert werden.",
- "Invalid access mode." => "Ungültiger Zugriffsmodus.",
+ "Invalid pad name." => "Ungültiger Pad-Name.",
"Invalid parent folder ID." => "Ungültige Zielordner-ID.",
"Loading pad..." => "Pad wird geladen...",
+ "New pad" => "Neues Pad",
"No synced snapshot is stored in this .pad file yet." => "In dieser .pad-Datei ist noch keine synchronisierte Kopie gespeichert.",
+ "Open in Etherpad" => "In Etherpad öffnen",
+ "Open original pad" => "Original-Pad öffnen",
+ "Open the original .pad file" => "Ursprüngliche .pad-Datei öffnen",
+ "Optional internal URL for server-side API calls. Leave empty to use Etherpad Base URL." => "Optionale interne URL für serverseitige API-Aufrufe. Leer lassen, um die Etherpad-Basis-URL zu verwenden.",
"Pad from another server" => "Pad von einem anderen Server",
"Pad name is required." => "Pad-Name ist erforderlich.",
+ "Pads" => "Pads",
+ "Pending Etherpad deletes" => "Ausstehende Etherpad-Löschungen",
+ "Pending delete retry failed." => "Wiederholung ausstehender Löschungen fehlgeschlagen.",
+ "Pending delete retry finished." => "Wiederholung ausstehender Löschungen abgeschlossen.",
+ "Public pad" => "Öffentliches Pad",
+ "Public pad from URL" => "Öffentliches Pad aus URL",
"Read-only snapshot" => "Schreibgeschützte Kopie",
"Read-only snapshot from the .pad file." => "Schreibgeschützte Kopie aus der .pad-Datei.",
+ "Request failed." => "Anfrage fehlgeschlagen.",
+ "Retry pending deletes now" => "Ausstehende Löschungen jetzt wiederholen",
+ "Running consistency check..." => "Konsistenzprüfung läuft...",
+ "Save settings" => "Einstellungen speichern",
+ "Saving settings..." => "Einstellungen werden gespeichert...",
"Selected file is not a .pad file." => "Ausgewählte Datei ist keine .pad-Datei.",
"Selected parent folder is not writable." => "Ausgewählter Zielordner ist nicht beschreibbar.",
+ "Settings saved." => "Einstellungen gespeichert.",
+ "Sync interval must be between 5 and 3600 seconds." => "Das Intervall muss zwischen 5 und 3600 Sekunden liegen.",
"Template file not found." => "Vorlagendatei nicht gefunden.",
- "Trusted embed origins (optional)" => "Vertrauenswürdige Embed-Origins (optional)",
- "Unknown error." => "Unbekannter Fehler.",
- "Retry pending deletes now" => "Ausstehende Löschungen jetzt wiederholen",
- "Failed to save settings." => "Einstellungen konnten nicht gespeichert werden.",
- "Pending delete retry failed." => "Wiederholung ausstehender Löschungen fehlgeschlagen.",
- "Pending delete retry finished." => "Wiederholung ausstehender Löschungen abgeschlossen.",
- ".pad file sync interval (seconds)" => ".pad-Datei-Synchronisierungsintervall (Sekunden)",
- "Delete linked Etherpad pad when .pad file is moved to trash" => "Verknüpftes Etherpad-Pad löschen, wenn die .pad-Datei in den Papierkorb verschoben wird",
- "If enabled, moving a .pad file to the trash also deletes the linked Etherpad pad." => "Wenn aktiviert, wird beim Verschieben einer .pad-Datei in den Papierkorb auch das verknüpfte Etherpad-Pad gelöscht.",
- "Add trusted Etherpad hostnames or HTTPS origins. Leave empty only if all public HTTPS hosts should be trusted." => "Vertrauenswürdige Etherpad-Hostnamen oder HTTPS-Ursprünge eintragen. Nur leer lassen, wenn alle öffentlichen HTTPS-Hosts vertrauenswürdig sein sollen.",
- "Hint: Set \"authenticationMethod\": \"apikey\" in Etherpad's settings.json." => "Hinweis: Setze in Etherpads settings.json \"authenticationMethod\": \"apikey\".",
- "Could not create pad" => "Pad konnte nicht erstellt werden",
- "Could not open pad" => "Pad konnte nicht geöffnet werden",
- "Could not initialize .pad file." => ".pad-Datei konnte nicht initialisiert werden.",
- "Could not resolve .pad file." => ".pad-Datei konnte nicht aufgelöst werden.",
- ".pad file not found." => ".pad-Datei nicht gefunden.",
"Test Etherpad connection" => "Etherpad-Verbindung testen",
+ "Test fault cleared." => "Testfehler zurückgesetzt.",
+ "Test fault set: {fault}" => "Testfehler gesetzt: {fault}",
+ "Test faults are available only when Nextcloud debug mode is enabled." => "Testfehler sind nur verfügbar, wenn der Nextcloud-Debug-Modus aktiviert ist.",
"Testing Etherpad connection..." => "Etherpad-Verbindung wird geprüft...",
- "Etherpad connection test successful." => "Etherpad-Verbindung erfolgreich geprüft.",
- "Etherpad connection test failed." => "Etherpad-Verbindung konnte nicht geprüft werden.",
- "Etherpad connection test failed: {detail}" => "Etherpad-Verbindung konnte nicht geprüft werden: {detail}",
- "Close" => "Schließen",
- "Create" => "Erstellen",
- "Creating..." => "Wird erstellt...",
- "File name" => "Dateiname",
- "File name is required." => "Dateiname ist erforderlich.",
- "Open in Etherpad" => "In Etherpad öffnen",
- "Public pad" => "Öffentliches Pad",
- "Public pad from URL" => "Öffentliches Pad aus URL",
- "External pad URL" => "Externe Pad-URL",
- "External pad URL is required." => "Externe Pad-URL ist erforderlich.",
- "Could not create public pad." => "Öffentliches Pad konnte nicht erstellt werden.",
- "Could not import public pad URL." => "Öffentliche Pad-URL konnte nicht importiert werden.",
- "Could not fetch the pad content from the remote server. The new file is empty for now — open the pad in the viewer to populate it." => "Pad-Inhalt konnte nicht vom Remote-Server geladen werden. Die neue Datei ist vorerst leer — öffne das Pad im Viewer, um sie zu befüllen.",
+ "This .pad file has no matching pad in this Nextcloud." => "Für diese .pad-Datei existiert in dieser Nextcloud kein passendes Pad.",
+ "This file looks like a copy of an existing .pad file in your account. Open the original to keep editing the linked pad, or create a new pad to fork the content stored in this file." => "Diese Datei sieht aus wie eine Kopie einer bereits vorhandenen .pad-Datei in deinem Konto. Öffne das Original, um am verknüpften Pad weiterzuarbeiten, oder erstelle aus dem in dieser Datei gespeicherten Inhalt ein neues Pad als eigene Kopie.",
+ "Trusted embed origins (optional)" => "Vertrauenswürdige Embed-Origins (optional)",
+ "Unknown error." => "Unbekannter Fehler.",
+ "Unsupported test fault." => "Nicht unterstützter Testfehler.",
+ "We couldn't find a matching pad in this Nextcloud. You can create a new pad from the text stored in this file; from then on, opening this file will load the new pad." => "Wir konnten in dieser Nextcloud kein zugehöriges Pad finden. Du kannst aus dem in dieser Datei gespeicherten Text ein neues Pad erstellen; ab dann öffnet diese Datei das neue Pad.",
];
$PLURAL_FORMS = "nplurals=2; plural=(n != 1);";
diff --git a/l10n/de_DE.js b/l10n/de_DE.js
index ae534b3..8025b2f 100644
--- a/l10n/de_DE.js
+++ b/l10n/de_DE.js
@@ -1,138 +1,138 @@
OC.L10N.register(
"etherpad_nextcloud",
{
- "Pads": "Pads",
- "Configure the Etherpad server and external pad security policy for the Etherpad Nextcloud app.": "Konfiguriere den Etherpad-Server und die Sicherheitsrichtlinie für externe Pads in der Etherpad-Nextcloud-App.",
- "Etherpad Base URL": "Etherpad-Basis-URL",
- "Etherpad API URL (optional)": "Etherpad-API-URL (optional)",
- "Optional internal URL for server-side API calls. Leave empty to use Etherpad Base URL.": "Optionale interne URL für serverseitige API-Aufrufe. Leer lassen, um die Etherpad-Basis-URL zu verwenden.",
- "Etherpad session cookie domain (optional)": "Etherpad-Session-Cookie-Domain (optional)",
- "Auto-filled from the Nextcloud and Etherpad hosts when possible. Adjust it if your deployment uses a proxy path or a different trusted parent domain; leave empty for a host-only cookie.": "Wird, wenn möglich, automatisch aus den Nextcloud- und Etherpad-Hosts abgeleitet. Anpassen, wenn die Installation einen Proxy-Pfad oder eine andere vertrauenswürdige Parent-Domain nutzt; leer lassen für ein Host-only-Cookie.",
- "Etherpad API key": "Etherpad-API-Schlüssel",
- "Detected API version:": "Erkannte API-Version:",
- "Controls how often pad content is copied from Etherpad into the .pad file while the pad is open.": "Steuert, wie oft der Pad-Inhalt aus Etherpad in die .pad-Datei kopiert wird, während das Pad geöffnet ist.",
+ ".pad file not found.": ".pad-Datei nicht gefunden.",
+ ".pad file sync interval (seconds)": ".pad-Datei-Synchronisierungsintervall (Sekunden)",
+ "A file with this name already exists.": "Eine Datei mit diesem Namen existiert bereits.",
+ "Absolute https origins allowed to embed the /embed/by-id and /embed/create-by-parent routes. Leave empty to disable external embedding.": "Absolute HTTPS-Origins, die die Routen /embed/by-id und /embed/create-by-parent einbetten dürfen. Leer lassen, um externes Einbetten zu deaktivieren.",
+ "Add trusted Etherpad hostnames or HTTPS origins. Leave empty only if all public HTTPS hosts should be trusted.": "Vertrauenswürdige Etherpad-Hostnamen oder HTTPS-Ursprünge eintragen. Nur leer lassen, wenn alle öffentlichen HTTPS-Hosts vertrauenswürdig sein sollen.",
+ "Admin permissions required.": "Administratorrechte erforderlich.",
"Allow linking external public pads": "Verlinken externer öffentlicher Pads erlauben",
- "External host allowlist (optional)": "Allowlist externer Hosts (optional)",
- "Save settings": "Einstellungen speichern",
+ "Authentication required.": "Authentifizierung erforderlich.",
+ "Auto-filled from the Nextcloud and Etherpad hosts when possible. Adjust it if your deployment uses a proxy path or a different trusted parent domain; leave empty for a host-only cookie.": "Wird, wenn möglich, automatisch aus den Nextcloud- und Etherpad-Hosts abgeleitet. Anpassen, wenn die Installation einen Proxy-Pfad oder eine andere vertrauenswürdige Parent-Domain nutzt; leer lassen für ein Host-only-Cookie.",
+ "Back": "Zurück",
+ "Cannot open selected .pad file.": "Ausgewählte .pad-Datei konnte nicht geöffnet werden.",
+ "Cannot read selected .pad file.": "Ausgewählte .pad-Datei konnte nicht gelesen werden.",
+ "Cannot resolve file path for file ID.": "Dateipfad zur Datei-ID konnte nicht ermittelt werden.",
+ "Cannot resolve selected .pad file.": "Ausgewählte .pad-Datei konnte nicht aufgelöst werden.",
+ "Cannot resolve selected parent folder.": "Ausgewählter Zielordner konnte nicht aufgelöst werden.",
+ "Checking for the original pad...": "Suche nach dem Original-Pad ...",
+ "Close": "Schließen",
+ "Configure the Etherpad server and external pad security policy for the Etherpad Nextcloud app.": "Konfiguriere den Etherpad-Server und die Sicherheitsrichtlinie für externe Pads in der Etherpad-Nextcloud-App.",
"Consistency check": "Konsistenzprüfung",
- "Pending Etherpad deletes": "Ausstehende Etherpad-Löschungen",
- "Saving settings...": "Einstellungen werden gespeichert...",
- "Settings saved.": "Einstellungen gespeichert.",
- "Running consistency check...": "Konsistenzprüfung läuft...",
+ "Consistency check failed.": "Konsistenzprüfung fehlgeschlagen.",
+ "Consistency check finished with issues.": "Konsistenzprüfung mit Problemen abgeschlossen.",
"Consistency check successful.": "Konsistenzprüfung erfolgreich.",
"Consistency check successful. No issues found.": "Konsistenzprüfung erfolgreich. Keine Probleme gefunden.",
- "Consistency check finished with issues.": "Konsistenzprüfung mit Problemen abgeschlossen.",
- "Request failed.": "Anfrage fehlgeschlagen.",
- "Consistency check failed.": "Konsistenzprüfung fehlgeschlagen.",
- "Etherpad API key is required.": "Ein Etherpad-API-Schlüssel ist erforderlich.",
- "Etherpad Base URL is required.": "Eine Etherpad-Basis-URL ist erforderlich.",
- "Etherpad Base URL must use https.": "Die Etherpad-Basis-URL muss HTTPS verwenden.",
- "Invalid Etherpad Base URL.": "Ungültige Etherpad-Basis-URL.",
- "Etherpad Base URL must not include query or fragment.": "Die Etherpad-Basis-URL darf keinen Query-String und kein Fragment enthalten.",
- "Etherpad API URL must use http or https.": "Die Etherpad-API-URL muss HTTP oder HTTPS verwenden.",
- "Invalid Etherpad API URL.": "Ungültige Etherpad-API-URL.",
- "Etherpad API URL must not include query or fragment.": "Die Etherpad-API-URL darf keinen Query-String und kein Fragment enthalten.",
- "Invalid Etherpad API version format.": "Ungültiges Format für die Etherpad-API-Version.",
- "Sync interval must be between 5 and 3600 seconds.": "Das Intervall muss zwischen 5 und 3600 Sekunden liegen.",
- "External allowlist contains invalid host: {host}": "Die externe Allowlist enthält einen ungültigen Host: {host}",
- "External allowlist URL must use https: {host}": "Die externe Allowlist-URL muss HTTPS verwenden: {host}",
- "Test fault cleared.": "Testfehler zurückgesetzt.",
- "Test fault set: {fault}": "Testfehler gesetzt: {fault}",
- "Unsupported test fault.": "Nicht unterstützter Testfehler.",
- "Test faults are available only when Nextcloud debug mode is enabled.": "Testfehler sind nur verfügbar, wenn der Nextcloud-Debug-Modus aktiviert ist.",
- "Authentication required.": "Authentifizierung erforderlich.",
- "Admin permissions required.": "Administratorrechte erforderlich.",
- "New pad": "Neues Pad",
- "Open original pad": "Original-Pad öffnen",
- "This .pad file has no matching pad in this Nextcloud.": "Für diese .pad-Datei existiert in dieser Nextcloud kein passendes Pad.",
- "Checking for the original pad...": "Suche nach dem Original-Pad ...",
- "This file looks like a copy of an existing .pad file in your account. Open the original to keep editing the linked pad, or create a new pad to fork the content stored in this file.": "Diese Datei sieht aus wie eine Kopie einer bereits vorhandenen .pad-Datei in deinem Konto. Öffne das Original, um am verknüpften Pad weiterzuarbeiten, oder erstelle aus dem in dieser Datei gespeicherten Inhalt ein neues Pad als eigene Kopie.",
- "We couldn't find a matching pad in this Nextcloud. You can create a new pad from the text stored in this file; from then on, opening this file will load the new pad.": "Wir konnten in dieser Nextcloud kein zugehöriges Pad finden. Du kannst aus dem in dieser Datei gespeicherten Text ein neues Pad erstellen; ab dann öffnet diese Datei das neue Pad.",
- "Create new pad from this file": "Neues Pad aus dieser Datei erstellen",
- "Creating new pad...": "Neues Pad wird erstellt ...",
- "Open the original .pad file": "Ursprüngliche .pad-Datei öffnen",
+ "Controls how often pad content is copied from Etherpad into the .pad file while the pad is open.": "Steuert, wie oft der Pad-Inhalt aus Etherpad in die .pad-Datei kopiert wird, während das Pad geöffnet ist.",
+ "Cookie domain must be a hostname, not a URL.": "Cookie-Domain muss ein Hostname sein, keine URL.",
+ "Cookie domain must be a valid shared hostname.": "Cookie-Domain muss ein gültiger gemeinsamer Hostname sein.",
+ "Could not check pad sync status.": "Synchronisierungsstatus des Pads konnte nicht ermittelt werden.",
+ "Could not create pad": "Pad konnte nicht erstellt werden",
+ "Could not create pad from template.": "Pad konnte nicht aus Vorlage erstellt werden.",
"Could not create pad.": "Pad konnte nicht erstellt werden.",
+ "Could not create public pad.": "Öffentliches Pad konnte nicht erstellt werden.",
+ "Could not fetch the pad content from the remote server. The new file is empty for now — open the pad in the viewer to populate it.": "Pad-Inhalt konnte nicht vom Remote-Server geladen werden. Die neue Datei ist vorerst leer — öffne das Pad im Viewer, um sie zu befüllen.",
"Could not import external pad.": "Externes Pad konnte nicht importiert werden.",
+ "Could not import public pad URL.": "Öffentliche Pad-URL konnte nicht importiert werden.",
+ "Could not initialize .pad file.": ".pad-Datei konnte nicht initialisiert werden.",
+ "Could not look up the original pad.": "Original-Pad konnte nicht ermittelt werden.",
+ "Could not move pad to trash.": "Pad konnte nicht in den Papierkorb verschoben werden.",
+ "Could not open pad": "Pad konnte nicht geöffnet werden",
"Could not open pad.": "Pad konnte nicht geöffnet werden.",
"Could not read pad metadata.": "Pad-Metadaten konnten nicht gelesen werden.",
- "Could not sync pad content.": "Pad-Inhalt konnte nicht synchronisiert werden.",
- "Could not check pad sync status.": "Synchronisierungsstatus des Pads konnte nicht ermittelt werden.",
- "Could not move pad to trash.": "Pad konnte nicht in den Papierkorb verschoben werden.",
- "Could not look up the original pad.": "Original-Pad konnte nicht ermittelt werden.",
"Could not recover pad from this file.": "Pad konnte aus dieser Datei nicht wiederhergestellt werden.",
+ "Could not resolve .pad file.": ".pad-Datei konnte nicht aufgelöst werden.",
"Could not restore pad from trash.": "Pad konnte nicht aus dem Papierkorb wiederhergestellt werden.",
- "Hint: Etherpad rejected the API key. Check that the key matches Etherpad's APIKEY.txt.": "Hinweis: Etherpad hat den API-Schlüssel abgelehnt. Prüfe, ob er mit Etherpads APIKEY.txt übereinstimmt.",
+ "Could not sync pad content.": "Pad-Inhalt konnte nicht synchronisiert werden.",
+ "Create": "Erstellen",
+ "Create new pad from this file": "Neues Pad aus dieser Datei erstellen",
+ "Creating new pad...": "Neues Pad wird erstellt ...",
+ "Creating pad...": "Pad wird erstellt...",
+ "Creating...": "Wird erstellt...",
+ "Delete linked Etherpad pad when .pad file is moved to trash": "Verknüpftes Etherpad-Pad löschen, wenn die .pad-Datei in den Papierkorb verschoben wird",
+ "Detected API version:": "Erkannte API-Version:",
+ "Embed configuration is incomplete.": "Embed-Konfiguration ist unvollständig.",
+ "Etherpad API URL (optional)": "Etherpad-API-URL (optional)",
+ "Etherpad API URL must not include query or fragment.": "Die Etherpad-API-URL darf keinen Query-String und kein Fragment enthalten.",
+ "Etherpad API URL must use http or https.": "Die Etherpad-API-URL muss HTTP oder HTTPS verwenden.",
+ "Etherpad API key": "Etherpad-API-Schlüssel",
+ "Etherpad API key is required.": "Ein Etherpad-API-Schlüssel ist erforderlich.",
+ "Etherpad Base URL": "Etherpad-Basis-URL",
+ "Etherpad Base URL is required.": "Eine Etherpad-Basis-URL ist erforderlich.",
+ "Etherpad Base URL must not include query or fragment.": "Die Etherpad-Basis-URL darf keinen Query-String und kein Fragment enthalten.",
+ "Etherpad Base URL must use https.": "Die Etherpad-Basis-URL muss HTTPS verwenden.",
+ "Etherpad connection test failed.": "Etherpad-Verbindung konnte nicht geprüft werden.",
+ "Etherpad connection test failed: {detail}": "Etherpad-Verbindung konnte nicht geprüft werden: {detail}",
+ "Etherpad connection test successful.": "Etherpad-Verbindung erfolgreich geprüft.",
+ "Etherpad session cookie domain (optional)": "Etherpad-Session-Cookie-Domain (optional)",
+ "External allowlist URL must use https: {host}": "Die externe Allowlist-URL muss HTTPS verwenden: {host}",
+ "External allowlist contains invalid host: {host}": "Die externe Allowlist enthält einen ungültigen Host: {host}",
+ "External host allowlist (optional)": "Allowlist externer Hosts (optional)",
+ "External pad URL": "Externe Pad-URL",
+ "External pad URL is required.": "Externe Pad-URL ist erforderlich.",
+ "Failed to save settings.": "Einstellungen konnten nicht gespeichert werden.",
+ "Failed to update test fault.": "Test-Fehler konnte nicht aktualisiert werden.",
+ "File name": "Dateiname",
+ "File name is required.": "Dateiname ist erforderlich.",
"Hint: API endpoint not found. Check the API host and that the configured API version is supported by your Etherpad.": "Hinweis: API-Endpunkt nicht gefunden. Prüfe den API-Host und ob die konfigurierte API-Version von deinem Etherpad unterstützt wird.",
- "Hint: Etherpad returned a server error. Check the Etherpad server logs.": "Hinweis: Etherpad hat einen Server-Fehler zurückgegeben. Prüfe die Etherpad-Server-Logs.",
- "Hint: The configured Etherpad host did not resolve. Check the hostname for typos and that DNS reaches it from this server.": "Hinweis: Der konfigurierte Etherpad-Host konnte nicht aufgelöst werden. Prüfe den Hostnamen auf Tippfehler und ob er von diesem Server per DNS aufgelöst werden kann.",
"Hint: Connection refused. Etherpad does not appear to be running on the configured host and port.": "Hinweis: Verbindung verweigert. Etherpad läuft anscheinend nicht auf dem konfigurierten Host und Port.",
"Hint: Connection timed out. Check that this server can reach the Etherpad host (firewall, network).": "Hinweis: Zeitüberschreitung bei der Verbindung. Prüfe, ob dieser Server den Etherpad-Host erreichen kann (Firewall, Netzwerk).",
- "Hint: TLS handshake failed. Check the Etherpad certificate and that the configured URL uses the right scheme.": "Hinweis: TLS-Handshake fehlgeschlagen. Prüfe das Etherpad-Zertifikat und ob die konfigurierte URL das richtige Schema verwendet.",
"Hint: Could not reach Etherpad. Check the API host and that this server can connect to it.": "Hinweis: Etherpad konnte nicht erreicht werden. Prüfe den API-Host und ob dieser Server eine Verbindung herstellen kann.",
+ "Hint: Etherpad rejected the API key. Check that the key matches Etherpad's APIKEY.txt.": "Hinweis: Etherpad hat den API-Schlüssel abgelehnt. Prüfe, ob er mit Etherpads APIKEY.txt übereinstimmt.",
+ "Hint: Etherpad returned a server error. Check the Etherpad server logs.": "Hinweis: Etherpad hat einen Server-Fehler zurückgegeben. Prüfe die Etherpad-Server-Logs.",
"Hint: Etherpad returned non-JSON. Likely a reverse proxy or HTML error page in front of the API host.": "Hinweis: Etherpad hat keine JSON-Antwort zurückgegeben. Wahrscheinlich steht ein Reverse-Proxy oder eine HTML-Fehlerseite vor dem API-Host.",
+ "Hint: Set \"authenticationMethod\": \"apikey\" in Etherpad's settings.json.": "Hinweis: Setze in Etherpads settings.json \"authenticationMethod\": \"apikey\".",
+ "Hint: TLS handshake failed. Check the Etherpad certificate and that the configured URL uses the right scheme.": "Hinweis: TLS-Handshake fehlgeschlagen. Prüfe das Etherpad-Zertifikat und ob die konfigurierte URL das richtige Schema verwendet.",
+ "Hint: The configured Etherpad host did not resolve. Check the hostname for typos and that DNS reaches it from this server.": "Hinweis: Der konfigurierte Etherpad-Host konnte nicht aufgelöst werden. Prüfe den Hostnamen auf Tippfehler und ob er von diesem Server per DNS aufgelöst werden kann.",
+ "If enabled, moving a .pad file to the trash also deletes the linked Etherpad pad.": "Wenn aktiviert, wird beim Verschieben einer .pad-Datei in den Papierkorb auch das verknüpfte Etherpad-Pad gelöscht.",
+ "Invalid Etherpad API URL.": "Ungültige Etherpad-API-URL.",
+ "Invalid Etherpad API version format.": "Ungültiges Format für die Etherpad-API-Version.",
+ "Invalid Etherpad Base URL.": "Ungültige Etherpad-Basis-URL.",
+ "Invalid access mode.": "Ungültiger Zugriffsmodus.",
"Invalid file ID.": "Ungültige Datei-ID.",
"Invalid file path.": "Ungültiger Dateipfad.",
- "Invalid pad name.": "Ungültiger Pad-Name.",
"Invalid input.": "Ungültige Eingabe.",
- "Cannot resolve selected parent folder.": "Ausgewählter Zielordner konnte nicht aufgelöst werden.",
- "Cannot open selected .pad file.": "Ausgewählte .pad-Datei konnte nicht geöffnet werden.",
- "Cannot resolve selected .pad file.": "Ausgewählte .pad-Datei konnte nicht aufgelöst werden.",
- "Cannot read selected .pad file.": "Ausgewählte .pad-Datei konnte nicht gelesen werden.",
- "Cannot resolve file path for file ID.": "Dateipfad zur Datei-ID konnte nicht ermittelt werden.",
- "A file with this name already exists.": "Eine Datei mit diesem Namen existiert bereits.",
- "Absolute https origins allowed to embed the /embed/by-id and /embed/create-by-parent routes. Leave empty to disable external embedding.": "Absolute HTTPS-Origins, die die Routen /embed/by-id und /embed/create-by-parent einbetten dürfen. Leer lassen, um externes Einbetten zu deaktivieren.",
- "Back": "Zurück",
- "Cookie domain must be a hostname, not a URL.": "Cookie-Domain muss ein Hostname sein, keine URL.",
- "Cookie domain must be a valid shared hostname.": "Cookie-Domain muss ein gültiger gemeinsamer Hostname sein.",
- "Could not create pad from template.": "Pad konnte nicht aus Vorlage erstellt werden.",
- "Creating pad...": "Pad wird erstellt...",
- "Embed configuration is incomplete.": "Embed-Konfiguration ist unvollständig.",
- "Failed to update test fault.": "Test-Fehler konnte nicht aktualisiert werden.",
- "Invalid access mode.": "Ungültiger Zugriffsmodus.",
+ "Invalid pad name.": "Ungültiger Pad-Name.",
"Invalid parent folder ID.": "Ungültige Zielordner-ID.",
"Loading pad...": "Pad wird geladen...",
+ "New pad": "Neues Pad",
"No synced snapshot is stored in this .pad file yet.": "In dieser .pad-Datei ist noch keine synchronisierte Kopie gespeichert.",
+ "Open in Etherpad": "In Etherpad öffnen",
+ "Open original pad": "Original-Pad öffnen",
+ "Open the original .pad file": "Ursprüngliche .pad-Datei öffnen",
+ "Optional internal URL for server-side API calls. Leave empty to use Etherpad Base URL.": "Optionale interne URL für serverseitige API-Aufrufe. Leer lassen, um die Etherpad-Basis-URL zu verwenden.",
"Pad from another server": "Pad von einem anderen Server",
"Pad name is required.": "Pad-Name ist erforderlich.",
+ "Pads": "Pads",
+ "Pending Etherpad deletes": "Ausstehende Etherpad-Löschungen",
+ "Pending delete retry failed.": "Wiederholung ausstehender Löschungen fehlgeschlagen.",
+ "Pending delete retry finished.": "Wiederholung ausstehender Löschungen abgeschlossen.",
+ "Public pad": "Öffentliches Pad",
+ "Public pad from URL": "Öffentliches Pad aus URL",
"Read-only snapshot": "Schreibgeschützte Kopie",
"Read-only snapshot from the .pad file.": "Schreibgeschützte Kopie aus der .pad-Datei.",
+ "Request failed.": "Anfrage fehlgeschlagen.",
+ "Retry pending deletes now": "Ausstehende Löschungen jetzt wiederholen",
+ "Running consistency check...": "Konsistenzprüfung läuft...",
+ "Save settings": "Einstellungen speichern",
+ "Saving settings...": "Einstellungen werden gespeichert...",
"Selected file is not a .pad file.": "Ausgewählte Datei ist keine .pad-Datei.",
"Selected parent folder is not writable.": "Ausgewählter Zielordner ist nicht beschreibbar.",
+ "Settings saved.": "Einstellungen gespeichert.",
+ "Sync interval must be between 5 and 3600 seconds.": "Das Intervall muss zwischen 5 und 3600 Sekunden liegen.",
"Template file not found.": "Vorlagendatei nicht gefunden.",
- "Trusted embed origins (optional)": "Vertrauenswürdige Embed-Origins (optional)",
- "Unknown error.": "Unbekannter Fehler.",
- "Retry pending deletes now": "Ausstehende Löschungen jetzt wiederholen",
- "Failed to save settings.": "Einstellungen konnten nicht gespeichert werden.",
- "Pending delete retry failed.": "Wiederholung ausstehender Löschungen fehlgeschlagen.",
- "Pending delete retry finished.": "Wiederholung ausstehender Löschungen abgeschlossen.",
- ".pad file sync interval (seconds)": ".pad-Datei-Synchronisierungsintervall (Sekunden)",
- "Delete linked Etherpad pad when .pad file is moved to trash": "Verknüpftes Etherpad-Pad löschen, wenn die .pad-Datei in den Papierkorb verschoben wird",
- "If enabled, moving a .pad file to the trash also deletes the linked Etherpad pad.": "Wenn aktiviert, wird beim Verschieben einer .pad-Datei in den Papierkorb auch das verknüpfte Etherpad-Pad gelöscht.",
- "Add trusted Etherpad hostnames or HTTPS origins. Leave empty only if all public HTTPS hosts should be trusted.": "Vertrauenswürdige Etherpad-Hostnamen oder HTTPS-Ursprünge eintragen. Nur leer lassen, wenn alle öffentlichen HTTPS-Hosts vertrauenswürdig sein sollen.",
- "Hint: Set \"authenticationMethod\": \"apikey\" in Etherpad's settings.json.": "Hinweis: Setze in Etherpads settings.json \"authenticationMethod\": \"apikey\".",
- "Could not create pad": "Pad konnte nicht erstellt werden",
- "Could not open pad": "Pad konnte nicht geöffnet werden",
- "Could not initialize .pad file.": ".pad-Datei konnte nicht initialisiert werden.",
- "Could not resolve .pad file.": ".pad-Datei konnte nicht aufgelöst werden.",
- ".pad file not found.": ".pad-Datei nicht gefunden.",
"Test Etherpad connection": "Etherpad-Verbindung testen",
+ "Test fault cleared.": "Testfehler zurückgesetzt.",
+ "Test fault set: {fault}": "Testfehler gesetzt: {fault}",
+ "Test faults are available only when Nextcloud debug mode is enabled.": "Testfehler sind nur verfügbar, wenn der Nextcloud-Debug-Modus aktiviert ist.",
"Testing Etherpad connection...": "Etherpad-Verbindung wird geprüft...",
- "Etherpad connection test successful.": "Etherpad-Verbindung erfolgreich geprüft.",
- "Etherpad connection test failed.": "Etherpad-Verbindung konnte nicht geprüft werden.",
- "Etherpad connection test failed: {detail}": "Etherpad-Verbindung konnte nicht geprüft werden: {detail}",
- "Close": "Schließen",
- "Create": "Erstellen",
- "Creating...": "Wird erstellt...",
- "File name": "Dateiname",
- "File name is required.": "Dateiname ist erforderlich.",
- "Open in Etherpad": "In Etherpad öffnen",
- "Public pad": "Öffentliches Pad",
- "Public pad from URL": "Öffentliches Pad aus URL",
- "External pad URL": "Externe Pad-URL",
- "External pad URL is required.": "Externe Pad-URL ist erforderlich.",
- "Could not create public pad.": "Öffentliches Pad konnte nicht erstellt werden.",
- "Could not import public pad URL.": "Öffentliche Pad-URL konnte nicht importiert werden.",
- "Could not fetch the pad content from the remote server. The new file is empty for now — open the pad in the viewer to populate it.": "Pad-Inhalt konnte nicht vom Remote-Server geladen werden. Die neue Datei ist vorerst leer — öffne das Pad im Viewer, um sie zu befüllen."
+ "This .pad file has no matching pad in this Nextcloud.": "Für diese .pad-Datei existiert in dieser Nextcloud kein passendes Pad.",
+ "This file looks like a copy of an existing .pad file in your account. Open the original to keep editing the linked pad, or create a new pad to fork the content stored in this file.": "Diese Datei sieht aus wie eine Kopie einer bereits vorhandenen .pad-Datei in deinem Konto. Öffne das Original, um am verknüpften Pad weiterzuarbeiten, oder erstelle aus dem in dieser Datei gespeicherten Inhalt ein neues Pad als eigene Kopie.",
+ "Trusted embed origins (optional)": "Vertrauenswürdige Embed-Origins (optional)",
+ "Unknown error.": "Unbekannter Fehler.",
+ "Unsupported test fault.": "Nicht unterstützter Testfehler.",
+ "We couldn't find a matching pad in this Nextcloud. You can create a new pad from the text stored in this file; from then on, opening this file will load the new pad.": "Wir konnten in dieser Nextcloud kein zugehöriges Pad finden. Du kannst aus dem in dieser Datei gespeicherten Text ein neues Pad erstellen; ab dann öffnet diese Datei das neue Pad."
},
"nplurals=2; plural=(n != 1);"
);
diff --git a/l10n/de_DE.json b/l10n/de_DE.json
index 30a6f07..d8630a2 100644
--- a/l10n/de_DE.json
+++ b/l10n/de_DE.json
@@ -1,137 +1,137 @@
{
"translations": {
- "Pads": "Pads",
- "Configure the Etherpad server and external pad security policy for the Etherpad Nextcloud app.": "Konfiguriere den Etherpad-Server und die Sicherheitsrichtlinie für externe Pads in der Etherpad-Nextcloud-App.",
- "Etherpad Base URL": "Etherpad-Basis-URL",
- "Etherpad API URL (optional)": "Etherpad-API-URL (optional)",
- "Optional internal URL for server-side API calls. Leave empty to use Etherpad Base URL.": "Optionale interne URL für serverseitige API-Aufrufe. Leer lassen, um die Etherpad-Basis-URL zu verwenden.",
- "Etherpad session cookie domain (optional)": "Etherpad-Session-Cookie-Domain (optional)",
- "Auto-filled from the Nextcloud and Etherpad hosts when possible. Adjust it if your deployment uses a proxy path or a different trusted parent domain; leave empty for a host-only cookie.": "Wird, wenn möglich, automatisch aus den Nextcloud- und Etherpad-Hosts abgeleitet. Anpassen, wenn die Installation einen Proxy-Pfad oder eine andere vertrauenswürdige Parent-Domain nutzt; leer lassen für ein Host-only-Cookie.",
- "Etherpad API key": "Etherpad-API-Schlüssel",
- "Detected API version:": "Erkannte API-Version:",
- "Controls how often pad content is copied from Etherpad into the .pad file while the pad is open.": "Steuert, wie oft der Pad-Inhalt aus Etherpad in die .pad-Datei kopiert wird, während das Pad geöffnet ist.",
+ ".pad file not found.": ".pad-Datei nicht gefunden.",
+ ".pad file sync interval (seconds)": ".pad-Datei-Synchronisierungsintervall (Sekunden)",
+ "A file with this name already exists.": "Eine Datei mit diesem Namen existiert bereits.",
+ "Absolute https origins allowed to embed the /embed/by-id and /embed/create-by-parent routes. Leave empty to disable external embedding.": "Absolute HTTPS-Origins, die die Routen /embed/by-id und /embed/create-by-parent einbetten dürfen. Leer lassen, um externes Einbetten zu deaktivieren.",
+ "Add trusted Etherpad hostnames or HTTPS origins. Leave empty only if all public HTTPS hosts should be trusted.": "Vertrauenswürdige Etherpad-Hostnamen oder HTTPS-Ursprünge eintragen. Nur leer lassen, wenn alle öffentlichen HTTPS-Hosts vertrauenswürdig sein sollen.",
+ "Admin permissions required.": "Administratorrechte erforderlich.",
"Allow linking external public pads": "Verlinken externer öffentlicher Pads erlauben",
- "External host allowlist (optional)": "Allowlist externer Hosts (optional)",
- "Save settings": "Einstellungen speichern",
+ "Authentication required.": "Authentifizierung erforderlich.",
+ "Auto-filled from the Nextcloud and Etherpad hosts when possible. Adjust it if your deployment uses a proxy path or a different trusted parent domain; leave empty for a host-only cookie.": "Wird, wenn möglich, automatisch aus den Nextcloud- und Etherpad-Hosts abgeleitet. Anpassen, wenn die Installation einen Proxy-Pfad oder eine andere vertrauenswürdige Parent-Domain nutzt; leer lassen für ein Host-only-Cookie.",
+ "Back": "Zurück",
+ "Cannot open selected .pad file.": "Ausgewählte .pad-Datei konnte nicht geöffnet werden.",
+ "Cannot read selected .pad file.": "Ausgewählte .pad-Datei konnte nicht gelesen werden.",
+ "Cannot resolve file path for file ID.": "Dateipfad zur Datei-ID konnte nicht ermittelt werden.",
+ "Cannot resolve selected .pad file.": "Ausgewählte .pad-Datei konnte nicht aufgelöst werden.",
+ "Cannot resolve selected parent folder.": "Ausgewählter Zielordner konnte nicht aufgelöst werden.",
+ "Checking for the original pad...": "Suche nach dem Original-Pad ...",
+ "Close": "Schließen",
+ "Configure the Etherpad server and external pad security policy for the Etherpad Nextcloud app.": "Konfiguriere den Etherpad-Server und die Sicherheitsrichtlinie für externe Pads in der Etherpad-Nextcloud-App.",
"Consistency check": "Konsistenzprüfung",
- "Pending Etherpad deletes": "Ausstehende Etherpad-Löschungen",
- "Saving settings...": "Einstellungen werden gespeichert...",
- "Settings saved.": "Einstellungen gespeichert.",
- "Running consistency check...": "Konsistenzprüfung läuft...",
+ "Consistency check failed.": "Konsistenzprüfung fehlgeschlagen.",
+ "Consistency check finished with issues.": "Konsistenzprüfung mit Problemen abgeschlossen.",
"Consistency check successful.": "Konsistenzprüfung erfolgreich.",
"Consistency check successful. No issues found.": "Konsistenzprüfung erfolgreich. Keine Probleme gefunden.",
- "Consistency check finished with issues.": "Konsistenzprüfung mit Problemen abgeschlossen.",
- "Request failed.": "Anfrage fehlgeschlagen.",
- "Consistency check failed.": "Konsistenzprüfung fehlgeschlagen.",
- "Etherpad API key is required.": "Ein Etherpad-API-Schlüssel ist erforderlich.",
- "Etherpad Base URL is required.": "Eine Etherpad-Basis-URL ist erforderlich.",
- "Etherpad Base URL must use https.": "Die Etherpad-Basis-URL muss HTTPS verwenden.",
- "Invalid Etherpad Base URL.": "Ungültige Etherpad-Basis-URL.",
- "Etherpad Base URL must not include query or fragment.": "Die Etherpad-Basis-URL darf keinen Query-String und kein Fragment enthalten.",
- "Etherpad API URL must use http or https.": "Die Etherpad-API-URL muss HTTP oder HTTPS verwenden.",
- "Invalid Etherpad API URL.": "Ungültige Etherpad-API-URL.",
- "Etherpad API URL must not include query or fragment.": "Die Etherpad-API-URL darf keinen Query-String und kein Fragment enthalten.",
- "Invalid Etherpad API version format.": "Ungültiges Format für die Etherpad-API-Version.",
- "Sync interval must be between 5 and 3600 seconds.": "Das Intervall muss zwischen 5 und 3600 Sekunden liegen.",
- "External allowlist contains invalid host: {host}": "Die externe Allowlist enthält einen ungültigen Host: {host}",
- "External allowlist URL must use https: {host}": "Die externe Allowlist-URL muss HTTPS verwenden: {host}",
- "Test fault cleared.": "Testfehler zurückgesetzt.",
- "Test fault set: {fault}": "Testfehler gesetzt: {fault}",
- "Unsupported test fault.": "Nicht unterstützter Testfehler.",
- "Test faults are available only when Nextcloud debug mode is enabled.": "Testfehler sind nur verfügbar, wenn der Nextcloud-Debug-Modus aktiviert ist.",
- "Authentication required.": "Authentifizierung erforderlich.",
- "Admin permissions required.": "Administratorrechte erforderlich.",
- "New pad": "Neues Pad",
- "Open original pad": "Original-Pad öffnen",
- "This .pad file has no matching pad in this Nextcloud.": "Für diese .pad-Datei existiert in dieser Nextcloud kein passendes Pad.",
- "Checking for the original pad...": "Suche nach dem Original-Pad ...",
- "This file looks like a copy of an existing .pad file in your account. Open the original to keep editing the linked pad, or create a new pad to fork the content stored in this file.": "Diese Datei sieht aus wie eine Kopie einer bereits vorhandenen .pad-Datei in deinem Konto. Öffne das Original, um am verknüpften Pad weiterzuarbeiten, oder erstelle aus dem in dieser Datei gespeicherten Inhalt ein neues Pad als eigene Kopie.",
- "We couldn't find a matching pad in this Nextcloud. You can create a new pad from the text stored in this file; from then on, opening this file will load the new pad.": "Wir konnten in dieser Nextcloud kein zugehöriges Pad finden. Du kannst aus dem in dieser Datei gespeicherten Text ein neues Pad erstellen; ab dann öffnet diese Datei das neue Pad.",
- "Create new pad from this file": "Neues Pad aus dieser Datei erstellen",
- "Creating new pad...": "Neues Pad wird erstellt ...",
- "Open the original .pad file": "Ursprüngliche .pad-Datei öffnen",
+ "Controls how often pad content is copied from Etherpad into the .pad file while the pad is open.": "Steuert, wie oft der Pad-Inhalt aus Etherpad in die .pad-Datei kopiert wird, während das Pad geöffnet ist.",
+ "Cookie domain must be a hostname, not a URL.": "Cookie-Domain muss ein Hostname sein, keine URL.",
+ "Cookie domain must be a valid shared hostname.": "Cookie-Domain muss ein gültiger gemeinsamer Hostname sein.",
+ "Could not check pad sync status.": "Synchronisierungsstatus des Pads konnte nicht ermittelt werden.",
+ "Could not create pad": "Pad konnte nicht erstellt werden",
+ "Could not create pad from template.": "Pad konnte nicht aus Vorlage erstellt werden.",
"Could not create pad.": "Pad konnte nicht erstellt werden.",
+ "Could not create public pad.": "Öffentliches Pad konnte nicht erstellt werden.",
+ "Could not fetch the pad content from the remote server. The new file is empty for now — open the pad in the viewer to populate it.": "Pad-Inhalt konnte nicht vom Remote-Server geladen werden. Die neue Datei ist vorerst leer — öffne das Pad im Viewer, um sie zu befüllen.",
"Could not import external pad.": "Externes Pad konnte nicht importiert werden.",
+ "Could not import public pad URL.": "Öffentliche Pad-URL konnte nicht importiert werden.",
+ "Could not initialize .pad file.": ".pad-Datei konnte nicht initialisiert werden.",
+ "Could not look up the original pad.": "Original-Pad konnte nicht ermittelt werden.",
+ "Could not move pad to trash.": "Pad konnte nicht in den Papierkorb verschoben werden.",
+ "Could not open pad": "Pad konnte nicht geöffnet werden",
"Could not open pad.": "Pad konnte nicht geöffnet werden.",
"Could not read pad metadata.": "Pad-Metadaten konnten nicht gelesen werden.",
- "Could not sync pad content.": "Pad-Inhalt konnte nicht synchronisiert werden.",
- "Could not check pad sync status.": "Synchronisierungsstatus des Pads konnte nicht ermittelt werden.",
- "Could not move pad to trash.": "Pad konnte nicht in den Papierkorb verschoben werden.",
- "Could not look up the original pad.": "Original-Pad konnte nicht ermittelt werden.",
"Could not recover pad from this file.": "Pad konnte aus dieser Datei nicht wiederhergestellt werden.",
+ "Could not resolve .pad file.": ".pad-Datei konnte nicht aufgelöst werden.",
"Could not restore pad from trash.": "Pad konnte nicht aus dem Papierkorb wiederhergestellt werden.",
- "Hint: Etherpad rejected the API key. Check that the key matches Etherpad's APIKEY.txt.": "Hinweis: Etherpad hat den API-Schlüssel abgelehnt. Prüfe, ob er mit Etherpads APIKEY.txt übereinstimmt.",
+ "Could not sync pad content.": "Pad-Inhalt konnte nicht synchronisiert werden.",
+ "Create": "Erstellen",
+ "Create new pad from this file": "Neues Pad aus dieser Datei erstellen",
+ "Creating new pad...": "Neues Pad wird erstellt ...",
+ "Creating pad...": "Pad wird erstellt...",
+ "Creating...": "Wird erstellt...",
+ "Delete linked Etherpad pad when .pad file is moved to trash": "Verknüpftes Etherpad-Pad löschen, wenn die .pad-Datei in den Papierkorb verschoben wird",
+ "Detected API version:": "Erkannte API-Version:",
+ "Embed configuration is incomplete.": "Embed-Konfiguration ist unvollständig.",
+ "Etherpad API URL (optional)": "Etherpad-API-URL (optional)",
+ "Etherpad API URL must not include query or fragment.": "Die Etherpad-API-URL darf keinen Query-String und kein Fragment enthalten.",
+ "Etherpad API URL must use http or https.": "Die Etherpad-API-URL muss HTTP oder HTTPS verwenden.",
+ "Etherpad API key": "Etherpad-API-Schlüssel",
+ "Etherpad API key is required.": "Ein Etherpad-API-Schlüssel ist erforderlich.",
+ "Etherpad Base URL": "Etherpad-Basis-URL",
+ "Etherpad Base URL is required.": "Eine Etherpad-Basis-URL ist erforderlich.",
+ "Etherpad Base URL must not include query or fragment.": "Die Etherpad-Basis-URL darf keinen Query-String und kein Fragment enthalten.",
+ "Etherpad Base URL must use https.": "Die Etherpad-Basis-URL muss HTTPS verwenden.",
+ "Etherpad connection test failed.": "Etherpad-Verbindung konnte nicht geprüft werden.",
+ "Etherpad connection test failed: {detail}": "Etherpad-Verbindung konnte nicht geprüft werden: {detail}",
+ "Etherpad connection test successful.": "Etherpad-Verbindung erfolgreich geprüft.",
+ "Etherpad session cookie domain (optional)": "Etherpad-Session-Cookie-Domain (optional)",
+ "External allowlist URL must use https: {host}": "Die externe Allowlist-URL muss HTTPS verwenden: {host}",
+ "External allowlist contains invalid host: {host}": "Die externe Allowlist enthält einen ungültigen Host: {host}",
+ "External host allowlist (optional)": "Allowlist externer Hosts (optional)",
+ "External pad URL": "Externe Pad-URL",
+ "External pad URL is required.": "Externe Pad-URL ist erforderlich.",
+ "Failed to save settings.": "Einstellungen konnten nicht gespeichert werden.",
+ "Failed to update test fault.": "Test-Fehler konnte nicht aktualisiert werden.",
+ "File name": "Dateiname",
+ "File name is required.": "Dateiname ist erforderlich.",
"Hint: API endpoint not found. Check the API host and that the configured API version is supported by your Etherpad.": "Hinweis: API-Endpunkt nicht gefunden. Prüfe den API-Host und ob die konfigurierte API-Version von deinem Etherpad unterstützt wird.",
- "Hint: Etherpad returned a server error. Check the Etherpad server logs.": "Hinweis: Etherpad hat einen Server-Fehler zurückgegeben. Prüfe die Etherpad-Server-Logs.",
- "Hint: The configured Etherpad host did not resolve. Check the hostname for typos and that DNS reaches it from this server.": "Hinweis: Der konfigurierte Etherpad-Host konnte nicht aufgelöst werden. Prüfe den Hostnamen auf Tippfehler und ob er von diesem Server per DNS aufgelöst werden kann.",
"Hint: Connection refused. Etherpad does not appear to be running on the configured host and port.": "Hinweis: Verbindung verweigert. Etherpad läuft anscheinend nicht auf dem konfigurierten Host und Port.",
"Hint: Connection timed out. Check that this server can reach the Etherpad host (firewall, network).": "Hinweis: Zeitüberschreitung bei der Verbindung. Prüfe, ob dieser Server den Etherpad-Host erreichen kann (Firewall, Netzwerk).",
- "Hint: TLS handshake failed. Check the Etherpad certificate and that the configured URL uses the right scheme.": "Hinweis: TLS-Handshake fehlgeschlagen. Prüfe das Etherpad-Zertifikat und ob die konfigurierte URL das richtige Schema verwendet.",
"Hint: Could not reach Etherpad. Check the API host and that this server can connect to it.": "Hinweis: Etherpad konnte nicht erreicht werden. Prüfe den API-Host und ob dieser Server eine Verbindung herstellen kann.",
+ "Hint: Etherpad rejected the API key. Check that the key matches Etherpad's APIKEY.txt.": "Hinweis: Etherpad hat den API-Schlüssel abgelehnt. Prüfe, ob er mit Etherpads APIKEY.txt übereinstimmt.",
+ "Hint: Etherpad returned a server error. Check the Etherpad server logs.": "Hinweis: Etherpad hat einen Server-Fehler zurückgegeben. Prüfe die Etherpad-Server-Logs.",
"Hint: Etherpad returned non-JSON. Likely a reverse proxy or HTML error page in front of the API host.": "Hinweis: Etherpad hat keine JSON-Antwort zurückgegeben. Wahrscheinlich steht ein Reverse-Proxy oder eine HTML-Fehlerseite vor dem API-Host.",
+ "Hint: Set \"authenticationMethod\": \"apikey\" in Etherpad's settings.json.": "Hinweis: Setze in Etherpads settings.json \"authenticationMethod\": \"apikey\".",
+ "Hint: TLS handshake failed. Check the Etherpad certificate and that the configured URL uses the right scheme.": "Hinweis: TLS-Handshake fehlgeschlagen. Prüfe das Etherpad-Zertifikat und ob die konfigurierte URL das richtige Schema verwendet.",
+ "Hint: The configured Etherpad host did not resolve. Check the hostname for typos and that DNS reaches it from this server.": "Hinweis: Der konfigurierte Etherpad-Host konnte nicht aufgelöst werden. Prüfe den Hostnamen auf Tippfehler und ob er von diesem Server per DNS aufgelöst werden kann.",
+ "If enabled, moving a .pad file to the trash also deletes the linked Etherpad pad.": "Wenn aktiviert, wird beim Verschieben einer .pad-Datei in den Papierkorb auch das verknüpfte Etherpad-Pad gelöscht.",
+ "Invalid Etherpad API URL.": "Ungültige Etherpad-API-URL.",
+ "Invalid Etherpad API version format.": "Ungültiges Format für die Etherpad-API-Version.",
+ "Invalid Etherpad Base URL.": "Ungültige Etherpad-Basis-URL.",
+ "Invalid access mode.": "Ungültiger Zugriffsmodus.",
"Invalid file ID.": "Ungültige Datei-ID.",
"Invalid file path.": "Ungültiger Dateipfad.",
- "Invalid pad name.": "Ungültiger Pad-Name.",
"Invalid input.": "Ungültige Eingabe.",
- "Cannot resolve selected parent folder.": "Ausgewählter Zielordner konnte nicht aufgelöst werden.",
- "Cannot open selected .pad file.": "Ausgewählte .pad-Datei konnte nicht geöffnet werden.",
- "Cannot resolve selected .pad file.": "Ausgewählte .pad-Datei konnte nicht aufgelöst werden.",
- "Cannot read selected .pad file.": "Ausgewählte .pad-Datei konnte nicht gelesen werden.",
- "Cannot resolve file path for file ID.": "Dateipfad zur Datei-ID konnte nicht ermittelt werden.",
- "A file with this name already exists.": "Eine Datei mit diesem Namen existiert bereits.",
- "Absolute https origins allowed to embed the /embed/by-id and /embed/create-by-parent routes. Leave empty to disable external embedding.": "Absolute HTTPS-Origins, die die Routen /embed/by-id und /embed/create-by-parent einbetten dürfen. Leer lassen, um externes Einbetten zu deaktivieren.",
- "Back": "Zurück",
- "Cookie domain must be a hostname, not a URL.": "Cookie-Domain muss ein Hostname sein, keine URL.",
- "Cookie domain must be a valid shared hostname.": "Cookie-Domain muss ein gültiger gemeinsamer Hostname sein.",
- "Could not create pad from template.": "Pad konnte nicht aus Vorlage erstellt werden.",
- "Creating pad...": "Pad wird erstellt...",
- "Embed configuration is incomplete.": "Embed-Konfiguration ist unvollständig.",
- "Failed to update test fault.": "Test-Fehler konnte nicht aktualisiert werden.",
- "Invalid access mode.": "Ungültiger Zugriffsmodus.",
+ "Invalid pad name.": "Ungültiger Pad-Name.",
"Invalid parent folder ID.": "Ungültige Zielordner-ID.",
"Loading pad...": "Pad wird geladen...",
+ "New pad": "Neues Pad",
"No synced snapshot is stored in this .pad file yet.": "In dieser .pad-Datei ist noch keine synchronisierte Kopie gespeichert.",
+ "Open in Etherpad": "In Etherpad öffnen",
+ "Open original pad": "Original-Pad öffnen",
+ "Open the original .pad file": "Ursprüngliche .pad-Datei öffnen",
+ "Optional internal URL for server-side API calls. Leave empty to use Etherpad Base URL.": "Optionale interne URL für serverseitige API-Aufrufe. Leer lassen, um die Etherpad-Basis-URL zu verwenden.",
"Pad from another server": "Pad von einem anderen Server",
"Pad name is required.": "Pad-Name ist erforderlich.",
+ "Pads": "Pads",
+ "Pending Etherpad deletes": "Ausstehende Etherpad-Löschungen",
+ "Pending delete retry failed.": "Wiederholung ausstehender Löschungen fehlgeschlagen.",
+ "Pending delete retry finished.": "Wiederholung ausstehender Löschungen abgeschlossen.",
+ "Public pad": "Öffentliches Pad",
+ "Public pad from URL": "Öffentliches Pad aus URL",
"Read-only snapshot": "Schreibgeschützte Kopie",
"Read-only snapshot from the .pad file.": "Schreibgeschützte Kopie aus der .pad-Datei.",
+ "Request failed.": "Anfrage fehlgeschlagen.",
+ "Retry pending deletes now": "Ausstehende Löschungen jetzt wiederholen",
+ "Running consistency check...": "Konsistenzprüfung läuft...",
+ "Save settings": "Einstellungen speichern",
+ "Saving settings...": "Einstellungen werden gespeichert...",
"Selected file is not a .pad file.": "Ausgewählte Datei ist keine .pad-Datei.",
"Selected parent folder is not writable.": "Ausgewählter Zielordner ist nicht beschreibbar.",
+ "Settings saved.": "Einstellungen gespeichert.",
+ "Sync interval must be between 5 and 3600 seconds.": "Das Intervall muss zwischen 5 und 3600 Sekunden liegen.",
"Template file not found.": "Vorlagendatei nicht gefunden.",
- "Trusted embed origins (optional)": "Vertrauenswürdige Embed-Origins (optional)",
- "Unknown error.": "Unbekannter Fehler.",
- "Retry pending deletes now": "Ausstehende Löschungen jetzt wiederholen",
- "Failed to save settings.": "Einstellungen konnten nicht gespeichert werden.",
- "Pending delete retry failed.": "Wiederholung ausstehender Löschungen fehlgeschlagen.",
- "Pending delete retry finished.": "Wiederholung ausstehender Löschungen abgeschlossen.",
- ".pad file sync interval (seconds)": ".pad-Datei-Synchronisierungsintervall (Sekunden)",
- "Delete linked Etherpad pad when .pad file is moved to trash": "Verknüpftes Etherpad-Pad löschen, wenn die .pad-Datei in den Papierkorb verschoben wird",
- "If enabled, moving a .pad file to the trash also deletes the linked Etherpad pad.": "Wenn aktiviert, wird beim Verschieben einer .pad-Datei in den Papierkorb auch das verknüpfte Etherpad-Pad gelöscht.",
- "Add trusted Etherpad hostnames or HTTPS origins. Leave empty only if all public HTTPS hosts should be trusted.": "Vertrauenswürdige Etherpad-Hostnamen oder HTTPS-Ursprünge eintragen. Nur leer lassen, wenn alle öffentlichen HTTPS-Hosts vertrauenswürdig sein sollen.",
- "Hint: Set \"authenticationMethod\": \"apikey\" in Etherpad's settings.json.": "Hinweis: Setze in Etherpads settings.json \"authenticationMethod\": \"apikey\".",
- "Could not create pad": "Pad konnte nicht erstellt werden",
- "Could not open pad": "Pad konnte nicht geöffnet werden",
- "Could not initialize .pad file.": ".pad-Datei konnte nicht initialisiert werden.",
- "Could not resolve .pad file.": ".pad-Datei konnte nicht aufgelöst werden.",
- ".pad file not found.": ".pad-Datei nicht gefunden.",
"Test Etherpad connection": "Etherpad-Verbindung testen",
+ "Test fault cleared.": "Testfehler zurückgesetzt.",
+ "Test fault set: {fault}": "Testfehler gesetzt: {fault}",
+ "Test faults are available only when Nextcloud debug mode is enabled.": "Testfehler sind nur verfügbar, wenn der Nextcloud-Debug-Modus aktiviert ist.",
"Testing Etherpad connection...": "Etherpad-Verbindung wird geprüft...",
- "Etherpad connection test successful.": "Etherpad-Verbindung erfolgreich geprüft.",
- "Etherpad connection test failed.": "Etherpad-Verbindung konnte nicht geprüft werden.",
- "Etherpad connection test failed: {detail}": "Etherpad-Verbindung konnte nicht geprüft werden: {detail}",
- "Close": "Schließen",
- "Create": "Erstellen",
- "Creating...": "Wird erstellt...",
- "File name": "Dateiname",
- "File name is required.": "Dateiname ist erforderlich.",
- "Open in Etherpad": "In Etherpad öffnen",
- "Public pad": "Öffentliches Pad",
- "Public pad from URL": "Öffentliches Pad aus URL",
- "External pad URL": "Externe Pad-URL",
- "External pad URL is required.": "Externe Pad-URL ist erforderlich.",
- "Could not create public pad.": "Öffentliches Pad konnte nicht erstellt werden.",
- "Could not import public pad URL.": "Öffentliche Pad-URL konnte nicht importiert werden.",
- "Could not fetch the pad content from the remote server. The new file is empty for now — open the pad in the viewer to populate it.": "Pad-Inhalt konnte nicht vom Remote-Server geladen werden. Die neue Datei ist vorerst leer — öffne das Pad im Viewer, um sie zu befüllen."
+ "This .pad file has no matching pad in this Nextcloud.": "Für diese .pad-Datei existiert in dieser Nextcloud kein passendes Pad.",
+ "This file looks like a copy of an existing .pad file in your account. Open the original to keep editing the linked pad, or create a new pad to fork the content stored in this file.": "Diese Datei sieht aus wie eine Kopie einer bereits vorhandenen .pad-Datei in deinem Konto. Öffne das Original, um am verknüpften Pad weiterzuarbeiten, oder erstelle aus dem in dieser Datei gespeicherten Inhalt ein neues Pad als eigene Kopie.",
+ "Trusted embed origins (optional)": "Vertrauenswürdige Embed-Origins (optional)",
+ "Unknown error.": "Unbekannter Fehler.",
+ "Unsupported test fault.": "Nicht unterstützter Testfehler.",
+ "We couldn't find a matching pad in this Nextcloud. You can create a new pad from the text stored in this file; from then on, opening this file will load the new pad.": "Wir konnten in dieser Nextcloud kein zugehöriges Pad finden. Du kannst aus dem in dieser Datei gespeicherten Text ein neues Pad erstellen; ab dann öffnet diese Datei das neue Pad."
},
"pluralForm": "nplurals=2; plural=(n != 1);"
}
diff --git a/l10n/de_DE.php b/l10n/de_DE.php
index f68df14..42f36b4 100644
--- a/l10n/de_DE.php
+++ b/l10n/de_DE.php
@@ -1,138 +1,138 @@
"Pads",
- "Configure the Etherpad server and external pad security policy for the Etherpad Nextcloud app." => "Konfiguriere den Etherpad-Server und die Sicherheitsrichtlinie für externe Pads in der Etherpad-Nextcloud-App.",
- "Etherpad Base URL" => "Etherpad-Basis-URL",
- "Etherpad API URL (optional)" => "Etherpad-API-URL (optional)",
- "Optional internal URL for server-side API calls. Leave empty to use Etherpad Base URL." => "Optionale interne URL für serverseitige API-Aufrufe. Leer lassen, um die Etherpad-Basis-URL zu verwenden.",
- "Etherpad session cookie domain (optional)" => "Etherpad-Session-Cookie-Domain (optional)",
- "Auto-filled from the Nextcloud and Etherpad hosts when possible. Adjust it if your deployment uses a proxy path or a different trusted parent domain; leave empty for a host-only cookie." => "Wird, wenn möglich, automatisch aus den Nextcloud- und Etherpad-Hosts abgeleitet. Anpassen, wenn die Installation einen Proxy-Pfad oder eine andere vertrauenswürdige Parent-Domain nutzt; leer lassen für ein Host-only-Cookie.",
- "Etherpad API key" => "Etherpad-API-Schlüssel",
- "Detected API version:" => "Erkannte API-Version:",
- "Controls how often pad content is copied from Etherpad into the .pad file while the pad is open." => "Steuert, wie oft der Pad-Inhalt aus Etherpad in die .pad-Datei kopiert wird, während das Pad geöffnet ist.",
+ ".pad file not found." => ".pad-Datei nicht gefunden.",
+ ".pad file sync interval (seconds)" => ".pad-Datei-Synchronisierungsintervall (Sekunden)",
+ "A file with this name already exists." => "Eine Datei mit diesem Namen existiert bereits.",
+ "Absolute https origins allowed to embed the /embed/by-id and /embed/create-by-parent routes. Leave empty to disable external embedding." => "Absolute HTTPS-Origins, die die Routen /embed/by-id und /embed/create-by-parent einbetten dürfen. Leer lassen, um externes Einbetten zu deaktivieren.",
+ "Add trusted Etherpad hostnames or HTTPS origins. Leave empty only if all public HTTPS hosts should be trusted." => "Vertrauenswürdige Etherpad-Hostnamen oder HTTPS-Ursprünge eintragen. Nur leer lassen, wenn alle öffentlichen HTTPS-Hosts vertrauenswürdig sein sollen.",
+ "Admin permissions required." => "Administratorrechte erforderlich.",
"Allow linking external public pads" => "Verlinken externer öffentlicher Pads erlauben",
- "External host allowlist (optional)" => "Allowlist externer Hosts (optional)",
- "Save settings" => "Einstellungen speichern",
+ "Authentication required." => "Authentifizierung erforderlich.",
+ "Auto-filled from the Nextcloud and Etherpad hosts when possible. Adjust it if your deployment uses a proxy path or a different trusted parent domain; leave empty for a host-only cookie." => "Wird, wenn möglich, automatisch aus den Nextcloud- und Etherpad-Hosts abgeleitet. Anpassen, wenn die Installation einen Proxy-Pfad oder eine andere vertrauenswürdige Parent-Domain nutzt; leer lassen für ein Host-only-Cookie.",
+ "Back" => "Zurück",
+ "Cannot open selected .pad file." => "Ausgewählte .pad-Datei konnte nicht geöffnet werden.",
+ "Cannot read selected .pad file." => "Ausgewählte .pad-Datei konnte nicht gelesen werden.",
+ "Cannot resolve file path for file ID." => "Dateipfad zur Datei-ID konnte nicht ermittelt werden.",
+ "Cannot resolve selected .pad file." => "Ausgewählte .pad-Datei konnte nicht aufgelöst werden.",
+ "Cannot resolve selected parent folder." => "Ausgewählter Zielordner konnte nicht aufgelöst werden.",
+ "Checking for the original pad..." => "Suche nach dem Original-Pad ...",
+ "Close" => "Schließen",
+ "Configure the Etherpad server and external pad security policy for the Etherpad Nextcloud app." => "Konfiguriere den Etherpad-Server und die Sicherheitsrichtlinie für externe Pads in der Etherpad-Nextcloud-App.",
"Consistency check" => "Konsistenzprüfung",
- "Pending Etherpad deletes" => "Ausstehende Etherpad-Löschungen",
- "Saving settings..." => "Einstellungen werden gespeichert...",
- "Settings saved." => "Einstellungen gespeichert.",
- "Running consistency check..." => "Konsistenzprüfung läuft...",
+ "Consistency check failed." => "Konsistenzprüfung fehlgeschlagen.",
+ "Consistency check finished with issues." => "Konsistenzprüfung mit Problemen abgeschlossen.",
"Consistency check successful." => "Konsistenzprüfung erfolgreich.",
"Consistency check successful. No issues found." => "Konsistenzprüfung erfolgreich. Keine Probleme gefunden.",
- "Consistency check finished with issues." => "Konsistenzprüfung mit Problemen abgeschlossen.",
- "Request failed." => "Anfrage fehlgeschlagen.",
- "Consistency check failed." => "Konsistenzprüfung fehlgeschlagen.",
- "Etherpad API key is required." => "Ein Etherpad-API-Schlüssel ist erforderlich.",
- "Etherpad Base URL is required." => "Eine Etherpad-Basis-URL ist erforderlich.",
- "Etherpad Base URL must use https." => "Die Etherpad-Basis-URL muss HTTPS verwenden.",
- "Invalid Etherpad Base URL." => "Ungültige Etherpad-Basis-URL.",
- "Etherpad Base URL must not include query or fragment." => "Die Etherpad-Basis-URL darf keinen Query-String und kein Fragment enthalten.",
- "Etherpad API URL must use http or https." => "Die Etherpad-API-URL muss HTTP oder HTTPS verwenden.",
- "Invalid Etherpad API URL." => "Ungültige Etherpad-API-URL.",
- "Etherpad API URL must not include query or fragment." => "Die Etherpad-API-URL darf keinen Query-String und kein Fragment enthalten.",
- "Invalid Etherpad API version format." => "Ungültiges Format für die Etherpad-API-Version.",
- "Sync interval must be between 5 and 3600 seconds." => "Das Intervall muss zwischen 5 und 3600 Sekunden liegen.",
- "External allowlist contains invalid host: {host}" => "Die externe Allowlist enthält einen ungültigen Host: {host}",
- "External allowlist URL must use https: {host}" => "Die externe Allowlist-URL muss HTTPS verwenden: {host}",
- "Test fault cleared." => "Testfehler zurückgesetzt.",
- "Test fault set: {fault}" => "Testfehler gesetzt: {fault}",
- "Unsupported test fault." => "Nicht unterstützter Testfehler.",
- "Test faults are available only when Nextcloud debug mode is enabled." => "Testfehler sind nur verfügbar, wenn der Nextcloud-Debug-Modus aktiviert ist.",
- "Authentication required." => "Authentifizierung erforderlich.",
- "Admin permissions required." => "Administratorrechte erforderlich.",
- "New pad" => "Neues Pad",
- "Open original pad" => "Original-Pad öffnen",
- "This .pad file has no matching pad in this Nextcloud." => "Für diese .pad-Datei existiert in dieser Nextcloud kein passendes Pad.",
- "Checking for the original pad..." => "Suche nach dem Original-Pad ...",
- "This file looks like a copy of an existing .pad file in your account. Open the original to keep editing the linked pad, or create a new pad to fork the content stored in this file." => "Diese Datei sieht aus wie eine Kopie einer bereits vorhandenen .pad-Datei in deinem Konto. Öffne das Original, um am verknüpften Pad weiterzuarbeiten, oder erstelle aus dem in dieser Datei gespeicherten Inhalt ein neues Pad als eigene Kopie.",
- "We couldn't find a matching pad in this Nextcloud. You can create a new pad from the text stored in this file; from then on, opening this file will load the new pad." => "Wir konnten in dieser Nextcloud kein zugehöriges Pad finden. Du kannst aus dem in dieser Datei gespeicherten Text ein neues Pad erstellen; ab dann öffnet diese Datei das neue Pad.",
- "Create new pad from this file" => "Neues Pad aus dieser Datei erstellen",
- "Creating new pad..." => "Neues Pad wird erstellt ...",
- "Open the original .pad file" => "Ursprüngliche .pad-Datei öffnen",
+ "Controls how often pad content is copied from Etherpad into the .pad file while the pad is open." => "Steuert, wie oft der Pad-Inhalt aus Etherpad in die .pad-Datei kopiert wird, während das Pad geöffnet ist.",
+ "Cookie domain must be a hostname, not a URL." => "Cookie-Domain muss ein Hostname sein, keine URL.",
+ "Cookie domain must be a valid shared hostname." => "Cookie-Domain muss ein gültiger gemeinsamer Hostname sein.",
+ "Could not check pad sync status." => "Synchronisierungsstatus des Pads konnte nicht ermittelt werden.",
+ "Could not create pad" => "Pad konnte nicht erstellt werden",
+ "Could not create pad from template." => "Pad konnte nicht aus Vorlage erstellt werden.",
"Could not create pad." => "Pad konnte nicht erstellt werden.",
+ "Could not create public pad." => "Öffentliches Pad konnte nicht erstellt werden.",
+ "Could not fetch the pad content from the remote server. The new file is empty for now — open the pad in the viewer to populate it." => "Pad-Inhalt konnte nicht vom Remote-Server geladen werden. Die neue Datei ist vorerst leer — öffne das Pad im Viewer, um sie zu befüllen.",
"Could not import external pad." => "Externes Pad konnte nicht importiert werden.",
+ "Could not import public pad URL." => "Öffentliche Pad-URL konnte nicht importiert werden.",
+ "Could not initialize .pad file." => ".pad-Datei konnte nicht initialisiert werden.",
+ "Could not look up the original pad." => "Original-Pad konnte nicht ermittelt werden.",
+ "Could not move pad to trash." => "Pad konnte nicht in den Papierkorb verschoben werden.",
+ "Could not open pad" => "Pad konnte nicht geöffnet werden",
"Could not open pad." => "Pad konnte nicht geöffnet werden.",
"Could not read pad metadata." => "Pad-Metadaten konnten nicht gelesen werden.",
- "Could not sync pad content." => "Pad-Inhalt konnte nicht synchronisiert werden.",
- "Could not check pad sync status." => "Synchronisierungsstatus des Pads konnte nicht ermittelt werden.",
- "Could not move pad to trash." => "Pad konnte nicht in den Papierkorb verschoben werden.",
- "Could not look up the original pad." => "Original-Pad konnte nicht ermittelt werden.",
"Could not recover pad from this file." => "Pad konnte aus dieser Datei nicht wiederhergestellt werden.",
+ "Could not resolve .pad file." => ".pad-Datei konnte nicht aufgelöst werden.",
"Could not restore pad from trash." => "Pad konnte nicht aus dem Papierkorb wiederhergestellt werden.",
- "Hint: Etherpad rejected the API key. Check that the key matches Etherpad's APIKEY.txt." => "Hinweis: Etherpad hat den API-Schlüssel abgelehnt. Prüfe, ob er mit Etherpads APIKEY.txt übereinstimmt.",
+ "Could not sync pad content." => "Pad-Inhalt konnte nicht synchronisiert werden.",
+ "Create" => "Erstellen",
+ "Create new pad from this file" => "Neues Pad aus dieser Datei erstellen",
+ "Creating new pad..." => "Neues Pad wird erstellt ...",
+ "Creating pad..." => "Pad wird erstellt...",
+ "Creating..." => "Wird erstellt...",
+ "Delete linked Etherpad pad when .pad file is moved to trash" => "Verknüpftes Etherpad-Pad löschen, wenn die .pad-Datei in den Papierkorb verschoben wird",
+ "Detected API version:" => "Erkannte API-Version:",
+ "Embed configuration is incomplete." => "Embed-Konfiguration ist unvollständig.",
+ "Etherpad API URL (optional)" => "Etherpad-API-URL (optional)",
+ "Etherpad API URL must not include query or fragment." => "Die Etherpad-API-URL darf keinen Query-String und kein Fragment enthalten.",
+ "Etherpad API URL must use http or https." => "Die Etherpad-API-URL muss HTTP oder HTTPS verwenden.",
+ "Etherpad API key" => "Etherpad-API-Schlüssel",
+ "Etherpad API key is required." => "Ein Etherpad-API-Schlüssel ist erforderlich.",
+ "Etherpad Base URL" => "Etherpad-Basis-URL",
+ "Etherpad Base URL is required." => "Eine Etherpad-Basis-URL ist erforderlich.",
+ "Etherpad Base URL must not include query or fragment." => "Die Etherpad-Basis-URL darf keinen Query-String und kein Fragment enthalten.",
+ "Etherpad Base URL must use https." => "Die Etherpad-Basis-URL muss HTTPS verwenden.",
+ "Etherpad connection test failed." => "Etherpad-Verbindung konnte nicht geprüft werden.",
+ "Etherpad connection test failed: {detail}" => "Etherpad-Verbindung konnte nicht geprüft werden: {detail}",
+ "Etherpad connection test successful." => "Etherpad-Verbindung erfolgreich geprüft.",
+ "Etherpad session cookie domain (optional)" => "Etherpad-Session-Cookie-Domain (optional)",
+ "External allowlist URL must use https: {host}" => "Die externe Allowlist-URL muss HTTPS verwenden: {host}",
+ "External allowlist contains invalid host: {host}" => "Die externe Allowlist enthält einen ungültigen Host: {host}",
+ "External host allowlist (optional)" => "Allowlist externer Hosts (optional)",
+ "External pad URL" => "Externe Pad-URL",
+ "External pad URL is required." => "Externe Pad-URL ist erforderlich.",
+ "Failed to save settings." => "Einstellungen konnten nicht gespeichert werden.",
+ "Failed to update test fault." => "Test-Fehler konnte nicht aktualisiert werden.",
+ "File name" => "Dateiname",
+ "File name is required." => "Dateiname ist erforderlich.",
"Hint: API endpoint not found. Check the API host and that the configured API version is supported by your Etherpad." => "Hinweis: API-Endpunkt nicht gefunden. Prüfe den API-Host und ob die konfigurierte API-Version von deinem Etherpad unterstützt wird.",
- "Hint: Etherpad returned a server error. Check the Etherpad server logs." => "Hinweis: Etherpad hat einen Server-Fehler zurückgegeben. Prüfe die Etherpad-Server-Logs.",
- "Hint: The configured Etherpad host did not resolve. Check the hostname for typos and that DNS reaches it from this server." => "Hinweis: Der konfigurierte Etherpad-Host konnte nicht aufgelöst werden. Prüfe den Hostnamen auf Tippfehler und ob er von diesem Server per DNS aufgelöst werden kann.",
"Hint: Connection refused. Etherpad does not appear to be running on the configured host and port." => "Hinweis: Verbindung verweigert. Etherpad läuft anscheinend nicht auf dem konfigurierten Host und Port.",
"Hint: Connection timed out. Check that this server can reach the Etherpad host (firewall, network)." => "Hinweis: Zeitüberschreitung bei der Verbindung. Prüfe, ob dieser Server den Etherpad-Host erreichen kann (Firewall, Netzwerk).",
- "Hint: TLS handshake failed. Check the Etherpad certificate and that the configured URL uses the right scheme." => "Hinweis: TLS-Handshake fehlgeschlagen. Prüfe das Etherpad-Zertifikat und ob die konfigurierte URL das richtige Schema verwendet.",
"Hint: Could not reach Etherpad. Check the API host and that this server can connect to it." => "Hinweis: Etherpad konnte nicht erreicht werden. Prüfe den API-Host und ob dieser Server eine Verbindung herstellen kann.",
+ "Hint: Etherpad rejected the API key. Check that the key matches Etherpad's APIKEY.txt." => "Hinweis: Etherpad hat den API-Schlüssel abgelehnt. Prüfe, ob er mit Etherpads APIKEY.txt übereinstimmt.",
+ "Hint: Etherpad returned a server error. Check the Etherpad server logs." => "Hinweis: Etherpad hat einen Server-Fehler zurückgegeben. Prüfe die Etherpad-Server-Logs.",
"Hint: Etherpad returned non-JSON. Likely a reverse proxy or HTML error page in front of the API host." => "Hinweis: Etherpad hat keine JSON-Antwort zurückgegeben. Wahrscheinlich steht ein Reverse-Proxy oder eine HTML-Fehlerseite vor dem API-Host.",
+ "Hint: Set \"authenticationMethod\": \"apikey\" in Etherpad's settings.json." => "Hinweis: Setze in Etherpads settings.json \"authenticationMethod\": \"apikey\".",
+ "Hint: TLS handshake failed. Check the Etherpad certificate and that the configured URL uses the right scheme." => "Hinweis: TLS-Handshake fehlgeschlagen. Prüfe das Etherpad-Zertifikat und ob die konfigurierte URL das richtige Schema verwendet.",
+ "Hint: The configured Etherpad host did not resolve. Check the hostname for typos and that DNS reaches it from this server." => "Hinweis: Der konfigurierte Etherpad-Host konnte nicht aufgelöst werden. Prüfe den Hostnamen auf Tippfehler und ob er von diesem Server per DNS aufgelöst werden kann.",
+ "If enabled, moving a .pad file to the trash also deletes the linked Etherpad pad." => "Wenn aktiviert, wird beim Verschieben einer .pad-Datei in den Papierkorb auch das verknüpfte Etherpad-Pad gelöscht.",
+ "Invalid Etherpad API URL." => "Ungültige Etherpad-API-URL.",
+ "Invalid Etherpad API version format." => "Ungültiges Format für die Etherpad-API-Version.",
+ "Invalid Etherpad Base URL." => "Ungültige Etherpad-Basis-URL.",
+ "Invalid access mode." => "Ungültiger Zugriffsmodus.",
"Invalid file ID." => "Ungültige Datei-ID.",
"Invalid file path." => "Ungültiger Dateipfad.",
- "Invalid pad name." => "Ungültiger Pad-Name.",
"Invalid input." => "Ungültige Eingabe.",
- "Cannot resolve selected parent folder." => "Ausgewählter Zielordner konnte nicht aufgelöst werden.",
- "Cannot open selected .pad file." => "Ausgewählte .pad-Datei konnte nicht geöffnet werden.",
- "Cannot resolve selected .pad file." => "Ausgewählte .pad-Datei konnte nicht aufgelöst werden.",
- "Cannot read selected .pad file." => "Ausgewählte .pad-Datei konnte nicht gelesen werden.",
- "Cannot resolve file path for file ID." => "Dateipfad zur Datei-ID konnte nicht ermittelt werden.",
- "A file with this name already exists." => "Eine Datei mit diesem Namen existiert bereits.",
- "Absolute https origins allowed to embed the /embed/by-id and /embed/create-by-parent routes. Leave empty to disable external embedding." => "Absolute HTTPS-Origins, die die Routen /embed/by-id und /embed/create-by-parent einbetten dürfen. Leer lassen, um externes Einbetten zu deaktivieren.",
- "Back" => "Zurück",
- "Cookie domain must be a hostname, not a URL." => "Cookie-Domain muss ein Hostname sein, keine URL.",
- "Cookie domain must be a valid shared hostname." => "Cookie-Domain muss ein gültiger gemeinsamer Hostname sein.",
- "Could not create pad from template." => "Pad konnte nicht aus Vorlage erstellt werden.",
- "Creating pad..." => "Pad wird erstellt...",
- "Embed configuration is incomplete." => "Embed-Konfiguration ist unvollständig.",
- "Failed to update test fault." => "Test-Fehler konnte nicht aktualisiert werden.",
- "Invalid access mode." => "Ungültiger Zugriffsmodus.",
+ "Invalid pad name." => "Ungültiger Pad-Name.",
"Invalid parent folder ID." => "Ungültige Zielordner-ID.",
"Loading pad..." => "Pad wird geladen...",
+ "New pad" => "Neues Pad",
"No synced snapshot is stored in this .pad file yet." => "In dieser .pad-Datei ist noch keine synchronisierte Kopie gespeichert.",
+ "Open in Etherpad" => "In Etherpad öffnen",
+ "Open original pad" => "Original-Pad öffnen",
+ "Open the original .pad file" => "Ursprüngliche .pad-Datei öffnen",
+ "Optional internal URL for server-side API calls. Leave empty to use Etherpad Base URL." => "Optionale interne URL für serverseitige API-Aufrufe. Leer lassen, um die Etherpad-Basis-URL zu verwenden.",
"Pad from another server" => "Pad von einem anderen Server",
"Pad name is required." => "Pad-Name ist erforderlich.",
+ "Pads" => "Pads",
+ "Pending Etherpad deletes" => "Ausstehende Etherpad-Löschungen",
+ "Pending delete retry failed." => "Wiederholung ausstehender Löschungen fehlgeschlagen.",
+ "Pending delete retry finished." => "Wiederholung ausstehender Löschungen abgeschlossen.",
+ "Public pad" => "Öffentliches Pad",
+ "Public pad from URL" => "Öffentliches Pad aus URL",
"Read-only snapshot" => "Schreibgeschützte Kopie",
"Read-only snapshot from the .pad file." => "Schreibgeschützte Kopie aus der .pad-Datei.",
+ "Request failed." => "Anfrage fehlgeschlagen.",
+ "Retry pending deletes now" => "Ausstehende Löschungen jetzt wiederholen",
+ "Running consistency check..." => "Konsistenzprüfung läuft...",
+ "Save settings" => "Einstellungen speichern",
+ "Saving settings..." => "Einstellungen werden gespeichert...",
"Selected file is not a .pad file." => "Ausgewählte Datei ist keine .pad-Datei.",
"Selected parent folder is not writable." => "Ausgewählter Zielordner ist nicht beschreibbar.",
+ "Settings saved." => "Einstellungen gespeichert.",
+ "Sync interval must be between 5 and 3600 seconds." => "Das Intervall muss zwischen 5 und 3600 Sekunden liegen.",
"Template file not found." => "Vorlagendatei nicht gefunden.",
- "Trusted embed origins (optional)" => "Vertrauenswürdige Embed-Origins (optional)",
- "Unknown error." => "Unbekannter Fehler.",
- "Retry pending deletes now" => "Ausstehende Löschungen jetzt wiederholen",
- "Failed to save settings." => "Einstellungen konnten nicht gespeichert werden.",
- "Pending delete retry failed." => "Wiederholung ausstehender Löschungen fehlgeschlagen.",
- "Pending delete retry finished." => "Wiederholung ausstehender Löschungen abgeschlossen.",
- ".pad file sync interval (seconds)" => ".pad-Datei-Synchronisierungsintervall (Sekunden)",
- "Delete linked Etherpad pad when .pad file is moved to trash" => "Verknüpftes Etherpad-Pad löschen, wenn die .pad-Datei in den Papierkorb verschoben wird",
- "If enabled, moving a .pad file to the trash also deletes the linked Etherpad pad." => "Wenn aktiviert, wird beim Verschieben einer .pad-Datei in den Papierkorb auch das verknüpfte Etherpad-Pad gelöscht.",
- "Add trusted Etherpad hostnames or HTTPS origins. Leave empty only if all public HTTPS hosts should be trusted." => "Vertrauenswürdige Etherpad-Hostnamen oder HTTPS-Ursprünge eintragen. Nur leer lassen, wenn alle öffentlichen HTTPS-Hosts vertrauenswürdig sein sollen.",
- "Hint: Set \"authenticationMethod\": \"apikey\" in Etherpad's settings.json." => "Hinweis: Setze in Etherpads settings.json \"authenticationMethod\": \"apikey\".",
- "Could not create pad" => "Pad konnte nicht erstellt werden",
- "Could not open pad" => "Pad konnte nicht geöffnet werden",
- "Could not initialize .pad file." => ".pad-Datei konnte nicht initialisiert werden.",
- "Could not resolve .pad file." => ".pad-Datei konnte nicht aufgelöst werden.",
- ".pad file not found." => ".pad-Datei nicht gefunden.",
"Test Etherpad connection" => "Etherpad-Verbindung testen",
+ "Test fault cleared." => "Testfehler zurückgesetzt.",
+ "Test fault set: {fault}" => "Testfehler gesetzt: {fault}",
+ "Test faults are available only when Nextcloud debug mode is enabled." => "Testfehler sind nur verfügbar, wenn der Nextcloud-Debug-Modus aktiviert ist.",
"Testing Etherpad connection..." => "Etherpad-Verbindung wird geprüft...",
- "Etherpad connection test successful." => "Etherpad-Verbindung erfolgreich geprüft.",
- "Etherpad connection test failed." => "Etherpad-Verbindung konnte nicht geprüft werden.",
- "Etherpad connection test failed: {detail}" => "Etherpad-Verbindung konnte nicht geprüft werden: {detail}",
- "Close" => "Schließen",
- "Create" => "Erstellen",
- "Creating..." => "Wird erstellt...",
- "File name" => "Dateiname",
- "File name is required." => "Dateiname ist erforderlich.",
- "Open in Etherpad" => "In Etherpad öffnen",
- "Public pad" => "Öffentliches Pad",
- "Public pad from URL" => "Öffentliches Pad aus URL",
- "External pad URL" => "Externe Pad-URL",
- "External pad URL is required." => "Externe Pad-URL ist erforderlich.",
- "Could not create public pad." => "Öffentliches Pad konnte nicht erstellt werden.",
- "Could not import public pad URL." => "Öffentliche Pad-URL konnte nicht importiert werden.",
- "Could not fetch the pad content from the remote server. The new file is empty for now — open the pad in the viewer to populate it." => "Pad-Inhalt konnte nicht vom Remote-Server geladen werden. Die neue Datei ist vorerst leer — öffne das Pad im Viewer, um sie zu befüllen.",
+ "This .pad file has no matching pad in this Nextcloud." => "Für diese .pad-Datei existiert in dieser Nextcloud kein passendes Pad.",
+ "This file looks like a copy of an existing .pad file in your account. Open the original to keep editing the linked pad, or create a new pad to fork the content stored in this file." => "Diese Datei sieht aus wie eine Kopie einer bereits vorhandenen .pad-Datei in deinem Konto. Öffne das Original, um am verknüpften Pad weiterzuarbeiten, oder erstelle aus dem in dieser Datei gespeicherten Inhalt ein neues Pad als eigene Kopie.",
+ "Trusted embed origins (optional)" => "Vertrauenswürdige Embed-Origins (optional)",
+ "Unknown error." => "Unbekannter Fehler.",
+ "Unsupported test fault." => "Nicht unterstützter Testfehler.",
+ "We couldn't find a matching pad in this Nextcloud. You can create a new pad from the text stored in this file; from then on, opening this file will load the new pad." => "Wir konnten in dieser Nextcloud kein zugehöriges Pad finden. Du kannst aus dem in dieser Datei gespeicherten Text ein neues Pad erstellen; ab dann öffnet diese Datei das neue Pad.",
];
$PLURAL_FORMS = "nplurals=2; plural=(n != 1);";
diff --git a/l10n/es.js b/l10n/es.js
index 4159b2f..73dec63 100644
--- a/l10n/es.js
+++ b/l10n/es.js
@@ -1,51 +1,15 @@
OC.L10N.register(
"etherpad_nextcloud",
{
- "Pads": "Pads",
- "Configure the Etherpad server and external pad security policy for the Etherpad Nextcloud app.": "Configura el servidor de Etherpad y la política de seguridad para pads externos en la aplicación Etherpad Nextcloud.",
- "Etherpad Base URL": "URL base de Etherpad",
- "Etherpad API URL (optional)": "URL de API de Etherpad (opcional)",
- "Optional internal URL for server-side API calls. Leave empty to use Etherpad Base URL.": "URL interna opcional para llamadas a la API del lado del servidor. Déjala vacía para usar la URL base de Etherpad.",
- "Etherpad session cookie domain (optional)": "Dominio de cookie de sesion de Etherpad (opcional)",
- "Auto-filled from the Nextcloud and Etherpad hosts when possible. Adjust it if your deployment uses a proxy path or a different trusted parent domain; leave empty for a host-only cookie.": "Se completa automaticamente desde los hosts de Nextcloud y Etherpad cuando es posible. Ajustalo si la instalacion usa una ruta de proxy u otro dominio padre de confianza; deja vacio para una cookie solo de host.",
- "Etherpad API key": "Clave API de Etherpad",
- "Detected API version:": "Version de API detectada:",
- "Controls how often pad content is copied from Etherpad into the .pad file while the pad is open.": "Controla con que frecuencia se copia el contenido del pad desde Etherpad al archivo .pad mientras el pad esta abierto.",
- "Allow linking external public pads": "Permitir enlazar pads publicos externos",
- "External host allowlist (optional)": "Lista de hosts externos permitidos (opcional)",
- "Save settings": "Guardar ajustes",
- "Consistency check": "Comprobacion de consistencia",
- "Pending Etherpad deletes": "Eliminaciones pendientes en Etherpad",
- "Saving settings...": "Guardando ajustes...",
- "Settings saved.": "Ajustes guardados.",
- "Running consistency check...": "Ejecutando comprobacion de consistencia...",
- "Consistency check successful.": "Comprobacion de consistencia correcta.",
- "Consistency check successful. No issues found.": "Comprobacion de consistencia correcta. No se encontraron problemas.",
- "Consistency check finished with issues.": "Comprobacion de consistencia finalizada con problemas.",
- "Request failed.": "La solicitud fallo.",
- "Consistency check failed.": "La comprobacion de consistencia fallo.",
- "Etherpad API key is required.": "La clave API de Etherpad es obligatoria.",
- "Etherpad Base URL is required.": "La URL base de Etherpad es obligatoria.",
- "Etherpad Base URL must use https.": "La URL base de Etherpad debe usar HTTPS.",
- "Invalid Etherpad Base URL.": "URL base de Etherpad no valida.",
- "Etherpad Base URL must not include query or fragment.": "La URL base de Etherpad no debe incluir cadena de consulta ni fragmento.",
- "Etherpad API URL must use http or https.": "La URL API de Etherpad debe usar HTTP o HTTPS.",
- "Invalid Etherpad API URL.": "URL API de Etherpad no valida.",
- "Etherpad API URL must not include query or fragment.": "La URL API de Etherpad no debe incluir cadena de consulta ni fragmento.",
- "Invalid Etherpad API version format.": "Formato de version de API de Etherpad no valido.",
- "Sync interval must be between 5 and 3600 seconds.": "El intervalo de sincronizacion debe estar entre 5 y 3600 segundos.",
- "External allowlist contains invalid host: {host}": "La lista de permitidos externa contiene un host no valido: {host}",
- "External allowlist URL must use https: {host}": "La URL de la lista de permitidos externa debe usar HTTPS: {host}",
- "Test fault cleared.": "Fallo de prueba limpiado.",
- "Test fault set: {fault}": "Fallo de prueba establecido: {fault}",
- "Unsupported test fault.": "Fallo de prueba no compatible.",
- "Test faults are available only when Nextcloud debug mode is enabled.": "Los fallos de prueba solo estan disponibles cuando el modo debug de Nextcloud esta activado.",
- "Authentication required.": "Autenticacion requerida.",
- "Admin permissions required.": "Se requieren permisos de administrador.",
- "New pad": "Nuevo pad",
- "Open original pad": "Abrir pad original",
+ ".pad file not found.": "No se ha encontrado el archivo .pad.",
+ ".pad file sync interval (seconds)": "Intervalo de sincronización del archivo .pad (segundos)",
"A file with this name already exists.": "Ya existe un archivo con este nombre.",
"Absolute https origins allowed to embed the /embed/by-id and /embed/create-by-parent routes. Leave empty to disable external embedding.": "Orígenes HTTPS absolutos permitidos para incrustar las rutas /embed/by-id y /embed/create-by-parent. Déjalo vacío para desactivar la incrustación externa.",
+ "Add trusted Etherpad hostnames or HTTPS origins. Leave empty only if all public HTTPS hosts should be trusted.": "Agrega nombres de host de Etherpad u orígenes HTTPS de confianza. Déjalo vacío solo si se debe confiar en todos los hosts HTTPS públicos.",
+ "Admin permissions required.": "Se requieren permisos de administrador.",
+ "Allow linking external public pads": "Permitir enlazar pads publicos externos",
+ "Authentication required.": "Autenticacion requerida.",
+ "Auto-filled from the Nextcloud and Etherpad hosts when possible. Adjust it if your deployment uses a proxy path or a different trusted parent domain; leave empty for a host-only cookie.": "Se completa automaticamente desde los hosts de Nextcloud y Etherpad cuando es posible. Ajustalo si la instalacion usa una ruta de proxy u otro dominio padre de confianza; deja vacio para una cookie solo de host.",
"Back": "Atrás",
"Cannot open selected .pad file.": "No se puede abrir el archivo .pad seleccionado.",
"Cannot read selected .pad file.": "No se puede leer el archivo .pad seleccionado.",
@@ -53,24 +17,64 @@ OC.L10N.register(
"Cannot resolve selected .pad file.": "No se puede resolver el archivo .pad seleccionado.",
"Cannot resolve selected parent folder.": "No se puede resolver la carpeta principal seleccionada.",
"Checking for the original pad...": "Buscando el pad original...",
+ "Close": "Cerrar",
+ "Configure the Etherpad server and external pad security policy for the Etherpad Nextcloud app.": "Configura el servidor de Etherpad y la política de seguridad para pads externos en la aplicación Etherpad Nextcloud.",
+ "Consistency check": "Comprobacion de consistencia",
+ "Consistency check failed.": "La comprobacion de consistencia fallo.",
+ "Consistency check finished with issues.": "Comprobacion de consistencia finalizada con problemas.",
+ "Consistency check successful.": "Comprobacion de consistencia correcta.",
+ "Consistency check successful. No issues found.": "Comprobacion de consistencia correcta. No se encontraron problemas.",
+ "Controls how often pad content is copied from Etherpad into the .pad file while the pad is open.": "Controla con que frecuencia se copia el contenido del pad desde Etherpad al archivo .pad mientras el pad esta abierto.",
"Cookie domain must be a hostname, not a URL.": "El dominio de la cookie debe ser un nombre de host, no una URL.",
"Cookie domain must be a valid shared hostname.": "El dominio de la cookie debe ser un nombre de host compartido válido.",
"Could not check pad sync status.": "No se pudo comprobar el estado de sincronización del pad.",
+ "Could not create pad": "No se pudo crear el pad",
"Could not create pad from template.": "No se pudo crear el pad desde la plantilla.",
"Could not create pad.": "No se pudo crear el pad.",
+ "Could not create public pad.": "No se pudo crear el pad público.",
+ "Could not fetch the pad content from the remote server. The new file is empty for now — open the pad in the viewer to populate it.": "No se pudo obtener el contenido del pad desde el servidor remoto. El nuevo archivo está vacío por ahora — abre el pad en el visor para rellenarlo.",
"Could not import external pad.": "No se pudo importar el pad externo.",
+ "Could not import public pad URL.": "No se pudo importar la URL del pad público.",
+ "Could not initialize .pad file.": "No se ha podido inicializar el archivo .pad.",
"Could not look up the original pad.": "No se pudo localizar el pad original.",
"Could not move pad to trash.": "No se pudo mover el pad a la papelera.",
+ "Could not open pad": "No se pudo abrir el pad",
"Could not open pad.": "No se pudo abrir el pad.",
"Could not read pad metadata.": "No se pudieron leer los metadatos del pad.",
"Could not recover pad from this file.": "No se pudo recuperar el pad de este archivo.",
+ "Could not resolve .pad file.": "No se ha podido resolver el archivo .pad.",
"Could not restore pad from trash.": "No se pudo restaurar el pad de la papelera.",
"Could not sync pad content.": "No se pudo sincronizar el contenido del pad.",
+ "Create": "Crear",
"Create new pad from this file": "Crear nuevo pad a partir de este archivo",
"Creating new pad...": "Creando nuevo pad...",
"Creating pad...": "Creando pad...",
+ "Creating...": "Creando...",
+ "Delete linked Etherpad pad when .pad file is moved to trash": "Eliminar el pad de Etherpad enlazado cuando el archivo .pad se mueve a la papelera",
+ "Detected API version:": "Version de API detectada:",
"Embed configuration is incomplete.": "La configuración de incrustación está incompleta.",
+ "Etherpad API URL (optional)": "URL de API de Etherpad (opcional)",
+ "Etherpad API URL must not include query or fragment.": "La URL API de Etherpad no debe incluir cadena de consulta ni fragmento.",
+ "Etherpad API URL must use http or https.": "La URL API de Etherpad debe usar HTTP o HTTPS.",
+ "Etherpad API key": "Clave API de Etherpad",
+ "Etherpad API key is required.": "La clave API de Etherpad es obligatoria.",
+ "Etherpad Base URL": "URL base de Etherpad",
+ "Etherpad Base URL is required.": "La URL base de Etherpad es obligatoria.",
+ "Etherpad Base URL must not include query or fragment.": "La URL base de Etherpad no debe incluir cadena de consulta ni fragmento.",
+ "Etherpad Base URL must use https.": "La URL base de Etherpad debe usar HTTPS.",
+ "Etherpad connection test failed.": "No se pudo comprobar la conexión con Etherpad.",
+ "Etherpad connection test failed: {detail}": "No se pudo comprobar la conexión con Etherpad: {detail}",
+ "Etherpad connection test successful.": "Conexión con Etherpad comprobada correctamente.",
+ "Etherpad session cookie domain (optional)": "Dominio de cookie de sesion de Etherpad (opcional)",
+ "External allowlist URL must use https: {host}": "La URL de la lista de permitidos externa debe usar HTTPS: {host}",
+ "External allowlist contains invalid host: {host}": "La lista de permitidos externa contiene un host no valido: {host}",
+ "External host allowlist (optional)": "Lista de hosts externos permitidos (opcional)",
+ "External pad URL": "URL de pad externo",
+ "External pad URL is required.": "La URL de pad externo es obligatoria.",
+ "Failed to save settings.": "No se han podido guardar los ajustes.",
"Failed to update test fault.": "No se pudo actualizar el fallo de prueba.",
+ "File name": "Nombre de archivo",
+ "File name is required.": "El nombre de archivo es obligatorio.",
"Hint: API endpoint not found. Check the API host and that the configured API version is supported by your Etherpad.": "Sugerencia: punto de acceso de la API no encontrado. Comprueba el host de la API y que la versión configurada sea compatible con tu Etherpad.",
"Hint: Connection refused. Etherpad does not appear to be running on the configured host and port.": "Sugerencia: conexión rechazada. Etherpad no parece estar ejecutándose en el host y puerto configurados.",
"Hint: Connection timed out. Check that this server can reach the Etherpad host (firewall, network).": "Sugerencia: tiempo de conexión agotado. Comprueba que este servidor pueda acceder al host de Etherpad (cortafuegos, red).",
@@ -78,8 +82,13 @@ OC.L10N.register(
"Hint: Etherpad rejected the API key. Check that the key matches Etherpad's APIKEY.txt.": "Sugerencia: Etherpad rechazó la clave de API. Comprueba que la clave coincida con APIKEY.txt de Etherpad.",
"Hint: Etherpad returned a server error. Check the Etherpad server logs.": "Sugerencia: Etherpad devolvió un error de servidor. Comprueba los registros del servidor de Etherpad.",
"Hint: Etherpad returned non-JSON. Likely a reverse proxy or HTML error page in front of the API host.": "Sugerencia: Etherpad devolvió contenido no JSON. Probablemente un proxy inverso o una página HTML de error delante del host de la API.",
+ "Hint: Set \"authenticationMethod\": \"apikey\" in Etherpad's settings.json.": "Sugerencia: establece \"authenticationMethod\": \"apikey\" en settings.json de Etherpad.",
"Hint: TLS handshake failed. Check the Etherpad certificate and that the configured URL uses the right scheme.": "Sugerencia: el establecimiento de la conexión TLS falló. Comprueba el certificado de Etherpad y que la URL configurada use el esquema correcto.",
"Hint: The configured Etherpad host did not resolve. Check the hostname for typos and that DNS reaches it from this server.": "Sugerencia: el host de Etherpad configurado no se resolvió. Comprueba el nombre del host por erratas y que el DNS llegue a él desde este servidor.",
+ "If enabled, moving a .pad file to the trash also deletes the linked Etherpad pad.": "Si está activado, al mover un archivo .pad a la papelera también se elimina el pad de Etherpad enlazado.",
+ "Invalid Etherpad API URL.": "URL API de Etherpad no valida.",
+ "Invalid Etherpad API version format.": "Formato de version de API de Etherpad no valido.",
+ "Invalid Etherpad Base URL.": "URL base de Etherpad no valida.",
"Invalid access mode.": "Modo de acceso no válido.",
"Invalid file ID.": "ID de archivo no válido.",
"Invalid file path.": "Ruta de archivo no válida.",
@@ -87,52 +96,43 @@ OC.L10N.register(
"Invalid pad name.": "Nombre de pad no válido.",
"Invalid parent folder ID.": "ID de carpeta principal no válido.",
"Loading pad...": "Cargando pad...",
+ "New pad": "Nuevo pad",
"No synced snapshot is stored in this .pad file yet.": "Aún no hay ninguna copia sincronizada almacenada en este archivo .pad.",
+ "Open in Etherpad": "Abrir en Etherpad",
+ "Open original pad": "Abrir pad original",
"Open the original .pad file": "Abrir el archivo .pad original",
+ "Optional internal URL for server-side API calls. Leave empty to use Etherpad Base URL.": "URL interna opcional para llamadas a la API del lado del servidor. Déjala vacía para usar la URL base de Etherpad.",
"Pad from another server": "Pad de otro servidor",
"Pad name is required.": "Se requiere el nombre del pad.",
+ "Pads": "Pads",
+ "Pending Etherpad deletes": "Eliminaciones pendientes en Etherpad",
+ "Pending delete retry failed.": "No se pudo reintentar las eliminaciones pendientes.",
+ "Pending delete retry finished.": "Reintento de eliminaciones pendientes completado.",
+ "Public pad": "Pad público",
+ "Public pad from URL": "Pad público desde URL",
"Read-only snapshot": "Copia de solo lectura",
"Read-only snapshot from the .pad file.": "Copia de solo lectura del archivo .pad.",
+ "Request failed.": "La solicitud fallo.",
+ "Retry pending deletes now": "Reintentar las eliminaciones pendientes ahora",
+ "Running consistency check...": "Ejecutando comprobacion de consistencia...",
+ "Save settings": "Guardar ajustes",
+ "Saving settings...": "Guardando ajustes...",
"Selected file is not a .pad file.": "El archivo seleccionado no es un archivo .pad.",
"Selected parent folder is not writable.": "La carpeta principal seleccionada no es modificable.",
+ "Settings saved.": "Ajustes guardados.",
+ "Sync interval must be between 5 and 3600 seconds.": "El intervalo de sincronizacion debe estar entre 5 y 3600 segundos.",
"Template file not found.": "Archivo de plantilla no encontrado.",
+ "Test Etherpad connection": "Probar conexión con Etherpad",
+ "Test fault cleared.": "Fallo de prueba limpiado.",
+ "Test fault set: {fault}": "Fallo de prueba establecido: {fault}",
+ "Test faults are available only when Nextcloud debug mode is enabled.": "Los fallos de prueba solo estan disponibles cuando el modo debug de Nextcloud esta activado.",
+ "Testing Etherpad connection...": "Comprobando la conexión con Etherpad...",
"This .pad file has no matching pad in this Nextcloud.": "Este archivo .pad no tiene un pad asociado en este Nextcloud.",
"This file looks like a copy of an existing .pad file in your account. Open the original to keep editing the linked pad, or create a new pad to fork the content stored in this file.": "Este archivo parece ser una copia de un archivo .pad existente en tu cuenta. Abre el original para seguir editando el pad enlazado, o crea un nuevo pad para bifurcar el contenido almacenado en este archivo.",
"Trusted embed origins (optional)": "Orígenes de incrustación de confianza (opcional)",
"Unknown error.": "Error desconocido.",
- "We couldn't find a matching pad in this Nextcloud. You can create a new pad from the text stored in this file; from then on, opening this file will load the new pad.": "No pudimos encontrar un pad asociado en este Nextcloud. Puedes crear un nuevo pad a partir del texto almacenado en este archivo; a partir de ese momento, abrir este archivo cargará el nuevo pad.",
- "Retry pending deletes now": "Reintentar las eliminaciones pendientes ahora",
- "Failed to save settings.": "No se han podido guardar los ajustes.",
- "Pending delete retry failed.": "No se pudo reintentar las eliminaciones pendientes.",
- "Pending delete retry finished.": "Reintento de eliminaciones pendientes completado.",
- ".pad file sync interval (seconds)": "Intervalo de sincronización del archivo .pad (segundos)",
- "Delete linked Etherpad pad when .pad file is moved to trash": "Eliminar el pad de Etherpad enlazado cuando el archivo .pad se mueve a la papelera",
- "If enabled, moving a .pad file to the trash also deletes the linked Etherpad pad.": "Si está activado, al mover un archivo .pad a la papelera también se elimina el pad de Etherpad enlazado.",
- "Add trusted Etherpad hostnames or HTTPS origins. Leave empty only if all public HTTPS hosts should be trusted.": "Agrega nombres de host de Etherpad u orígenes HTTPS de confianza. Déjalo vacío solo si se debe confiar en todos los hosts HTTPS públicos.",
- "Hint: Set \"authenticationMethod\": \"apikey\" in Etherpad's settings.json.": "Sugerencia: establece \"authenticationMethod\": \"apikey\" en settings.json de Etherpad.",
- "Could not create pad": "No se pudo crear el pad",
- "Could not open pad": "No se pudo abrir el pad",
- "Could not initialize .pad file.": "No se ha podido inicializar el archivo .pad.",
- "Could not resolve .pad file.": "No se ha podido resolver el archivo .pad.",
- ".pad file not found.": "No se ha encontrado el archivo .pad.",
- "Test Etherpad connection": "Probar conexión con Etherpad",
- "Testing Etherpad connection...": "Comprobando la conexión con Etherpad...",
- "Etherpad connection test successful.": "Conexión con Etherpad comprobada correctamente.",
- "Etherpad connection test failed.": "No se pudo comprobar la conexión con Etherpad.",
- "Etherpad connection test failed: {detail}": "No se pudo comprobar la conexión con Etherpad: {detail}",
- "Close": "Cerrar",
- "Create": "Crear",
- "Creating...": "Creando...",
- "File name": "Nombre de archivo",
- "File name is required.": "El nombre de archivo es obligatorio.",
- "Open in Etherpad": "Abrir en Etherpad",
- "Public pad": "Pad público",
- "Public pad from URL": "Pad público desde URL",
- "External pad URL": "URL de pad externo",
- "External pad URL is required.": "La URL de pad externo es obligatoria.",
- "Could not create public pad.": "No se pudo crear el pad público.",
- "Could not import public pad URL.": "No se pudo importar la URL del pad público.",
- "Could not fetch the pad content from the remote server. The new file is empty for now — open the pad in the viewer to populate it.": "No se pudo obtener el contenido del pad desde el servidor remoto. El nuevo archivo está vacío por ahora — abre el pad en el visor para rellenarlo."
+ "Unsupported test fault.": "Fallo de prueba no compatible.",
+ "We couldn't find a matching pad in this Nextcloud. You can create a new pad from the text stored in this file; from then on, opening this file will load the new pad.": "No pudimos encontrar un pad asociado en este Nextcloud. Puedes crear un nuevo pad a partir del texto almacenado en este archivo; a partir de ese momento, abrir este archivo cargará el nuevo pad."
},
"nplurals=2; plural=(n != 1);"
);
diff --git a/l10n/es.json b/l10n/es.json
index 932be07..51add28 100644
--- a/l10n/es.json
+++ b/l10n/es.json
@@ -1,50 +1,14 @@
{
"translations": {
- "Pads": "Pads",
- "Configure the Etherpad server and external pad security policy for the Etherpad Nextcloud app.": "Configura el servidor de Etherpad y la política de seguridad para pads externos en la aplicación Etherpad Nextcloud.",
- "Etherpad Base URL": "URL base de Etherpad",
- "Etherpad API URL (optional)": "URL de API de Etherpad (opcional)",
- "Optional internal URL for server-side API calls. Leave empty to use Etherpad Base URL.": "URL interna opcional para llamadas a la API del lado del servidor. Déjala vacía para usar la URL base de Etherpad.",
- "Etherpad session cookie domain (optional)": "Dominio de cookie de sesion de Etherpad (opcional)",
- "Auto-filled from the Nextcloud and Etherpad hosts when possible. Adjust it if your deployment uses a proxy path or a different trusted parent domain; leave empty for a host-only cookie.": "Se completa automaticamente desde los hosts de Nextcloud y Etherpad cuando es posible. Ajustalo si la instalacion usa una ruta de proxy u otro dominio padre de confianza; deja vacio para una cookie solo de host.",
- "Etherpad API key": "Clave API de Etherpad",
- "Detected API version:": "Version de API detectada:",
- "Controls how often pad content is copied from Etherpad into the .pad file while the pad is open.": "Controla con que frecuencia se copia el contenido del pad desde Etherpad al archivo .pad mientras el pad esta abierto.",
- "Allow linking external public pads": "Permitir enlazar pads publicos externos",
- "External host allowlist (optional)": "Lista de hosts externos permitidos (opcional)",
- "Save settings": "Guardar ajustes",
- "Consistency check": "Comprobacion de consistencia",
- "Pending Etherpad deletes": "Eliminaciones pendientes en Etherpad",
- "Saving settings...": "Guardando ajustes...",
- "Settings saved.": "Ajustes guardados.",
- "Running consistency check...": "Ejecutando comprobacion de consistencia...",
- "Consistency check successful.": "Comprobacion de consistencia correcta.",
- "Consistency check successful. No issues found.": "Comprobacion de consistencia correcta. No se encontraron problemas.",
- "Consistency check finished with issues.": "Comprobacion de consistencia finalizada con problemas.",
- "Request failed.": "La solicitud fallo.",
- "Consistency check failed.": "La comprobacion de consistencia fallo.",
- "Etherpad API key is required.": "La clave API de Etherpad es obligatoria.",
- "Etherpad Base URL is required.": "La URL base de Etherpad es obligatoria.",
- "Etherpad Base URL must use https.": "La URL base de Etherpad debe usar HTTPS.",
- "Invalid Etherpad Base URL.": "URL base de Etherpad no valida.",
- "Etherpad Base URL must not include query or fragment.": "La URL base de Etherpad no debe incluir cadena de consulta ni fragmento.",
- "Etherpad API URL must use http or https.": "La URL API de Etherpad debe usar HTTP o HTTPS.",
- "Invalid Etherpad API URL.": "URL API de Etherpad no valida.",
- "Etherpad API URL must not include query or fragment.": "La URL API de Etherpad no debe incluir cadena de consulta ni fragmento.",
- "Invalid Etherpad API version format.": "Formato de version de API de Etherpad no valido.",
- "Sync interval must be between 5 and 3600 seconds.": "El intervalo de sincronizacion debe estar entre 5 y 3600 segundos.",
- "External allowlist contains invalid host: {host}": "La lista de permitidos externa contiene un host no valido: {host}",
- "External allowlist URL must use https: {host}": "La URL de la lista de permitidos externa debe usar HTTPS: {host}",
- "Test fault cleared.": "Fallo de prueba limpiado.",
- "Test fault set: {fault}": "Fallo de prueba establecido: {fault}",
- "Unsupported test fault.": "Fallo de prueba no compatible.",
- "Test faults are available only when Nextcloud debug mode is enabled.": "Los fallos de prueba solo estan disponibles cuando el modo debug de Nextcloud esta activado.",
- "Authentication required.": "Autenticacion requerida.",
- "Admin permissions required.": "Se requieren permisos de administrador.",
- "New pad": "Nuevo pad",
- "Open original pad": "Abrir pad original",
+ ".pad file not found.": "No se ha encontrado el archivo .pad.",
+ ".pad file sync interval (seconds)": "Intervalo de sincronización del archivo .pad (segundos)",
"A file with this name already exists.": "Ya existe un archivo con este nombre.",
"Absolute https origins allowed to embed the /embed/by-id and /embed/create-by-parent routes. Leave empty to disable external embedding.": "Orígenes HTTPS absolutos permitidos para incrustar las rutas /embed/by-id y /embed/create-by-parent. Déjalo vacío para desactivar la incrustación externa.",
+ "Add trusted Etherpad hostnames or HTTPS origins. Leave empty only if all public HTTPS hosts should be trusted.": "Agrega nombres de host de Etherpad u orígenes HTTPS de confianza. Déjalo vacío solo si se debe confiar en todos los hosts HTTPS públicos.",
+ "Admin permissions required.": "Se requieren permisos de administrador.",
+ "Allow linking external public pads": "Permitir enlazar pads publicos externos",
+ "Authentication required.": "Autenticacion requerida.",
+ "Auto-filled from the Nextcloud and Etherpad hosts when possible. Adjust it if your deployment uses a proxy path or a different trusted parent domain; leave empty for a host-only cookie.": "Se completa automaticamente desde los hosts de Nextcloud y Etherpad cuando es posible. Ajustalo si la instalacion usa una ruta de proxy u otro dominio padre de confianza; deja vacio para una cookie solo de host.",
"Back": "Atrás",
"Cannot open selected .pad file.": "No se puede abrir el archivo .pad seleccionado.",
"Cannot read selected .pad file.": "No se puede leer el archivo .pad seleccionado.",
@@ -52,24 +16,64 @@
"Cannot resolve selected .pad file.": "No se puede resolver el archivo .pad seleccionado.",
"Cannot resolve selected parent folder.": "No se puede resolver la carpeta principal seleccionada.",
"Checking for the original pad...": "Buscando el pad original...",
+ "Close": "Cerrar",
+ "Configure the Etherpad server and external pad security policy for the Etherpad Nextcloud app.": "Configura el servidor de Etherpad y la política de seguridad para pads externos en la aplicación Etherpad Nextcloud.",
+ "Consistency check": "Comprobacion de consistencia",
+ "Consistency check failed.": "La comprobacion de consistencia fallo.",
+ "Consistency check finished with issues.": "Comprobacion de consistencia finalizada con problemas.",
+ "Consistency check successful.": "Comprobacion de consistencia correcta.",
+ "Consistency check successful. No issues found.": "Comprobacion de consistencia correcta. No se encontraron problemas.",
+ "Controls how often pad content is copied from Etherpad into the .pad file while the pad is open.": "Controla con que frecuencia se copia el contenido del pad desde Etherpad al archivo .pad mientras el pad esta abierto.",
"Cookie domain must be a hostname, not a URL.": "El dominio de la cookie debe ser un nombre de host, no una URL.",
"Cookie domain must be a valid shared hostname.": "El dominio de la cookie debe ser un nombre de host compartido válido.",
"Could not check pad sync status.": "No se pudo comprobar el estado de sincronización del pad.",
+ "Could not create pad": "No se pudo crear el pad",
"Could not create pad from template.": "No se pudo crear el pad desde la plantilla.",
"Could not create pad.": "No se pudo crear el pad.",
+ "Could not create public pad.": "No se pudo crear el pad público.",
+ "Could not fetch the pad content from the remote server. The new file is empty for now — open the pad in the viewer to populate it.": "No se pudo obtener el contenido del pad desde el servidor remoto. El nuevo archivo está vacío por ahora — abre el pad en el visor para rellenarlo.",
"Could not import external pad.": "No se pudo importar el pad externo.",
+ "Could not import public pad URL.": "No se pudo importar la URL del pad público.",
+ "Could not initialize .pad file.": "No se ha podido inicializar el archivo .pad.",
"Could not look up the original pad.": "No se pudo localizar el pad original.",
"Could not move pad to trash.": "No se pudo mover el pad a la papelera.",
+ "Could not open pad": "No se pudo abrir el pad",
"Could not open pad.": "No se pudo abrir el pad.",
"Could not read pad metadata.": "No se pudieron leer los metadatos del pad.",
"Could not recover pad from this file.": "No se pudo recuperar el pad de este archivo.",
+ "Could not resolve .pad file.": "No se ha podido resolver el archivo .pad.",
"Could not restore pad from trash.": "No se pudo restaurar el pad de la papelera.",
"Could not sync pad content.": "No se pudo sincronizar el contenido del pad.",
+ "Create": "Crear",
"Create new pad from this file": "Crear nuevo pad a partir de este archivo",
"Creating new pad...": "Creando nuevo pad...",
"Creating pad...": "Creando pad...",
+ "Creating...": "Creando...",
+ "Delete linked Etherpad pad when .pad file is moved to trash": "Eliminar el pad de Etherpad enlazado cuando el archivo .pad se mueve a la papelera",
+ "Detected API version:": "Version de API detectada:",
"Embed configuration is incomplete.": "La configuración de incrustación está incompleta.",
+ "Etherpad API URL (optional)": "URL de API de Etherpad (opcional)",
+ "Etherpad API URL must not include query or fragment.": "La URL API de Etherpad no debe incluir cadena de consulta ni fragmento.",
+ "Etherpad API URL must use http or https.": "La URL API de Etherpad debe usar HTTP o HTTPS.",
+ "Etherpad API key": "Clave API de Etherpad",
+ "Etherpad API key is required.": "La clave API de Etherpad es obligatoria.",
+ "Etherpad Base URL": "URL base de Etherpad",
+ "Etherpad Base URL is required.": "La URL base de Etherpad es obligatoria.",
+ "Etherpad Base URL must not include query or fragment.": "La URL base de Etherpad no debe incluir cadena de consulta ni fragmento.",
+ "Etherpad Base URL must use https.": "La URL base de Etherpad debe usar HTTPS.",
+ "Etherpad connection test failed.": "No se pudo comprobar la conexión con Etherpad.",
+ "Etherpad connection test failed: {detail}": "No se pudo comprobar la conexión con Etherpad: {detail}",
+ "Etherpad connection test successful.": "Conexión con Etherpad comprobada correctamente.",
+ "Etherpad session cookie domain (optional)": "Dominio de cookie de sesion de Etherpad (opcional)",
+ "External allowlist URL must use https: {host}": "La URL de la lista de permitidos externa debe usar HTTPS: {host}",
+ "External allowlist contains invalid host: {host}": "La lista de permitidos externa contiene un host no valido: {host}",
+ "External host allowlist (optional)": "Lista de hosts externos permitidos (opcional)",
+ "External pad URL": "URL de pad externo",
+ "External pad URL is required.": "La URL de pad externo es obligatoria.",
+ "Failed to save settings.": "No se han podido guardar los ajustes.",
"Failed to update test fault.": "No se pudo actualizar el fallo de prueba.",
+ "File name": "Nombre de archivo",
+ "File name is required.": "El nombre de archivo es obligatorio.",
"Hint: API endpoint not found. Check the API host and that the configured API version is supported by your Etherpad.": "Sugerencia: punto de acceso de la API no encontrado. Comprueba el host de la API y que la versión configurada sea compatible con tu Etherpad.",
"Hint: Connection refused. Etherpad does not appear to be running on the configured host and port.": "Sugerencia: conexión rechazada. Etherpad no parece estar ejecutándose en el host y puerto configurados.",
"Hint: Connection timed out. Check that this server can reach the Etherpad host (firewall, network).": "Sugerencia: tiempo de conexión agotado. Comprueba que este servidor pueda acceder al host de Etherpad (cortafuegos, red).",
@@ -77,8 +81,13 @@
"Hint: Etherpad rejected the API key. Check that the key matches Etherpad's APIKEY.txt.": "Sugerencia: Etherpad rechazó la clave de API. Comprueba que la clave coincida con APIKEY.txt de Etherpad.",
"Hint: Etherpad returned a server error. Check the Etherpad server logs.": "Sugerencia: Etherpad devolvió un error de servidor. Comprueba los registros del servidor de Etherpad.",
"Hint: Etherpad returned non-JSON. Likely a reverse proxy or HTML error page in front of the API host.": "Sugerencia: Etherpad devolvió contenido no JSON. Probablemente un proxy inverso o una página HTML de error delante del host de la API.",
+ "Hint: Set \"authenticationMethod\": \"apikey\" in Etherpad's settings.json.": "Sugerencia: establece \"authenticationMethod\": \"apikey\" en settings.json de Etherpad.",
"Hint: TLS handshake failed. Check the Etherpad certificate and that the configured URL uses the right scheme.": "Sugerencia: el establecimiento de la conexión TLS falló. Comprueba el certificado de Etherpad y que la URL configurada use el esquema correcto.",
"Hint: The configured Etherpad host did not resolve. Check the hostname for typos and that DNS reaches it from this server.": "Sugerencia: el host de Etherpad configurado no se resolvió. Comprueba el nombre del host por erratas y que el DNS llegue a él desde este servidor.",
+ "If enabled, moving a .pad file to the trash also deletes the linked Etherpad pad.": "Si está activado, al mover un archivo .pad a la papelera también se elimina el pad de Etherpad enlazado.",
+ "Invalid Etherpad API URL.": "URL API de Etherpad no valida.",
+ "Invalid Etherpad API version format.": "Formato de version de API de Etherpad no valido.",
+ "Invalid Etherpad Base URL.": "URL base de Etherpad no valida.",
"Invalid access mode.": "Modo de acceso no válido.",
"Invalid file ID.": "ID de archivo no válido.",
"Invalid file path.": "Ruta de archivo no válida.",
@@ -86,52 +95,43 @@
"Invalid pad name.": "Nombre de pad no válido.",
"Invalid parent folder ID.": "ID de carpeta principal no válido.",
"Loading pad...": "Cargando pad...",
+ "New pad": "Nuevo pad",
"No synced snapshot is stored in this .pad file yet.": "Aún no hay ninguna copia sincronizada almacenada en este archivo .pad.",
+ "Open in Etherpad": "Abrir en Etherpad",
+ "Open original pad": "Abrir pad original",
"Open the original .pad file": "Abrir el archivo .pad original",
+ "Optional internal URL for server-side API calls. Leave empty to use Etherpad Base URL.": "URL interna opcional para llamadas a la API del lado del servidor. Déjala vacía para usar la URL base de Etherpad.",
"Pad from another server": "Pad de otro servidor",
"Pad name is required.": "Se requiere el nombre del pad.",
+ "Pads": "Pads",
+ "Pending Etherpad deletes": "Eliminaciones pendientes en Etherpad",
+ "Pending delete retry failed.": "No se pudo reintentar las eliminaciones pendientes.",
+ "Pending delete retry finished.": "Reintento de eliminaciones pendientes completado.",
+ "Public pad": "Pad público",
+ "Public pad from URL": "Pad público desde URL",
"Read-only snapshot": "Copia de solo lectura",
"Read-only snapshot from the .pad file.": "Copia de solo lectura del archivo .pad.",
+ "Request failed.": "La solicitud fallo.",
+ "Retry pending deletes now": "Reintentar las eliminaciones pendientes ahora",
+ "Running consistency check...": "Ejecutando comprobacion de consistencia...",
+ "Save settings": "Guardar ajustes",
+ "Saving settings...": "Guardando ajustes...",
"Selected file is not a .pad file.": "El archivo seleccionado no es un archivo .pad.",
"Selected parent folder is not writable.": "La carpeta principal seleccionada no es modificable.",
+ "Settings saved.": "Ajustes guardados.",
+ "Sync interval must be between 5 and 3600 seconds.": "El intervalo de sincronizacion debe estar entre 5 y 3600 segundos.",
"Template file not found.": "Archivo de plantilla no encontrado.",
+ "Test Etherpad connection": "Probar conexión con Etherpad",
+ "Test fault cleared.": "Fallo de prueba limpiado.",
+ "Test fault set: {fault}": "Fallo de prueba establecido: {fault}",
+ "Test faults are available only when Nextcloud debug mode is enabled.": "Los fallos de prueba solo estan disponibles cuando el modo debug de Nextcloud esta activado.",
+ "Testing Etherpad connection...": "Comprobando la conexión con Etherpad...",
"This .pad file has no matching pad in this Nextcloud.": "Este archivo .pad no tiene un pad asociado en este Nextcloud.",
"This file looks like a copy of an existing .pad file in your account. Open the original to keep editing the linked pad, or create a new pad to fork the content stored in this file.": "Este archivo parece ser una copia de un archivo .pad existente en tu cuenta. Abre el original para seguir editando el pad enlazado, o crea un nuevo pad para bifurcar el contenido almacenado en este archivo.",
"Trusted embed origins (optional)": "Orígenes de incrustación de confianza (opcional)",
"Unknown error.": "Error desconocido.",
- "We couldn't find a matching pad in this Nextcloud. You can create a new pad from the text stored in this file; from then on, opening this file will load the new pad.": "No pudimos encontrar un pad asociado en este Nextcloud. Puedes crear un nuevo pad a partir del texto almacenado en este archivo; a partir de ese momento, abrir este archivo cargará el nuevo pad.",
- "Retry pending deletes now": "Reintentar las eliminaciones pendientes ahora",
- "Failed to save settings.": "No se han podido guardar los ajustes.",
- "Pending delete retry failed.": "No se pudo reintentar las eliminaciones pendientes.",
- "Pending delete retry finished.": "Reintento de eliminaciones pendientes completado.",
- ".pad file sync interval (seconds)": "Intervalo de sincronización del archivo .pad (segundos)",
- "Delete linked Etherpad pad when .pad file is moved to trash": "Eliminar el pad de Etherpad enlazado cuando el archivo .pad se mueve a la papelera",
- "If enabled, moving a .pad file to the trash also deletes the linked Etherpad pad.": "Si está activado, al mover un archivo .pad a la papelera también se elimina el pad de Etherpad enlazado.",
- "Add trusted Etherpad hostnames or HTTPS origins. Leave empty only if all public HTTPS hosts should be trusted.": "Agrega nombres de host de Etherpad u orígenes HTTPS de confianza. Déjalo vacío solo si se debe confiar en todos los hosts HTTPS públicos.",
- "Hint: Set \"authenticationMethod\": \"apikey\" in Etherpad's settings.json.": "Sugerencia: establece \"authenticationMethod\": \"apikey\" en settings.json de Etherpad.",
- "Could not create pad": "No se pudo crear el pad",
- "Could not open pad": "No se pudo abrir el pad",
- "Could not initialize .pad file.": "No se ha podido inicializar el archivo .pad.",
- "Could not resolve .pad file.": "No se ha podido resolver el archivo .pad.",
- ".pad file not found.": "No se ha encontrado el archivo .pad.",
- "Test Etherpad connection": "Probar conexión con Etherpad",
- "Testing Etherpad connection...": "Comprobando la conexión con Etherpad...",
- "Etherpad connection test successful.": "Conexión con Etherpad comprobada correctamente.",
- "Etherpad connection test failed.": "No se pudo comprobar la conexión con Etherpad.",
- "Etherpad connection test failed: {detail}": "No se pudo comprobar la conexión con Etherpad: {detail}",
- "Close": "Cerrar",
- "Create": "Crear",
- "Creating...": "Creando...",
- "File name": "Nombre de archivo",
- "File name is required.": "El nombre de archivo es obligatorio.",
- "Open in Etherpad": "Abrir en Etherpad",
- "Public pad": "Pad público",
- "Public pad from URL": "Pad público desde URL",
- "External pad URL": "URL de pad externo",
- "External pad URL is required.": "La URL de pad externo es obligatoria.",
- "Could not create public pad.": "No se pudo crear el pad público.",
- "Could not import public pad URL.": "No se pudo importar la URL del pad público.",
- "Could not fetch the pad content from the remote server. The new file is empty for now — open the pad in the viewer to populate it.": "No se pudo obtener el contenido del pad desde el servidor remoto. El nuevo archivo está vacío por ahora — abre el pad en el visor para rellenarlo."
+ "Unsupported test fault.": "Fallo de prueba no compatible.",
+ "We couldn't find a matching pad in this Nextcloud. You can create a new pad from the text stored in this file; from then on, opening this file will load the new pad.": "No pudimos encontrar un pad asociado en este Nextcloud. Puedes crear un nuevo pad a partir del texto almacenado en este archivo; a partir de ese momento, abrir este archivo cargará el nuevo pad."
},
"pluralForm": "nplurals=2; plural=(n != 1);"
}
diff --git a/l10n/es.php b/l10n/es.php
index 4e10017..1ac068c 100644
--- a/l10n/es.php
+++ b/l10n/es.php
@@ -1,51 +1,15 @@
"Pads",
- "Configure the Etherpad server and external pad security policy for the Etherpad Nextcloud app." => "Configura el servidor de Etherpad y la política de seguridad para pads externos en la aplicación Etherpad Nextcloud.",
- "Etherpad Base URL" => "URL base de Etherpad",
- "Etherpad API URL (optional)" => "URL de API de Etherpad (opcional)",
- "Optional internal URL for server-side API calls. Leave empty to use Etherpad Base URL." => "URL interna opcional para llamadas a la API del lado del servidor. Déjala vacía para usar la URL base de Etherpad.",
- "Etherpad session cookie domain (optional)" => "Dominio de cookie de sesion de Etherpad (opcional)",
- "Auto-filled from the Nextcloud and Etherpad hosts when possible. Adjust it if your deployment uses a proxy path or a different trusted parent domain; leave empty for a host-only cookie." => "Se completa automaticamente desde los hosts de Nextcloud y Etherpad cuando es posible. Ajustalo si la instalacion usa una ruta de proxy u otro dominio padre de confianza; deja vacio para una cookie solo de host.",
- "Etherpad API key" => "Clave API de Etherpad",
- "Detected API version:" => "Version de API detectada:",
- "Controls how often pad content is copied from Etherpad into the .pad file while the pad is open." => "Controla con que frecuencia se copia el contenido del pad desde Etherpad al archivo .pad mientras el pad esta abierto.",
- "Allow linking external public pads" => "Permitir enlazar pads publicos externos",
- "External host allowlist (optional)" => "Lista de hosts externos permitidos (opcional)",
- "Save settings" => "Guardar ajustes",
- "Consistency check" => "Comprobacion de consistencia",
- "Pending Etherpad deletes" => "Eliminaciones pendientes en Etherpad",
- "Saving settings..." => "Guardando ajustes...",
- "Settings saved." => "Ajustes guardados.",
- "Running consistency check..." => "Ejecutando comprobacion de consistencia...",
- "Consistency check successful." => "Comprobacion de consistencia correcta.",
- "Consistency check successful. No issues found." => "Comprobacion de consistencia correcta. No se encontraron problemas.",
- "Consistency check finished with issues." => "Comprobacion de consistencia finalizada con problemas.",
- "Request failed." => "La solicitud fallo.",
- "Consistency check failed." => "La comprobacion de consistencia fallo.",
- "Etherpad API key is required." => "La clave API de Etherpad es obligatoria.",
- "Etherpad Base URL is required." => "La URL base de Etherpad es obligatoria.",
- "Etherpad Base URL must use https." => "La URL base de Etherpad debe usar HTTPS.",
- "Invalid Etherpad Base URL." => "URL base de Etherpad no valida.",
- "Etherpad Base URL must not include query or fragment." => "La URL base de Etherpad no debe incluir cadena de consulta ni fragmento.",
- "Etherpad API URL must use http or https." => "La URL API de Etherpad debe usar HTTP o HTTPS.",
- "Invalid Etherpad API URL." => "URL API de Etherpad no valida.",
- "Etherpad API URL must not include query or fragment." => "La URL API de Etherpad no debe incluir cadena de consulta ni fragmento.",
- "Invalid Etherpad API version format." => "Formato de version de API de Etherpad no valido.",
- "Sync interval must be between 5 and 3600 seconds." => "El intervalo de sincronizacion debe estar entre 5 y 3600 segundos.",
- "External allowlist contains invalid host: {host}" => "La lista de permitidos externa contiene un host no valido: {host}",
- "External allowlist URL must use https: {host}" => "La URL de la lista de permitidos externa debe usar HTTPS: {host}",
- "Test fault cleared." => "Fallo de prueba limpiado.",
- "Test fault set: {fault}" => "Fallo de prueba establecido: {fault}",
- "Unsupported test fault." => "Fallo de prueba no compatible.",
- "Test faults are available only when Nextcloud debug mode is enabled." => "Los fallos de prueba solo estan disponibles cuando el modo debug de Nextcloud esta activado.",
- "Authentication required." => "Autenticacion requerida.",
- "Admin permissions required." => "Se requieren permisos de administrador.",
- "New pad" => "Nuevo pad",
- "Open original pad" => "Abrir pad original",
+ ".pad file not found." => "No se ha encontrado el archivo .pad.",
+ ".pad file sync interval (seconds)" => "Intervalo de sincronización del archivo .pad (segundos)",
"A file with this name already exists." => "Ya existe un archivo con este nombre.",
"Absolute https origins allowed to embed the /embed/by-id and /embed/create-by-parent routes. Leave empty to disable external embedding." => "Orígenes HTTPS absolutos permitidos para incrustar las rutas /embed/by-id y /embed/create-by-parent. Déjalo vacío para desactivar la incrustación externa.",
+ "Add trusted Etherpad hostnames or HTTPS origins. Leave empty only if all public HTTPS hosts should be trusted." => "Agrega nombres de host de Etherpad u orígenes HTTPS de confianza. Déjalo vacío solo si se debe confiar en todos los hosts HTTPS públicos.",
+ "Admin permissions required." => "Se requieren permisos de administrador.",
+ "Allow linking external public pads" => "Permitir enlazar pads publicos externos",
+ "Authentication required." => "Autenticacion requerida.",
+ "Auto-filled from the Nextcloud and Etherpad hosts when possible. Adjust it if your deployment uses a proxy path or a different trusted parent domain; leave empty for a host-only cookie." => "Se completa automaticamente desde los hosts de Nextcloud y Etherpad cuando es posible. Ajustalo si la instalacion usa una ruta de proxy u otro dominio padre de confianza; deja vacio para una cookie solo de host.",
"Back" => "Atrás",
"Cannot open selected .pad file." => "No se puede abrir el archivo .pad seleccionado.",
"Cannot read selected .pad file." => "No se puede leer el archivo .pad seleccionado.",
@@ -53,24 +17,64 @@
"Cannot resolve selected .pad file." => "No se puede resolver el archivo .pad seleccionado.",
"Cannot resolve selected parent folder." => "No se puede resolver la carpeta principal seleccionada.",
"Checking for the original pad..." => "Buscando el pad original...",
+ "Close" => "Cerrar",
+ "Configure the Etherpad server and external pad security policy for the Etherpad Nextcloud app." => "Configura el servidor de Etherpad y la política de seguridad para pads externos en la aplicación Etherpad Nextcloud.",
+ "Consistency check" => "Comprobacion de consistencia",
+ "Consistency check failed." => "La comprobacion de consistencia fallo.",
+ "Consistency check finished with issues." => "Comprobacion de consistencia finalizada con problemas.",
+ "Consistency check successful." => "Comprobacion de consistencia correcta.",
+ "Consistency check successful. No issues found." => "Comprobacion de consistencia correcta. No se encontraron problemas.",
+ "Controls how often pad content is copied from Etherpad into the .pad file while the pad is open." => "Controla con que frecuencia se copia el contenido del pad desde Etherpad al archivo .pad mientras el pad esta abierto.",
"Cookie domain must be a hostname, not a URL." => "El dominio de la cookie debe ser un nombre de host, no una URL.",
"Cookie domain must be a valid shared hostname." => "El dominio de la cookie debe ser un nombre de host compartido válido.",
"Could not check pad sync status." => "No se pudo comprobar el estado de sincronización del pad.",
+ "Could not create pad" => "No se pudo crear el pad",
"Could not create pad from template." => "No se pudo crear el pad desde la plantilla.",
"Could not create pad." => "No se pudo crear el pad.",
+ "Could not create public pad." => "No se pudo crear el pad público.",
+ "Could not fetch the pad content from the remote server. The new file is empty for now — open the pad in the viewer to populate it." => "No se pudo obtener el contenido del pad desde el servidor remoto. El nuevo archivo está vacío por ahora — abre el pad en el visor para rellenarlo.",
"Could not import external pad." => "No se pudo importar el pad externo.",
+ "Could not import public pad URL." => "No se pudo importar la URL del pad público.",
+ "Could not initialize .pad file." => "No se ha podido inicializar el archivo .pad.",
"Could not look up the original pad." => "No se pudo localizar el pad original.",
"Could not move pad to trash." => "No se pudo mover el pad a la papelera.",
+ "Could not open pad" => "No se pudo abrir el pad",
"Could not open pad." => "No se pudo abrir el pad.",
"Could not read pad metadata." => "No se pudieron leer los metadatos del pad.",
"Could not recover pad from this file." => "No se pudo recuperar el pad de este archivo.",
+ "Could not resolve .pad file." => "No se ha podido resolver el archivo .pad.",
"Could not restore pad from trash." => "No se pudo restaurar el pad de la papelera.",
"Could not sync pad content." => "No se pudo sincronizar el contenido del pad.",
+ "Create" => "Crear",
"Create new pad from this file" => "Crear nuevo pad a partir de este archivo",
"Creating new pad..." => "Creando nuevo pad...",
"Creating pad..." => "Creando pad...",
+ "Creating..." => "Creando...",
+ "Delete linked Etherpad pad when .pad file is moved to trash" => "Eliminar el pad de Etherpad enlazado cuando el archivo .pad se mueve a la papelera",
+ "Detected API version:" => "Version de API detectada:",
"Embed configuration is incomplete." => "La configuración de incrustación está incompleta.",
+ "Etherpad API URL (optional)" => "URL de API de Etherpad (opcional)",
+ "Etherpad API URL must not include query or fragment." => "La URL API de Etherpad no debe incluir cadena de consulta ni fragmento.",
+ "Etherpad API URL must use http or https." => "La URL API de Etherpad debe usar HTTP o HTTPS.",
+ "Etherpad API key" => "Clave API de Etherpad",
+ "Etherpad API key is required." => "La clave API de Etherpad es obligatoria.",
+ "Etherpad Base URL" => "URL base de Etherpad",
+ "Etherpad Base URL is required." => "La URL base de Etherpad es obligatoria.",
+ "Etherpad Base URL must not include query or fragment." => "La URL base de Etherpad no debe incluir cadena de consulta ni fragmento.",
+ "Etherpad Base URL must use https." => "La URL base de Etherpad debe usar HTTPS.",
+ "Etherpad connection test failed." => "No se pudo comprobar la conexión con Etherpad.",
+ "Etherpad connection test failed: {detail}" => "No se pudo comprobar la conexión con Etherpad: {detail}",
+ "Etherpad connection test successful." => "Conexión con Etherpad comprobada correctamente.",
+ "Etherpad session cookie domain (optional)" => "Dominio de cookie de sesion de Etherpad (opcional)",
+ "External allowlist URL must use https: {host}" => "La URL de la lista de permitidos externa debe usar HTTPS: {host}",
+ "External allowlist contains invalid host: {host}" => "La lista de permitidos externa contiene un host no valido: {host}",
+ "External host allowlist (optional)" => "Lista de hosts externos permitidos (opcional)",
+ "External pad URL" => "URL de pad externo",
+ "External pad URL is required." => "La URL de pad externo es obligatoria.",
+ "Failed to save settings." => "No se han podido guardar los ajustes.",
"Failed to update test fault." => "No se pudo actualizar el fallo de prueba.",
+ "File name" => "Nombre de archivo",
+ "File name is required." => "El nombre de archivo es obligatorio.",
"Hint: API endpoint not found. Check the API host and that the configured API version is supported by your Etherpad." => "Sugerencia: punto de acceso de la API no encontrado. Comprueba el host de la API y que la versión configurada sea compatible con tu Etherpad.",
"Hint: Connection refused. Etherpad does not appear to be running on the configured host and port." => "Sugerencia: conexión rechazada. Etherpad no parece estar ejecutándose en el host y puerto configurados.",
"Hint: Connection timed out. Check that this server can reach the Etherpad host (firewall, network)." => "Sugerencia: tiempo de conexión agotado. Comprueba que este servidor pueda acceder al host de Etherpad (cortafuegos, red).",
@@ -78,8 +82,13 @@
"Hint: Etherpad rejected the API key. Check that the key matches Etherpad's APIKEY.txt." => "Sugerencia: Etherpad rechazó la clave de API. Comprueba que la clave coincida con APIKEY.txt de Etherpad.",
"Hint: Etherpad returned a server error. Check the Etherpad server logs." => "Sugerencia: Etherpad devolvió un error de servidor. Comprueba los registros del servidor de Etherpad.",
"Hint: Etherpad returned non-JSON. Likely a reverse proxy or HTML error page in front of the API host." => "Sugerencia: Etherpad devolvió contenido no JSON. Probablemente un proxy inverso o una página HTML de error delante del host de la API.",
+ "Hint: Set \"authenticationMethod\": \"apikey\" in Etherpad's settings.json." => "Sugerencia: establece \"authenticationMethod\": \"apikey\" en settings.json de Etherpad.",
"Hint: TLS handshake failed. Check the Etherpad certificate and that the configured URL uses the right scheme." => "Sugerencia: el establecimiento de la conexión TLS falló. Comprueba el certificado de Etherpad y que la URL configurada use el esquema correcto.",
"Hint: The configured Etherpad host did not resolve. Check the hostname for typos and that DNS reaches it from this server." => "Sugerencia: el host de Etherpad configurado no se resolvió. Comprueba el nombre del host por erratas y que el DNS llegue a él desde este servidor.",
+ "If enabled, moving a .pad file to the trash also deletes the linked Etherpad pad." => "Si está activado, al mover un archivo .pad a la papelera también se elimina el pad de Etherpad enlazado.",
+ "Invalid Etherpad API URL." => "URL API de Etherpad no valida.",
+ "Invalid Etherpad API version format." => "Formato de version de API de Etherpad no valido.",
+ "Invalid Etherpad Base URL." => "URL base de Etherpad no valida.",
"Invalid access mode." => "Modo de acceso no válido.",
"Invalid file ID." => "ID de archivo no válido.",
"Invalid file path." => "Ruta de archivo no válida.",
@@ -87,52 +96,43 @@
"Invalid pad name." => "Nombre de pad no válido.",
"Invalid parent folder ID." => "ID de carpeta principal no válido.",
"Loading pad..." => "Cargando pad...",
+ "New pad" => "Nuevo pad",
"No synced snapshot is stored in this .pad file yet." => "Aún no hay ninguna copia sincronizada almacenada en este archivo .pad.",
+ "Open in Etherpad" => "Abrir en Etherpad",
+ "Open original pad" => "Abrir pad original",
"Open the original .pad file" => "Abrir el archivo .pad original",
+ "Optional internal URL for server-side API calls. Leave empty to use Etherpad Base URL." => "URL interna opcional para llamadas a la API del lado del servidor. Déjala vacía para usar la URL base de Etherpad.",
"Pad from another server" => "Pad de otro servidor",
"Pad name is required." => "Se requiere el nombre del pad.",
+ "Pads" => "Pads",
+ "Pending Etherpad deletes" => "Eliminaciones pendientes en Etherpad",
+ "Pending delete retry failed." => "No se pudo reintentar las eliminaciones pendientes.",
+ "Pending delete retry finished." => "Reintento de eliminaciones pendientes completado.",
+ "Public pad" => "Pad público",
+ "Public pad from URL" => "Pad público desde URL",
"Read-only snapshot" => "Copia de solo lectura",
"Read-only snapshot from the .pad file." => "Copia de solo lectura del archivo .pad.",
+ "Request failed." => "La solicitud fallo.",
+ "Retry pending deletes now" => "Reintentar las eliminaciones pendientes ahora",
+ "Running consistency check..." => "Ejecutando comprobacion de consistencia...",
+ "Save settings" => "Guardar ajustes",
+ "Saving settings..." => "Guardando ajustes...",
"Selected file is not a .pad file." => "El archivo seleccionado no es un archivo .pad.",
"Selected parent folder is not writable." => "La carpeta principal seleccionada no es modificable.",
+ "Settings saved." => "Ajustes guardados.",
+ "Sync interval must be between 5 and 3600 seconds." => "El intervalo de sincronizacion debe estar entre 5 y 3600 segundos.",
"Template file not found." => "Archivo de plantilla no encontrado.",
+ "Test Etherpad connection" => "Probar conexión con Etherpad",
+ "Test fault cleared." => "Fallo de prueba limpiado.",
+ "Test fault set: {fault}" => "Fallo de prueba establecido: {fault}",
+ "Test faults are available only when Nextcloud debug mode is enabled." => "Los fallos de prueba solo estan disponibles cuando el modo debug de Nextcloud esta activado.",
+ "Testing Etherpad connection..." => "Comprobando la conexión con Etherpad...",
"This .pad file has no matching pad in this Nextcloud." => "Este archivo .pad no tiene un pad asociado en este Nextcloud.",
"This file looks like a copy of an existing .pad file in your account. Open the original to keep editing the linked pad, or create a new pad to fork the content stored in this file." => "Este archivo parece ser una copia de un archivo .pad existente en tu cuenta. Abre el original para seguir editando el pad enlazado, o crea un nuevo pad para bifurcar el contenido almacenado en este archivo.",
"Trusted embed origins (optional)" => "Orígenes de incrustación de confianza (opcional)",
"Unknown error." => "Error desconocido.",
+ "Unsupported test fault." => "Fallo de prueba no compatible.",
"We couldn't find a matching pad in this Nextcloud. You can create a new pad from the text stored in this file; from then on, opening this file will load the new pad." => "No pudimos encontrar un pad asociado en este Nextcloud. Puedes crear un nuevo pad a partir del texto almacenado en este archivo; a partir de ese momento, abrir este archivo cargará el nuevo pad.",
- "Retry pending deletes now" => "Reintentar las eliminaciones pendientes ahora",
- "Failed to save settings." => "No se han podido guardar los ajustes.",
- "Pending delete retry failed." => "No se pudo reintentar las eliminaciones pendientes.",
- "Pending delete retry finished." => "Reintento de eliminaciones pendientes completado.",
- ".pad file sync interval (seconds)" => "Intervalo de sincronización del archivo .pad (segundos)",
- "Delete linked Etherpad pad when .pad file is moved to trash" => "Eliminar el pad de Etherpad enlazado cuando el archivo .pad se mueve a la papelera",
- "If enabled, moving a .pad file to the trash also deletes the linked Etherpad pad." => "Si está activado, al mover un archivo .pad a la papelera también se elimina el pad de Etherpad enlazado.",
- "Add trusted Etherpad hostnames or HTTPS origins. Leave empty only if all public HTTPS hosts should be trusted." => "Agrega nombres de host de Etherpad u orígenes HTTPS de confianza. Déjalo vacío solo si se debe confiar en todos los hosts HTTPS públicos.",
- "Hint: Set \"authenticationMethod\": \"apikey\" in Etherpad's settings.json." => "Sugerencia: establece \"authenticationMethod\": \"apikey\" en settings.json de Etherpad.",
- "Could not create pad" => "No se pudo crear el pad",
- "Could not open pad" => "No se pudo abrir el pad",
- "Could not initialize .pad file." => "No se ha podido inicializar el archivo .pad.",
- "Could not resolve .pad file." => "No se ha podido resolver el archivo .pad.",
- ".pad file not found." => "No se ha encontrado el archivo .pad.",
- "Test Etherpad connection" => "Probar conexión con Etherpad",
- "Testing Etherpad connection..." => "Comprobando la conexión con Etherpad...",
- "Etherpad connection test successful." => "Conexión con Etherpad comprobada correctamente.",
- "Etherpad connection test failed." => "No se pudo comprobar la conexión con Etherpad.",
- "Etherpad connection test failed: {detail}" => "No se pudo comprobar la conexión con Etherpad: {detail}",
- "Close" => "Cerrar",
- "Create" => "Crear",
- "Creating..." => "Creando...",
- "File name" => "Nombre de archivo",
- "File name is required." => "El nombre de archivo es obligatorio.",
- "Open in Etherpad" => "Abrir en Etherpad",
- "Public pad" => "Pad público",
- "Public pad from URL" => "Pad público desde URL",
- "External pad URL" => "URL de pad externo",
- "External pad URL is required." => "La URL de pad externo es obligatoria.",
- "Could not create public pad." => "No se pudo crear el pad público.",
- "Could not import public pad URL." => "No se pudo importar la URL del pad público.",
- "Could not fetch the pad content from the remote server. The new file is empty for now — open the pad in the viewer to populate it." => "No se pudo obtener el contenido del pad desde el servidor remoto. El nuevo archivo está vacío por ahora — abre el pad en el visor para rellenarlo.",
];
$PLURAL_FORMS = "nplurals=2; plural=(n != 1);";
diff --git a/l10n/fr.js b/l10n/fr.js
index c9f29b3..31b4b6d 100644
--- a/l10n/fr.js
+++ b/l10n/fr.js
@@ -1,51 +1,15 @@
OC.L10N.register(
"etherpad_nextcloud",
{
- "Pads": "Pads",
- "Configure the Etherpad server and external pad security policy for the Etherpad Nextcloud app.": "Configurez le serveur Etherpad et la politique de sécurité des pads externes pour l'application Etherpad Nextcloud.",
- "Etherpad Base URL": "URL de base Etherpad",
- "Etherpad API URL (optional)": "URL API Etherpad (optionnel)",
- "Optional internal URL for server-side API calls. Leave empty to use Etherpad Base URL.": "URL interne optionnelle pour les appels à l'API côté serveur. Laisser vide pour utiliser l'URL de base Etherpad.",
- "Etherpad session cookie domain (optional)": "Domaine du cookie de session Etherpad (optionnel)",
- "Auto-filled from the Nextcloud and Etherpad hosts when possible. Adjust it if your deployment uses a proxy path or a different trusted parent domain; leave empty for a host-only cookie.": "Renseigne automatiquement depuis les hotes Nextcloud et Etherpad lorsque possible. Ajustez si le deploiement utilise un chemin proxy ou un autre domaine parent de confiance; laissez vide pour un cookie limite a l'hote.",
- "Etherpad API key": "Cle API Etherpad",
- "Detected API version:": "Version API detectee :",
- "Controls how often pad content is copied from Etherpad into the .pad file while the pad is open.": "Controle la frequence de copie du contenu du pad depuis Etherpad vers le fichier .pad pendant que le pad est ouvert.",
- "Allow linking external public pads": "Autoriser les liens vers des pads publics externes",
- "External host allowlist (optional)": "Liste des hôtes externes autorisés (facultatif)",
- "Save settings": "Enregistrer les parametres",
- "Consistency check": "Verification de coherence",
- "Pending Etherpad deletes": "Suppressions Etherpad en attente",
- "Saving settings...": "Enregistrement des parametres...",
- "Settings saved.": "Parametres enregistres.",
- "Running consistency check...": "Verification de coherence en cours...",
- "Consistency check successful.": "Verification de coherence reussie.",
- "Consistency check successful. No issues found.": "Verification de coherence reussie. Aucun probleme trouve.",
- "Consistency check finished with issues.": "Verification de coherence terminee avec des problemes.",
- "Request failed.": "La requete a echoue.",
- "Consistency check failed.": "La verification de coherence a echoue.",
- "Etherpad API key is required.": "La cle API Etherpad est requise.",
- "Etherpad Base URL is required.": "L'URL de base Etherpad est requise.",
- "Etherpad Base URL must use https.": "L'URL de base Etherpad doit utiliser HTTPS.",
- "Invalid Etherpad Base URL.": "URL de base Etherpad invalide.",
- "Etherpad Base URL must not include query or fragment.": "L'URL de base Etherpad ne doit pas contenir de chaîne de requête ni de fragment.",
- "Etherpad API URL must use http or https.": "L'URL API Etherpad doit utiliser HTTP ou HTTPS.",
- "Invalid Etherpad API URL.": "URL API Etherpad invalide.",
- "Etherpad API URL must not include query or fragment.": "L'URL API Etherpad ne doit pas contenir de chaîne de requête ni de fragment.",
- "Invalid Etherpad API version format.": "Format de version API Etherpad invalide.",
- "Sync interval must be between 5 and 3600 seconds.": "L'intervalle de synchronisation doit etre compris entre 5 et 3600 secondes.",
- "External allowlist contains invalid host: {host}": "La liste d'autorisation externe contient un hote invalide : {host}",
- "External allowlist URL must use https: {host}": "L'URL de la liste d'autorisation externe doit utiliser HTTPS : {host}",
- "Test fault cleared.": "Defaut de test efface.",
- "Test fault set: {fault}": "Defaut de test defini : {fault}",
- "Unsupported test fault.": "Defaut de test non pris en charge.",
- "Test faults are available only when Nextcloud debug mode is enabled.": "Les defauts de test sont disponibles uniquement lorsque le mode debug Nextcloud est active.",
- "Authentication required.": "Authentification requise.",
- "Admin permissions required.": "Permissions administrateur requises.",
- "New pad": "Nouveau pad",
- "Open original pad": "Ouvrir le pad d'origine",
+ ".pad file not found.": "Fichier .pad introuvable.",
+ ".pad file sync interval (seconds)": "Intervalle de synchronisation du fichier .pad (secondes)",
"A file with this name already exists.": "Un fichier portant ce nom existe déjà.",
"Absolute https origins allowed to embed the /embed/by-id and /embed/create-by-parent routes. Leave empty to disable external embedding.": "Origines HTTPS absolues autorisées à intégrer les routes /embed/by-id et /embed/create-by-parent. Laisser vide pour désactiver l'intégration externe.",
+ "Add trusted Etherpad hostnames or HTTPS origins. Leave empty only if all public HTTPS hosts should be trusted.": "Ajoutez des noms d'hôte Etherpad ou des origines HTTPS de confiance. Ne laissez vide que si tous les hôtes HTTPS publics doivent être considérés comme de confiance.",
+ "Admin permissions required.": "Permissions administrateur requises.",
+ "Allow linking external public pads": "Autoriser les liens vers des pads publics externes",
+ "Authentication required.": "Authentification requise.",
+ "Auto-filled from the Nextcloud and Etherpad hosts when possible. Adjust it if your deployment uses a proxy path or a different trusted parent domain; leave empty for a host-only cookie.": "Renseigne automatiquement depuis les hotes Nextcloud et Etherpad lorsque possible. Ajustez si le deploiement utilise un chemin proxy ou un autre domaine parent de confiance; laissez vide pour un cookie limite a l'hote.",
"Back": "Retour",
"Cannot open selected .pad file.": "Impossible d'ouvrir le fichier .pad sélectionné.",
"Cannot read selected .pad file.": "Impossible de lire le fichier .pad sélectionné.",
@@ -53,24 +17,64 @@ OC.L10N.register(
"Cannot resolve selected .pad file.": "Impossible de résoudre le fichier .pad sélectionné.",
"Cannot resolve selected parent folder.": "Impossible de résoudre le dossier parent sélectionné.",
"Checking for the original pad...": "Recherche du pad original...",
+ "Close": "Fermer",
+ "Configure the Etherpad server and external pad security policy for the Etherpad Nextcloud app.": "Configurez le serveur Etherpad et la politique de sécurité des pads externes pour l'application Etherpad Nextcloud.",
+ "Consistency check": "Verification de coherence",
+ "Consistency check failed.": "La verification de coherence a echoue.",
+ "Consistency check finished with issues.": "Verification de coherence terminee avec des problemes.",
+ "Consistency check successful.": "Verification de coherence reussie.",
+ "Consistency check successful. No issues found.": "Verification de coherence reussie. Aucun probleme trouve.",
+ "Controls how often pad content is copied from Etherpad into the .pad file while the pad is open.": "Controle la frequence de copie du contenu du pad depuis Etherpad vers le fichier .pad pendant que le pad est ouvert.",
"Cookie domain must be a hostname, not a URL.": "Le domaine du cookie doit être un nom d'hôte, pas une URL.",
"Cookie domain must be a valid shared hostname.": "Le domaine du cookie doit être un nom d'hôte partagé valide.",
"Could not check pad sync status.": "Impossible de vérifier l'état de synchronisation du pad.",
+ "Could not create pad": "Impossible de créer le pad",
"Could not create pad from template.": "Impossible de créer le pad à partir du modèle.",
"Could not create pad.": "Impossible de créer le pad.",
+ "Could not create public pad.": "Impossible de créer le pad public.",
+ "Could not fetch the pad content from the remote server. The new file is empty for now — open the pad in the viewer to populate it.": "Impossible de récupérer le contenu du pad depuis le serveur distant. Le nouveau fichier est vide pour l'instant — ouvre le pad dans la visionneuse pour le remplir.",
"Could not import external pad.": "Impossible d'importer le pad externe.",
+ "Could not import public pad URL.": "Impossible d'importer l'URL du pad public.",
+ "Could not initialize .pad file.": "Impossible d'initialiser le fichier .pad.",
"Could not look up the original pad.": "Impossible de retrouver le pad original.",
"Could not move pad to trash.": "Impossible de déplacer le pad vers la corbeille.",
+ "Could not open pad": "Impossible d'ouvrir le pad",
"Could not open pad.": "Impossible d'ouvrir le pad.",
"Could not read pad metadata.": "Impossible de lire les métadonnées du pad.",
"Could not recover pad from this file.": "Impossible de récupérer le pad depuis ce fichier.",
+ "Could not resolve .pad file.": "Impossible de résoudre le fichier .pad.",
"Could not restore pad from trash.": "Impossible de restaurer le pad depuis la corbeille.",
"Could not sync pad content.": "Impossible de synchroniser le contenu du pad.",
+ "Create": "Créer",
"Create new pad from this file": "Créer un nouveau pad à partir de ce fichier",
"Creating new pad...": "Création d'un nouveau pad...",
"Creating pad...": "Création du pad...",
+ "Creating...": "Création...",
+ "Delete linked Etherpad pad when .pad file is moved to trash": "Supprimer le pad Etherpad lié lorsque le fichier .pad est déplacé vers la corbeille",
+ "Detected API version:": "Version API detectee :",
"Embed configuration is incomplete.": "La configuration d'intégration est incomplète.",
+ "Etherpad API URL (optional)": "URL API Etherpad (optionnel)",
+ "Etherpad API URL must not include query or fragment.": "L'URL API Etherpad ne doit pas contenir de chaîne de requête ni de fragment.",
+ "Etherpad API URL must use http or https.": "L'URL API Etherpad doit utiliser HTTP ou HTTPS.",
+ "Etherpad API key": "Cle API Etherpad",
+ "Etherpad API key is required.": "La cle API Etherpad est requise.",
+ "Etherpad Base URL": "URL de base Etherpad",
+ "Etherpad Base URL is required.": "L'URL de base Etherpad est requise.",
+ "Etherpad Base URL must not include query or fragment.": "L'URL de base Etherpad ne doit pas contenir de chaîne de requête ni de fragment.",
+ "Etherpad Base URL must use https.": "L'URL de base Etherpad doit utiliser HTTPS.",
+ "Etherpad connection test failed.": "Impossible de vérifier la connexion à Etherpad.",
+ "Etherpad connection test failed: {detail}": "Impossible de vérifier la connexion à Etherpad : {detail}",
+ "Etherpad connection test successful.": "Connexion à Etherpad vérifiée avec succès.",
+ "Etherpad session cookie domain (optional)": "Domaine du cookie de session Etherpad (optionnel)",
+ "External allowlist URL must use https: {host}": "L'URL de la liste d'autorisation externe doit utiliser HTTPS : {host}",
+ "External allowlist contains invalid host: {host}": "La liste d'autorisation externe contient un hote invalide : {host}",
+ "External host allowlist (optional)": "Liste des hôtes externes autorisés (facultatif)",
+ "External pad URL": "URL du pad externe",
+ "External pad URL is required.": "L'URL du pad externe est requise.",
+ "Failed to save settings.": "Impossible d'enregistrer les paramètres.",
"Failed to update test fault.": "Échec de la mise à jour de l'erreur de test.",
+ "File name": "Nom de fichier",
+ "File name is required.": "Le nom de fichier est requis.",
"Hint: API endpoint not found. Check the API host and that the configured API version is supported by your Etherpad.": "Indice : point d'accès de l'API introuvable. Vérifiez l'hôte de l'API et que la version configurée est prise en charge par votre Etherpad.",
"Hint: Connection refused. Etherpad does not appear to be running on the configured host and port.": "Indice : connexion refusée. Etherpad ne semble pas être en cours d'exécution sur l'hôte et le port configurés.",
"Hint: Connection timed out. Check that this server can reach the Etherpad host (firewall, network).": "Indice : délai de connexion dépassé. Vérifiez que ce serveur peut joindre l'hôte Etherpad (pare-feu, réseau).",
@@ -78,8 +82,13 @@ OC.L10N.register(
"Hint: Etherpad rejected the API key. Check that the key matches Etherpad's APIKEY.txt.": "Indice : Etherpad a rejeté la clé d'API. Vérifiez que la clé correspond au fichier APIKEY.txt d'Etherpad.",
"Hint: Etherpad returned a server error. Check the Etherpad server logs.": "Indice : Etherpad a renvoyé une erreur serveur. Consultez les journaux du serveur Etherpad.",
"Hint: Etherpad returned non-JSON. Likely a reverse proxy or HTML error page in front of the API host.": "Indice : Etherpad a renvoyé un contenu non JSON. Probablement un proxy inverse ou une page d'erreur HTML devant l'hôte de l'API.",
+ "Hint: Set \"authenticationMethod\": \"apikey\" in Etherpad's settings.json.": "Indice : définissez \"authenticationMethod\": \"apikey\" dans le fichier settings.json d'Etherpad.",
"Hint: TLS handshake failed. Check the Etherpad certificate and that the configured URL uses the right scheme.": "Indice : l'établissement de la connexion TLS a échoué. Vérifiez le certificat Etherpad et que l'URL configurée utilise le bon schéma.",
"Hint: The configured Etherpad host did not resolve. Check the hostname for typos and that DNS reaches it from this server.": "Indice : l'hôte Etherpad configuré n'a pas été résolu. Vérifiez l'absence de fautes de frappe et que le DNS l'atteint depuis ce serveur.",
+ "If enabled, moving a .pad file to the trash also deletes the linked Etherpad pad.": "Si activé, déplacer un fichier .pad vers la corbeille supprime également le pad Etherpad lié.",
+ "Invalid Etherpad API URL.": "URL API Etherpad invalide.",
+ "Invalid Etherpad API version format.": "Format de version API Etherpad invalide.",
+ "Invalid Etherpad Base URL.": "URL de base Etherpad invalide.",
"Invalid access mode.": "Mode d'accès non valide.",
"Invalid file ID.": "Identifiant de fichier non valide.",
"Invalid file path.": "Chemin de fichier non valide.",
@@ -87,52 +96,43 @@ OC.L10N.register(
"Invalid pad name.": "Nom de pad non valide.",
"Invalid parent folder ID.": "Identifiant de dossier parent non valide.",
"Loading pad...": "Chargement du pad...",
+ "New pad": "Nouveau pad",
"No synced snapshot is stored in this .pad file yet.": "Aucune copie synchronisée n'est encore stockée dans ce fichier .pad.",
+ "Open in Etherpad": "Ouvrir dans Etherpad",
+ "Open original pad": "Ouvrir le pad d'origine",
"Open the original .pad file": "Ouvrir le fichier .pad original",
+ "Optional internal URL for server-side API calls. Leave empty to use Etherpad Base URL.": "URL interne optionnelle pour les appels à l'API côté serveur. Laisser vide pour utiliser l'URL de base Etherpad.",
"Pad from another server": "Pad d'un autre serveur",
"Pad name is required.": "Le nom du pad est obligatoire.",
+ "Pads": "Pads",
+ "Pending Etherpad deletes": "Suppressions Etherpad en attente",
+ "Pending delete retry failed.": "Impossible de réessayer les suppressions en attente.",
+ "Pending delete retry finished.": "Réessai des suppressions en attente terminé.",
+ "Public pad": "Pad public",
+ "Public pad from URL": "Pad public depuis une URL",
"Read-only snapshot": "Copie en lecture seule",
"Read-only snapshot from the .pad file.": "Copie en lecture seule du fichier .pad.",
+ "Request failed.": "La requete a echoue.",
+ "Retry pending deletes now": "Réessayer les suppressions en attente maintenant",
+ "Running consistency check...": "Verification de coherence en cours...",
+ "Save settings": "Enregistrer les parametres",
+ "Saving settings...": "Enregistrement des parametres...",
"Selected file is not a .pad file.": "Le fichier sélectionné n'est pas un fichier .pad.",
"Selected parent folder is not writable.": "Le dossier parent sélectionné n'est pas modifiable.",
+ "Settings saved.": "Parametres enregistres.",
+ "Sync interval must be between 5 and 3600 seconds.": "L'intervalle de synchronisation doit etre compris entre 5 et 3600 secondes.",
"Template file not found.": "Fichier modèle introuvable.",
+ "Test Etherpad connection": "Tester la connexion à Etherpad",
+ "Test fault cleared.": "Defaut de test efface.",
+ "Test fault set: {fault}": "Defaut de test defini : {fault}",
+ "Test faults are available only when Nextcloud debug mode is enabled.": "Les defauts de test sont disponibles uniquement lorsque le mode debug Nextcloud est active.",
+ "Testing Etherpad connection...": "Vérification de la connexion à Etherpad...",
"This .pad file has no matching pad in this Nextcloud.": "Ce fichier .pad n'a pas de pad correspondant dans ce Nextcloud.",
"This file looks like a copy of an existing .pad file in your account. Open the original to keep editing the linked pad, or create a new pad to fork the content stored in this file.": "Ce fichier ressemble à une copie d'un fichier .pad existant dans votre compte. Ouvrez l'original pour continuer à modifier le pad lié, ou créez un nouveau pad pour dupliquer le contenu stocké dans ce fichier.",
"Trusted embed origins (optional)": "Origines d'intégration de confiance (optionnel)",
"Unknown error.": "Erreur inconnue.",
- "We couldn't find a matching pad in this Nextcloud. You can create a new pad from the text stored in this file; from then on, opening this file will load the new pad.": "Nous n'avons pas trouvé de pad correspondant dans ce Nextcloud. Vous pouvez créer un nouveau pad à partir du texte stocké dans ce fichier ; à partir de là, ouvrir ce fichier chargera le nouveau pad.",
- "Retry pending deletes now": "Réessayer les suppressions en attente maintenant",
- "Failed to save settings.": "Impossible d'enregistrer les paramètres.",
- "Pending delete retry failed.": "Impossible de réessayer les suppressions en attente.",
- "Pending delete retry finished.": "Réessai des suppressions en attente terminé.",
- ".pad file sync interval (seconds)": "Intervalle de synchronisation du fichier .pad (secondes)",
- "Delete linked Etherpad pad when .pad file is moved to trash": "Supprimer le pad Etherpad lié lorsque le fichier .pad est déplacé vers la corbeille",
- "If enabled, moving a .pad file to the trash also deletes the linked Etherpad pad.": "Si activé, déplacer un fichier .pad vers la corbeille supprime également le pad Etherpad lié.",
- "Add trusted Etherpad hostnames or HTTPS origins. Leave empty only if all public HTTPS hosts should be trusted.": "Ajoutez des noms d'hôte Etherpad ou des origines HTTPS de confiance. Ne laissez vide que si tous les hôtes HTTPS publics doivent être considérés comme de confiance.",
- "Hint: Set \"authenticationMethod\": \"apikey\" in Etherpad's settings.json.": "Indice : définissez \"authenticationMethod\": \"apikey\" dans le fichier settings.json d'Etherpad.",
- "Could not create pad": "Impossible de créer le pad",
- "Could not open pad": "Impossible d'ouvrir le pad",
- "Could not initialize .pad file.": "Impossible d'initialiser le fichier .pad.",
- "Could not resolve .pad file.": "Impossible de résoudre le fichier .pad.",
- ".pad file not found.": "Fichier .pad introuvable.",
- "Test Etherpad connection": "Tester la connexion à Etherpad",
- "Testing Etherpad connection...": "Vérification de la connexion à Etherpad...",
- "Etherpad connection test successful.": "Connexion à Etherpad vérifiée avec succès.",
- "Etherpad connection test failed.": "Impossible de vérifier la connexion à Etherpad.",
- "Etherpad connection test failed: {detail}": "Impossible de vérifier la connexion à Etherpad : {detail}",
- "Close": "Fermer",
- "Create": "Créer",
- "Creating...": "Création...",
- "File name": "Nom de fichier",
- "File name is required.": "Le nom de fichier est requis.",
- "Open in Etherpad": "Ouvrir dans Etherpad",
- "Public pad": "Pad public",
- "Public pad from URL": "Pad public depuis une URL",
- "External pad URL": "URL du pad externe",
- "External pad URL is required.": "L'URL du pad externe est requise.",
- "Could not create public pad.": "Impossible de créer le pad public.",
- "Could not import public pad URL.": "Impossible d'importer l'URL du pad public.",
- "Could not fetch the pad content from the remote server. The new file is empty for now — open the pad in the viewer to populate it.": "Impossible de récupérer le contenu du pad depuis le serveur distant. Le nouveau fichier est vide pour l'instant — ouvre le pad dans la visionneuse pour le remplir."
+ "Unsupported test fault.": "Defaut de test non pris en charge.",
+ "We couldn't find a matching pad in this Nextcloud. You can create a new pad from the text stored in this file; from then on, opening this file will load the new pad.": "Nous n'avons pas trouvé de pad correspondant dans ce Nextcloud. Vous pouvez créer un nouveau pad à partir du texte stocké dans ce fichier ; à partir de là, ouvrir ce fichier chargera le nouveau pad."
},
"nplurals=2; plural=(n > 1);"
);
diff --git a/l10n/fr.json b/l10n/fr.json
index feaa6d3..3bd49b3 100644
--- a/l10n/fr.json
+++ b/l10n/fr.json
@@ -1,50 +1,14 @@
{
"translations": {
- "Pads": "Pads",
- "Configure the Etherpad server and external pad security policy for the Etherpad Nextcloud app.": "Configurez le serveur Etherpad et la politique de sécurité des pads externes pour l'application Etherpad Nextcloud.",
- "Etherpad Base URL": "URL de base Etherpad",
- "Etherpad API URL (optional)": "URL API Etherpad (optionnel)",
- "Optional internal URL for server-side API calls. Leave empty to use Etherpad Base URL.": "URL interne optionnelle pour les appels à l'API côté serveur. Laisser vide pour utiliser l'URL de base Etherpad.",
- "Etherpad session cookie domain (optional)": "Domaine du cookie de session Etherpad (optionnel)",
- "Auto-filled from the Nextcloud and Etherpad hosts when possible. Adjust it if your deployment uses a proxy path or a different trusted parent domain; leave empty for a host-only cookie.": "Renseigne automatiquement depuis les hotes Nextcloud et Etherpad lorsque possible. Ajustez si le deploiement utilise un chemin proxy ou un autre domaine parent de confiance; laissez vide pour un cookie limite a l'hote.",
- "Etherpad API key": "Cle API Etherpad",
- "Detected API version:": "Version API detectee :",
- "Controls how often pad content is copied from Etherpad into the .pad file while the pad is open.": "Controle la frequence de copie du contenu du pad depuis Etherpad vers le fichier .pad pendant que le pad est ouvert.",
- "Allow linking external public pads": "Autoriser les liens vers des pads publics externes",
- "External host allowlist (optional)": "Liste des hôtes externes autorisés (facultatif)",
- "Save settings": "Enregistrer les parametres",
- "Consistency check": "Verification de coherence",
- "Pending Etherpad deletes": "Suppressions Etherpad en attente",
- "Saving settings...": "Enregistrement des parametres...",
- "Settings saved.": "Parametres enregistres.",
- "Running consistency check...": "Verification de coherence en cours...",
- "Consistency check successful.": "Verification de coherence reussie.",
- "Consistency check successful. No issues found.": "Verification de coherence reussie. Aucun probleme trouve.",
- "Consistency check finished with issues.": "Verification de coherence terminee avec des problemes.",
- "Request failed.": "La requete a echoue.",
- "Consistency check failed.": "La verification de coherence a echoue.",
- "Etherpad API key is required.": "La cle API Etherpad est requise.",
- "Etherpad Base URL is required.": "L'URL de base Etherpad est requise.",
- "Etherpad Base URL must use https.": "L'URL de base Etherpad doit utiliser HTTPS.",
- "Invalid Etherpad Base URL.": "URL de base Etherpad invalide.",
- "Etherpad Base URL must not include query or fragment.": "L'URL de base Etherpad ne doit pas contenir de chaîne de requête ni de fragment.",
- "Etherpad API URL must use http or https.": "L'URL API Etherpad doit utiliser HTTP ou HTTPS.",
- "Invalid Etherpad API URL.": "URL API Etherpad invalide.",
- "Etherpad API URL must not include query or fragment.": "L'URL API Etherpad ne doit pas contenir de chaîne de requête ni de fragment.",
- "Invalid Etherpad API version format.": "Format de version API Etherpad invalide.",
- "Sync interval must be between 5 and 3600 seconds.": "L'intervalle de synchronisation doit etre compris entre 5 et 3600 secondes.",
- "External allowlist contains invalid host: {host}": "La liste d'autorisation externe contient un hote invalide : {host}",
- "External allowlist URL must use https: {host}": "L'URL de la liste d'autorisation externe doit utiliser HTTPS : {host}",
- "Test fault cleared.": "Defaut de test efface.",
- "Test fault set: {fault}": "Defaut de test defini : {fault}",
- "Unsupported test fault.": "Defaut de test non pris en charge.",
- "Test faults are available only when Nextcloud debug mode is enabled.": "Les defauts de test sont disponibles uniquement lorsque le mode debug Nextcloud est active.",
- "Authentication required.": "Authentification requise.",
- "Admin permissions required.": "Permissions administrateur requises.",
- "New pad": "Nouveau pad",
- "Open original pad": "Ouvrir le pad d'origine",
+ ".pad file not found.": "Fichier .pad introuvable.",
+ ".pad file sync interval (seconds)": "Intervalle de synchronisation du fichier .pad (secondes)",
"A file with this name already exists.": "Un fichier portant ce nom existe déjà.",
"Absolute https origins allowed to embed the /embed/by-id and /embed/create-by-parent routes. Leave empty to disable external embedding.": "Origines HTTPS absolues autorisées à intégrer les routes /embed/by-id et /embed/create-by-parent. Laisser vide pour désactiver l'intégration externe.",
+ "Add trusted Etherpad hostnames or HTTPS origins. Leave empty only if all public HTTPS hosts should be trusted.": "Ajoutez des noms d'hôte Etherpad ou des origines HTTPS de confiance. Ne laissez vide que si tous les hôtes HTTPS publics doivent être considérés comme de confiance.",
+ "Admin permissions required.": "Permissions administrateur requises.",
+ "Allow linking external public pads": "Autoriser les liens vers des pads publics externes",
+ "Authentication required.": "Authentification requise.",
+ "Auto-filled from the Nextcloud and Etherpad hosts when possible. Adjust it if your deployment uses a proxy path or a different trusted parent domain; leave empty for a host-only cookie.": "Renseigne automatiquement depuis les hotes Nextcloud et Etherpad lorsque possible. Ajustez si le deploiement utilise un chemin proxy ou un autre domaine parent de confiance; laissez vide pour un cookie limite a l'hote.",
"Back": "Retour",
"Cannot open selected .pad file.": "Impossible d'ouvrir le fichier .pad sélectionné.",
"Cannot read selected .pad file.": "Impossible de lire le fichier .pad sélectionné.",
@@ -52,24 +16,64 @@
"Cannot resolve selected .pad file.": "Impossible de résoudre le fichier .pad sélectionné.",
"Cannot resolve selected parent folder.": "Impossible de résoudre le dossier parent sélectionné.",
"Checking for the original pad...": "Recherche du pad original...",
+ "Close": "Fermer",
+ "Configure the Etherpad server and external pad security policy for the Etherpad Nextcloud app.": "Configurez le serveur Etherpad et la politique de sécurité des pads externes pour l'application Etherpad Nextcloud.",
+ "Consistency check": "Verification de coherence",
+ "Consistency check failed.": "La verification de coherence a echoue.",
+ "Consistency check finished with issues.": "Verification de coherence terminee avec des problemes.",
+ "Consistency check successful.": "Verification de coherence reussie.",
+ "Consistency check successful. No issues found.": "Verification de coherence reussie. Aucun probleme trouve.",
+ "Controls how often pad content is copied from Etherpad into the .pad file while the pad is open.": "Controle la frequence de copie du contenu du pad depuis Etherpad vers le fichier .pad pendant que le pad est ouvert.",
"Cookie domain must be a hostname, not a URL.": "Le domaine du cookie doit être un nom d'hôte, pas une URL.",
"Cookie domain must be a valid shared hostname.": "Le domaine du cookie doit être un nom d'hôte partagé valide.",
"Could not check pad sync status.": "Impossible de vérifier l'état de synchronisation du pad.",
+ "Could not create pad": "Impossible de créer le pad",
"Could not create pad from template.": "Impossible de créer le pad à partir du modèle.",
"Could not create pad.": "Impossible de créer le pad.",
+ "Could not create public pad.": "Impossible de créer le pad public.",
+ "Could not fetch the pad content from the remote server. The new file is empty for now — open the pad in the viewer to populate it.": "Impossible de récupérer le contenu du pad depuis le serveur distant. Le nouveau fichier est vide pour l'instant — ouvre le pad dans la visionneuse pour le remplir.",
"Could not import external pad.": "Impossible d'importer le pad externe.",
+ "Could not import public pad URL.": "Impossible d'importer l'URL du pad public.",
+ "Could not initialize .pad file.": "Impossible d'initialiser le fichier .pad.",
"Could not look up the original pad.": "Impossible de retrouver le pad original.",
"Could not move pad to trash.": "Impossible de déplacer le pad vers la corbeille.",
+ "Could not open pad": "Impossible d'ouvrir le pad",
"Could not open pad.": "Impossible d'ouvrir le pad.",
"Could not read pad metadata.": "Impossible de lire les métadonnées du pad.",
"Could not recover pad from this file.": "Impossible de récupérer le pad depuis ce fichier.",
+ "Could not resolve .pad file.": "Impossible de résoudre le fichier .pad.",
"Could not restore pad from trash.": "Impossible de restaurer le pad depuis la corbeille.",
"Could not sync pad content.": "Impossible de synchroniser le contenu du pad.",
+ "Create": "Créer",
"Create new pad from this file": "Créer un nouveau pad à partir de ce fichier",
"Creating new pad...": "Création d'un nouveau pad...",
"Creating pad...": "Création du pad...",
+ "Creating...": "Création...",
+ "Delete linked Etherpad pad when .pad file is moved to trash": "Supprimer le pad Etherpad lié lorsque le fichier .pad est déplacé vers la corbeille",
+ "Detected API version:": "Version API detectee :",
"Embed configuration is incomplete.": "La configuration d'intégration est incomplète.",
+ "Etherpad API URL (optional)": "URL API Etherpad (optionnel)",
+ "Etherpad API URL must not include query or fragment.": "L'URL API Etherpad ne doit pas contenir de chaîne de requête ni de fragment.",
+ "Etherpad API URL must use http or https.": "L'URL API Etherpad doit utiliser HTTP ou HTTPS.",
+ "Etherpad API key": "Cle API Etherpad",
+ "Etherpad API key is required.": "La cle API Etherpad est requise.",
+ "Etherpad Base URL": "URL de base Etherpad",
+ "Etherpad Base URL is required.": "L'URL de base Etherpad est requise.",
+ "Etherpad Base URL must not include query or fragment.": "L'URL de base Etherpad ne doit pas contenir de chaîne de requête ni de fragment.",
+ "Etherpad Base URL must use https.": "L'URL de base Etherpad doit utiliser HTTPS.",
+ "Etherpad connection test failed.": "Impossible de vérifier la connexion à Etherpad.",
+ "Etherpad connection test failed: {detail}": "Impossible de vérifier la connexion à Etherpad : {detail}",
+ "Etherpad connection test successful.": "Connexion à Etherpad vérifiée avec succès.",
+ "Etherpad session cookie domain (optional)": "Domaine du cookie de session Etherpad (optionnel)",
+ "External allowlist URL must use https: {host}": "L'URL de la liste d'autorisation externe doit utiliser HTTPS : {host}",
+ "External allowlist contains invalid host: {host}": "La liste d'autorisation externe contient un hote invalide : {host}",
+ "External host allowlist (optional)": "Liste des hôtes externes autorisés (facultatif)",
+ "External pad URL": "URL du pad externe",
+ "External pad URL is required.": "L'URL du pad externe est requise.",
+ "Failed to save settings.": "Impossible d'enregistrer les paramètres.",
"Failed to update test fault.": "Échec de la mise à jour de l'erreur de test.",
+ "File name": "Nom de fichier",
+ "File name is required.": "Le nom de fichier est requis.",
"Hint: API endpoint not found. Check the API host and that the configured API version is supported by your Etherpad.": "Indice : point d'accès de l'API introuvable. Vérifiez l'hôte de l'API et que la version configurée est prise en charge par votre Etherpad.",
"Hint: Connection refused. Etherpad does not appear to be running on the configured host and port.": "Indice : connexion refusée. Etherpad ne semble pas être en cours d'exécution sur l'hôte et le port configurés.",
"Hint: Connection timed out. Check that this server can reach the Etherpad host (firewall, network).": "Indice : délai de connexion dépassé. Vérifiez que ce serveur peut joindre l'hôte Etherpad (pare-feu, réseau).",
@@ -77,8 +81,13 @@
"Hint: Etherpad rejected the API key. Check that the key matches Etherpad's APIKEY.txt.": "Indice : Etherpad a rejeté la clé d'API. Vérifiez que la clé correspond au fichier APIKEY.txt d'Etherpad.",
"Hint: Etherpad returned a server error. Check the Etherpad server logs.": "Indice : Etherpad a renvoyé une erreur serveur. Consultez les journaux du serveur Etherpad.",
"Hint: Etherpad returned non-JSON. Likely a reverse proxy or HTML error page in front of the API host.": "Indice : Etherpad a renvoyé un contenu non JSON. Probablement un proxy inverse ou une page d'erreur HTML devant l'hôte de l'API.",
+ "Hint: Set \"authenticationMethod\": \"apikey\" in Etherpad's settings.json.": "Indice : définissez \"authenticationMethod\": \"apikey\" dans le fichier settings.json d'Etherpad.",
"Hint: TLS handshake failed. Check the Etherpad certificate and that the configured URL uses the right scheme.": "Indice : l'établissement de la connexion TLS a échoué. Vérifiez le certificat Etherpad et que l'URL configurée utilise le bon schéma.",
"Hint: The configured Etherpad host did not resolve. Check the hostname for typos and that DNS reaches it from this server.": "Indice : l'hôte Etherpad configuré n'a pas été résolu. Vérifiez l'absence de fautes de frappe et que le DNS l'atteint depuis ce serveur.",
+ "If enabled, moving a .pad file to the trash also deletes the linked Etherpad pad.": "Si activé, déplacer un fichier .pad vers la corbeille supprime également le pad Etherpad lié.",
+ "Invalid Etherpad API URL.": "URL API Etherpad invalide.",
+ "Invalid Etherpad API version format.": "Format de version API Etherpad invalide.",
+ "Invalid Etherpad Base URL.": "URL de base Etherpad invalide.",
"Invalid access mode.": "Mode d'accès non valide.",
"Invalid file ID.": "Identifiant de fichier non valide.",
"Invalid file path.": "Chemin de fichier non valide.",
@@ -86,52 +95,43 @@
"Invalid pad name.": "Nom de pad non valide.",
"Invalid parent folder ID.": "Identifiant de dossier parent non valide.",
"Loading pad...": "Chargement du pad...",
+ "New pad": "Nouveau pad",
"No synced snapshot is stored in this .pad file yet.": "Aucune copie synchronisée n'est encore stockée dans ce fichier .pad.",
+ "Open in Etherpad": "Ouvrir dans Etherpad",
+ "Open original pad": "Ouvrir le pad d'origine",
"Open the original .pad file": "Ouvrir le fichier .pad original",
+ "Optional internal URL for server-side API calls. Leave empty to use Etherpad Base URL.": "URL interne optionnelle pour les appels à l'API côté serveur. Laisser vide pour utiliser l'URL de base Etherpad.",
"Pad from another server": "Pad d'un autre serveur",
"Pad name is required.": "Le nom du pad est obligatoire.",
+ "Pads": "Pads",
+ "Pending Etherpad deletes": "Suppressions Etherpad en attente",
+ "Pending delete retry failed.": "Impossible de réessayer les suppressions en attente.",
+ "Pending delete retry finished.": "Réessai des suppressions en attente terminé.",
+ "Public pad": "Pad public",
+ "Public pad from URL": "Pad public depuis une URL",
"Read-only snapshot": "Copie en lecture seule",
"Read-only snapshot from the .pad file.": "Copie en lecture seule du fichier .pad.",
+ "Request failed.": "La requete a echoue.",
+ "Retry pending deletes now": "Réessayer les suppressions en attente maintenant",
+ "Running consistency check...": "Verification de coherence en cours...",
+ "Save settings": "Enregistrer les parametres",
+ "Saving settings...": "Enregistrement des parametres...",
"Selected file is not a .pad file.": "Le fichier sélectionné n'est pas un fichier .pad.",
"Selected parent folder is not writable.": "Le dossier parent sélectionné n'est pas modifiable.",
+ "Settings saved.": "Parametres enregistres.",
+ "Sync interval must be between 5 and 3600 seconds.": "L'intervalle de synchronisation doit etre compris entre 5 et 3600 secondes.",
"Template file not found.": "Fichier modèle introuvable.",
+ "Test Etherpad connection": "Tester la connexion à Etherpad",
+ "Test fault cleared.": "Defaut de test efface.",
+ "Test fault set: {fault}": "Defaut de test defini : {fault}",
+ "Test faults are available only when Nextcloud debug mode is enabled.": "Les defauts de test sont disponibles uniquement lorsque le mode debug Nextcloud est active.",
+ "Testing Etherpad connection...": "Vérification de la connexion à Etherpad...",
"This .pad file has no matching pad in this Nextcloud.": "Ce fichier .pad n'a pas de pad correspondant dans ce Nextcloud.",
"This file looks like a copy of an existing .pad file in your account. Open the original to keep editing the linked pad, or create a new pad to fork the content stored in this file.": "Ce fichier ressemble à une copie d'un fichier .pad existant dans votre compte. Ouvrez l'original pour continuer à modifier le pad lié, ou créez un nouveau pad pour dupliquer le contenu stocké dans ce fichier.",
"Trusted embed origins (optional)": "Origines d'intégration de confiance (optionnel)",
"Unknown error.": "Erreur inconnue.",
- "We couldn't find a matching pad in this Nextcloud. You can create a new pad from the text stored in this file; from then on, opening this file will load the new pad.": "Nous n'avons pas trouvé de pad correspondant dans ce Nextcloud. Vous pouvez créer un nouveau pad à partir du texte stocké dans ce fichier ; à partir de là, ouvrir ce fichier chargera le nouveau pad.",
- "Retry pending deletes now": "Réessayer les suppressions en attente maintenant",
- "Failed to save settings.": "Impossible d'enregistrer les paramètres.",
- "Pending delete retry failed.": "Impossible de réessayer les suppressions en attente.",
- "Pending delete retry finished.": "Réessai des suppressions en attente terminé.",
- ".pad file sync interval (seconds)": "Intervalle de synchronisation du fichier .pad (secondes)",
- "Delete linked Etherpad pad when .pad file is moved to trash": "Supprimer le pad Etherpad lié lorsque le fichier .pad est déplacé vers la corbeille",
- "If enabled, moving a .pad file to the trash also deletes the linked Etherpad pad.": "Si activé, déplacer un fichier .pad vers la corbeille supprime également le pad Etherpad lié.",
- "Add trusted Etherpad hostnames or HTTPS origins. Leave empty only if all public HTTPS hosts should be trusted.": "Ajoutez des noms d'hôte Etherpad ou des origines HTTPS de confiance. Ne laissez vide que si tous les hôtes HTTPS publics doivent être considérés comme de confiance.",
- "Hint: Set \"authenticationMethod\": \"apikey\" in Etherpad's settings.json.": "Indice : définissez \"authenticationMethod\": \"apikey\" dans le fichier settings.json d'Etherpad.",
- "Could not create pad": "Impossible de créer le pad",
- "Could not open pad": "Impossible d'ouvrir le pad",
- "Could not initialize .pad file.": "Impossible d'initialiser le fichier .pad.",
- "Could not resolve .pad file.": "Impossible de résoudre le fichier .pad.",
- ".pad file not found.": "Fichier .pad introuvable.",
- "Test Etherpad connection": "Tester la connexion à Etherpad",
- "Testing Etherpad connection...": "Vérification de la connexion à Etherpad...",
- "Etherpad connection test successful.": "Connexion à Etherpad vérifiée avec succès.",
- "Etherpad connection test failed.": "Impossible de vérifier la connexion à Etherpad.",
- "Etherpad connection test failed: {detail}": "Impossible de vérifier la connexion à Etherpad : {detail}",
- "Close": "Fermer",
- "Create": "Créer",
- "Creating...": "Création...",
- "File name": "Nom de fichier",
- "File name is required.": "Le nom de fichier est requis.",
- "Open in Etherpad": "Ouvrir dans Etherpad",
- "Public pad": "Pad public",
- "Public pad from URL": "Pad public depuis une URL",
- "External pad URL": "URL du pad externe",
- "External pad URL is required.": "L'URL du pad externe est requise.",
- "Could not create public pad.": "Impossible de créer le pad public.",
- "Could not import public pad URL.": "Impossible d'importer l'URL du pad public.",
- "Could not fetch the pad content from the remote server. The new file is empty for now — open the pad in the viewer to populate it.": "Impossible de récupérer le contenu du pad depuis le serveur distant. Le nouveau fichier est vide pour l'instant — ouvre le pad dans la visionneuse pour le remplir."
+ "Unsupported test fault.": "Defaut de test non pris en charge.",
+ "We couldn't find a matching pad in this Nextcloud. You can create a new pad from the text stored in this file; from then on, opening this file will load the new pad.": "Nous n'avons pas trouvé de pad correspondant dans ce Nextcloud. Vous pouvez créer un nouveau pad à partir du texte stocké dans ce fichier ; à partir de là, ouvrir ce fichier chargera le nouveau pad."
},
"pluralForm": "nplurals=2; plural=(n > 1);"
}
diff --git a/l10n/fr.php b/l10n/fr.php
index afea89c..4272c9e 100644
--- a/l10n/fr.php
+++ b/l10n/fr.php
@@ -1,51 +1,15 @@
"Pads",
- "Configure the Etherpad server and external pad security policy for the Etherpad Nextcloud app." => "Configurez le serveur Etherpad et la politique de sécurité des pads externes pour l'application Etherpad Nextcloud.",
- "Etherpad Base URL" => "URL de base Etherpad",
- "Etherpad API URL (optional)" => "URL API Etherpad (optionnel)",
- "Optional internal URL for server-side API calls. Leave empty to use Etherpad Base URL." => "URL interne optionnelle pour les appels à l'API côté serveur. Laisser vide pour utiliser l'URL de base Etherpad.",
- "Etherpad session cookie domain (optional)" => "Domaine du cookie de session Etherpad (optionnel)",
- "Auto-filled from the Nextcloud and Etherpad hosts when possible. Adjust it if your deployment uses a proxy path or a different trusted parent domain; leave empty for a host-only cookie." => "Renseigne automatiquement depuis les hotes Nextcloud et Etherpad lorsque possible. Ajustez si le deploiement utilise un chemin proxy ou un autre domaine parent de confiance; laissez vide pour un cookie limite a l'hote.",
- "Etherpad API key" => "Cle API Etherpad",
- "Detected API version:" => "Version API detectee :",
- "Controls how often pad content is copied from Etherpad into the .pad file while the pad is open." => "Controle la frequence de copie du contenu du pad depuis Etherpad vers le fichier .pad pendant que le pad est ouvert.",
- "Allow linking external public pads" => "Autoriser les liens vers des pads publics externes",
- "External host allowlist (optional)" => "Liste des hôtes externes autorisés (facultatif)",
- "Save settings" => "Enregistrer les parametres",
- "Consistency check" => "Verification de coherence",
- "Pending Etherpad deletes" => "Suppressions Etherpad en attente",
- "Saving settings..." => "Enregistrement des parametres...",
- "Settings saved." => "Parametres enregistres.",
- "Running consistency check..." => "Verification de coherence en cours...",
- "Consistency check successful." => "Verification de coherence reussie.",
- "Consistency check successful. No issues found." => "Verification de coherence reussie. Aucun probleme trouve.",
- "Consistency check finished with issues." => "Verification de coherence terminee avec des problemes.",
- "Request failed." => "La requete a echoue.",
- "Consistency check failed." => "La verification de coherence a echoue.",
- "Etherpad API key is required." => "La cle API Etherpad est requise.",
- "Etherpad Base URL is required." => "L'URL de base Etherpad est requise.",
- "Etherpad Base URL must use https." => "L'URL de base Etherpad doit utiliser HTTPS.",
- "Invalid Etherpad Base URL." => "URL de base Etherpad invalide.",
- "Etherpad Base URL must not include query or fragment." => "L'URL de base Etherpad ne doit pas contenir de chaîne de requête ni de fragment.",
- "Etherpad API URL must use http or https." => "L'URL API Etherpad doit utiliser HTTP ou HTTPS.",
- "Invalid Etherpad API URL." => "URL API Etherpad invalide.",
- "Etherpad API URL must not include query or fragment." => "L'URL API Etherpad ne doit pas contenir de chaîne de requête ni de fragment.",
- "Invalid Etherpad API version format." => "Format de version API Etherpad invalide.",
- "Sync interval must be between 5 and 3600 seconds." => "L'intervalle de synchronisation doit etre compris entre 5 et 3600 secondes.",
- "External allowlist contains invalid host: {host}" => "La liste d'autorisation externe contient un hote invalide : {host}",
- "External allowlist URL must use https: {host}" => "L'URL de la liste d'autorisation externe doit utiliser HTTPS : {host}",
- "Test fault cleared." => "Defaut de test efface.",
- "Test fault set: {fault}" => "Defaut de test defini : {fault}",
- "Unsupported test fault." => "Defaut de test non pris en charge.",
- "Test faults are available only when Nextcloud debug mode is enabled." => "Les defauts de test sont disponibles uniquement lorsque le mode debug Nextcloud est active.",
- "Authentication required." => "Authentification requise.",
- "Admin permissions required." => "Permissions administrateur requises.",
- "New pad" => "Nouveau pad",
- "Open original pad" => "Ouvrir le pad d'origine",
+ ".pad file not found." => "Fichier .pad introuvable.",
+ ".pad file sync interval (seconds)" => "Intervalle de synchronisation du fichier .pad (secondes)",
"A file with this name already exists." => "Un fichier portant ce nom existe déjà.",
"Absolute https origins allowed to embed the /embed/by-id and /embed/create-by-parent routes. Leave empty to disable external embedding." => "Origines HTTPS absolues autorisées à intégrer les routes /embed/by-id et /embed/create-by-parent. Laisser vide pour désactiver l'intégration externe.",
+ "Add trusted Etherpad hostnames or HTTPS origins. Leave empty only if all public HTTPS hosts should be trusted." => "Ajoutez des noms d'hôte Etherpad ou des origines HTTPS de confiance. Ne laissez vide que si tous les hôtes HTTPS publics doivent être considérés comme de confiance.",
+ "Admin permissions required." => "Permissions administrateur requises.",
+ "Allow linking external public pads" => "Autoriser les liens vers des pads publics externes",
+ "Authentication required." => "Authentification requise.",
+ "Auto-filled from the Nextcloud and Etherpad hosts when possible. Adjust it if your deployment uses a proxy path or a different trusted parent domain; leave empty for a host-only cookie." => "Renseigne automatiquement depuis les hotes Nextcloud et Etherpad lorsque possible. Ajustez si le deploiement utilise un chemin proxy ou un autre domaine parent de confiance; laissez vide pour un cookie limite a l'hote.",
"Back" => "Retour",
"Cannot open selected .pad file." => "Impossible d'ouvrir le fichier .pad sélectionné.",
"Cannot read selected .pad file." => "Impossible de lire le fichier .pad sélectionné.",
@@ -53,24 +17,64 @@
"Cannot resolve selected .pad file." => "Impossible de résoudre le fichier .pad sélectionné.",
"Cannot resolve selected parent folder." => "Impossible de résoudre le dossier parent sélectionné.",
"Checking for the original pad..." => "Recherche du pad original...",
+ "Close" => "Fermer",
+ "Configure the Etherpad server and external pad security policy for the Etherpad Nextcloud app." => "Configurez le serveur Etherpad et la politique de sécurité des pads externes pour l'application Etherpad Nextcloud.",
+ "Consistency check" => "Verification de coherence",
+ "Consistency check failed." => "La verification de coherence a echoue.",
+ "Consistency check finished with issues." => "Verification de coherence terminee avec des problemes.",
+ "Consistency check successful." => "Verification de coherence reussie.",
+ "Consistency check successful. No issues found." => "Verification de coherence reussie. Aucun probleme trouve.",
+ "Controls how often pad content is copied from Etherpad into the .pad file while the pad is open." => "Controle la frequence de copie du contenu du pad depuis Etherpad vers le fichier .pad pendant que le pad est ouvert.",
"Cookie domain must be a hostname, not a URL." => "Le domaine du cookie doit être un nom d'hôte, pas une URL.",
"Cookie domain must be a valid shared hostname." => "Le domaine du cookie doit être un nom d'hôte partagé valide.",
"Could not check pad sync status." => "Impossible de vérifier l'état de synchronisation du pad.",
+ "Could not create pad" => "Impossible de créer le pad",
"Could not create pad from template." => "Impossible de créer le pad à partir du modèle.",
"Could not create pad." => "Impossible de créer le pad.",
+ "Could not create public pad." => "Impossible de créer le pad public.",
+ "Could not fetch the pad content from the remote server. The new file is empty for now — open the pad in the viewer to populate it." => "Impossible de récupérer le contenu du pad depuis le serveur distant. Le nouveau fichier est vide pour l'instant — ouvre le pad dans la visionneuse pour le remplir.",
"Could not import external pad." => "Impossible d'importer le pad externe.",
+ "Could not import public pad URL." => "Impossible d'importer l'URL du pad public.",
+ "Could not initialize .pad file." => "Impossible d'initialiser le fichier .pad.",
"Could not look up the original pad." => "Impossible de retrouver le pad original.",
"Could not move pad to trash." => "Impossible de déplacer le pad vers la corbeille.",
+ "Could not open pad" => "Impossible d'ouvrir le pad",
"Could not open pad." => "Impossible d'ouvrir le pad.",
"Could not read pad metadata." => "Impossible de lire les métadonnées du pad.",
"Could not recover pad from this file." => "Impossible de récupérer le pad depuis ce fichier.",
+ "Could not resolve .pad file." => "Impossible de résoudre le fichier .pad.",
"Could not restore pad from trash." => "Impossible de restaurer le pad depuis la corbeille.",
"Could not sync pad content." => "Impossible de synchroniser le contenu du pad.",
+ "Create" => "Créer",
"Create new pad from this file" => "Créer un nouveau pad à partir de ce fichier",
"Creating new pad..." => "Création d'un nouveau pad...",
"Creating pad..." => "Création du pad...",
+ "Creating..." => "Création...",
+ "Delete linked Etherpad pad when .pad file is moved to trash" => "Supprimer le pad Etherpad lié lorsque le fichier .pad est déplacé vers la corbeille",
+ "Detected API version:" => "Version API detectee :",
"Embed configuration is incomplete." => "La configuration d'intégration est incomplète.",
+ "Etherpad API URL (optional)" => "URL API Etherpad (optionnel)",
+ "Etherpad API URL must not include query or fragment." => "L'URL API Etherpad ne doit pas contenir de chaîne de requête ni de fragment.",
+ "Etherpad API URL must use http or https." => "L'URL API Etherpad doit utiliser HTTP ou HTTPS.",
+ "Etherpad API key" => "Cle API Etherpad",
+ "Etherpad API key is required." => "La cle API Etherpad est requise.",
+ "Etherpad Base URL" => "URL de base Etherpad",
+ "Etherpad Base URL is required." => "L'URL de base Etherpad est requise.",
+ "Etherpad Base URL must not include query or fragment." => "L'URL de base Etherpad ne doit pas contenir de chaîne de requête ni de fragment.",
+ "Etherpad Base URL must use https." => "L'URL de base Etherpad doit utiliser HTTPS.",
+ "Etherpad connection test failed." => "Impossible de vérifier la connexion à Etherpad.",
+ "Etherpad connection test failed: {detail}" => "Impossible de vérifier la connexion à Etherpad : {detail}",
+ "Etherpad connection test successful." => "Connexion à Etherpad vérifiée avec succès.",
+ "Etherpad session cookie domain (optional)" => "Domaine du cookie de session Etherpad (optionnel)",
+ "External allowlist URL must use https: {host}" => "L'URL de la liste d'autorisation externe doit utiliser HTTPS : {host}",
+ "External allowlist contains invalid host: {host}" => "La liste d'autorisation externe contient un hote invalide : {host}",
+ "External host allowlist (optional)" => "Liste des hôtes externes autorisés (facultatif)",
+ "External pad URL" => "URL du pad externe",
+ "External pad URL is required." => "L'URL du pad externe est requise.",
+ "Failed to save settings." => "Impossible d'enregistrer les paramètres.",
"Failed to update test fault." => "Échec de la mise à jour de l'erreur de test.",
+ "File name" => "Nom de fichier",
+ "File name is required." => "Le nom de fichier est requis.",
"Hint: API endpoint not found. Check the API host and that the configured API version is supported by your Etherpad." => "Indice : point d'accès de l'API introuvable. Vérifiez l'hôte de l'API et que la version configurée est prise en charge par votre Etherpad.",
"Hint: Connection refused. Etherpad does not appear to be running on the configured host and port." => "Indice : connexion refusée. Etherpad ne semble pas être en cours d'exécution sur l'hôte et le port configurés.",
"Hint: Connection timed out. Check that this server can reach the Etherpad host (firewall, network)." => "Indice : délai de connexion dépassé. Vérifiez que ce serveur peut joindre l'hôte Etherpad (pare-feu, réseau).",
@@ -78,8 +82,13 @@
"Hint: Etherpad rejected the API key. Check that the key matches Etherpad's APIKEY.txt." => "Indice : Etherpad a rejeté la clé d'API. Vérifiez que la clé correspond au fichier APIKEY.txt d'Etherpad.",
"Hint: Etherpad returned a server error. Check the Etherpad server logs." => "Indice : Etherpad a renvoyé une erreur serveur. Consultez les journaux du serveur Etherpad.",
"Hint: Etherpad returned non-JSON. Likely a reverse proxy or HTML error page in front of the API host." => "Indice : Etherpad a renvoyé un contenu non JSON. Probablement un proxy inverse ou une page d'erreur HTML devant l'hôte de l'API.",
+ "Hint: Set \"authenticationMethod\": \"apikey\" in Etherpad's settings.json." => "Indice : définissez \"authenticationMethod\": \"apikey\" dans le fichier settings.json d'Etherpad.",
"Hint: TLS handshake failed. Check the Etherpad certificate and that the configured URL uses the right scheme." => "Indice : l'établissement de la connexion TLS a échoué. Vérifiez le certificat Etherpad et que l'URL configurée utilise le bon schéma.",
"Hint: The configured Etherpad host did not resolve. Check the hostname for typos and that DNS reaches it from this server." => "Indice : l'hôte Etherpad configuré n'a pas été résolu. Vérifiez l'absence de fautes de frappe et que le DNS l'atteint depuis ce serveur.",
+ "If enabled, moving a .pad file to the trash also deletes the linked Etherpad pad." => "Si activé, déplacer un fichier .pad vers la corbeille supprime également le pad Etherpad lié.",
+ "Invalid Etherpad API URL." => "URL API Etherpad invalide.",
+ "Invalid Etherpad API version format." => "Format de version API Etherpad invalide.",
+ "Invalid Etherpad Base URL." => "URL de base Etherpad invalide.",
"Invalid access mode." => "Mode d'accès non valide.",
"Invalid file ID." => "Identifiant de fichier non valide.",
"Invalid file path." => "Chemin de fichier non valide.",
@@ -87,52 +96,43 @@
"Invalid pad name." => "Nom de pad non valide.",
"Invalid parent folder ID." => "Identifiant de dossier parent non valide.",
"Loading pad..." => "Chargement du pad...",
+ "New pad" => "Nouveau pad",
"No synced snapshot is stored in this .pad file yet." => "Aucune copie synchronisée n'est encore stockée dans ce fichier .pad.",
+ "Open in Etherpad" => "Ouvrir dans Etherpad",
+ "Open original pad" => "Ouvrir le pad d'origine",
"Open the original .pad file" => "Ouvrir le fichier .pad original",
+ "Optional internal URL for server-side API calls. Leave empty to use Etherpad Base URL." => "URL interne optionnelle pour les appels à l'API côté serveur. Laisser vide pour utiliser l'URL de base Etherpad.",
"Pad from another server" => "Pad d'un autre serveur",
"Pad name is required." => "Le nom du pad est obligatoire.",
+ "Pads" => "Pads",
+ "Pending Etherpad deletes" => "Suppressions Etherpad en attente",
+ "Pending delete retry failed." => "Impossible de réessayer les suppressions en attente.",
+ "Pending delete retry finished." => "Réessai des suppressions en attente terminé.",
+ "Public pad" => "Pad public",
+ "Public pad from URL" => "Pad public depuis une URL",
"Read-only snapshot" => "Copie en lecture seule",
"Read-only snapshot from the .pad file." => "Copie en lecture seule du fichier .pad.",
+ "Request failed." => "La requete a echoue.",
+ "Retry pending deletes now" => "Réessayer les suppressions en attente maintenant",
+ "Running consistency check..." => "Verification de coherence en cours...",
+ "Save settings" => "Enregistrer les parametres",
+ "Saving settings..." => "Enregistrement des parametres...",
"Selected file is not a .pad file." => "Le fichier sélectionné n'est pas un fichier .pad.",
"Selected parent folder is not writable." => "Le dossier parent sélectionné n'est pas modifiable.",
+ "Settings saved." => "Parametres enregistres.",
+ "Sync interval must be between 5 and 3600 seconds." => "L'intervalle de synchronisation doit etre compris entre 5 et 3600 secondes.",
"Template file not found." => "Fichier modèle introuvable.",
+ "Test Etherpad connection" => "Tester la connexion à Etherpad",
+ "Test fault cleared." => "Defaut de test efface.",
+ "Test fault set: {fault}" => "Defaut de test defini : {fault}",
+ "Test faults are available only when Nextcloud debug mode is enabled." => "Les defauts de test sont disponibles uniquement lorsque le mode debug Nextcloud est active.",
+ "Testing Etherpad connection..." => "Vérification de la connexion à Etherpad...",
"This .pad file has no matching pad in this Nextcloud." => "Ce fichier .pad n'a pas de pad correspondant dans ce Nextcloud.",
"This file looks like a copy of an existing .pad file in your account. Open the original to keep editing the linked pad, or create a new pad to fork the content stored in this file." => "Ce fichier ressemble à une copie d'un fichier .pad existant dans votre compte. Ouvrez l'original pour continuer à modifier le pad lié, ou créez un nouveau pad pour dupliquer le contenu stocké dans ce fichier.",
"Trusted embed origins (optional)" => "Origines d'intégration de confiance (optionnel)",
"Unknown error." => "Erreur inconnue.",
+ "Unsupported test fault." => "Defaut de test non pris en charge.",
"We couldn't find a matching pad in this Nextcloud. You can create a new pad from the text stored in this file; from then on, opening this file will load the new pad." => "Nous n'avons pas trouvé de pad correspondant dans ce Nextcloud. Vous pouvez créer un nouveau pad à partir du texte stocké dans ce fichier ; à partir de là, ouvrir ce fichier chargera le nouveau pad.",
- "Retry pending deletes now" => "Réessayer les suppressions en attente maintenant",
- "Failed to save settings." => "Impossible d'enregistrer les paramètres.",
- "Pending delete retry failed." => "Impossible de réessayer les suppressions en attente.",
- "Pending delete retry finished." => "Réessai des suppressions en attente terminé.",
- ".pad file sync interval (seconds)" => "Intervalle de synchronisation du fichier .pad (secondes)",
- "Delete linked Etherpad pad when .pad file is moved to trash" => "Supprimer le pad Etherpad lié lorsque le fichier .pad est déplacé vers la corbeille",
- "If enabled, moving a .pad file to the trash also deletes the linked Etherpad pad." => "Si activé, déplacer un fichier .pad vers la corbeille supprime également le pad Etherpad lié.",
- "Add trusted Etherpad hostnames or HTTPS origins. Leave empty only if all public HTTPS hosts should be trusted." => "Ajoutez des noms d'hôte Etherpad ou des origines HTTPS de confiance. Ne laissez vide que si tous les hôtes HTTPS publics doivent être considérés comme de confiance.",
- "Hint: Set \"authenticationMethod\": \"apikey\" in Etherpad's settings.json." => "Indice : définissez \"authenticationMethod\": \"apikey\" dans le fichier settings.json d'Etherpad.",
- "Could not create pad" => "Impossible de créer le pad",
- "Could not open pad" => "Impossible d'ouvrir le pad",
- "Could not initialize .pad file." => "Impossible d'initialiser le fichier .pad.",
- "Could not resolve .pad file." => "Impossible de résoudre le fichier .pad.",
- ".pad file not found." => "Fichier .pad introuvable.",
- "Test Etherpad connection" => "Tester la connexion à Etherpad",
- "Testing Etherpad connection..." => "Vérification de la connexion à Etherpad...",
- "Etherpad connection test successful." => "Connexion à Etherpad vérifiée avec succès.",
- "Etherpad connection test failed." => "Impossible de vérifier la connexion à Etherpad.",
- "Etherpad connection test failed: {detail}" => "Impossible de vérifier la connexion à Etherpad : {detail}",
- "Close" => "Fermer",
- "Create" => "Créer",
- "Creating..." => "Création...",
- "File name" => "Nom de fichier",
- "File name is required." => "Le nom de fichier est requis.",
- "Open in Etherpad" => "Ouvrir dans Etherpad",
- "Public pad" => "Pad public",
- "Public pad from URL" => "Pad public depuis une URL",
- "External pad URL" => "URL du pad externe",
- "External pad URL is required." => "L'URL du pad externe est requise.",
- "Could not create public pad." => "Impossible de créer le pad public.",
- "Could not import public pad URL." => "Impossible d'importer l'URL du pad public.",
- "Could not fetch the pad content from the remote server. The new file is empty for now — open the pad in the viewer to populate it." => "Impossible de récupérer le contenu du pad depuis le serveur distant. Le nouveau fichier est vide pour l'instant — ouvre le pad dans la visionneuse pour le remplir.",
];
$PLURAL_FORMS = "nplurals=2; plural=(n > 1);";
From b7c33c0bfe8f1a0959d3f541eaaeb503290f2f3e Mon Sep 17 00:00:00 2001
From: Jaggob <37583151+Jaggob@users.noreply.github.com>
Date: Wed, 27 May 2026 12:48:13 +0200
Subject: [PATCH 07/13] i18n: drop redundant de_DE locale mirror
de_DE was a byte-for-byte mirror of de. Nextcloud's locale fallback
already maps de_DE users to de.json when de_DE.json is absent, so the
mirror only added drift risk (and would have doubled translatewiki
overhead once it owns the catalogs). We use Du throughout the DE
catalog and have no Sie/Du split that would justify two variants.
---
l10n/de_DE.js | 138 ------------------------------------------------
l10n/de_DE.json | 137 -----------------------------------------------
l10n/de_DE.php | 138 ------------------------------------------------
3 files changed, 413 deletions(-)
delete mode 100644 l10n/de_DE.js
delete mode 100644 l10n/de_DE.json
delete mode 100644 l10n/de_DE.php
diff --git a/l10n/de_DE.js b/l10n/de_DE.js
deleted file mode 100644
index 8025b2f..0000000
--- a/l10n/de_DE.js
+++ /dev/null
@@ -1,138 +0,0 @@
-OC.L10N.register(
- "etherpad_nextcloud",
- {
- ".pad file not found.": ".pad-Datei nicht gefunden.",
- ".pad file sync interval (seconds)": ".pad-Datei-Synchronisierungsintervall (Sekunden)",
- "A file with this name already exists.": "Eine Datei mit diesem Namen existiert bereits.",
- "Absolute https origins allowed to embed the /embed/by-id and /embed/create-by-parent routes. Leave empty to disable external embedding.": "Absolute HTTPS-Origins, die die Routen /embed/by-id und /embed/create-by-parent einbetten dürfen. Leer lassen, um externes Einbetten zu deaktivieren.",
- "Add trusted Etherpad hostnames or HTTPS origins. Leave empty only if all public HTTPS hosts should be trusted.": "Vertrauenswürdige Etherpad-Hostnamen oder HTTPS-Ursprünge eintragen. Nur leer lassen, wenn alle öffentlichen HTTPS-Hosts vertrauenswürdig sein sollen.",
- "Admin permissions required.": "Administratorrechte erforderlich.",
- "Allow linking external public pads": "Verlinken externer öffentlicher Pads erlauben",
- "Authentication required.": "Authentifizierung erforderlich.",
- "Auto-filled from the Nextcloud and Etherpad hosts when possible. Adjust it if your deployment uses a proxy path or a different trusted parent domain; leave empty for a host-only cookie.": "Wird, wenn möglich, automatisch aus den Nextcloud- und Etherpad-Hosts abgeleitet. Anpassen, wenn die Installation einen Proxy-Pfad oder eine andere vertrauenswürdige Parent-Domain nutzt; leer lassen für ein Host-only-Cookie.",
- "Back": "Zurück",
- "Cannot open selected .pad file.": "Ausgewählte .pad-Datei konnte nicht geöffnet werden.",
- "Cannot read selected .pad file.": "Ausgewählte .pad-Datei konnte nicht gelesen werden.",
- "Cannot resolve file path for file ID.": "Dateipfad zur Datei-ID konnte nicht ermittelt werden.",
- "Cannot resolve selected .pad file.": "Ausgewählte .pad-Datei konnte nicht aufgelöst werden.",
- "Cannot resolve selected parent folder.": "Ausgewählter Zielordner konnte nicht aufgelöst werden.",
- "Checking for the original pad...": "Suche nach dem Original-Pad ...",
- "Close": "Schließen",
- "Configure the Etherpad server and external pad security policy for the Etherpad Nextcloud app.": "Konfiguriere den Etherpad-Server und die Sicherheitsrichtlinie für externe Pads in der Etherpad-Nextcloud-App.",
- "Consistency check": "Konsistenzprüfung",
- "Consistency check failed.": "Konsistenzprüfung fehlgeschlagen.",
- "Consistency check finished with issues.": "Konsistenzprüfung mit Problemen abgeschlossen.",
- "Consistency check successful.": "Konsistenzprüfung erfolgreich.",
- "Consistency check successful. No issues found.": "Konsistenzprüfung erfolgreich. Keine Probleme gefunden.",
- "Controls how often pad content is copied from Etherpad into the .pad file while the pad is open.": "Steuert, wie oft der Pad-Inhalt aus Etherpad in die .pad-Datei kopiert wird, während das Pad geöffnet ist.",
- "Cookie domain must be a hostname, not a URL.": "Cookie-Domain muss ein Hostname sein, keine URL.",
- "Cookie domain must be a valid shared hostname.": "Cookie-Domain muss ein gültiger gemeinsamer Hostname sein.",
- "Could not check pad sync status.": "Synchronisierungsstatus des Pads konnte nicht ermittelt werden.",
- "Could not create pad": "Pad konnte nicht erstellt werden",
- "Could not create pad from template.": "Pad konnte nicht aus Vorlage erstellt werden.",
- "Could not create pad.": "Pad konnte nicht erstellt werden.",
- "Could not create public pad.": "Öffentliches Pad konnte nicht erstellt werden.",
- "Could not fetch the pad content from the remote server. The new file is empty for now — open the pad in the viewer to populate it.": "Pad-Inhalt konnte nicht vom Remote-Server geladen werden. Die neue Datei ist vorerst leer — öffne das Pad im Viewer, um sie zu befüllen.",
- "Could not import external pad.": "Externes Pad konnte nicht importiert werden.",
- "Could not import public pad URL.": "Öffentliche Pad-URL konnte nicht importiert werden.",
- "Could not initialize .pad file.": ".pad-Datei konnte nicht initialisiert werden.",
- "Could not look up the original pad.": "Original-Pad konnte nicht ermittelt werden.",
- "Could not move pad to trash.": "Pad konnte nicht in den Papierkorb verschoben werden.",
- "Could not open pad": "Pad konnte nicht geöffnet werden",
- "Could not open pad.": "Pad konnte nicht geöffnet werden.",
- "Could not read pad metadata.": "Pad-Metadaten konnten nicht gelesen werden.",
- "Could not recover pad from this file.": "Pad konnte aus dieser Datei nicht wiederhergestellt werden.",
- "Could not resolve .pad file.": ".pad-Datei konnte nicht aufgelöst werden.",
- "Could not restore pad from trash.": "Pad konnte nicht aus dem Papierkorb wiederhergestellt werden.",
- "Could not sync pad content.": "Pad-Inhalt konnte nicht synchronisiert werden.",
- "Create": "Erstellen",
- "Create new pad from this file": "Neues Pad aus dieser Datei erstellen",
- "Creating new pad...": "Neues Pad wird erstellt ...",
- "Creating pad...": "Pad wird erstellt...",
- "Creating...": "Wird erstellt...",
- "Delete linked Etherpad pad when .pad file is moved to trash": "Verknüpftes Etherpad-Pad löschen, wenn die .pad-Datei in den Papierkorb verschoben wird",
- "Detected API version:": "Erkannte API-Version:",
- "Embed configuration is incomplete.": "Embed-Konfiguration ist unvollständig.",
- "Etherpad API URL (optional)": "Etherpad-API-URL (optional)",
- "Etherpad API URL must not include query or fragment.": "Die Etherpad-API-URL darf keinen Query-String und kein Fragment enthalten.",
- "Etherpad API URL must use http or https.": "Die Etherpad-API-URL muss HTTP oder HTTPS verwenden.",
- "Etherpad API key": "Etherpad-API-Schlüssel",
- "Etherpad API key is required.": "Ein Etherpad-API-Schlüssel ist erforderlich.",
- "Etherpad Base URL": "Etherpad-Basis-URL",
- "Etherpad Base URL is required.": "Eine Etherpad-Basis-URL ist erforderlich.",
- "Etherpad Base URL must not include query or fragment.": "Die Etherpad-Basis-URL darf keinen Query-String und kein Fragment enthalten.",
- "Etherpad Base URL must use https.": "Die Etherpad-Basis-URL muss HTTPS verwenden.",
- "Etherpad connection test failed.": "Etherpad-Verbindung konnte nicht geprüft werden.",
- "Etherpad connection test failed: {detail}": "Etherpad-Verbindung konnte nicht geprüft werden: {detail}",
- "Etherpad connection test successful.": "Etherpad-Verbindung erfolgreich geprüft.",
- "Etherpad session cookie domain (optional)": "Etherpad-Session-Cookie-Domain (optional)",
- "External allowlist URL must use https: {host}": "Die externe Allowlist-URL muss HTTPS verwenden: {host}",
- "External allowlist contains invalid host: {host}": "Die externe Allowlist enthält einen ungültigen Host: {host}",
- "External host allowlist (optional)": "Allowlist externer Hosts (optional)",
- "External pad URL": "Externe Pad-URL",
- "External pad URL is required.": "Externe Pad-URL ist erforderlich.",
- "Failed to save settings.": "Einstellungen konnten nicht gespeichert werden.",
- "Failed to update test fault.": "Test-Fehler konnte nicht aktualisiert werden.",
- "File name": "Dateiname",
- "File name is required.": "Dateiname ist erforderlich.",
- "Hint: API endpoint not found. Check the API host and that the configured API version is supported by your Etherpad.": "Hinweis: API-Endpunkt nicht gefunden. Prüfe den API-Host und ob die konfigurierte API-Version von deinem Etherpad unterstützt wird.",
- "Hint: Connection refused. Etherpad does not appear to be running on the configured host and port.": "Hinweis: Verbindung verweigert. Etherpad läuft anscheinend nicht auf dem konfigurierten Host und Port.",
- "Hint: Connection timed out. Check that this server can reach the Etherpad host (firewall, network).": "Hinweis: Zeitüberschreitung bei der Verbindung. Prüfe, ob dieser Server den Etherpad-Host erreichen kann (Firewall, Netzwerk).",
- "Hint: Could not reach Etherpad. Check the API host and that this server can connect to it.": "Hinweis: Etherpad konnte nicht erreicht werden. Prüfe den API-Host und ob dieser Server eine Verbindung herstellen kann.",
- "Hint: Etherpad rejected the API key. Check that the key matches Etherpad's APIKEY.txt.": "Hinweis: Etherpad hat den API-Schlüssel abgelehnt. Prüfe, ob er mit Etherpads APIKEY.txt übereinstimmt.",
- "Hint: Etherpad returned a server error. Check the Etherpad server logs.": "Hinweis: Etherpad hat einen Server-Fehler zurückgegeben. Prüfe die Etherpad-Server-Logs.",
- "Hint: Etherpad returned non-JSON. Likely a reverse proxy or HTML error page in front of the API host.": "Hinweis: Etherpad hat keine JSON-Antwort zurückgegeben. Wahrscheinlich steht ein Reverse-Proxy oder eine HTML-Fehlerseite vor dem API-Host.",
- "Hint: Set \"authenticationMethod\": \"apikey\" in Etherpad's settings.json.": "Hinweis: Setze in Etherpads settings.json \"authenticationMethod\": \"apikey\".",
- "Hint: TLS handshake failed. Check the Etherpad certificate and that the configured URL uses the right scheme.": "Hinweis: TLS-Handshake fehlgeschlagen. Prüfe das Etherpad-Zertifikat und ob die konfigurierte URL das richtige Schema verwendet.",
- "Hint: The configured Etherpad host did not resolve. Check the hostname for typos and that DNS reaches it from this server.": "Hinweis: Der konfigurierte Etherpad-Host konnte nicht aufgelöst werden. Prüfe den Hostnamen auf Tippfehler und ob er von diesem Server per DNS aufgelöst werden kann.",
- "If enabled, moving a .pad file to the trash also deletes the linked Etherpad pad.": "Wenn aktiviert, wird beim Verschieben einer .pad-Datei in den Papierkorb auch das verknüpfte Etherpad-Pad gelöscht.",
- "Invalid Etherpad API URL.": "Ungültige Etherpad-API-URL.",
- "Invalid Etherpad API version format.": "Ungültiges Format für die Etherpad-API-Version.",
- "Invalid Etherpad Base URL.": "Ungültige Etherpad-Basis-URL.",
- "Invalid access mode.": "Ungültiger Zugriffsmodus.",
- "Invalid file ID.": "Ungültige Datei-ID.",
- "Invalid file path.": "Ungültiger Dateipfad.",
- "Invalid input.": "Ungültige Eingabe.",
- "Invalid pad name.": "Ungültiger Pad-Name.",
- "Invalid parent folder ID.": "Ungültige Zielordner-ID.",
- "Loading pad...": "Pad wird geladen...",
- "New pad": "Neues Pad",
- "No synced snapshot is stored in this .pad file yet.": "In dieser .pad-Datei ist noch keine synchronisierte Kopie gespeichert.",
- "Open in Etherpad": "In Etherpad öffnen",
- "Open original pad": "Original-Pad öffnen",
- "Open the original .pad file": "Ursprüngliche .pad-Datei öffnen",
- "Optional internal URL for server-side API calls. Leave empty to use Etherpad Base URL.": "Optionale interne URL für serverseitige API-Aufrufe. Leer lassen, um die Etherpad-Basis-URL zu verwenden.",
- "Pad from another server": "Pad von einem anderen Server",
- "Pad name is required.": "Pad-Name ist erforderlich.",
- "Pads": "Pads",
- "Pending Etherpad deletes": "Ausstehende Etherpad-Löschungen",
- "Pending delete retry failed.": "Wiederholung ausstehender Löschungen fehlgeschlagen.",
- "Pending delete retry finished.": "Wiederholung ausstehender Löschungen abgeschlossen.",
- "Public pad": "Öffentliches Pad",
- "Public pad from URL": "Öffentliches Pad aus URL",
- "Read-only snapshot": "Schreibgeschützte Kopie",
- "Read-only snapshot from the .pad file.": "Schreibgeschützte Kopie aus der .pad-Datei.",
- "Request failed.": "Anfrage fehlgeschlagen.",
- "Retry pending deletes now": "Ausstehende Löschungen jetzt wiederholen",
- "Running consistency check...": "Konsistenzprüfung läuft...",
- "Save settings": "Einstellungen speichern",
- "Saving settings...": "Einstellungen werden gespeichert...",
- "Selected file is not a .pad file.": "Ausgewählte Datei ist keine .pad-Datei.",
- "Selected parent folder is not writable.": "Ausgewählter Zielordner ist nicht beschreibbar.",
- "Settings saved.": "Einstellungen gespeichert.",
- "Sync interval must be between 5 and 3600 seconds.": "Das Intervall muss zwischen 5 und 3600 Sekunden liegen.",
- "Template file not found.": "Vorlagendatei nicht gefunden.",
- "Test Etherpad connection": "Etherpad-Verbindung testen",
- "Test fault cleared.": "Testfehler zurückgesetzt.",
- "Test fault set: {fault}": "Testfehler gesetzt: {fault}",
- "Test faults are available only when Nextcloud debug mode is enabled.": "Testfehler sind nur verfügbar, wenn der Nextcloud-Debug-Modus aktiviert ist.",
- "Testing Etherpad connection...": "Etherpad-Verbindung wird geprüft...",
- "This .pad file has no matching pad in this Nextcloud.": "Für diese .pad-Datei existiert in dieser Nextcloud kein passendes Pad.",
- "This file looks like a copy of an existing .pad file in your account. Open the original to keep editing the linked pad, or create a new pad to fork the content stored in this file.": "Diese Datei sieht aus wie eine Kopie einer bereits vorhandenen .pad-Datei in deinem Konto. Öffne das Original, um am verknüpften Pad weiterzuarbeiten, oder erstelle aus dem in dieser Datei gespeicherten Inhalt ein neues Pad als eigene Kopie.",
- "Trusted embed origins (optional)": "Vertrauenswürdige Embed-Origins (optional)",
- "Unknown error.": "Unbekannter Fehler.",
- "Unsupported test fault.": "Nicht unterstützter Testfehler.",
- "We couldn't find a matching pad in this Nextcloud. You can create a new pad from the text stored in this file; from then on, opening this file will load the new pad.": "Wir konnten in dieser Nextcloud kein zugehöriges Pad finden. Du kannst aus dem in dieser Datei gespeicherten Text ein neues Pad erstellen; ab dann öffnet diese Datei das neue Pad."
-},
- "nplurals=2; plural=(n != 1);"
-);
diff --git a/l10n/de_DE.json b/l10n/de_DE.json
deleted file mode 100644
index d8630a2..0000000
--- a/l10n/de_DE.json
+++ /dev/null
@@ -1,137 +0,0 @@
-{
- "translations": {
- ".pad file not found.": ".pad-Datei nicht gefunden.",
- ".pad file sync interval (seconds)": ".pad-Datei-Synchronisierungsintervall (Sekunden)",
- "A file with this name already exists.": "Eine Datei mit diesem Namen existiert bereits.",
- "Absolute https origins allowed to embed the /embed/by-id and /embed/create-by-parent routes. Leave empty to disable external embedding.": "Absolute HTTPS-Origins, die die Routen /embed/by-id und /embed/create-by-parent einbetten dürfen. Leer lassen, um externes Einbetten zu deaktivieren.",
- "Add trusted Etherpad hostnames or HTTPS origins. Leave empty only if all public HTTPS hosts should be trusted.": "Vertrauenswürdige Etherpad-Hostnamen oder HTTPS-Ursprünge eintragen. Nur leer lassen, wenn alle öffentlichen HTTPS-Hosts vertrauenswürdig sein sollen.",
- "Admin permissions required.": "Administratorrechte erforderlich.",
- "Allow linking external public pads": "Verlinken externer öffentlicher Pads erlauben",
- "Authentication required.": "Authentifizierung erforderlich.",
- "Auto-filled from the Nextcloud and Etherpad hosts when possible. Adjust it if your deployment uses a proxy path or a different trusted parent domain; leave empty for a host-only cookie.": "Wird, wenn möglich, automatisch aus den Nextcloud- und Etherpad-Hosts abgeleitet. Anpassen, wenn die Installation einen Proxy-Pfad oder eine andere vertrauenswürdige Parent-Domain nutzt; leer lassen für ein Host-only-Cookie.",
- "Back": "Zurück",
- "Cannot open selected .pad file.": "Ausgewählte .pad-Datei konnte nicht geöffnet werden.",
- "Cannot read selected .pad file.": "Ausgewählte .pad-Datei konnte nicht gelesen werden.",
- "Cannot resolve file path for file ID.": "Dateipfad zur Datei-ID konnte nicht ermittelt werden.",
- "Cannot resolve selected .pad file.": "Ausgewählte .pad-Datei konnte nicht aufgelöst werden.",
- "Cannot resolve selected parent folder.": "Ausgewählter Zielordner konnte nicht aufgelöst werden.",
- "Checking for the original pad...": "Suche nach dem Original-Pad ...",
- "Close": "Schließen",
- "Configure the Etherpad server and external pad security policy for the Etherpad Nextcloud app.": "Konfiguriere den Etherpad-Server und die Sicherheitsrichtlinie für externe Pads in der Etherpad-Nextcloud-App.",
- "Consistency check": "Konsistenzprüfung",
- "Consistency check failed.": "Konsistenzprüfung fehlgeschlagen.",
- "Consistency check finished with issues.": "Konsistenzprüfung mit Problemen abgeschlossen.",
- "Consistency check successful.": "Konsistenzprüfung erfolgreich.",
- "Consistency check successful. No issues found.": "Konsistenzprüfung erfolgreich. Keine Probleme gefunden.",
- "Controls how often pad content is copied from Etherpad into the .pad file while the pad is open.": "Steuert, wie oft der Pad-Inhalt aus Etherpad in die .pad-Datei kopiert wird, während das Pad geöffnet ist.",
- "Cookie domain must be a hostname, not a URL.": "Cookie-Domain muss ein Hostname sein, keine URL.",
- "Cookie domain must be a valid shared hostname.": "Cookie-Domain muss ein gültiger gemeinsamer Hostname sein.",
- "Could not check pad sync status.": "Synchronisierungsstatus des Pads konnte nicht ermittelt werden.",
- "Could not create pad": "Pad konnte nicht erstellt werden",
- "Could not create pad from template.": "Pad konnte nicht aus Vorlage erstellt werden.",
- "Could not create pad.": "Pad konnte nicht erstellt werden.",
- "Could not create public pad.": "Öffentliches Pad konnte nicht erstellt werden.",
- "Could not fetch the pad content from the remote server. The new file is empty for now — open the pad in the viewer to populate it.": "Pad-Inhalt konnte nicht vom Remote-Server geladen werden. Die neue Datei ist vorerst leer — öffne das Pad im Viewer, um sie zu befüllen.",
- "Could not import external pad.": "Externes Pad konnte nicht importiert werden.",
- "Could not import public pad URL.": "Öffentliche Pad-URL konnte nicht importiert werden.",
- "Could not initialize .pad file.": ".pad-Datei konnte nicht initialisiert werden.",
- "Could not look up the original pad.": "Original-Pad konnte nicht ermittelt werden.",
- "Could not move pad to trash.": "Pad konnte nicht in den Papierkorb verschoben werden.",
- "Could not open pad": "Pad konnte nicht geöffnet werden",
- "Could not open pad.": "Pad konnte nicht geöffnet werden.",
- "Could not read pad metadata.": "Pad-Metadaten konnten nicht gelesen werden.",
- "Could not recover pad from this file.": "Pad konnte aus dieser Datei nicht wiederhergestellt werden.",
- "Could not resolve .pad file.": ".pad-Datei konnte nicht aufgelöst werden.",
- "Could not restore pad from trash.": "Pad konnte nicht aus dem Papierkorb wiederhergestellt werden.",
- "Could not sync pad content.": "Pad-Inhalt konnte nicht synchronisiert werden.",
- "Create": "Erstellen",
- "Create new pad from this file": "Neues Pad aus dieser Datei erstellen",
- "Creating new pad...": "Neues Pad wird erstellt ...",
- "Creating pad...": "Pad wird erstellt...",
- "Creating...": "Wird erstellt...",
- "Delete linked Etherpad pad when .pad file is moved to trash": "Verknüpftes Etherpad-Pad löschen, wenn die .pad-Datei in den Papierkorb verschoben wird",
- "Detected API version:": "Erkannte API-Version:",
- "Embed configuration is incomplete.": "Embed-Konfiguration ist unvollständig.",
- "Etherpad API URL (optional)": "Etherpad-API-URL (optional)",
- "Etherpad API URL must not include query or fragment.": "Die Etherpad-API-URL darf keinen Query-String und kein Fragment enthalten.",
- "Etherpad API URL must use http or https.": "Die Etherpad-API-URL muss HTTP oder HTTPS verwenden.",
- "Etherpad API key": "Etherpad-API-Schlüssel",
- "Etherpad API key is required.": "Ein Etherpad-API-Schlüssel ist erforderlich.",
- "Etherpad Base URL": "Etherpad-Basis-URL",
- "Etherpad Base URL is required.": "Eine Etherpad-Basis-URL ist erforderlich.",
- "Etherpad Base URL must not include query or fragment.": "Die Etherpad-Basis-URL darf keinen Query-String und kein Fragment enthalten.",
- "Etherpad Base URL must use https.": "Die Etherpad-Basis-URL muss HTTPS verwenden.",
- "Etherpad connection test failed.": "Etherpad-Verbindung konnte nicht geprüft werden.",
- "Etherpad connection test failed: {detail}": "Etherpad-Verbindung konnte nicht geprüft werden: {detail}",
- "Etherpad connection test successful.": "Etherpad-Verbindung erfolgreich geprüft.",
- "Etherpad session cookie domain (optional)": "Etherpad-Session-Cookie-Domain (optional)",
- "External allowlist URL must use https: {host}": "Die externe Allowlist-URL muss HTTPS verwenden: {host}",
- "External allowlist contains invalid host: {host}": "Die externe Allowlist enthält einen ungültigen Host: {host}",
- "External host allowlist (optional)": "Allowlist externer Hosts (optional)",
- "External pad URL": "Externe Pad-URL",
- "External pad URL is required.": "Externe Pad-URL ist erforderlich.",
- "Failed to save settings.": "Einstellungen konnten nicht gespeichert werden.",
- "Failed to update test fault.": "Test-Fehler konnte nicht aktualisiert werden.",
- "File name": "Dateiname",
- "File name is required.": "Dateiname ist erforderlich.",
- "Hint: API endpoint not found. Check the API host and that the configured API version is supported by your Etherpad.": "Hinweis: API-Endpunkt nicht gefunden. Prüfe den API-Host und ob die konfigurierte API-Version von deinem Etherpad unterstützt wird.",
- "Hint: Connection refused. Etherpad does not appear to be running on the configured host and port.": "Hinweis: Verbindung verweigert. Etherpad läuft anscheinend nicht auf dem konfigurierten Host und Port.",
- "Hint: Connection timed out. Check that this server can reach the Etherpad host (firewall, network).": "Hinweis: Zeitüberschreitung bei der Verbindung. Prüfe, ob dieser Server den Etherpad-Host erreichen kann (Firewall, Netzwerk).",
- "Hint: Could not reach Etherpad. Check the API host and that this server can connect to it.": "Hinweis: Etherpad konnte nicht erreicht werden. Prüfe den API-Host und ob dieser Server eine Verbindung herstellen kann.",
- "Hint: Etherpad rejected the API key. Check that the key matches Etherpad's APIKEY.txt.": "Hinweis: Etherpad hat den API-Schlüssel abgelehnt. Prüfe, ob er mit Etherpads APIKEY.txt übereinstimmt.",
- "Hint: Etherpad returned a server error. Check the Etherpad server logs.": "Hinweis: Etherpad hat einen Server-Fehler zurückgegeben. Prüfe die Etherpad-Server-Logs.",
- "Hint: Etherpad returned non-JSON. Likely a reverse proxy or HTML error page in front of the API host.": "Hinweis: Etherpad hat keine JSON-Antwort zurückgegeben. Wahrscheinlich steht ein Reverse-Proxy oder eine HTML-Fehlerseite vor dem API-Host.",
- "Hint: Set \"authenticationMethod\": \"apikey\" in Etherpad's settings.json.": "Hinweis: Setze in Etherpads settings.json \"authenticationMethod\": \"apikey\".",
- "Hint: TLS handshake failed. Check the Etherpad certificate and that the configured URL uses the right scheme.": "Hinweis: TLS-Handshake fehlgeschlagen. Prüfe das Etherpad-Zertifikat und ob die konfigurierte URL das richtige Schema verwendet.",
- "Hint: The configured Etherpad host did not resolve. Check the hostname for typos and that DNS reaches it from this server.": "Hinweis: Der konfigurierte Etherpad-Host konnte nicht aufgelöst werden. Prüfe den Hostnamen auf Tippfehler und ob er von diesem Server per DNS aufgelöst werden kann.",
- "If enabled, moving a .pad file to the trash also deletes the linked Etherpad pad.": "Wenn aktiviert, wird beim Verschieben einer .pad-Datei in den Papierkorb auch das verknüpfte Etherpad-Pad gelöscht.",
- "Invalid Etherpad API URL.": "Ungültige Etherpad-API-URL.",
- "Invalid Etherpad API version format.": "Ungültiges Format für die Etherpad-API-Version.",
- "Invalid Etherpad Base URL.": "Ungültige Etherpad-Basis-URL.",
- "Invalid access mode.": "Ungültiger Zugriffsmodus.",
- "Invalid file ID.": "Ungültige Datei-ID.",
- "Invalid file path.": "Ungültiger Dateipfad.",
- "Invalid input.": "Ungültige Eingabe.",
- "Invalid pad name.": "Ungültiger Pad-Name.",
- "Invalid parent folder ID.": "Ungültige Zielordner-ID.",
- "Loading pad...": "Pad wird geladen...",
- "New pad": "Neues Pad",
- "No synced snapshot is stored in this .pad file yet.": "In dieser .pad-Datei ist noch keine synchronisierte Kopie gespeichert.",
- "Open in Etherpad": "In Etherpad öffnen",
- "Open original pad": "Original-Pad öffnen",
- "Open the original .pad file": "Ursprüngliche .pad-Datei öffnen",
- "Optional internal URL for server-side API calls. Leave empty to use Etherpad Base URL.": "Optionale interne URL für serverseitige API-Aufrufe. Leer lassen, um die Etherpad-Basis-URL zu verwenden.",
- "Pad from another server": "Pad von einem anderen Server",
- "Pad name is required.": "Pad-Name ist erforderlich.",
- "Pads": "Pads",
- "Pending Etherpad deletes": "Ausstehende Etherpad-Löschungen",
- "Pending delete retry failed.": "Wiederholung ausstehender Löschungen fehlgeschlagen.",
- "Pending delete retry finished.": "Wiederholung ausstehender Löschungen abgeschlossen.",
- "Public pad": "Öffentliches Pad",
- "Public pad from URL": "Öffentliches Pad aus URL",
- "Read-only snapshot": "Schreibgeschützte Kopie",
- "Read-only snapshot from the .pad file.": "Schreibgeschützte Kopie aus der .pad-Datei.",
- "Request failed.": "Anfrage fehlgeschlagen.",
- "Retry pending deletes now": "Ausstehende Löschungen jetzt wiederholen",
- "Running consistency check...": "Konsistenzprüfung läuft...",
- "Save settings": "Einstellungen speichern",
- "Saving settings...": "Einstellungen werden gespeichert...",
- "Selected file is not a .pad file.": "Ausgewählte Datei ist keine .pad-Datei.",
- "Selected parent folder is not writable.": "Ausgewählter Zielordner ist nicht beschreibbar.",
- "Settings saved.": "Einstellungen gespeichert.",
- "Sync interval must be between 5 and 3600 seconds.": "Das Intervall muss zwischen 5 und 3600 Sekunden liegen.",
- "Template file not found.": "Vorlagendatei nicht gefunden.",
- "Test Etherpad connection": "Etherpad-Verbindung testen",
- "Test fault cleared.": "Testfehler zurückgesetzt.",
- "Test fault set: {fault}": "Testfehler gesetzt: {fault}",
- "Test faults are available only when Nextcloud debug mode is enabled.": "Testfehler sind nur verfügbar, wenn der Nextcloud-Debug-Modus aktiviert ist.",
- "Testing Etherpad connection...": "Etherpad-Verbindung wird geprüft...",
- "This .pad file has no matching pad in this Nextcloud.": "Für diese .pad-Datei existiert in dieser Nextcloud kein passendes Pad.",
- "This file looks like a copy of an existing .pad file in your account. Open the original to keep editing the linked pad, or create a new pad to fork the content stored in this file.": "Diese Datei sieht aus wie eine Kopie einer bereits vorhandenen .pad-Datei in deinem Konto. Öffne das Original, um am verknüpften Pad weiterzuarbeiten, oder erstelle aus dem in dieser Datei gespeicherten Inhalt ein neues Pad als eigene Kopie.",
- "Trusted embed origins (optional)": "Vertrauenswürdige Embed-Origins (optional)",
- "Unknown error.": "Unbekannter Fehler.",
- "Unsupported test fault.": "Nicht unterstützter Testfehler.",
- "We couldn't find a matching pad in this Nextcloud. You can create a new pad from the text stored in this file; from then on, opening this file will load the new pad.": "Wir konnten in dieser Nextcloud kein zugehöriges Pad finden. Du kannst aus dem in dieser Datei gespeicherten Text ein neues Pad erstellen; ab dann öffnet diese Datei das neue Pad."
- },
- "pluralForm": "nplurals=2; plural=(n != 1);"
-}
diff --git a/l10n/de_DE.php b/l10n/de_DE.php
deleted file mode 100644
index 42f36b4..0000000
--- a/l10n/de_DE.php
+++ /dev/null
@@ -1,138 +0,0 @@
- ".pad-Datei nicht gefunden.",
- ".pad file sync interval (seconds)" => ".pad-Datei-Synchronisierungsintervall (Sekunden)",
- "A file with this name already exists." => "Eine Datei mit diesem Namen existiert bereits.",
- "Absolute https origins allowed to embed the /embed/by-id and /embed/create-by-parent routes. Leave empty to disable external embedding." => "Absolute HTTPS-Origins, die die Routen /embed/by-id und /embed/create-by-parent einbetten dürfen. Leer lassen, um externes Einbetten zu deaktivieren.",
- "Add trusted Etherpad hostnames or HTTPS origins. Leave empty only if all public HTTPS hosts should be trusted." => "Vertrauenswürdige Etherpad-Hostnamen oder HTTPS-Ursprünge eintragen. Nur leer lassen, wenn alle öffentlichen HTTPS-Hosts vertrauenswürdig sein sollen.",
- "Admin permissions required." => "Administratorrechte erforderlich.",
- "Allow linking external public pads" => "Verlinken externer öffentlicher Pads erlauben",
- "Authentication required." => "Authentifizierung erforderlich.",
- "Auto-filled from the Nextcloud and Etherpad hosts when possible. Adjust it if your deployment uses a proxy path or a different trusted parent domain; leave empty for a host-only cookie." => "Wird, wenn möglich, automatisch aus den Nextcloud- und Etherpad-Hosts abgeleitet. Anpassen, wenn die Installation einen Proxy-Pfad oder eine andere vertrauenswürdige Parent-Domain nutzt; leer lassen für ein Host-only-Cookie.",
- "Back" => "Zurück",
- "Cannot open selected .pad file." => "Ausgewählte .pad-Datei konnte nicht geöffnet werden.",
- "Cannot read selected .pad file." => "Ausgewählte .pad-Datei konnte nicht gelesen werden.",
- "Cannot resolve file path for file ID." => "Dateipfad zur Datei-ID konnte nicht ermittelt werden.",
- "Cannot resolve selected .pad file." => "Ausgewählte .pad-Datei konnte nicht aufgelöst werden.",
- "Cannot resolve selected parent folder." => "Ausgewählter Zielordner konnte nicht aufgelöst werden.",
- "Checking for the original pad..." => "Suche nach dem Original-Pad ...",
- "Close" => "Schließen",
- "Configure the Etherpad server and external pad security policy for the Etherpad Nextcloud app." => "Konfiguriere den Etherpad-Server und die Sicherheitsrichtlinie für externe Pads in der Etherpad-Nextcloud-App.",
- "Consistency check" => "Konsistenzprüfung",
- "Consistency check failed." => "Konsistenzprüfung fehlgeschlagen.",
- "Consistency check finished with issues." => "Konsistenzprüfung mit Problemen abgeschlossen.",
- "Consistency check successful." => "Konsistenzprüfung erfolgreich.",
- "Consistency check successful. No issues found." => "Konsistenzprüfung erfolgreich. Keine Probleme gefunden.",
- "Controls how often pad content is copied from Etherpad into the .pad file while the pad is open." => "Steuert, wie oft der Pad-Inhalt aus Etherpad in die .pad-Datei kopiert wird, während das Pad geöffnet ist.",
- "Cookie domain must be a hostname, not a URL." => "Cookie-Domain muss ein Hostname sein, keine URL.",
- "Cookie domain must be a valid shared hostname." => "Cookie-Domain muss ein gültiger gemeinsamer Hostname sein.",
- "Could not check pad sync status." => "Synchronisierungsstatus des Pads konnte nicht ermittelt werden.",
- "Could not create pad" => "Pad konnte nicht erstellt werden",
- "Could not create pad from template." => "Pad konnte nicht aus Vorlage erstellt werden.",
- "Could not create pad." => "Pad konnte nicht erstellt werden.",
- "Could not create public pad." => "Öffentliches Pad konnte nicht erstellt werden.",
- "Could not fetch the pad content from the remote server. The new file is empty for now — open the pad in the viewer to populate it." => "Pad-Inhalt konnte nicht vom Remote-Server geladen werden. Die neue Datei ist vorerst leer — öffne das Pad im Viewer, um sie zu befüllen.",
- "Could not import external pad." => "Externes Pad konnte nicht importiert werden.",
- "Could not import public pad URL." => "Öffentliche Pad-URL konnte nicht importiert werden.",
- "Could not initialize .pad file." => ".pad-Datei konnte nicht initialisiert werden.",
- "Could not look up the original pad." => "Original-Pad konnte nicht ermittelt werden.",
- "Could not move pad to trash." => "Pad konnte nicht in den Papierkorb verschoben werden.",
- "Could not open pad" => "Pad konnte nicht geöffnet werden",
- "Could not open pad." => "Pad konnte nicht geöffnet werden.",
- "Could not read pad metadata." => "Pad-Metadaten konnten nicht gelesen werden.",
- "Could not recover pad from this file." => "Pad konnte aus dieser Datei nicht wiederhergestellt werden.",
- "Could not resolve .pad file." => ".pad-Datei konnte nicht aufgelöst werden.",
- "Could not restore pad from trash." => "Pad konnte nicht aus dem Papierkorb wiederhergestellt werden.",
- "Could not sync pad content." => "Pad-Inhalt konnte nicht synchronisiert werden.",
- "Create" => "Erstellen",
- "Create new pad from this file" => "Neues Pad aus dieser Datei erstellen",
- "Creating new pad..." => "Neues Pad wird erstellt ...",
- "Creating pad..." => "Pad wird erstellt...",
- "Creating..." => "Wird erstellt...",
- "Delete linked Etherpad pad when .pad file is moved to trash" => "Verknüpftes Etherpad-Pad löschen, wenn die .pad-Datei in den Papierkorb verschoben wird",
- "Detected API version:" => "Erkannte API-Version:",
- "Embed configuration is incomplete." => "Embed-Konfiguration ist unvollständig.",
- "Etherpad API URL (optional)" => "Etherpad-API-URL (optional)",
- "Etherpad API URL must not include query or fragment." => "Die Etherpad-API-URL darf keinen Query-String und kein Fragment enthalten.",
- "Etherpad API URL must use http or https." => "Die Etherpad-API-URL muss HTTP oder HTTPS verwenden.",
- "Etherpad API key" => "Etherpad-API-Schlüssel",
- "Etherpad API key is required." => "Ein Etherpad-API-Schlüssel ist erforderlich.",
- "Etherpad Base URL" => "Etherpad-Basis-URL",
- "Etherpad Base URL is required." => "Eine Etherpad-Basis-URL ist erforderlich.",
- "Etherpad Base URL must not include query or fragment." => "Die Etherpad-Basis-URL darf keinen Query-String und kein Fragment enthalten.",
- "Etherpad Base URL must use https." => "Die Etherpad-Basis-URL muss HTTPS verwenden.",
- "Etherpad connection test failed." => "Etherpad-Verbindung konnte nicht geprüft werden.",
- "Etherpad connection test failed: {detail}" => "Etherpad-Verbindung konnte nicht geprüft werden: {detail}",
- "Etherpad connection test successful." => "Etherpad-Verbindung erfolgreich geprüft.",
- "Etherpad session cookie domain (optional)" => "Etherpad-Session-Cookie-Domain (optional)",
- "External allowlist URL must use https: {host}" => "Die externe Allowlist-URL muss HTTPS verwenden: {host}",
- "External allowlist contains invalid host: {host}" => "Die externe Allowlist enthält einen ungültigen Host: {host}",
- "External host allowlist (optional)" => "Allowlist externer Hosts (optional)",
- "External pad URL" => "Externe Pad-URL",
- "External pad URL is required." => "Externe Pad-URL ist erforderlich.",
- "Failed to save settings." => "Einstellungen konnten nicht gespeichert werden.",
- "Failed to update test fault." => "Test-Fehler konnte nicht aktualisiert werden.",
- "File name" => "Dateiname",
- "File name is required." => "Dateiname ist erforderlich.",
- "Hint: API endpoint not found. Check the API host and that the configured API version is supported by your Etherpad." => "Hinweis: API-Endpunkt nicht gefunden. Prüfe den API-Host und ob die konfigurierte API-Version von deinem Etherpad unterstützt wird.",
- "Hint: Connection refused. Etherpad does not appear to be running on the configured host and port." => "Hinweis: Verbindung verweigert. Etherpad läuft anscheinend nicht auf dem konfigurierten Host und Port.",
- "Hint: Connection timed out. Check that this server can reach the Etherpad host (firewall, network)." => "Hinweis: Zeitüberschreitung bei der Verbindung. Prüfe, ob dieser Server den Etherpad-Host erreichen kann (Firewall, Netzwerk).",
- "Hint: Could not reach Etherpad. Check the API host and that this server can connect to it." => "Hinweis: Etherpad konnte nicht erreicht werden. Prüfe den API-Host und ob dieser Server eine Verbindung herstellen kann.",
- "Hint: Etherpad rejected the API key. Check that the key matches Etherpad's APIKEY.txt." => "Hinweis: Etherpad hat den API-Schlüssel abgelehnt. Prüfe, ob er mit Etherpads APIKEY.txt übereinstimmt.",
- "Hint: Etherpad returned a server error. Check the Etherpad server logs." => "Hinweis: Etherpad hat einen Server-Fehler zurückgegeben. Prüfe die Etherpad-Server-Logs.",
- "Hint: Etherpad returned non-JSON. Likely a reverse proxy or HTML error page in front of the API host." => "Hinweis: Etherpad hat keine JSON-Antwort zurückgegeben. Wahrscheinlich steht ein Reverse-Proxy oder eine HTML-Fehlerseite vor dem API-Host.",
- "Hint: Set \"authenticationMethod\": \"apikey\" in Etherpad's settings.json." => "Hinweis: Setze in Etherpads settings.json \"authenticationMethod\": \"apikey\".",
- "Hint: TLS handshake failed. Check the Etherpad certificate and that the configured URL uses the right scheme." => "Hinweis: TLS-Handshake fehlgeschlagen. Prüfe das Etherpad-Zertifikat und ob die konfigurierte URL das richtige Schema verwendet.",
- "Hint: The configured Etherpad host did not resolve. Check the hostname for typos and that DNS reaches it from this server." => "Hinweis: Der konfigurierte Etherpad-Host konnte nicht aufgelöst werden. Prüfe den Hostnamen auf Tippfehler und ob er von diesem Server per DNS aufgelöst werden kann.",
- "If enabled, moving a .pad file to the trash also deletes the linked Etherpad pad." => "Wenn aktiviert, wird beim Verschieben einer .pad-Datei in den Papierkorb auch das verknüpfte Etherpad-Pad gelöscht.",
- "Invalid Etherpad API URL." => "Ungültige Etherpad-API-URL.",
- "Invalid Etherpad API version format." => "Ungültiges Format für die Etherpad-API-Version.",
- "Invalid Etherpad Base URL." => "Ungültige Etherpad-Basis-URL.",
- "Invalid access mode." => "Ungültiger Zugriffsmodus.",
- "Invalid file ID." => "Ungültige Datei-ID.",
- "Invalid file path." => "Ungültiger Dateipfad.",
- "Invalid input." => "Ungültige Eingabe.",
- "Invalid pad name." => "Ungültiger Pad-Name.",
- "Invalid parent folder ID." => "Ungültige Zielordner-ID.",
- "Loading pad..." => "Pad wird geladen...",
- "New pad" => "Neues Pad",
- "No synced snapshot is stored in this .pad file yet." => "In dieser .pad-Datei ist noch keine synchronisierte Kopie gespeichert.",
- "Open in Etherpad" => "In Etherpad öffnen",
- "Open original pad" => "Original-Pad öffnen",
- "Open the original .pad file" => "Ursprüngliche .pad-Datei öffnen",
- "Optional internal URL for server-side API calls. Leave empty to use Etherpad Base URL." => "Optionale interne URL für serverseitige API-Aufrufe. Leer lassen, um die Etherpad-Basis-URL zu verwenden.",
- "Pad from another server" => "Pad von einem anderen Server",
- "Pad name is required." => "Pad-Name ist erforderlich.",
- "Pads" => "Pads",
- "Pending Etherpad deletes" => "Ausstehende Etherpad-Löschungen",
- "Pending delete retry failed." => "Wiederholung ausstehender Löschungen fehlgeschlagen.",
- "Pending delete retry finished." => "Wiederholung ausstehender Löschungen abgeschlossen.",
- "Public pad" => "Öffentliches Pad",
- "Public pad from URL" => "Öffentliches Pad aus URL",
- "Read-only snapshot" => "Schreibgeschützte Kopie",
- "Read-only snapshot from the .pad file." => "Schreibgeschützte Kopie aus der .pad-Datei.",
- "Request failed." => "Anfrage fehlgeschlagen.",
- "Retry pending deletes now" => "Ausstehende Löschungen jetzt wiederholen",
- "Running consistency check..." => "Konsistenzprüfung läuft...",
- "Save settings" => "Einstellungen speichern",
- "Saving settings..." => "Einstellungen werden gespeichert...",
- "Selected file is not a .pad file." => "Ausgewählte Datei ist keine .pad-Datei.",
- "Selected parent folder is not writable." => "Ausgewählter Zielordner ist nicht beschreibbar.",
- "Settings saved." => "Einstellungen gespeichert.",
- "Sync interval must be between 5 and 3600 seconds." => "Das Intervall muss zwischen 5 und 3600 Sekunden liegen.",
- "Template file not found." => "Vorlagendatei nicht gefunden.",
- "Test Etherpad connection" => "Etherpad-Verbindung testen",
- "Test fault cleared." => "Testfehler zurückgesetzt.",
- "Test fault set: {fault}" => "Testfehler gesetzt: {fault}",
- "Test faults are available only when Nextcloud debug mode is enabled." => "Testfehler sind nur verfügbar, wenn der Nextcloud-Debug-Modus aktiviert ist.",
- "Testing Etherpad connection..." => "Etherpad-Verbindung wird geprüft...",
- "This .pad file has no matching pad in this Nextcloud." => "Für diese .pad-Datei existiert in dieser Nextcloud kein passendes Pad.",
- "This file looks like a copy of an existing .pad file in your account. Open the original to keep editing the linked pad, or create a new pad to fork the content stored in this file." => "Diese Datei sieht aus wie eine Kopie einer bereits vorhandenen .pad-Datei in deinem Konto. Öffne das Original, um am verknüpften Pad weiterzuarbeiten, oder erstelle aus dem in dieser Datei gespeicherten Inhalt ein neues Pad als eigene Kopie.",
- "Trusted embed origins (optional)" => "Vertrauenswürdige Embed-Origins (optional)",
- "Unknown error." => "Unbekannter Fehler.",
- "Unsupported test fault." => "Nicht unterstützter Testfehler.",
- "We couldn't find a matching pad in this Nextcloud. You can create a new pad from the text stored in this file; from then on, opening this file will load the new pad." => "Wir konnten in dieser Nextcloud kein zugehöriges Pad finden. Du kannst aus dem in dieser Datei gespeicherten Text ein neues Pad erstellen; ab dann öffnet diese Datei das neue Pad.",
-];
-
-$PLURAL_FORMS = "nplurals=2; plural=(n != 1);";
From 66ad20d163bf8aa93f3937c55818ccf8c2ddba08 Mon Sep 17 00:00:00 2001
From: Jaggob <37583151+Jaggob@users.noreply.github.com>
Date: Wed, 27 May 2026 12:55:06 +0200
Subject: [PATCH 08/13] i18n: drop legacy .php locale files
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Nextcloud's developer manual lists only .json + .js as the required
l10n formats ('you then just need the .json and .js files for a
working localized app'), and the official translationtool only
emits those two. The .php variant is a legacy artefact that no
current code path needs — IL10N reads the JSON. Removing six files
that would only drift if kept.
---
l10n/de.php | 138 ----------------------------------------------------
l10n/es.php | 138 ----------------------------------------------------
l10n/fr.php | 138 ----------------------------------------------------
3 files changed, 414 deletions(-)
delete mode 100644 l10n/de.php
delete mode 100644 l10n/es.php
delete mode 100644 l10n/fr.php
diff --git a/l10n/de.php b/l10n/de.php
deleted file mode 100644
index 42f36b4..0000000
--- a/l10n/de.php
+++ /dev/null
@@ -1,138 +0,0 @@
- ".pad-Datei nicht gefunden.",
- ".pad file sync interval (seconds)" => ".pad-Datei-Synchronisierungsintervall (Sekunden)",
- "A file with this name already exists." => "Eine Datei mit diesem Namen existiert bereits.",
- "Absolute https origins allowed to embed the /embed/by-id and /embed/create-by-parent routes. Leave empty to disable external embedding." => "Absolute HTTPS-Origins, die die Routen /embed/by-id und /embed/create-by-parent einbetten dürfen. Leer lassen, um externes Einbetten zu deaktivieren.",
- "Add trusted Etherpad hostnames or HTTPS origins. Leave empty only if all public HTTPS hosts should be trusted." => "Vertrauenswürdige Etherpad-Hostnamen oder HTTPS-Ursprünge eintragen. Nur leer lassen, wenn alle öffentlichen HTTPS-Hosts vertrauenswürdig sein sollen.",
- "Admin permissions required." => "Administratorrechte erforderlich.",
- "Allow linking external public pads" => "Verlinken externer öffentlicher Pads erlauben",
- "Authentication required." => "Authentifizierung erforderlich.",
- "Auto-filled from the Nextcloud and Etherpad hosts when possible. Adjust it if your deployment uses a proxy path or a different trusted parent domain; leave empty for a host-only cookie." => "Wird, wenn möglich, automatisch aus den Nextcloud- und Etherpad-Hosts abgeleitet. Anpassen, wenn die Installation einen Proxy-Pfad oder eine andere vertrauenswürdige Parent-Domain nutzt; leer lassen für ein Host-only-Cookie.",
- "Back" => "Zurück",
- "Cannot open selected .pad file." => "Ausgewählte .pad-Datei konnte nicht geöffnet werden.",
- "Cannot read selected .pad file." => "Ausgewählte .pad-Datei konnte nicht gelesen werden.",
- "Cannot resolve file path for file ID." => "Dateipfad zur Datei-ID konnte nicht ermittelt werden.",
- "Cannot resolve selected .pad file." => "Ausgewählte .pad-Datei konnte nicht aufgelöst werden.",
- "Cannot resolve selected parent folder." => "Ausgewählter Zielordner konnte nicht aufgelöst werden.",
- "Checking for the original pad..." => "Suche nach dem Original-Pad ...",
- "Close" => "Schließen",
- "Configure the Etherpad server and external pad security policy for the Etherpad Nextcloud app." => "Konfiguriere den Etherpad-Server und die Sicherheitsrichtlinie für externe Pads in der Etherpad-Nextcloud-App.",
- "Consistency check" => "Konsistenzprüfung",
- "Consistency check failed." => "Konsistenzprüfung fehlgeschlagen.",
- "Consistency check finished with issues." => "Konsistenzprüfung mit Problemen abgeschlossen.",
- "Consistency check successful." => "Konsistenzprüfung erfolgreich.",
- "Consistency check successful. No issues found." => "Konsistenzprüfung erfolgreich. Keine Probleme gefunden.",
- "Controls how often pad content is copied from Etherpad into the .pad file while the pad is open." => "Steuert, wie oft der Pad-Inhalt aus Etherpad in die .pad-Datei kopiert wird, während das Pad geöffnet ist.",
- "Cookie domain must be a hostname, not a URL." => "Cookie-Domain muss ein Hostname sein, keine URL.",
- "Cookie domain must be a valid shared hostname." => "Cookie-Domain muss ein gültiger gemeinsamer Hostname sein.",
- "Could not check pad sync status." => "Synchronisierungsstatus des Pads konnte nicht ermittelt werden.",
- "Could not create pad" => "Pad konnte nicht erstellt werden",
- "Could not create pad from template." => "Pad konnte nicht aus Vorlage erstellt werden.",
- "Could not create pad." => "Pad konnte nicht erstellt werden.",
- "Could not create public pad." => "Öffentliches Pad konnte nicht erstellt werden.",
- "Could not fetch the pad content from the remote server. The new file is empty for now — open the pad in the viewer to populate it." => "Pad-Inhalt konnte nicht vom Remote-Server geladen werden. Die neue Datei ist vorerst leer — öffne das Pad im Viewer, um sie zu befüllen.",
- "Could not import external pad." => "Externes Pad konnte nicht importiert werden.",
- "Could not import public pad URL." => "Öffentliche Pad-URL konnte nicht importiert werden.",
- "Could not initialize .pad file." => ".pad-Datei konnte nicht initialisiert werden.",
- "Could not look up the original pad." => "Original-Pad konnte nicht ermittelt werden.",
- "Could not move pad to trash." => "Pad konnte nicht in den Papierkorb verschoben werden.",
- "Could not open pad" => "Pad konnte nicht geöffnet werden",
- "Could not open pad." => "Pad konnte nicht geöffnet werden.",
- "Could not read pad metadata." => "Pad-Metadaten konnten nicht gelesen werden.",
- "Could not recover pad from this file." => "Pad konnte aus dieser Datei nicht wiederhergestellt werden.",
- "Could not resolve .pad file." => ".pad-Datei konnte nicht aufgelöst werden.",
- "Could not restore pad from trash." => "Pad konnte nicht aus dem Papierkorb wiederhergestellt werden.",
- "Could not sync pad content." => "Pad-Inhalt konnte nicht synchronisiert werden.",
- "Create" => "Erstellen",
- "Create new pad from this file" => "Neues Pad aus dieser Datei erstellen",
- "Creating new pad..." => "Neues Pad wird erstellt ...",
- "Creating pad..." => "Pad wird erstellt...",
- "Creating..." => "Wird erstellt...",
- "Delete linked Etherpad pad when .pad file is moved to trash" => "Verknüpftes Etherpad-Pad löschen, wenn die .pad-Datei in den Papierkorb verschoben wird",
- "Detected API version:" => "Erkannte API-Version:",
- "Embed configuration is incomplete." => "Embed-Konfiguration ist unvollständig.",
- "Etherpad API URL (optional)" => "Etherpad-API-URL (optional)",
- "Etherpad API URL must not include query or fragment." => "Die Etherpad-API-URL darf keinen Query-String und kein Fragment enthalten.",
- "Etherpad API URL must use http or https." => "Die Etherpad-API-URL muss HTTP oder HTTPS verwenden.",
- "Etherpad API key" => "Etherpad-API-Schlüssel",
- "Etherpad API key is required." => "Ein Etherpad-API-Schlüssel ist erforderlich.",
- "Etherpad Base URL" => "Etherpad-Basis-URL",
- "Etherpad Base URL is required." => "Eine Etherpad-Basis-URL ist erforderlich.",
- "Etherpad Base URL must not include query or fragment." => "Die Etherpad-Basis-URL darf keinen Query-String und kein Fragment enthalten.",
- "Etherpad Base URL must use https." => "Die Etherpad-Basis-URL muss HTTPS verwenden.",
- "Etherpad connection test failed." => "Etherpad-Verbindung konnte nicht geprüft werden.",
- "Etherpad connection test failed: {detail}" => "Etherpad-Verbindung konnte nicht geprüft werden: {detail}",
- "Etherpad connection test successful." => "Etherpad-Verbindung erfolgreich geprüft.",
- "Etherpad session cookie domain (optional)" => "Etherpad-Session-Cookie-Domain (optional)",
- "External allowlist URL must use https: {host}" => "Die externe Allowlist-URL muss HTTPS verwenden: {host}",
- "External allowlist contains invalid host: {host}" => "Die externe Allowlist enthält einen ungültigen Host: {host}",
- "External host allowlist (optional)" => "Allowlist externer Hosts (optional)",
- "External pad URL" => "Externe Pad-URL",
- "External pad URL is required." => "Externe Pad-URL ist erforderlich.",
- "Failed to save settings." => "Einstellungen konnten nicht gespeichert werden.",
- "Failed to update test fault." => "Test-Fehler konnte nicht aktualisiert werden.",
- "File name" => "Dateiname",
- "File name is required." => "Dateiname ist erforderlich.",
- "Hint: API endpoint not found. Check the API host and that the configured API version is supported by your Etherpad." => "Hinweis: API-Endpunkt nicht gefunden. Prüfe den API-Host und ob die konfigurierte API-Version von deinem Etherpad unterstützt wird.",
- "Hint: Connection refused. Etherpad does not appear to be running on the configured host and port." => "Hinweis: Verbindung verweigert. Etherpad läuft anscheinend nicht auf dem konfigurierten Host und Port.",
- "Hint: Connection timed out. Check that this server can reach the Etherpad host (firewall, network)." => "Hinweis: Zeitüberschreitung bei der Verbindung. Prüfe, ob dieser Server den Etherpad-Host erreichen kann (Firewall, Netzwerk).",
- "Hint: Could not reach Etherpad. Check the API host and that this server can connect to it." => "Hinweis: Etherpad konnte nicht erreicht werden. Prüfe den API-Host und ob dieser Server eine Verbindung herstellen kann.",
- "Hint: Etherpad rejected the API key. Check that the key matches Etherpad's APIKEY.txt." => "Hinweis: Etherpad hat den API-Schlüssel abgelehnt. Prüfe, ob er mit Etherpads APIKEY.txt übereinstimmt.",
- "Hint: Etherpad returned a server error. Check the Etherpad server logs." => "Hinweis: Etherpad hat einen Server-Fehler zurückgegeben. Prüfe die Etherpad-Server-Logs.",
- "Hint: Etherpad returned non-JSON. Likely a reverse proxy or HTML error page in front of the API host." => "Hinweis: Etherpad hat keine JSON-Antwort zurückgegeben. Wahrscheinlich steht ein Reverse-Proxy oder eine HTML-Fehlerseite vor dem API-Host.",
- "Hint: Set \"authenticationMethod\": \"apikey\" in Etherpad's settings.json." => "Hinweis: Setze in Etherpads settings.json \"authenticationMethod\": \"apikey\".",
- "Hint: TLS handshake failed. Check the Etherpad certificate and that the configured URL uses the right scheme." => "Hinweis: TLS-Handshake fehlgeschlagen. Prüfe das Etherpad-Zertifikat und ob die konfigurierte URL das richtige Schema verwendet.",
- "Hint: The configured Etherpad host did not resolve. Check the hostname for typos and that DNS reaches it from this server." => "Hinweis: Der konfigurierte Etherpad-Host konnte nicht aufgelöst werden. Prüfe den Hostnamen auf Tippfehler und ob er von diesem Server per DNS aufgelöst werden kann.",
- "If enabled, moving a .pad file to the trash also deletes the linked Etherpad pad." => "Wenn aktiviert, wird beim Verschieben einer .pad-Datei in den Papierkorb auch das verknüpfte Etherpad-Pad gelöscht.",
- "Invalid Etherpad API URL." => "Ungültige Etherpad-API-URL.",
- "Invalid Etherpad API version format." => "Ungültiges Format für die Etherpad-API-Version.",
- "Invalid Etherpad Base URL." => "Ungültige Etherpad-Basis-URL.",
- "Invalid access mode." => "Ungültiger Zugriffsmodus.",
- "Invalid file ID." => "Ungültige Datei-ID.",
- "Invalid file path." => "Ungültiger Dateipfad.",
- "Invalid input." => "Ungültige Eingabe.",
- "Invalid pad name." => "Ungültiger Pad-Name.",
- "Invalid parent folder ID." => "Ungültige Zielordner-ID.",
- "Loading pad..." => "Pad wird geladen...",
- "New pad" => "Neues Pad",
- "No synced snapshot is stored in this .pad file yet." => "In dieser .pad-Datei ist noch keine synchronisierte Kopie gespeichert.",
- "Open in Etherpad" => "In Etherpad öffnen",
- "Open original pad" => "Original-Pad öffnen",
- "Open the original .pad file" => "Ursprüngliche .pad-Datei öffnen",
- "Optional internal URL for server-side API calls. Leave empty to use Etherpad Base URL." => "Optionale interne URL für serverseitige API-Aufrufe. Leer lassen, um die Etherpad-Basis-URL zu verwenden.",
- "Pad from another server" => "Pad von einem anderen Server",
- "Pad name is required." => "Pad-Name ist erforderlich.",
- "Pads" => "Pads",
- "Pending Etherpad deletes" => "Ausstehende Etherpad-Löschungen",
- "Pending delete retry failed." => "Wiederholung ausstehender Löschungen fehlgeschlagen.",
- "Pending delete retry finished." => "Wiederholung ausstehender Löschungen abgeschlossen.",
- "Public pad" => "Öffentliches Pad",
- "Public pad from URL" => "Öffentliches Pad aus URL",
- "Read-only snapshot" => "Schreibgeschützte Kopie",
- "Read-only snapshot from the .pad file." => "Schreibgeschützte Kopie aus der .pad-Datei.",
- "Request failed." => "Anfrage fehlgeschlagen.",
- "Retry pending deletes now" => "Ausstehende Löschungen jetzt wiederholen",
- "Running consistency check..." => "Konsistenzprüfung läuft...",
- "Save settings" => "Einstellungen speichern",
- "Saving settings..." => "Einstellungen werden gespeichert...",
- "Selected file is not a .pad file." => "Ausgewählte Datei ist keine .pad-Datei.",
- "Selected parent folder is not writable." => "Ausgewählter Zielordner ist nicht beschreibbar.",
- "Settings saved." => "Einstellungen gespeichert.",
- "Sync interval must be between 5 and 3600 seconds." => "Das Intervall muss zwischen 5 und 3600 Sekunden liegen.",
- "Template file not found." => "Vorlagendatei nicht gefunden.",
- "Test Etherpad connection" => "Etherpad-Verbindung testen",
- "Test fault cleared." => "Testfehler zurückgesetzt.",
- "Test fault set: {fault}" => "Testfehler gesetzt: {fault}",
- "Test faults are available only when Nextcloud debug mode is enabled." => "Testfehler sind nur verfügbar, wenn der Nextcloud-Debug-Modus aktiviert ist.",
- "Testing Etherpad connection..." => "Etherpad-Verbindung wird geprüft...",
- "This .pad file has no matching pad in this Nextcloud." => "Für diese .pad-Datei existiert in dieser Nextcloud kein passendes Pad.",
- "This file looks like a copy of an existing .pad file in your account. Open the original to keep editing the linked pad, or create a new pad to fork the content stored in this file." => "Diese Datei sieht aus wie eine Kopie einer bereits vorhandenen .pad-Datei in deinem Konto. Öffne das Original, um am verknüpften Pad weiterzuarbeiten, oder erstelle aus dem in dieser Datei gespeicherten Inhalt ein neues Pad als eigene Kopie.",
- "Trusted embed origins (optional)" => "Vertrauenswürdige Embed-Origins (optional)",
- "Unknown error." => "Unbekannter Fehler.",
- "Unsupported test fault." => "Nicht unterstützter Testfehler.",
- "We couldn't find a matching pad in this Nextcloud. You can create a new pad from the text stored in this file; from then on, opening this file will load the new pad." => "Wir konnten in dieser Nextcloud kein zugehöriges Pad finden. Du kannst aus dem in dieser Datei gespeicherten Text ein neues Pad erstellen; ab dann öffnet diese Datei das neue Pad.",
-];
-
-$PLURAL_FORMS = "nplurals=2; plural=(n != 1);";
diff --git a/l10n/es.php b/l10n/es.php
deleted file mode 100644
index 1ac068c..0000000
--- a/l10n/es.php
+++ /dev/null
@@ -1,138 +0,0 @@
- "No se ha encontrado el archivo .pad.",
- ".pad file sync interval (seconds)" => "Intervalo de sincronización del archivo .pad (segundos)",
- "A file with this name already exists." => "Ya existe un archivo con este nombre.",
- "Absolute https origins allowed to embed the /embed/by-id and /embed/create-by-parent routes. Leave empty to disable external embedding." => "Orígenes HTTPS absolutos permitidos para incrustar las rutas /embed/by-id y /embed/create-by-parent. Déjalo vacío para desactivar la incrustación externa.",
- "Add trusted Etherpad hostnames or HTTPS origins. Leave empty only if all public HTTPS hosts should be trusted." => "Agrega nombres de host de Etherpad u orígenes HTTPS de confianza. Déjalo vacío solo si se debe confiar en todos los hosts HTTPS públicos.",
- "Admin permissions required." => "Se requieren permisos de administrador.",
- "Allow linking external public pads" => "Permitir enlazar pads publicos externos",
- "Authentication required." => "Autenticacion requerida.",
- "Auto-filled from the Nextcloud and Etherpad hosts when possible. Adjust it if your deployment uses a proxy path or a different trusted parent domain; leave empty for a host-only cookie." => "Se completa automaticamente desde los hosts de Nextcloud y Etherpad cuando es posible. Ajustalo si la instalacion usa una ruta de proxy u otro dominio padre de confianza; deja vacio para una cookie solo de host.",
- "Back" => "Atrás",
- "Cannot open selected .pad file." => "No se puede abrir el archivo .pad seleccionado.",
- "Cannot read selected .pad file." => "No se puede leer el archivo .pad seleccionado.",
- "Cannot resolve file path for file ID." => "No se puede resolver la ruta del archivo para el ID del archivo.",
- "Cannot resolve selected .pad file." => "No se puede resolver el archivo .pad seleccionado.",
- "Cannot resolve selected parent folder." => "No se puede resolver la carpeta principal seleccionada.",
- "Checking for the original pad..." => "Buscando el pad original...",
- "Close" => "Cerrar",
- "Configure the Etherpad server and external pad security policy for the Etherpad Nextcloud app." => "Configura el servidor de Etherpad y la política de seguridad para pads externos en la aplicación Etherpad Nextcloud.",
- "Consistency check" => "Comprobacion de consistencia",
- "Consistency check failed." => "La comprobacion de consistencia fallo.",
- "Consistency check finished with issues." => "Comprobacion de consistencia finalizada con problemas.",
- "Consistency check successful." => "Comprobacion de consistencia correcta.",
- "Consistency check successful. No issues found." => "Comprobacion de consistencia correcta. No se encontraron problemas.",
- "Controls how often pad content is copied from Etherpad into the .pad file while the pad is open." => "Controla con que frecuencia se copia el contenido del pad desde Etherpad al archivo .pad mientras el pad esta abierto.",
- "Cookie domain must be a hostname, not a URL." => "El dominio de la cookie debe ser un nombre de host, no una URL.",
- "Cookie domain must be a valid shared hostname." => "El dominio de la cookie debe ser un nombre de host compartido válido.",
- "Could not check pad sync status." => "No se pudo comprobar el estado de sincronización del pad.",
- "Could not create pad" => "No se pudo crear el pad",
- "Could not create pad from template." => "No se pudo crear el pad desde la plantilla.",
- "Could not create pad." => "No se pudo crear el pad.",
- "Could not create public pad." => "No se pudo crear el pad público.",
- "Could not fetch the pad content from the remote server. The new file is empty for now — open the pad in the viewer to populate it." => "No se pudo obtener el contenido del pad desde el servidor remoto. El nuevo archivo está vacío por ahora — abre el pad en el visor para rellenarlo.",
- "Could not import external pad." => "No se pudo importar el pad externo.",
- "Could not import public pad URL." => "No se pudo importar la URL del pad público.",
- "Could not initialize .pad file." => "No se ha podido inicializar el archivo .pad.",
- "Could not look up the original pad." => "No se pudo localizar el pad original.",
- "Could not move pad to trash." => "No se pudo mover el pad a la papelera.",
- "Could not open pad" => "No se pudo abrir el pad",
- "Could not open pad." => "No se pudo abrir el pad.",
- "Could not read pad metadata." => "No se pudieron leer los metadatos del pad.",
- "Could not recover pad from this file." => "No se pudo recuperar el pad de este archivo.",
- "Could not resolve .pad file." => "No se ha podido resolver el archivo .pad.",
- "Could not restore pad from trash." => "No se pudo restaurar el pad de la papelera.",
- "Could not sync pad content." => "No se pudo sincronizar el contenido del pad.",
- "Create" => "Crear",
- "Create new pad from this file" => "Crear nuevo pad a partir de este archivo",
- "Creating new pad..." => "Creando nuevo pad...",
- "Creating pad..." => "Creando pad...",
- "Creating..." => "Creando...",
- "Delete linked Etherpad pad when .pad file is moved to trash" => "Eliminar el pad de Etherpad enlazado cuando el archivo .pad se mueve a la papelera",
- "Detected API version:" => "Version de API detectada:",
- "Embed configuration is incomplete." => "La configuración de incrustación está incompleta.",
- "Etherpad API URL (optional)" => "URL de API de Etherpad (opcional)",
- "Etherpad API URL must not include query or fragment." => "La URL API de Etherpad no debe incluir cadena de consulta ni fragmento.",
- "Etherpad API URL must use http or https." => "La URL API de Etherpad debe usar HTTP o HTTPS.",
- "Etherpad API key" => "Clave API de Etherpad",
- "Etherpad API key is required." => "La clave API de Etherpad es obligatoria.",
- "Etherpad Base URL" => "URL base de Etherpad",
- "Etherpad Base URL is required." => "La URL base de Etherpad es obligatoria.",
- "Etherpad Base URL must not include query or fragment." => "La URL base de Etherpad no debe incluir cadena de consulta ni fragmento.",
- "Etherpad Base URL must use https." => "La URL base de Etherpad debe usar HTTPS.",
- "Etherpad connection test failed." => "No se pudo comprobar la conexión con Etherpad.",
- "Etherpad connection test failed: {detail}" => "No se pudo comprobar la conexión con Etherpad: {detail}",
- "Etherpad connection test successful." => "Conexión con Etherpad comprobada correctamente.",
- "Etherpad session cookie domain (optional)" => "Dominio de cookie de sesion de Etherpad (opcional)",
- "External allowlist URL must use https: {host}" => "La URL de la lista de permitidos externa debe usar HTTPS: {host}",
- "External allowlist contains invalid host: {host}" => "La lista de permitidos externa contiene un host no valido: {host}",
- "External host allowlist (optional)" => "Lista de hosts externos permitidos (opcional)",
- "External pad URL" => "URL de pad externo",
- "External pad URL is required." => "La URL de pad externo es obligatoria.",
- "Failed to save settings." => "No se han podido guardar los ajustes.",
- "Failed to update test fault." => "No se pudo actualizar el fallo de prueba.",
- "File name" => "Nombre de archivo",
- "File name is required." => "El nombre de archivo es obligatorio.",
- "Hint: API endpoint not found. Check the API host and that the configured API version is supported by your Etherpad." => "Sugerencia: punto de acceso de la API no encontrado. Comprueba el host de la API y que la versión configurada sea compatible con tu Etherpad.",
- "Hint: Connection refused. Etherpad does not appear to be running on the configured host and port." => "Sugerencia: conexión rechazada. Etherpad no parece estar ejecutándose en el host y puerto configurados.",
- "Hint: Connection timed out. Check that this server can reach the Etherpad host (firewall, network)." => "Sugerencia: tiempo de conexión agotado. Comprueba que este servidor pueda acceder al host de Etherpad (cortafuegos, red).",
- "Hint: Could not reach Etherpad. Check the API host and that this server can connect to it." => "Sugerencia: no se pudo contactar con Etherpad. Comprueba el host de la API y que este servidor pueda conectarse a él.",
- "Hint: Etherpad rejected the API key. Check that the key matches Etherpad's APIKEY.txt." => "Sugerencia: Etherpad rechazó la clave de API. Comprueba que la clave coincida con APIKEY.txt de Etherpad.",
- "Hint: Etherpad returned a server error. Check the Etherpad server logs." => "Sugerencia: Etherpad devolvió un error de servidor. Comprueba los registros del servidor de Etherpad.",
- "Hint: Etherpad returned non-JSON. Likely a reverse proxy or HTML error page in front of the API host." => "Sugerencia: Etherpad devolvió contenido no JSON. Probablemente un proxy inverso o una página HTML de error delante del host de la API.",
- "Hint: Set \"authenticationMethod\": \"apikey\" in Etherpad's settings.json." => "Sugerencia: establece \"authenticationMethod\": \"apikey\" en settings.json de Etherpad.",
- "Hint: TLS handshake failed. Check the Etherpad certificate and that the configured URL uses the right scheme." => "Sugerencia: el establecimiento de la conexión TLS falló. Comprueba el certificado de Etherpad y que la URL configurada use el esquema correcto.",
- "Hint: The configured Etherpad host did not resolve. Check the hostname for typos and that DNS reaches it from this server." => "Sugerencia: el host de Etherpad configurado no se resolvió. Comprueba el nombre del host por erratas y que el DNS llegue a él desde este servidor.",
- "If enabled, moving a .pad file to the trash also deletes the linked Etherpad pad." => "Si está activado, al mover un archivo .pad a la papelera también se elimina el pad de Etherpad enlazado.",
- "Invalid Etherpad API URL." => "URL API de Etherpad no valida.",
- "Invalid Etherpad API version format." => "Formato de version de API de Etherpad no valido.",
- "Invalid Etherpad Base URL." => "URL base de Etherpad no valida.",
- "Invalid access mode." => "Modo de acceso no válido.",
- "Invalid file ID." => "ID de archivo no válido.",
- "Invalid file path." => "Ruta de archivo no válida.",
- "Invalid input." => "Entrada no válida.",
- "Invalid pad name." => "Nombre de pad no válido.",
- "Invalid parent folder ID." => "ID de carpeta principal no válido.",
- "Loading pad..." => "Cargando pad...",
- "New pad" => "Nuevo pad",
- "No synced snapshot is stored in this .pad file yet." => "Aún no hay ninguna copia sincronizada almacenada en este archivo .pad.",
- "Open in Etherpad" => "Abrir en Etherpad",
- "Open original pad" => "Abrir pad original",
- "Open the original .pad file" => "Abrir el archivo .pad original",
- "Optional internal URL for server-side API calls. Leave empty to use Etherpad Base URL." => "URL interna opcional para llamadas a la API del lado del servidor. Déjala vacía para usar la URL base de Etherpad.",
- "Pad from another server" => "Pad de otro servidor",
- "Pad name is required." => "Se requiere el nombre del pad.",
- "Pads" => "Pads",
- "Pending Etherpad deletes" => "Eliminaciones pendientes en Etherpad",
- "Pending delete retry failed." => "No se pudo reintentar las eliminaciones pendientes.",
- "Pending delete retry finished." => "Reintento de eliminaciones pendientes completado.",
- "Public pad" => "Pad público",
- "Public pad from URL" => "Pad público desde URL",
- "Read-only snapshot" => "Copia de solo lectura",
- "Read-only snapshot from the .pad file." => "Copia de solo lectura del archivo .pad.",
- "Request failed." => "La solicitud fallo.",
- "Retry pending deletes now" => "Reintentar las eliminaciones pendientes ahora",
- "Running consistency check..." => "Ejecutando comprobacion de consistencia...",
- "Save settings" => "Guardar ajustes",
- "Saving settings..." => "Guardando ajustes...",
- "Selected file is not a .pad file." => "El archivo seleccionado no es un archivo .pad.",
- "Selected parent folder is not writable." => "La carpeta principal seleccionada no es modificable.",
- "Settings saved." => "Ajustes guardados.",
- "Sync interval must be between 5 and 3600 seconds." => "El intervalo de sincronizacion debe estar entre 5 y 3600 segundos.",
- "Template file not found." => "Archivo de plantilla no encontrado.",
- "Test Etherpad connection" => "Probar conexión con Etherpad",
- "Test fault cleared." => "Fallo de prueba limpiado.",
- "Test fault set: {fault}" => "Fallo de prueba establecido: {fault}",
- "Test faults are available only when Nextcloud debug mode is enabled." => "Los fallos de prueba solo estan disponibles cuando el modo debug de Nextcloud esta activado.",
- "Testing Etherpad connection..." => "Comprobando la conexión con Etherpad...",
- "This .pad file has no matching pad in this Nextcloud." => "Este archivo .pad no tiene un pad asociado en este Nextcloud.",
- "This file looks like a copy of an existing .pad file in your account. Open the original to keep editing the linked pad, or create a new pad to fork the content stored in this file." => "Este archivo parece ser una copia de un archivo .pad existente en tu cuenta. Abre el original para seguir editando el pad enlazado, o crea un nuevo pad para bifurcar el contenido almacenado en este archivo.",
- "Trusted embed origins (optional)" => "Orígenes de incrustación de confianza (opcional)",
- "Unknown error." => "Error desconocido.",
- "Unsupported test fault." => "Fallo de prueba no compatible.",
- "We couldn't find a matching pad in this Nextcloud. You can create a new pad from the text stored in this file; from then on, opening this file will load the new pad." => "No pudimos encontrar un pad asociado en este Nextcloud. Puedes crear un nuevo pad a partir del texto almacenado en este archivo; a partir de ese momento, abrir este archivo cargará el nuevo pad.",
-];
-
-$PLURAL_FORMS = "nplurals=2; plural=(n != 1);";
diff --git a/l10n/fr.php b/l10n/fr.php
deleted file mode 100644
index 4272c9e..0000000
--- a/l10n/fr.php
+++ /dev/null
@@ -1,138 +0,0 @@
- "Fichier .pad introuvable.",
- ".pad file sync interval (seconds)" => "Intervalle de synchronisation du fichier .pad (secondes)",
- "A file with this name already exists." => "Un fichier portant ce nom existe déjà.",
- "Absolute https origins allowed to embed the /embed/by-id and /embed/create-by-parent routes. Leave empty to disable external embedding." => "Origines HTTPS absolues autorisées à intégrer les routes /embed/by-id et /embed/create-by-parent. Laisser vide pour désactiver l'intégration externe.",
- "Add trusted Etherpad hostnames or HTTPS origins. Leave empty only if all public HTTPS hosts should be trusted." => "Ajoutez des noms d'hôte Etherpad ou des origines HTTPS de confiance. Ne laissez vide que si tous les hôtes HTTPS publics doivent être considérés comme de confiance.",
- "Admin permissions required." => "Permissions administrateur requises.",
- "Allow linking external public pads" => "Autoriser les liens vers des pads publics externes",
- "Authentication required." => "Authentification requise.",
- "Auto-filled from the Nextcloud and Etherpad hosts when possible. Adjust it if your deployment uses a proxy path or a different trusted parent domain; leave empty for a host-only cookie." => "Renseigne automatiquement depuis les hotes Nextcloud et Etherpad lorsque possible. Ajustez si le deploiement utilise un chemin proxy ou un autre domaine parent de confiance; laissez vide pour un cookie limite a l'hote.",
- "Back" => "Retour",
- "Cannot open selected .pad file." => "Impossible d'ouvrir le fichier .pad sélectionné.",
- "Cannot read selected .pad file." => "Impossible de lire le fichier .pad sélectionné.",
- "Cannot resolve file path for file ID." => "Impossible de résoudre le chemin du fichier pour l'identifiant.",
- "Cannot resolve selected .pad file." => "Impossible de résoudre le fichier .pad sélectionné.",
- "Cannot resolve selected parent folder." => "Impossible de résoudre le dossier parent sélectionné.",
- "Checking for the original pad..." => "Recherche du pad original...",
- "Close" => "Fermer",
- "Configure the Etherpad server and external pad security policy for the Etherpad Nextcloud app." => "Configurez le serveur Etherpad et la politique de sécurité des pads externes pour l'application Etherpad Nextcloud.",
- "Consistency check" => "Verification de coherence",
- "Consistency check failed." => "La verification de coherence a echoue.",
- "Consistency check finished with issues." => "Verification de coherence terminee avec des problemes.",
- "Consistency check successful." => "Verification de coherence reussie.",
- "Consistency check successful. No issues found." => "Verification de coherence reussie. Aucun probleme trouve.",
- "Controls how often pad content is copied from Etherpad into the .pad file while the pad is open." => "Controle la frequence de copie du contenu du pad depuis Etherpad vers le fichier .pad pendant que le pad est ouvert.",
- "Cookie domain must be a hostname, not a URL." => "Le domaine du cookie doit être un nom d'hôte, pas une URL.",
- "Cookie domain must be a valid shared hostname." => "Le domaine du cookie doit être un nom d'hôte partagé valide.",
- "Could not check pad sync status." => "Impossible de vérifier l'état de synchronisation du pad.",
- "Could not create pad" => "Impossible de créer le pad",
- "Could not create pad from template." => "Impossible de créer le pad à partir du modèle.",
- "Could not create pad." => "Impossible de créer le pad.",
- "Could not create public pad." => "Impossible de créer le pad public.",
- "Could not fetch the pad content from the remote server. The new file is empty for now — open the pad in the viewer to populate it." => "Impossible de récupérer le contenu du pad depuis le serveur distant. Le nouveau fichier est vide pour l'instant — ouvre le pad dans la visionneuse pour le remplir.",
- "Could not import external pad." => "Impossible d'importer le pad externe.",
- "Could not import public pad URL." => "Impossible d'importer l'URL du pad public.",
- "Could not initialize .pad file." => "Impossible d'initialiser le fichier .pad.",
- "Could not look up the original pad." => "Impossible de retrouver le pad original.",
- "Could not move pad to trash." => "Impossible de déplacer le pad vers la corbeille.",
- "Could not open pad" => "Impossible d'ouvrir le pad",
- "Could not open pad." => "Impossible d'ouvrir le pad.",
- "Could not read pad metadata." => "Impossible de lire les métadonnées du pad.",
- "Could not recover pad from this file." => "Impossible de récupérer le pad depuis ce fichier.",
- "Could not resolve .pad file." => "Impossible de résoudre le fichier .pad.",
- "Could not restore pad from trash." => "Impossible de restaurer le pad depuis la corbeille.",
- "Could not sync pad content." => "Impossible de synchroniser le contenu du pad.",
- "Create" => "Créer",
- "Create new pad from this file" => "Créer un nouveau pad à partir de ce fichier",
- "Creating new pad..." => "Création d'un nouveau pad...",
- "Creating pad..." => "Création du pad...",
- "Creating..." => "Création...",
- "Delete linked Etherpad pad when .pad file is moved to trash" => "Supprimer le pad Etherpad lié lorsque le fichier .pad est déplacé vers la corbeille",
- "Detected API version:" => "Version API detectee :",
- "Embed configuration is incomplete." => "La configuration d'intégration est incomplète.",
- "Etherpad API URL (optional)" => "URL API Etherpad (optionnel)",
- "Etherpad API URL must not include query or fragment." => "L'URL API Etherpad ne doit pas contenir de chaîne de requête ni de fragment.",
- "Etherpad API URL must use http or https." => "L'URL API Etherpad doit utiliser HTTP ou HTTPS.",
- "Etherpad API key" => "Cle API Etherpad",
- "Etherpad API key is required." => "La cle API Etherpad est requise.",
- "Etherpad Base URL" => "URL de base Etherpad",
- "Etherpad Base URL is required." => "L'URL de base Etherpad est requise.",
- "Etherpad Base URL must not include query or fragment." => "L'URL de base Etherpad ne doit pas contenir de chaîne de requête ni de fragment.",
- "Etherpad Base URL must use https." => "L'URL de base Etherpad doit utiliser HTTPS.",
- "Etherpad connection test failed." => "Impossible de vérifier la connexion à Etherpad.",
- "Etherpad connection test failed: {detail}" => "Impossible de vérifier la connexion à Etherpad : {detail}",
- "Etherpad connection test successful." => "Connexion à Etherpad vérifiée avec succès.",
- "Etherpad session cookie domain (optional)" => "Domaine du cookie de session Etherpad (optionnel)",
- "External allowlist URL must use https: {host}" => "L'URL de la liste d'autorisation externe doit utiliser HTTPS : {host}",
- "External allowlist contains invalid host: {host}" => "La liste d'autorisation externe contient un hote invalide : {host}",
- "External host allowlist (optional)" => "Liste des hôtes externes autorisés (facultatif)",
- "External pad URL" => "URL du pad externe",
- "External pad URL is required." => "L'URL du pad externe est requise.",
- "Failed to save settings." => "Impossible d'enregistrer les paramètres.",
- "Failed to update test fault." => "Échec de la mise à jour de l'erreur de test.",
- "File name" => "Nom de fichier",
- "File name is required." => "Le nom de fichier est requis.",
- "Hint: API endpoint not found. Check the API host and that the configured API version is supported by your Etherpad." => "Indice : point d'accès de l'API introuvable. Vérifiez l'hôte de l'API et que la version configurée est prise en charge par votre Etherpad.",
- "Hint: Connection refused. Etherpad does not appear to be running on the configured host and port." => "Indice : connexion refusée. Etherpad ne semble pas être en cours d'exécution sur l'hôte et le port configurés.",
- "Hint: Connection timed out. Check that this server can reach the Etherpad host (firewall, network)." => "Indice : délai de connexion dépassé. Vérifiez que ce serveur peut joindre l'hôte Etherpad (pare-feu, réseau).",
- "Hint: Could not reach Etherpad. Check the API host and that this server can connect to it." => "Indice : impossible de joindre Etherpad. Vérifiez l'hôte de l'API et que ce serveur peut s'y connecter.",
- "Hint: Etherpad rejected the API key. Check that the key matches Etherpad's APIKEY.txt." => "Indice : Etherpad a rejeté la clé d'API. Vérifiez que la clé correspond au fichier APIKEY.txt d'Etherpad.",
- "Hint: Etherpad returned a server error. Check the Etherpad server logs." => "Indice : Etherpad a renvoyé une erreur serveur. Consultez les journaux du serveur Etherpad.",
- "Hint: Etherpad returned non-JSON. Likely a reverse proxy or HTML error page in front of the API host." => "Indice : Etherpad a renvoyé un contenu non JSON. Probablement un proxy inverse ou une page d'erreur HTML devant l'hôte de l'API.",
- "Hint: Set \"authenticationMethod\": \"apikey\" in Etherpad's settings.json." => "Indice : définissez \"authenticationMethod\": \"apikey\" dans le fichier settings.json d'Etherpad.",
- "Hint: TLS handshake failed. Check the Etherpad certificate and that the configured URL uses the right scheme." => "Indice : l'établissement de la connexion TLS a échoué. Vérifiez le certificat Etherpad et que l'URL configurée utilise le bon schéma.",
- "Hint: The configured Etherpad host did not resolve. Check the hostname for typos and that DNS reaches it from this server." => "Indice : l'hôte Etherpad configuré n'a pas été résolu. Vérifiez l'absence de fautes de frappe et que le DNS l'atteint depuis ce serveur.",
- "If enabled, moving a .pad file to the trash also deletes the linked Etherpad pad." => "Si activé, déplacer un fichier .pad vers la corbeille supprime également le pad Etherpad lié.",
- "Invalid Etherpad API URL." => "URL API Etherpad invalide.",
- "Invalid Etherpad API version format." => "Format de version API Etherpad invalide.",
- "Invalid Etherpad Base URL." => "URL de base Etherpad invalide.",
- "Invalid access mode." => "Mode d'accès non valide.",
- "Invalid file ID." => "Identifiant de fichier non valide.",
- "Invalid file path." => "Chemin de fichier non valide.",
- "Invalid input." => "Entrée non valide.",
- "Invalid pad name." => "Nom de pad non valide.",
- "Invalid parent folder ID." => "Identifiant de dossier parent non valide.",
- "Loading pad..." => "Chargement du pad...",
- "New pad" => "Nouveau pad",
- "No synced snapshot is stored in this .pad file yet." => "Aucune copie synchronisée n'est encore stockée dans ce fichier .pad.",
- "Open in Etherpad" => "Ouvrir dans Etherpad",
- "Open original pad" => "Ouvrir le pad d'origine",
- "Open the original .pad file" => "Ouvrir le fichier .pad original",
- "Optional internal URL for server-side API calls. Leave empty to use Etherpad Base URL." => "URL interne optionnelle pour les appels à l'API côté serveur. Laisser vide pour utiliser l'URL de base Etherpad.",
- "Pad from another server" => "Pad d'un autre serveur",
- "Pad name is required." => "Le nom du pad est obligatoire.",
- "Pads" => "Pads",
- "Pending Etherpad deletes" => "Suppressions Etherpad en attente",
- "Pending delete retry failed." => "Impossible de réessayer les suppressions en attente.",
- "Pending delete retry finished." => "Réessai des suppressions en attente terminé.",
- "Public pad" => "Pad public",
- "Public pad from URL" => "Pad public depuis une URL",
- "Read-only snapshot" => "Copie en lecture seule",
- "Read-only snapshot from the .pad file." => "Copie en lecture seule du fichier .pad.",
- "Request failed." => "La requete a echoue.",
- "Retry pending deletes now" => "Réessayer les suppressions en attente maintenant",
- "Running consistency check..." => "Verification de coherence en cours...",
- "Save settings" => "Enregistrer les parametres",
- "Saving settings..." => "Enregistrement des parametres...",
- "Selected file is not a .pad file." => "Le fichier sélectionné n'est pas un fichier .pad.",
- "Selected parent folder is not writable." => "Le dossier parent sélectionné n'est pas modifiable.",
- "Settings saved." => "Parametres enregistres.",
- "Sync interval must be between 5 and 3600 seconds." => "L'intervalle de synchronisation doit etre compris entre 5 et 3600 secondes.",
- "Template file not found." => "Fichier modèle introuvable.",
- "Test Etherpad connection" => "Tester la connexion à Etherpad",
- "Test fault cleared." => "Defaut de test efface.",
- "Test fault set: {fault}" => "Defaut de test defini : {fault}",
- "Test faults are available only when Nextcloud debug mode is enabled." => "Les defauts de test sont disponibles uniquement lorsque le mode debug Nextcloud est active.",
- "Testing Etherpad connection..." => "Vérification de la connexion à Etherpad...",
- "This .pad file has no matching pad in this Nextcloud." => "Ce fichier .pad n'a pas de pad correspondant dans ce Nextcloud.",
- "This file looks like a copy of an existing .pad file in your account. Open the original to keep editing the linked pad, or create a new pad to fork the content stored in this file." => "Ce fichier ressemble à une copie d'un fichier .pad existant dans votre compte. Ouvrez l'original pour continuer à modifier le pad lié, ou créez un nouveau pad pour dupliquer le contenu stocké dans ce fichier.",
- "Trusted embed origins (optional)" => "Origines d'intégration de confiance (optionnel)",
- "Unknown error." => "Erreur inconnue.",
- "Unsupported test fault." => "Defaut de test non pris en charge.",
- "We couldn't find a matching pad in this Nextcloud. You can create a new pad from the text stored in this file; from then on, opening this file will load the new pad." => "Nous n'avons pas trouvé de pad correspondant dans ce Nextcloud. Vous pouvez créer un nouveau pad à partir du texte stocké dans ce fichier ; à partir de là, ouvrir ce fichier chargera le nouveau pad.",
-];
-
-$PLURAL_FORMS = "nplurals=2; plural=(n > 1);";
From fd627cd1ffb2724b2a619e56f8bcce5c483a412c Mon Sep 17 00:00:00 2001
From: Jaggob <37583151+Jaggob@users.noreply.github.com>
Date: Wed, 27 May 2026 13:37:43 +0200
Subject: [PATCH 09/13] i18n: accent sweep ES/FR, DE ellipsis + remote-warning
polish
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
- ES: fix missing accents in 19 legacy strings (Autenticación,
política, sincronización, válid*, falló, está, qué, ...);
drop 'bifurcar' in favor of 'crear una copia independiente'
and align two related fork/copy phrasings.
- FR: fix missing accents in 17 legacy strings (Vérification,
cohérence, échoué, Détecté, requête, Clé, paramètres, ...);
switch 'modifiable' to 'accessible en écriture' for the
parent-folder-not-writable error; typographic apostrophe in
the three Open-original strings.
- DE: harmonize progress-message ellipses to ' ...' style (two
strings already used the leading space, six did not); reword
the remote-snapshot warning with explicit article and clearer
outcome ('damit der Inhalt übernommen wird').
---
l10n/de.js | 14 +++++++-------
l10n/de.json | 14 +++++++-------
l10n/es.js | 44 ++++++++++++++++++++++----------------------
l10n/es.json | 44 ++++++++++++++++++++++----------------------
l10n/fr.js | 44 ++++++++++++++++++++++----------------------
l10n/fr.json | 44 ++++++++++++++++++++++----------------------
6 files changed, 102 insertions(+), 102 deletions(-)
diff --git a/l10n/de.js b/l10n/de.js
index 8025b2f..d2cbc90 100644
--- a/l10n/de.js
+++ b/l10n/de.js
@@ -32,7 +32,7 @@ OC.L10N.register(
"Could not create pad from template.": "Pad konnte nicht aus Vorlage erstellt werden.",
"Could not create pad.": "Pad konnte nicht erstellt werden.",
"Could not create public pad.": "Öffentliches Pad konnte nicht erstellt werden.",
- "Could not fetch the pad content from the remote server. The new file is empty for now — open the pad in the viewer to populate it.": "Pad-Inhalt konnte nicht vom Remote-Server geladen werden. Die neue Datei ist vorerst leer — öffne das Pad im Viewer, um sie zu befüllen.",
+ "Could not fetch the pad content from the remote server. The new file is empty for now — open the pad in the viewer to populate it.": "Der Pad-Inhalt konnte nicht vom Remote-Server geladen werden. Die neue Datei ist vorerst leer – öffne das Pad im Viewer, damit der Inhalt übernommen wird.",
"Could not import external pad.": "Externes Pad konnte nicht importiert werden.",
"Could not import public pad URL.": "Öffentliche Pad-URL konnte nicht importiert werden.",
"Could not initialize .pad file.": ".pad-Datei konnte nicht initialisiert werden.",
@@ -48,8 +48,8 @@ OC.L10N.register(
"Create": "Erstellen",
"Create new pad from this file": "Neues Pad aus dieser Datei erstellen",
"Creating new pad...": "Neues Pad wird erstellt ...",
- "Creating pad...": "Pad wird erstellt...",
- "Creating...": "Wird erstellt...",
+ "Creating pad...": "Pad wird erstellt ...",
+ "Creating...": "Wird erstellt ...",
"Delete linked Etherpad pad when .pad file is moved to trash": "Verknüpftes Etherpad-Pad löschen, wenn die .pad-Datei in den Papierkorb verschoben wird",
"Detected API version:": "Erkannte API-Version:",
"Embed configuration is incomplete.": "Embed-Konfiguration ist unvollständig.",
@@ -95,7 +95,7 @@ OC.L10N.register(
"Invalid input.": "Ungültige Eingabe.",
"Invalid pad name.": "Ungültiger Pad-Name.",
"Invalid parent folder ID.": "Ungültige Zielordner-ID.",
- "Loading pad...": "Pad wird geladen...",
+ "Loading pad...": "Pad wird geladen ...",
"New pad": "Neues Pad",
"No synced snapshot is stored in this .pad file yet.": "In dieser .pad-Datei ist noch keine synchronisierte Kopie gespeichert.",
"Open in Etherpad": "In Etherpad öffnen",
@@ -114,9 +114,9 @@ OC.L10N.register(
"Read-only snapshot from the .pad file.": "Schreibgeschützte Kopie aus der .pad-Datei.",
"Request failed.": "Anfrage fehlgeschlagen.",
"Retry pending deletes now": "Ausstehende Löschungen jetzt wiederholen",
- "Running consistency check...": "Konsistenzprüfung läuft...",
+ "Running consistency check...": "Konsistenzprüfung läuft ...",
"Save settings": "Einstellungen speichern",
- "Saving settings...": "Einstellungen werden gespeichert...",
+ "Saving settings...": "Einstellungen werden gespeichert ...",
"Selected file is not a .pad file.": "Ausgewählte Datei ist keine .pad-Datei.",
"Selected parent folder is not writable.": "Ausgewählter Zielordner ist nicht beschreibbar.",
"Settings saved.": "Einstellungen gespeichert.",
@@ -126,7 +126,7 @@ OC.L10N.register(
"Test fault cleared.": "Testfehler zurückgesetzt.",
"Test fault set: {fault}": "Testfehler gesetzt: {fault}",
"Test faults are available only when Nextcloud debug mode is enabled.": "Testfehler sind nur verfügbar, wenn der Nextcloud-Debug-Modus aktiviert ist.",
- "Testing Etherpad connection...": "Etherpad-Verbindung wird geprüft...",
+ "Testing Etherpad connection...": "Etherpad-Verbindung wird geprüft ...",
"This .pad file has no matching pad in this Nextcloud.": "Für diese .pad-Datei existiert in dieser Nextcloud kein passendes Pad.",
"This file looks like a copy of an existing .pad file in your account. Open the original to keep editing the linked pad, or create a new pad to fork the content stored in this file.": "Diese Datei sieht aus wie eine Kopie einer bereits vorhandenen .pad-Datei in deinem Konto. Öffne das Original, um am verknüpften Pad weiterzuarbeiten, oder erstelle aus dem in dieser Datei gespeicherten Inhalt ein neues Pad als eigene Kopie.",
"Trusted embed origins (optional)": "Vertrauenswürdige Embed-Origins (optional)",
diff --git a/l10n/de.json b/l10n/de.json
index d8630a2..d66ee7d 100644
--- a/l10n/de.json
+++ b/l10n/de.json
@@ -31,7 +31,7 @@
"Could not create pad from template.": "Pad konnte nicht aus Vorlage erstellt werden.",
"Could not create pad.": "Pad konnte nicht erstellt werden.",
"Could not create public pad.": "Öffentliches Pad konnte nicht erstellt werden.",
- "Could not fetch the pad content from the remote server. The new file is empty for now — open the pad in the viewer to populate it.": "Pad-Inhalt konnte nicht vom Remote-Server geladen werden. Die neue Datei ist vorerst leer — öffne das Pad im Viewer, um sie zu befüllen.",
+ "Could not fetch the pad content from the remote server. The new file is empty for now — open the pad in the viewer to populate it.": "Der Pad-Inhalt konnte nicht vom Remote-Server geladen werden. Die neue Datei ist vorerst leer – öffne das Pad im Viewer, damit der Inhalt übernommen wird.",
"Could not import external pad.": "Externes Pad konnte nicht importiert werden.",
"Could not import public pad URL.": "Öffentliche Pad-URL konnte nicht importiert werden.",
"Could not initialize .pad file.": ".pad-Datei konnte nicht initialisiert werden.",
@@ -47,8 +47,8 @@
"Create": "Erstellen",
"Create new pad from this file": "Neues Pad aus dieser Datei erstellen",
"Creating new pad...": "Neues Pad wird erstellt ...",
- "Creating pad...": "Pad wird erstellt...",
- "Creating...": "Wird erstellt...",
+ "Creating pad...": "Pad wird erstellt ...",
+ "Creating...": "Wird erstellt ...",
"Delete linked Etherpad pad when .pad file is moved to trash": "Verknüpftes Etherpad-Pad löschen, wenn die .pad-Datei in den Papierkorb verschoben wird",
"Detected API version:": "Erkannte API-Version:",
"Embed configuration is incomplete.": "Embed-Konfiguration ist unvollständig.",
@@ -94,7 +94,7 @@
"Invalid input.": "Ungültige Eingabe.",
"Invalid pad name.": "Ungültiger Pad-Name.",
"Invalid parent folder ID.": "Ungültige Zielordner-ID.",
- "Loading pad...": "Pad wird geladen...",
+ "Loading pad...": "Pad wird geladen ...",
"New pad": "Neues Pad",
"No synced snapshot is stored in this .pad file yet.": "In dieser .pad-Datei ist noch keine synchronisierte Kopie gespeichert.",
"Open in Etherpad": "In Etherpad öffnen",
@@ -113,9 +113,9 @@
"Read-only snapshot from the .pad file.": "Schreibgeschützte Kopie aus der .pad-Datei.",
"Request failed.": "Anfrage fehlgeschlagen.",
"Retry pending deletes now": "Ausstehende Löschungen jetzt wiederholen",
- "Running consistency check...": "Konsistenzprüfung läuft...",
+ "Running consistency check...": "Konsistenzprüfung läuft ...",
"Save settings": "Einstellungen speichern",
- "Saving settings...": "Einstellungen werden gespeichert...",
+ "Saving settings...": "Einstellungen werden gespeichert ...",
"Selected file is not a .pad file.": "Ausgewählte Datei ist keine .pad-Datei.",
"Selected parent folder is not writable.": "Ausgewählter Zielordner ist nicht beschreibbar.",
"Settings saved.": "Einstellungen gespeichert.",
@@ -125,7 +125,7 @@
"Test fault cleared.": "Testfehler zurückgesetzt.",
"Test fault set: {fault}": "Testfehler gesetzt: {fault}",
"Test faults are available only when Nextcloud debug mode is enabled.": "Testfehler sind nur verfügbar, wenn der Nextcloud-Debug-Modus aktiviert ist.",
- "Testing Etherpad connection...": "Etherpad-Verbindung wird geprüft...",
+ "Testing Etherpad connection...": "Etherpad-Verbindung wird geprüft ...",
"This .pad file has no matching pad in this Nextcloud.": "Für diese .pad-Datei existiert in dieser Nextcloud kein passendes Pad.",
"This file looks like a copy of an existing .pad file in your account. Open the original to keep editing the linked pad, or create a new pad to fork the content stored in this file.": "Diese Datei sieht aus wie eine Kopie einer bereits vorhandenen .pad-Datei in deinem Konto. Öffne das Original, um am verknüpften Pad weiterzuarbeiten, oder erstelle aus dem in dieser Datei gespeicherten Inhalt ein neues Pad als eigene Kopie.",
"Trusted embed origins (optional)": "Vertrauenswürdige Embed-Origins (optional)",
diff --git a/l10n/es.js b/l10n/es.js
index 73dec63..514c8a4 100644
--- a/l10n/es.js
+++ b/l10n/es.js
@@ -7,9 +7,9 @@ OC.L10N.register(
"Absolute https origins allowed to embed the /embed/by-id and /embed/create-by-parent routes. Leave empty to disable external embedding.": "Orígenes HTTPS absolutos permitidos para incrustar las rutas /embed/by-id y /embed/create-by-parent. Déjalo vacío para desactivar la incrustación externa.",
"Add trusted Etherpad hostnames or HTTPS origins. Leave empty only if all public HTTPS hosts should be trusted.": "Agrega nombres de host de Etherpad u orígenes HTTPS de confianza. Déjalo vacío solo si se debe confiar en todos los hosts HTTPS públicos.",
"Admin permissions required.": "Se requieren permisos de administrador.",
- "Allow linking external public pads": "Permitir enlazar pads publicos externos",
- "Authentication required.": "Autenticacion requerida.",
- "Auto-filled from the Nextcloud and Etherpad hosts when possible. Adjust it if your deployment uses a proxy path or a different trusted parent domain; leave empty for a host-only cookie.": "Se completa automaticamente desde los hosts de Nextcloud y Etherpad cuando es posible. Ajustalo si la instalacion usa una ruta de proxy u otro dominio padre de confianza; deja vacio para una cookie solo de host.",
+ "Allow linking external public pads": "Permitir enlazar pads públicos externos",
+ "Authentication required.": "Autenticación requerida.",
+ "Auto-filled from the Nextcloud and Etherpad hosts when possible. Adjust it if your deployment uses a proxy path or a different trusted parent domain; leave empty for a host-only cookie.": "Se completa automáticamente desde los hosts de Nextcloud y Etherpad cuando es posible. Ajústalo si la instalación usa una ruta de proxy u otro dominio padre de confianza; deja vacío para una cookie solo de host.",
"Back": "Atrás",
"Cannot open selected .pad file.": "No se puede abrir el archivo .pad seleccionado.",
"Cannot read selected .pad file.": "No se puede leer el archivo .pad seleccionado.",
@@ -19,12 +19,12 @@ OC.L10N.register(
"Checking for the original pad...": "Buscando el pad original...",
"Close": "Cerrar",
"Configure the Etherpad server and external pad security policy for the Etherpad Nextcloud app.": "Configura el servidor de Etherpad y la política de seguridad para pads externos en la aplicación Etherpad Nextcloud.",
- "Consistency check": "Comprobacion de consistencia",
- "Consistency check failed.": "La comprobacion de consistencia fallo.",
- "Consistency check finished with issues.": "Comprobacion de consistencia finalizada con problemas.",
- "Consistency check successful.": "Comprobacion de consistencia correcta.",
- "Consistency check successful. No issues found.": "Comprobacion de consistencia correcta. No se encontraron problemas.",
- "Controls how often pad content is copied from Etherpad into the .pad file while the pad is open.": "Controla con que frecuencia se copia el contenido del pad desde Etherpad al archivo .pad mientras el pad esta abierto.",
+ "Consistency check": "Comprobación de consistencia",
+ "Consistency check failed.": "La comprobación de consistencia falló.",
+ "Consistency check finished with issues.": "Comprobación de consistencia finalizada con problemas.",
+ "Consistency check successful.": "Comprobación de consistencia correcta.",
+ "Consistency check successful. No issues found.": "Comprobación de consistencia correcta. No se encontraron problemas.",
+ "Controls how often pad content is copied from Etherpad into the .pad file while the pad is open.": "Controla con qué frecuencia se copia el contenido del pad desde Etherpad al archivo .pad mientras el pad está abierto.",
"Cookie domain must be a hostname, not a URL.": "El dominio de la cookie debe ser un nombre de host, no una URL.",
"Cookie domain must be a valid shared hostname.": "El dominio de la cookie debe ser un nombre de host compartido válido.",
"Could not check pad sync status.": "No se pudo comprobar el estado de sincronización del pad.",
@@ -51,7 +51,7 @@ OC.L10N.register(
"Creating pad...": "Creando pad...",
"Creating...": "Creando...",
"Delete linked Etherpad pad when .pad file is moved to trash": "Eliminar el pad de Etherpad enlazado cuando el archivo .pad se mueve a la papelera",
- "Detected API version:": "Version de API detectada:",
+ "Detected API version:": "Versión de API detectada:",
"Embed configuration is incomplete.": "La configuración de incrustación está incompleta.",
"Etherpad API URL (optional)": "URL de API de Etherpad (opcional)",
"Etherpad API URL must not include query or fragment.": "La URL API de Etherpad no debe incluir cadena de consulta ni fragmento.",
@@ -65,9 +65,9 @@ OC.L10N.register(
"Etherpad connection test failed.": "No se pudo comprobar la conexión con Etherpad.",
"Etherpad connection test failed: {detail}": "No se pudo comprobar la conexión con Etherpad: {detail}",
"Etherpad connection test successful.": "Conexión con Etherpad comprobada correctamente.",
- "Etherpad session cookie domain (optional)": "Dominio de cookie de sesion de Etherpad (opcional)",
+ "Etherpad session cookie domain (optional)": "Dominio de cookie de sesión de Etherpad (opcional)",
"External allowlist URL must use https: {host}": "La URL de la lista de permitidos externa debe usar HTTPS: {host}",
- "External allowlist contains invalid host: {host}": "La lista de permitidos externa contiene un host no valido: {host}",
+ "External allowlist contains invalid host: {host}": "La lista de permitidos externa contiene un host no válido: {host}",
"External host allowlist (optional)": "Lista de hosts externos permitidos (opcional)",
"External pad URL": "URL de pad externo",
"External pad URL is required.": "La URL de pad externo es obligatoria.",
@@ -86,9 +86,9 @@ OC.L10N.register(
"Hint: TLS handshake failed. Check the Etherpad certificate and that the configured URL uses the right scheme.": "Sugerencia: el establecimiento de la conexión TLS falló. Comprueba el certificado de Etherpad y que la URL configurada use el esquema correcto.",
"Hint: The configured Etherpad host did not resolve. Check the hostname for typos and that DNS reaches it from this server.": "Sugerencia: el host de Etherpad configurado no se resolvió. Comprueba el nombre del host por erratas y que el DNS llegue a él desde este servidor.",
"If enabled, moving a .pad file to the trash also deletes the linked Etherpad pad.": "Si está activado, al mover un archivo .pad a la papelera también se elimina el pad de Etherpad enlazado.",
- "Invalid Etherpad API URL.": "URL API de Etherpad no valida.",
- "Invalid Etherpad API version format.": "Formato de version de API de Etherpad no valido.",
- "Invalid Etherpad Base URL.": "URL base de Etherpad no valida.",
+ "Invalid Etherpad API URL.": "URL API de Etherpad no válida.",
+ "Invalid Etherpad API version format.": "Formato de versión de API de Etherpad no válido.",
+ "Invalid Etherpad Base URL.": "URL base de Etherpad no válida.",
"Invalid access mode.": "Modo de acceso no válido.",
"Invalid file ID.": "ID de archivo no válido.",
"Invalid file path.": "Ruta de archivo no válida.",
@@ -112,27 +112,27 @@ OC.L10N.register(
"Public pad from URL": "Pad público desde URL",
"Read-only snapshot": "Copia de solo lectura",
"Read-only snapshot from the .pad file.": "Copia de solo lectura del archivo .pad.",
- "Request failed.": "La solicitud fallo.",
+ "Request failed.": "La solicitud falló.",
"Retry pending deletes now": "Reintentar las eliminaciones pendientes ahora",
- "Running consistency check...": "Ejecutando comprobacion de consistencia...",
+ "Running consistency check...": "Ejecutando comprobación de consistencia...",
"Save settings": "Guardar ajustes",
"Saving settings...": "Guardando ajustes...",
"Selected file is not a .pad file.": "El archivo seleccionado no es un archivo .pad.",
"Selected parent folder is not writable.": "La carpeta principal seleccionada no es modificable.",
"Settings saved.": "Ajustes guardados.",
- "Sync interval must be between 5 and 3600 seconds.": "El intervalo de sincronizacion debe estar entre 5 y 3600 segundos.",
+ "Sync interval must be between 5 and 3600 seconds.": "El intervalo de sincronización debe estar entre 5 y 3600 segundos.",
"Template file not found.": "Archivo de plantilla no encontrado.",
"Test Etherpad connection": "Probar conexión con Etherpad",
"Test fault cleared.": "Fallo de prueba limpiado.",
"Test fault set: {fault}": "Fallo de prueba establecido: {fault}",
- "Test faults are available only when Nextcloud debug mode is enabled.": "Los fallos de prueba solo estan disponibles cuando el modo debug de Nextcloud esta activado.",
+ "Test faults are available only when Nextcloud debug mode is enabled.": "Los fallos de prueba solo están disponibles cuando el modo debug de Nextcloud está activado.",
"Testing Etherpad connection...": "Comprobando la conexión con Etherpad...",
- "This .pad file has no matching pad in this Nextcloud.": "Este archivo .pad no tiene un pad asociado en este Nextcloud.",
- "This file looks like a copy of an existing .pad file in your account. Open the original to keep editing the linked pad, or create a new pad to fork the content stored in this file.": "Este archivo parece ser una copia de un archivo .pad existente en tu cuenta. Abre el original para seguir editando el pad enlazado, o crea un nuevo pad para bifurcar el contenido almacenado en este archivo.",
+ "This .pad file has no matching pad in this Nextcloud.": "Este archivo .pad no tiene ningún pad correspondiente en este Nextcloud.",
+ "This file looks like a copy of an existing .pad file in your account. Open the original to keep editing the linked pad, or create a new pad to fork the content stored in this file.": "Este archivo parece ser una copia de un archivo .pad existente en tu cuenta. Abre el original para seguir editando el pad enlazado, o crea un nuevo pad para crear una copia independiente del contenido almacenado en este archivo.",
"Trusted embed origins (optional)": "Orígenes de incrustación de confianza (opcional)",
"Unknown error.": "Error desconocido.",
"Unsupported test fault.": "Fallo de prueba no compatible.",
- "We couldn't find a matching pad in this Nextcloud. You can create a new pad from the text stored in this file; from then on, opening this file will load the new pad.": "No pudimos encontrar un pad asociado en este Nextcloud. Puedes crear un nuevo pad a partir del texto almacenado en este archivo; a partir de ese momento, abrir este archivo cargará el nuevo pad."
+ "We couldn't find a matching pad in this Nextcloud. You can create a new pad from the text stored in this file; from then on, opening this file will load the new pad.": "No se ha encontrado ningún pad correspondiente en este Nextcloud. Puedes crear un nuevo pad a partir del texto almacenado en este archivo; a partir de ese momento, abrir este archivo cargará el nuevo pad."
},
"nplurals=2; plural=(n != 1);"
);
diff --git a/l10n/es.json b/l10n/es.json
index 51add28..852b7c7 100644
--- a/l10n/es.json
+++ b/l10n/es.json
@@ -6,9 +6,9 @@
"Absolute https origins allowed to embed the /embed/by-id and /embed/create-by-parent routes. Leave empty to disable external embedding.": "Orígenes HTTPS absolutos permitidos para incrustar las rutas /embed/by-id y /embed/create-by-parent. Déjalo vacío para desactivar la incrustación externa.",
"Add trusted Etherpad hostnames or HTTPS origins. Leave empty only if all public HTTPS hosts should be trusted.": "Agrega nombres de host de Etherpad u orígenes HTTPS de confianza. Déjalo vacío solo si se debe confiar en todos los hosts HTTPS públicos.",
"Admin permissions required.": "Se requieren permisos de administrador.",
- "Allow linking external public pads": "Permitir enlazar pads publicos externos",
- "Authentication required.": "Autenticacion requerida.",
- "Auto-filled from the Nextcloud and Etherpad hosts when possible. Adjust it if your deployment uses a proxy path or a different trusted parent domain; leave empty for a host-only cookie.": "Se completa automaticamente desde los hosts de Nextcloud y Etherpad cuando es posible. Ajustalo si la instalacion usa una ruta de proxy u otro dominio padre de confianza; deja vacio para una cookie solo de host.",
+ "Allow linking external public pads": "Permitir enlazar pads públicos externos",
+ "Authentication required.": "Autenticación requerida.",
+ "Auto-filled from the Nextcloud and Etherpad hosts when possible. Adjust it if your deployment uses a proxy path or a different trusted parent domain; leave empty for a host-only cookie.": "Se completa automáticamente desde los hosts de Nextcloud y Etherpad cuando es posible. Ajústalo si la instalación usa una ruta de proxy u otro dominio padre de confianza; deja vacío para una cookie solo de host.",
"Back": "Atrás",
"Cannot open selected .pad file.": "No se puede abrir el archivo .pad seleccionado.",
"Cannot read selected .pad file.": "No se puede leer el archivo .pad seleccionado.",
@@ -18,12 +18,12 @@
"Checking for the original pad...": "Buscando el pad original...",
"Close": "Cerrar",
"Configure the Etherpad server and external pad security policy for the Etherpad Nextcloud app.": "Configura el servidor de Etherpad y la política de seguridad para pads externos en la aplicación Etherpad Nextcloud.",
- "Consistency check": "Comprobacion de consistencia",
- "Consistency check failed.": "La comprobacion de consistencia fallo.",
- "Consistency check finished with issues.": "Comprobacion de consistencia finalizada con problemas.",
- "Consistency check successful.": "Comprobacion de consistencia correcta.",
- "Consistency check successful. No issues found.": "Comprobacion de consistencia correcta. No se encontraron problemas.",
- "Controls how often pad content is copied from Etherpad into the .pad file while the pad is open.": "Controla con que frecuencia se copia el contenido del pad desde Etherpad al archivo .pad mientras el pad esta abierto.",
+ "Consistency check": "Comprobación de consistencia",
+ "Consistency check failed.": "La comprobación de consistencia falló.",
+ "Consistency check finished with issues.": "Comprobación de consistencia finalizada con problemas.",
+ "Consistency check successful.": "Comprobación de consistencia correcta.",
+ "Consistency check successful. No issues found.": "Comprobación de consistencia correcta. No se encontraron problemas.",
+ "Controls how often pad content is copied from Etherpad into the .pad file while the pad is open.": "Controla con qué frecuencia se copia el contenido del pad desde Etherpad al archivo .pad mientras el pad está abierto.",
"Cookie domain must be a hostname, not a URL.": "El dominio de la cookie debe ser un nombre de host, no una URL.",
"Cookie domain must be a valid shared hostname.": "El dominio de la cookie debe ser un nombre de host compartido válido.",
"Could not check pad sync status.": "No se pudo comprobar el estado de sincronización del pad.",
@@ -50,7 +50,7 @@
"Creating pad...": "Creando pad...",
"Creating...": "Creando...",
"Delete linked Etherpad pad when .pad file is moved to trash": "Eliminar el pad de Etherpad enlazado cuando el archivo .pad se mueve a la papelera",
- "Detected API version:": "Version de API detectada:",
+ "Detected API version:": "Versión de API detectada:",
"Embed configuration is incomplete.": "La configuración de incrustación está incompleta.",
"Etherpad API URL (optional)": "URL de API de Etherpad (opcional)",
"Etherpad API URL must not include query or fragment.": "La URL API de Etherpad no debe incluir cadena de consulta ni fragmento.",
@@ -64,9 +64,9 @@
"Etherpad connection test failed.": "No se pudo comprobar la conexión con Etherpad.",
"Etherpad connection test failed: {detail}": "No se pudo comprobar la conexión con Etherpad: {detail}",
"Etherpad connection test successful.": "Conexión con Etherpad comprobada correctamente.",
- "Etherpad session cookie domain (optional)": "Dominio de cookie de sesion de Etherpad (opcional)",
+ "Etherpad session cookie domain (optional)": "Dominio de cookie de sesión de Etherpad (opcional)",
"External allowlist URL must use https: {host}": "La URL de la lista de permitidos externa debe usar HTTPS: {host}",
- "External allowlist contains invalid host: {host}": "La lista de permitidos externa contiene un host no valido: {host}",
+ "External allowlist contains invalid host: {host}": "La lista de permitidos externa contiene un host no válido: {host}",
"External host allowlist (optional)": "Lista de hosts externos permitidos (opcional)",
"External pad URL": "URL de pad externo",
"External pad URL is required.": "La URL de pad externo es obligatoria.",
@@ -85,9 +85,9 @@
"Hint: TLS handshake failed. Check the Etherpad certificate and that the configured URL uses the right scheme.": "Sugerencia: el establecimiento de la conexión TLS falló. Comprueba el certificado de Etherpad y que la URL configurada use el esquema correcto.",
"Hint: The configured Etherpad host did not resolve. Check the hostname for typos and that DNS reaches it from this server.": "Sugerencia: el host de Etherpad configurado no se resolvió. Comprueba el nombre del host por erratas y que el DNS llegue a él desde este servidor.",
"If enabled, moving a .pad file to the trash also deletes the linked Etherpad pad.": "Si está activado, al mover un archivo .pad a la papelera también se elimina el pad de Etherpad enlazado.",
- "Invalid Etherpad API URL.": "URL API de Etherpad no valida.",
- "Invalid Etherpad API version format.": "Formato de version de API de Etherpad no valido.",
- "Invalid Etherpad Base URL.": "URL base de Etherpad no valida.",
+ "Invalid Etherpad API URL.": "URL API de Etherpad no válida.",
+ "Invalid Etherpad API version format.": "Formato de versión de API de Etherpad no válido.",
+ "Invalid Etherpad Base URL.": "URL base de Etherpad no válida.",
"Invalid access mode.": "Modo de acceso no válido.",
"Invalid file ID.": "ID de archivo no válido.",
"Invalid file path.": "Ruta de archivo no válida.",
@@ -111,27 +111,27 @@
"Public pad from URL": "Pad público desde URL",
"Read-only snapshot": "Copia de solo lectura",
"Read-only snapshot from the .pad file.": "Copia de solo lectura del archivo .pad.",
- "Request failed.": "La solicitud fallo.",
+ "Request failed.": "La solicitud falló.",
"Retry pending deletes now": "Reintentar las eliminaciones pendientes ahora",
- "Running consistency check...": "Ejecutando comprobacion de consistencia...",
+ "Running consistency check...": "Ejecutando comprobación de consistencia...",
"Save settings": "Guardar ajustes",
"Saving settings...": "Guardando ajustes...",
"Selected file is not a .pad file.": "El archivo seleccionado no es un archivo .pad.",
"Selected parent folder is not writable.": "La carpeta principal seleccionada no es modificable.",
"Settings saved.": "Ajustes guardados.",
- "Sync interval must be between 5 and 3600 seconds.": "El intervalo de sincronizacion debe estar entre 5 y 3600 segundos.",
+ "Sync interval must be between 5 and 3600 seconds.": "El intervalo de sincronización debe estar entre 5 y 3600 segundos.",
"Template file not found.": "Archivo de plantilla no encontrado.",
"Test Etherpad connection": "Probar conexión con Etherpad",
"Test fault cleared.": "Fallo de prueba limpiado.",
"Test fault set: {fault}": "Fallo de prueba establecido: {fault}",
- "Test faults are available only when Nextcloud debug mode is enabled.": "Los fallos de prueba solo estan disponibles cuando el modo debug de Nextcloud esta activado.",
+ "Test faults are available only when Nextcloud debug mode is enabled.": "Los fallos de prueba solo están disponibles cuando el modo debug de Nextcloud está activado.",
"Testing Etherpad connection...": "Comprobando la conexión con Etherpad...",
- "This .pad file has no matching pad in this Nextcloud.": "Este archivo .pad no tiene un pad asociado en este Nextcloud.",
- "This file looks like a copy of an existing .pad file in your account. Open the original to keep editing the linked pad, or create a new pad to fork the content stored in this file.": "Este archivo parece ser una copia de un archivo .pad existente en tu cuenta. Abre el original para seguir editando el pad enlazado, o crea un nuevo pad para bifurcar el contenido almacenado en este archivo.",
+ "This .pad file has no matching pad in this Nextcloud.": "Este archivo .pad no tiene ningún pad correspondiente en este Nextcloud.",
+ "This file looks like a copy of an existing .pad file in your account. Open the original to keep editing the linked pad, or create a new pad to fork the content stored in this file.": "Este archivo parece ser una copia de un archivo .pad existente en tu cuenta. Abre el original para seguir editando el pad enlazado, o crea un nuevo pad para crear una copia independiente del contenido almacenado en este archivo.",
"Trusted embed origins (optional)": "Orígenes de incrustación de confianza (opcional)",
"Unknown error.": "Error desconocido.",
"Unsupported test fault.": "Fallo de prueba no compatible.",
- "We couldn't find a matching pad in this Nextcloud. You can create a new pad from the text stored in this file; from then on, opening this file will load the new pad.": "No pudimos encontrar un pad asociado en este Nextcloud. Puedes crear un nuevo pad a partir del texto almacenado en este archivo; a partir de ese momento, abrir este archivo cargará el nuevo pad."
+ "We couldn't find a matching pad in this Nextcloud. You can create a new pad from the text stored in this file; from then on, opening this file will load the new pad.": "No se ha encontrado ningún pad correspondiente en este Nextcloud. Puedes crear un nuevo pad a partir del texto almacenado en este archivo; a partir de ese momento, abrir este archivo cargará el nuevo pad."
},
"pluralForm": "nplurals=2; plural=(n != 1);"
}
diff --git a/l10n/fr.js b/l10n/fr.js
index 31b4b6d..5965a35 100644
--- a/l10n/fr.js
+++ b/l10n/fr.js
@@ -16,15 +16,15 @@ OC.L10N.register(
"Cannot resolve file path for file ID.": "Impossible de résoudre le chemin du fichier pour l'identifiant.",
"Cannot resolve selected .pad file.": "Impossible de résoudre le fichier .pad sélectionné.",
"Cannot resolve selected parent folder.": "Impossible de résoudre le dossier parent sélectionné.",
- "Checking for the original pad...": "Recherche du pad original...",
+ "Checking for the original pad...": "Recherche du pad d’origine...",
"Close": "Fermer",
"Configure the Etherpad server and external pad security policy for the Etherpad Nextcloud app.": "Configurez le serveur Etherpad et la politique de sécurité des pads externes pour l'application Etherpad Nextcloud.",
- "Consistency check": "Verification de coherence",
- "Consistency check failed.": "La verification de coherence a echoue.",
- "Consistency check finished with issues.": "Verification de coherence terminee avec des problemes.",
- "Consistency check successful.": "Verification de coherence reussie.",
- "Consistency check successful. No issues found.": "Verification de coherence reussie. Aucun probleme trouve.",
- "Controls how often pad content is copied from Etherpad into the .pad file while the pad is open.": "Controle la frequence de copie du contenu du pad depuis Etherpad vers le fichier .pad pendant que le pad est ouvert.",
+ "Consistency check": "Vérification de cohérence",
+ "Consistency check failed.": "La vérification de cohérence a échoué.",
+ "Consistency check finished with issues.": "Vérification de cohérence terminée avec des problèmes.",
+ "Consistency check successful.": "Vérification de cohérence réussie.",
+ "Consistency check successful. No issues found.": "Vérification de cohérence réussie. Aucun problème trouvé.",
+ "Controls how often pad content is copied from Etherpad into the .pad file while the pad is open.": "Contrôle la fréquence de copie du contenu du pad depuis Etherpad vers le fichier .pad pendant que le pad est ouvert.",
"Cookie domain must be a hostname, not a URL.": "Le domaine du cookie doit être un nom d'hôte, pas une URL.",
"Cookie domain must be a valid shared hostname.": "Le domaine du cookie doit être un nom d'hôte partagé valide.",
"Could not check pad sync status.": "Impossible de vérifier l'état de synchronisation du pad.",
@@ -51,13 +51,13 @@ OC.L10N.register(
"Creating pad...": "Création du pad...",
"Creating...": "Création...",
"Delete linked Etherpad pad when .pad file is moved to trash": "Supprimer le pad Etherpad lié lorsque le fichier .pad est déplacé vers la corbeille",
- "Detected API version:": "Version API detectee :",
+ "Detected API version:": "Version API détectée :",
"Embed configuration is incomplete.": "La configuration d'intégration est incomplète.",
"Etherpad API URL (optional)": "URL API Etherpad (optionnel)",
"Etherpad API URL must not include query or fragment.": "L'URL API Etherpad ne doit pas contenir de chaîne de requête ni de fragment.",
"Etherpad API URL must use http or https.": "L'URL API Etherpad doit utiliser HTTP ou HTTPS.",
- "Etherpad API key": "Cle API Etherpad",
- "Etherpad API key is required.": "La cle API Etherpad est requise.",
+ "Etherpad API key": "Clé API Etherpad",
+ "Etherpad API key is required.": "La clé API Etherpad est requise.",
"Etherpad Base URL": "URL de base Etherpad",
"Etherpad Base URL is required.": "L'URL de base Etherpad est requise.",
"Etherpad Base URL must not include query or fragment.": "L'URL de base Etherpad ne doit pas contenir de chaîne de requête ni de fragment.",
@@ -99,8 +99,8 @@ OC.L10N.register(
"New pad": "Nouveau pad",
"No synced snapshot is stored in this .pad file yet.": "Aucune copie synchronisée n'est encore stockée dans ce fichier .pad.",
"Open in Etherpad": "Ouvrir dans Etherpad",
- "Open original pad": "Ouvrir le pad d'origine",
- "Open the original .pad file": "Ouvrir le fichier .pad original",
+ "Open original pad": "Ouvrir le pad d’origine",
+ "Open the original .pad file": "Ouvrir le fichier .pad d’origine",
"Optional internal URL for server-side API calls. Leave empty to use Etherpad Base URL.": "URL interne optionnelle pour les appels à l'API côté serveur. Laisser vide pour utiliser l'URL de base Etherpad.",
"Pad from another server": "Pad d'un autre serveur",
"Pad name is required.": "Le nom du pad est obligatoire.",
@@ -112,26 +112,26 @@ OC.L10N.register(
"Public pad from URL": "Pad public depuis une URL",
"Read-only snapshot": "Copie en lecture seule",
"Read-only snapshot from the .pad file.": "Copie en lecture seule du fichier .pad.",
- "Request failed.": "La requete a echoue.",
+ "Request failed.": "La requête a échoué.",
"Retry pending deletes now": "Réessayer les suppressions en attente maintenant",
- "Running consistency check...": "Verification de coherence en cours...",
- "Save settings": "Enregistrer les parametres",
- "Saving settings...": "Enregistrement des parametres...",
+ "Running consistency check...": "Vérification de cohérence en cours...",
+ "Save settings": "Enregistrer les paramètres",
+ "Saving settings...": "Enregistrement des paramètres...",
"Selected file is not a .pad file.": "Le fichier sélectionné n'est pas un fichier .pad.",
- "Selected parent folder is not writable.": "Le dossier parent sélectionné n'est pas modifiable.",
- "Settings saved.": "Parametres enregistres.",
+ "Selected parent folder is not writable.": "Le dossier parent sélectionné n’est pas accessible en écriture.",
+ "Settings saved.": "Paramètres enregistrés.",
"Sync interval must be between 5 and 3600 seconds.": "L'intervalle de synchronisation doit etre compris entre 5 et 3600 secondes.",
"Template file not found.": "Fichier modèle introuvable.",
"Test Etherpad connection": "Tester la connexion à Etherpad",
- "Test fault cleared.": "Defaut de test efface.",
- "Test fault set: {fault}": "Defaut de test defini : {fault}",
- "Test faults are available only when Nextcloud debug mode is enabled.": "Les defauts de test sont disponibles uniquement lorsque le mode debug Nextcloud est active.",
+ "Test fault cleared.": "Défaut de test effacé.",
+ "Test fault set: {fault}": "Défaut de test défini : {fault}",
+ "Test faults are available only when Nextcloud debug mode is enabled.": "Les défauts de test sont disponibles uniquement lorsque le mode debug Nextcloud est activé.",
"Testing Etherpad connection...": "Vérification de la connexion à Etherpad...",
"This .pad file has no matching pad in this Nextcloud.": "Ce fichier .pad n'a pas de pad correspondant dans ce Nextcloud.",
"This file looks like a copy of an existing .pad file in your account. Open the original to keep editing the linked pad, or create a new pad to fork the content stored in this file.": "Ce fichier ressemble à une copie d'un fichier .pad existant dans votre compte. Ouvrez l'original pour continuer à modifier le pad lié, ou créez un nouveau pad pour dupliquer le contenu stocké dans ce fichier.",
"Trusted embed origins (optional)": "Origines d'intégration de confiance (optionnel)",
"Unknown error.": "Erreur inconnue.",
- "Unsupported test fault.": "Defaut de test non pris en charge.",
+ "Unsupported test fault.": "Défaut de test non pris en charge.",
"We couldn't find a matching pad in this Nextcloud. You can create a new pad from the text stored in this file; from then on, opening this file will load the new pad.": "Nous n'avons pas trouvé de pad correspondant dans ce Nextcloud. Vous pouvez créer un nouveau pad à partir du texte stocké dans ce fichier ; à partir de là, ouvrir ce fichier chargera le nouveau pad."
},
"nplurals=2; plural=(n > 1);"
diff --git a/l10n/fr.json b/l10n/fr.json
index 3bd49b3..f798dad 100644
--- a/l10n/fr.json
+++ b/l10n/fr.json
@@ -15,15 +15,15 @@
"Cannot resolve file path for file ID.": "Impossible de résoudre le chemin du fichier pour l'identifiant.",
"Cannot resolve selected .pad file.": "Impossible de résoudre le fichier .pad sélectionné.",
"Cannot resolve selected parent folder.": "Impossible de résoudre le dossier parent sélectionné.",
- "Checking for the original pad...": "Recherche du pad original...",
+ "Checking for the original pad...": "Recherche du pad d’origine...",
"Close": "Fermer",
"Configure the Etherpad server and external pad security policy for the Etherpad Nextcloud app.": "Configurez le serveur Etherpad et la politique de sécurité des pads externes pour l'application Etherpad Nextcloud.",
- "Consistency check": "Verification de coherence",
- "Consistency check failed.": "La verification de coherence a echoue.",
- "Consistency check finished with issues.": "Verification de coherence terminee avec des problemes.",
- "Consistency check successful.": "Verification de coherence reussie.",
- "Consistency check successful. No issues found.": "Verification de coherence reussie. Aucun probleme trouve.",
- "Controls how often pad content is copied from Etherpad into the .pad file while the pad is open.": "Controle la frequence de copie du contenu du pad depuis Etherpad vers le fichier .pad pendant que le pad est ouvert.",
+ "Consistency check": "Vérification de cohérence",
+ "Consistency check failed.": "La vérification de cohérence a échoué.",
+ "Consistency check finished with issues.": "Vérification de cohérence terminée avec des problèmes.",
+ "Consistency check successful.": "Vérification de cohérence réussie.",
+ "Consistency check successful. No issues found.": "Vérification de cohérence réussie. Aucun problème trouvé.",
+ "Controls how often pad content is copied from Etherpad into the .pad file while the pad is open.": "Contrôle la fréquence de copie du contenu du pad depuis Etherpad vers le fichier .pad pendant que le pad est ouvert.",
"Cookie domain must be a hostname, not a URL.": "Le domaine du cookie doit être un nom d'hôte, pas une URL.",
"Cookie domain must be a valid shared hostname.": "Le domaine du cookie doit être un nom d'hôte partagé valide.",
"Could not check pad sync status.": "Impossible de vérifier l'état de synchronisation du pad.",
@@ -50,13 +50,13 @@
"Creating pad...": "Création du pad...",
"Creating...": "Création...",
"Delete linked Etherpad pad when .pad file is moved to trash": "Supprimer le pad Etherpad lié lorsque le fichier .pad est déplacé vers la corbeille",
- "Detected API version:": "Version API detectee :",
+ "Detected API version:": "Version API détectée :",
"Embed configuration is incomplete.": "La configuration d'intégration est incomplète.",
"Etherpad API URL (optional)": "URL API Etherpad (optionnel)",
"Etherpad API URL must not include query or fragment.": "L'URL API Etherpad ne doit pas contenir de chaîne de requête ni de fragment.",
"Etherpad API URL must use http or https.": "L'URL API Etherpad doit utiliser HTTP ou HTTPS.",
- "Etherpad API key": "Cle API Etherpad",
- "Etherpad API key is required.": "La cle API Etherpad est requise.",
+ "Etherpad API key": "Clé API Etherpad",
+ "Etherpad API key is required.": "La clé API Etherpad est requise.",
"Etherpad Base URL": "URL de base Etherpad",
"Etherpad Base URL is required.": "L'URL de base Etherpad est requise.",
"Etherpad Base URL must not include query or fragment.": "L'URL de base Etherpad ne doit pas contenir de chaîne de requête ni de fragment.",
@@ -98,8 +98,8 @@
"New pad": "Nouveau pad",
"No synced snapshot is stored in this .pad file yet.": "Aucune copie synchronisée n'est encore stockée dans ce fichier .pad.",
"Open in Etherpad": "Ouvrir dans Etherpad",
- "Open original pad": "Ouvrir le pad d'origine",
- "Open the original .pad file": "Ouvrir le fichier .pad original",
+ "Open original pad": "Ouvrir le pad d’origine",
+ "Open the original .pad file": "Ouvrir le fichier .pad d’origine",
"Optional internal URL for server-side API calls. Leave empty to use Etherpad Base URL.": "URL interne optionnelle pour les appels à l'API côté serveur. Laisser vide pour utiliser l'URL de base Etherpad.",
"Pad from another server": "Pad d'un autre serveur",
"Pad name is required.": "Le nom du pad est obligatoire.",
@@ -111,26 +111,26 @@
"Public pad from URL": "Pad public depuis une URL",
"Read-only snapshot": "Copie en lecture seule",
"Read-only snapshot from the .pad file.": "Copie en lecture seule du fichier .pad.",
- "Request failed.": "La requete a echoue.",
+ "Request failed.": "La requête a échoué.",
"Retry pending deletes now": "Réessayer les suppressions en attente maintenant",
- "Running consistency check...": "Verification de coherence en cours...",
- "Save settings": "Enregistrer les parametres",
- "Saving settings...": "Enregistrement des parametres...",
+ "Running consistency check...": "Vérification de cohérence en cours...",
+ "Save settings": "Enregistrer les paramètres",
+ "Saving settings...": "Enregistrement des paramètres...",
"Selected file is not a .pad file.": "Le fichier sélectionné n'est pas un fichier .pad.",
- "Selected parent folder is not writable.": "Le dossier parent sélectionné n'est pas modifiable.",
- "Settings saved.": "Parametres enregistres.",
+ "Selected parent folder is not writable.": "Le dossier parent sélectionné n’est pas accessible en écriture.",
+ "Settings saved.": "Paramètres enregistrés.",
"Sync interval must be between 5 and 3600 seconds.": "L'intervalle de synchronisation doit etre compris entre 5 et 3600 secondes.",
"Template file not found.": "Fichier modèle introuvable.",
"Test Etherpad connection": "Tester la connexion à Etherpad",
- "Test fault cleared.": "Defaut de test efface.",
- "Test fault set: {fault}": "Defaut de test defini : {fault}",
- "Test faults are available only when Nextcloud debug mode is enabled.": "Les defauts de test sont disponibles uniquement lorsque le mode debug Nextcloud est active.",
+ "Test fault cleared.": "Défaut de test effacé.",
+ "Test fault set: {fault}": "Défaut de test défini : {fault}",
+ "Test faults are available only when Nextcloud debug mode is enabled.": "Les défauts de test sont disponibles uniquement lorsque le mode debug Nextcloud est activé.",
"Testing Etherpad connection...": "Vérification de la connexion à Etherpad...",
"This .pad file has no matching pad in this Nextcloud.": "Ce fichier .pad n'a pas de pad correspondant dans ce Nextcloud.",
"This file looks like a copy of an existing .pad file in your account. Open the original to keep editing the linked pad, or create a new pad to fork the content stored in this file.": "Ce fichier ressemble à une copie d'un fichier .pad existant dans votre compte. Ouvrez l'original pour continuer à modifier le pad lié, ou créez un nouveau pad pour dupliquer le contenu stocké dans ce fichier.",
"Trusted embed origins (optional)": "Origines d'intégration de confiance (optionnel)",
"Unknown error.": "Erreur inconnue.",
- "Unsupported test fault.": "Defaut de test non pris en charge.",
+ "Unsupported test fault.": "Défaut de test non pris en charge.",
"We couldn't find a matching pad in this Nextcloud. You can create a new pad from the text stored in this file; from then on, opening this file will load the new pad.": "Nous n'avons pas trouvé de pad correspondant dans ce Nextcloud. Vous pouvez créer un nouveau pad à partir du texte stocké dans ce fichier ; à partir de là, ouvrir ce fichier chargera le nouveau pad."
},
"pluralForm": "nplurals=2; plural=(n > 1);"
From b33736bdb6b611a19d3795abfb449845bf61b671 Mon Sep 17 00:00:00 2001
From: Jaggob <37583151+Jaggob@users.noreply.github.com>
Date: Wed, 27 May 2026 13:44:32 +0200
Subject: [PATCH 10/13] i18n: final accent + grammar polish for ES/FR/DE
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
- FR: fix remaining unaccented strings (Renseigné automatiquement /
hôtes / déploiement / l'hôte; hôte invalide; doit être compris) and
switch the embed-origins label to a typographic apostrophe.
- ES: plural agreement for the pending-delete retry error
(pudieron, not pudo, since 'las eliminaciones' is plural).
- DE: drop the stray hyphen in 'Test-Fehler' to match the four
other 'Testfehler' strings.
---
l10n/de.js | 2 +-
l10n/de.json | 2 +-
l10n/es.js | 2 +-
l10n/es.json | 2 +-
l10n/fr.js | 8 ++++----
l10n/fr.json | 8 ++++----
6 files changed, 12 insertions(+), 12 deletions(-)
diff --git a/l10n/de.js b/l10n/de.js
index d2cbc90..b8b84fc 100644
--- a/l10n/de.js
+++ b/l10n/de.js
@@ -72,7 +72,7 @@ OC.L10N.register(
"External pad URL": "Externe Pad-URL",
"External pad URL is required.": "Externe Pad-URL ist erforderlich.",
"Failed to save settings.": "Einstellungen konnten nicht gespeichert werden.",
- "Failed to update test fault.": "Test-Fehler konnte nicht aktualisiert werden.",
+ "Failed to update test fault.": "Testfehler konnte nicht aktualisiert werden.",
"File name": "Dateiname",
"File name is required.": "Dateiname ist erforderlich.",
"Hint: API endpoint not found. Check the API host and that the configured API version is supported by your Etherpad.": "Hinweis: API-Endpunkt nicht gefunden. Prüfe den API-Host und ob die konfigurierte API-Version von deinem Etherpad unterstützt wird.",
diff --git a/l10n/de.json b/l10n/de.json
index d66ee7d..6fc7690 100644
--- a/l10n/de.json
+++ b/l10n/de.json
@@ -71,7 +71,7 @@
"External pad URL": "Externe Pad-URL",
"External pad URL is required.": "Externe Pad-URL ist erforderlich.",
"Failed to save settings.": "Einstellungen konnten nicht gespeichert werden.",
- "Failed to update test fault.": "Test-Fehler konnte nicht aktualisiert werden.",
+ "Failed to update test fault.": "Testfehler konnte nicht aktualisiert werden.",
"File name": "Dateiname",
"File name is required.": "Dateiname ist erforderlich.",
"Hint: API endpoint not found. Check the API host and that the configured API version is supported by your Etherpad.": "Hinweis: API-Endpunkt nicht gefunden. Prüfe den API-Host und ob die konfigurierte API-Version von deinem Etherpad unterstützt wird.",
diff --git a/l10n/es.js b/l10n/es.js
index 514c8a4..549ceb0 100644
--- a/l10n/es.js
+++ b/l10n/es.js
@@ -106,7 +106,7 @@ OC.L10N.register(
"Pad name is required.": "Se requiere el nombre del pad.",
"Pads": "Pads",
"Pending Etherpad deletes": "Eliminaciones pendientes en Etherpad",
- "Pending delete retry failed.": "No se pudo reintentar las eliminaciones pendientes.",
+ "Pending delete retry failed.": "No se pudieron reintentar las eliminaciones pendientes.",
"Pending delete retry finished.": "Reintento de eliminaciones pendientes completado.",
"Public pad": "Pad público",
"Public pad from URL": "Pad público desde URL",
diff --git a/l10n/es.json b/l10n/es.json
index 852b7c7..3529eae 100644
--- a/l10n/es.json
+++ b/l10n/es.json
@@ -105,7 +105,7 @@
"Pad name is required.": "Se requiere el nombre del pad.",
"Pads": "Pads",
"Pending Etherpad deletes": "Eliminaciones pendientes en Etherpad",
- "Pending delete retry failed.": "No se pudo reintentar las eliminaciones pendientes.",
+ "Pending delete retry failed.": "No se pudieron reintentar las eliminaciones pendientes.",
"Pending delete retry finished.": "Reintento de eliminaciones pendientes completado.",
"Public pad": "Pad público",
"Public pad from URL": "Pad público desde URL",
diff --git a/l10n/fr.js b/l10n/fr.js
index 5965a35..de66a1c 100644
--- a/l10n/fr.js
+++ b/l10n/fr.js
@@ -4,12 +4,12 @@ OC.L10N.register(
".pad file not found.": "Fichier .pad introuvable.",
".pad file sync interval (seconds)": "Intervalle de synchronisation du fichier .pad (secondes)",
"A file with this name already exists.": "Un fichier portant ce nom existe déjà.",
- "Absolute https origins allowed to embed the /embed/by-id and /embed/create-by-parent routes. Leave empty to disable external embedding.": "Origines HTTPS absolues autorisées à intégrer les routes /embed/by-id et /embed/create-by-parent. Laisser vide pour désactiver l'intégration externe.",
+ "Absolute https origins allowed to embed the /embed/by-id and /embed/create-by-parent routes. Leave empty to disable external embedding.": "Origines HTTPS absolues autorisées à intégrer les routes /embed/by-id et /embed/create-by-parent. Laisser vide pour désactiver l’intégration externe.",
"Add trusted Etherpad hostnames or HTTPS origins. Leave empty only if all public HTTPS hosts should be trusted.": "Ajoutez des noms d'hôte Etherpad ou des origines HTTPS de confiance. Ne laissez vide que si tous les hôtes HTTPS publics doivent être considérés comme de confiance.",
"Admin permissions required.": "Permissions administrateur requises.",
"Allow linking external public pads": "Autoriser les liens vers des pads publics externes",
"Authentication required.": "Authentification requise.",
- "Auto-filled from the Nextcloud and Etherpad hosts when possible. Adjust it if your deployment uses a proxy path or a different trusted parent domain; leave empty for a host-only cookie.": "Renseigne automatiquement depuis les hotes Nextcloud et Etherpad lorsque possible. Ajustez si le deploiement utilise un chemin proxy ou un autre domaine parent de confiance; laissez vide pour un cookie limite a l'hote.",
+ "Auto-filled from the Nextcloud and Etherpad hosts when possible. Adjust it if your deployment uses a proxy path or a different trusted parent domain; leave empty for a host-only cookie.": "Renseigné automatiquement à partir des hôtes Nextcloud et Etherpad lorsque c’est possible. À ajuster si le déploiement utilise un chemin proxy ou un autre domaine parent de confiance ; laisser vide pour un cookie limité à l’hôte.",
"Back": "Retour",
"Cannot open selected .pad file.": "Impossible d'ouvrir le fichier .pad sélectionné.",
"Cannot read selected .pad file.": "Impossible de lire le fichier .pad sélectionné.",
@@ -67,7 +67,7 @@ OC.L10N.register(
"Etherpad connection test successful.": "Connexion à Etherpad vérifiée avec succès.",
"Etherpad session cookie domain (optional)": "Domaine du cookie de session Etherpad (optionnel)",
"External allowlist URL must use https: {host}": "L'URL de la liste d'autorisation externe doit utiliser HTTPS : {host}",
- "External allowlist contains invalid host: {host}": "La liste d'autorisation externe contient un hote invalide : {host}",
+ "External allowlist contains invalid host: {host}": "La liste d’autorisation externe contient un hôte invalide : {host}",
"External host allowlist (optional)": "Liste des hôtes externes autorisés (facultatif)",
"External pad URL": "URL du pad externe",
"External pad URL is required.": "L'URL du pad externe est requise.",
@@ -120,7 +120,7 @@ OC.L10N.register(
"Selected file is not a .pad file.": "Le fichier sélectionné n'est pas un fichier .pad.",
"Selected parent folder is not writable.": "Le dossier parent sélectionné n’est pas accessible en écriture.",
"Settings saved.": "Paramètres enregistrés.",
- "Sync interval must be between 5 and 3600 seconds.": "L'intervalle de synchronisation doit etre compris entre 5 et 3600 secondes.",
+ "Sync interval must be between 5 and 3600 seconds.": "L’intervalle de synchronisation doit être compris entre 5 et 3600 secondes.",
"Template file not found.": "Fichier modèle introuvable.",
"Test Etherpad connection": "Tester la connexion à Etherpad",
"Test fault cleared.": "Défaut de test effacé.",
diff --git a/l10n/fr.json b/l10n/fr.json
index f798dad..7c57612 100644
--- a/l10n/fr.json
+++ b/l10n/fr.json
@@ -3,12 +3,12 @@
".pad file not found.": "Fichier .pad introuvable.",
".pad file sync interval (seconds)": "Intervalle de synchronisation du fichier .pad (secondes)",
"A file with this name already exists.": "Un fichier portant ce nom existe déjà.",
- "Absolute https origins allowed to embed the /embed/by-id and /embed/create-by-parent routes. Leave empty to disable external embedding.": "Origines HTTPS absolues autorisées à intégrer les routes /embed/by-id et /embed/create-by-parent. Laisser vide pour désactiver l'intégration externe.",
+ "Absolute https origins allowed to embed the /embed/by-id and /embed/create-by-parent routes. Leave empty to disable external embedding.": "Origines HTTPS absolues autorisées à intégrer les routes /embed/by-id et /embed/create-by-parent. Laisser vide pour désactiver l’intégration externe.",
"Add trusted Etherpad hostnames or HTTPS origins. Leave empty only if all public HTTPS hosts should be trusted.": "Ajoutez des noms d'hôte Etherpad ou des origines HTTPS de confiance. Ne laissez vide que si tous les hôtes HTTPS publics doivent être considérés comme de confiance.",
"Admin permissions required.": "Permissions administrateur requises.",
"Allow linking external public pads": "Autoriser les liens vers des pads publics externes",
"Authentication required.": "Authentification requise.",
- "Auto-filled from the Nextcloud and Etherpad hosts when possible. Adjust it if your deployment uses a proxy path or a different trusted parent domain; leave empty for a host-only cookie.": "Renseigne automatiquement depuis les hotes Nextcloud et Etherpad lorsque possible. Ajustez si le deploiement utilise un chemin proxy ou un autre domaine parent de confiance; laissez vide pour un cookie limite a l'hote.",
+ "Auto-filled from the Nextcloud and Etherpad hosts when possible. Adjust it if your deployment uses a proxy path or a different trusted parent domain; leave empty for a host-only cookie.": "Renseigné automatiquement à partir des hôtes Nextcloud et Etherpad lorsque c’est possible. À ajuster si le déploiement utilise un chemin proxy ou un autre domaine parent de confiance ; laisser vide pour un cookie limité à l’hôte.",
"Back": "Retour",
"Cannot open selected .pad file.": "Impossible d'ouvrir le fichier .pad sélectionné.",
"Cannot read selected .pad file.": "Impossible de lire le fichier .pad sélectionné.",
@@ -66,7 +66,7 @@
"Etherpad connection test successful.": "Connexion à Etherpad vérifiée avec succès.",
"Etherpad session cookie domain (optional)": "Domaine du cookie de session Etherpad (optionnel)",
"External allowlist URL must use https: {host}": "L'URL de la liste d'autorisation externe doit utiliser HTTPS : {host}",
- "External allowlist contains invalid host: {host}": "La liste d'autorisation externe contient un hote invalide : {host}",
+ "External allowlist contains invalid host: {host}": "La liste d’autorisation externe contient un hôte invalide : {host}",
"External host allowlist (optional)": "Liste des hôtes externes autorisés (facultatif)",
"External pad URL": "URL du pad externe",
"External pad URL is required.": "L'URL du pad externe est requise.",
@@ -119,7 +119,7 @@
"Selected file is not a .pad file.": "Le fichier sélectionné n'est pas un fichier .pad.",
"Selected parent folder is not writable.": "Le dossier parent sélectionné n’est pas accessible en écriture.",
"Settings saved.": "Paramètres enregistrés.",
- "Sync interval must be between 5 and 3600 seconds.": "L'intervalle de synchronisation doit etre compris entre 5 et 3600 secondes.",
+ "Sync interval must be between 5 and 3600 seconds.": "L’intervalle de synchronisation doit être compris entre 5 et 3600 secondes.",
"Template file not found.": "Fichier modèle introuvable.",
"Test Etherpad connection": "Tester la connexion à Etherpad",
"Test fault cleared.": "Défaut de test effacé.",
From 8df414e2ae010c4d9efe1fd38cdb8bfa50a32385 Mon Sep 17 00:00:00 2001
From: Jaggob <37583151+Jaggob@users.noreply.github.com>
Date: Wed, 27 May 2026 13:59:30 +0200
Subject: [PATCH 11/13] i18n: FR Indice -> Conseil, Laisser-vide consistency,
ES punto final
- FR: unify all 10 'Hint:' translations from 'Indice :' to
'Conseil :' (more natural French for a UI tip prefix). Switch
the one imperative 'Ne laissez vide' line to infinitive so all
four 'Laisser vide / Ne laisser vide' settings hints share the
same register.
- ES: 'punto final de la API' instead of 'punto de acceso de la
API' (technical term for endpoint).
---
l10n/es.js | 2 +-
l10n/es.json | 2 +-
l10n/fr.js | 22 +++++++++++-----------
l10n/fr.json | 22 +++++++++++-----------
4 files changed, 24 insertions(+), 24 deletions(-)
diff --git a/l10n/es.js b/l10n/es.js
index 549ceb0..4ab64d6 100644
--- a/l10n/es.js
+++ b/l10n/es.js
@@ -75,7 +75,7 @@ OC.L10N.register(
"Failed to update test fault.": "No se pudo actualizar el fallo de prueba.",
"File name": "Nombre de archivo",
"File name is required.": "El nombre de archivo es obligatorio.",
- "Hint: API endpoint not found. Check the API host and that the configured API version is supported by your Etherpad.": "Sugerencia: punto de acceso de la API no encontrado. Comprueba el host de la API y que la versión configurada sea compatible con tu Etherpad.",
+ "Hint: API endpoint not found. Check the API host and that the configured API version is supported by your Etherpad.": "Sugerencia: punto final de la API no encontrado. Comprueba el host de la API y que la versión configurada sea compatible con tu Etherpad.",
"Hint: Connection refused. Etherpad does not appear to be running on the configured host and port.": "Sugerencia: conexión rechazada. Etherpad no parece estar ejecutándose en el host y puerto configurados.",
"Hint: Connection timed out. Check that this server can reach the Etherpad host (firewall, network).": "Sugerencia: tiempo de conexión agotado. Comprueba que este servidor pueda acceder al host de Etherpad (cortafuegos, red).",
"Hint: Could not reach Etherpad. Check the API host and that this server can connect to it.": "Sugerencia: no se pudo contactar con Etherpad. Comprueba el host de la API y que este servidor pueda conectarse a él.",
diff --git a/l10n/es.json b/l10n/es.json
index 3529eae..7754d9e 100644
--- a/l10n/es.json
+++ b/l10n/es.json
@@ -74,7 +74,7 @@
"Failed to update test fault.": "No se pudo actualizar el fallo de prueba.",
"File name": "Nombre de archivo",
"File name is required.": "El nombre de archivo es obligatorio.",
- "Hint: API endpoint not found. Check the API host and that the configured API version is supported by your Etherpad.": "Sugerencia: punto de acceso de la API no encontrado. Comprueba el host de la API y que la versión configurada sea compatible con tu Etherpad.",
+ "Hint: API endpoint not found. Check the API host and that the configured API version is supported by your Etherpad.": "Sugerencia: punto final de la API no encontrado. Comprueba el host de la API y que la versión configurada sea compatible con tu Etherpad.",
"Hint: Connection refused. Etherpad does not appear to be running on the configured host and port.": "Sugerencia: conexión rechazada. Etherpad no parece estar ejecutándose en el host y puerto configurados.",
"Hint: Connection timed out. Check that this server can reach the Etherpad host (firewall, network).": "Sugerencia: tiempo de conexión agotado. Comprueba que este servidor pueda acceder al host de Etherpad (cortafuegos, red).",
"Hint: Could not reach Etherpad. Check the API host and that this server can connect to it.": "Sugerencia: no se pudo contactar con Etherpad. Comprueba el host de la API y que este servidor pueda conectarse a él.",
diff --git a/l10n/fr.js b/l10n/fr.js
index de66a1c..39a70ba 100644
--- a/l10n/fr.js
+++ b/l10n/fr.js
@@ -5,7 +5,7 @@ OC.L10N.register(
".pad file sync interval (seconds)": "Intervalle de synchronisation du fichier .pad (secondes)",
"A file with this name already exists.": "Un fichier portant ce nom existe déjà.",
"Absolute https origins allowed to embed the /embed/by-id and /embed/create-by-parent routes. Leave empty to disable external embedding.": "Origines HTTPS absolues autorisées à intégrer les routes /embed/by-id et /embed/create-by-parent. Laisser vide pour désactiver l’intégration externe.",
- "Add trusted Etherpad hostnames or HTTPS origins. Leave empty only if all public HTTPS hosts should be trusted.": "Ajoutez des noms d'hôte Etherpad ou des origines HTTPS de confiance. Ne laissez vide que si tous les hôtes HTTPS publics doivent être considérés comme de confiance.",
+ "Add trusted Etherpad hostnames or HTTPS origins. Leave empty only if all public HTTPS hosts should be trusted.": "Ajouter des noms d’hôte Etherpad ou des origines HTTPS de confiance. Ne laisser vide que si tous les hôtes HTTPS publics doivent être considérés comme de confiance.",
"Admin permissions required.": "Permissions administrateur requises.",
"Allow linking external public pads": "Autoriser les liens vers des pads publics externes",
"Authentication required.": "Authentification requise.",
@@ -75,16 +75,16 @@ OC.L10N.register(
"Failed to update test fault.": "Échec de la mise à jour de l'erreur de test.",
"File name": "Nom de fichier",
"File name is required.": "Le nom de fichier est requis.",
- "Hint: API endpoint not found. Check the API host and that the configured API version is supported by your Etherpad.": "Indice : point d'accès de l'API introuvable. Vérifiez l'hôte de l'API et que la version configurée est prise en charge par votre Etherpad.",
- "Hint: Connection refused. Etherpad does not appear to be running on the configured host and port.": "Indice : connexion refusée. Etherpad ne semble pas être en cours d'exécution sur l'hôte et le port configurés.",
- "Hint: Connection timed out. Check that this server can reach the Etherpad host (firewall, network).": "Indice : délai de connexion dépassé. Vérifiez que ce serveur peut joindre l'hôte Etherpad (pare-feu, réseau).",
- "Hint: Could not reach Etherpad. Check the API host and that this server can connect to it.": "Indice : impossible de joindre Etherpad. Vérifiez l'hôte de l'API et que ce serveur peut s'y connecter.",
- "Hint: Etherpad rejected the API key. Check that the key matches Etherpad's APIKEY.txt.": "Indice : Etherpad a rejeté la clé d'API. Vérifiez que la clé correspond au fichier APIKEY.txt d'Etherpad.",
- "Hint: Etherpad returned a server error. Check the Etherpad server logs.": "Indice : Etherpad a renvoyé une erreur serveur. Consultez les journaux du serveur Etherpad.",
- "Hint: Etherpad returned non-JSON. Likely a reverse proxy or HTML error page in front of the API host.": "Indice : Etherpad a renvoyé un contenu non JSON. Probablement un proxy inverse ou une page d'erreur HTML devant l'hôte de l'API.",
- "Hint: Set \"authenticationMethod\": \"apikey\" in Etherpad's settings.json.": "Indice : définissez \"authenticationMethod\": \"apikey\" dans le fichier settings.json d'Etherpad.",
- "Hint: TLS handshake failed. Check the Etherpad certificate and that the configured URL uses the right scheme.": "Indice : l'établissement de la connexion TLS a échoué. Vérifiez le certificat Etherpad et que l'URL configurée utilise le bon schéma.",
- "Hint: The configured Etherpad host did not resolve. Check the hostname for typos and that DNS reaches it from this server.": "Indice : l'hôte Etherpad configuré n'a pas été résolu. Vérifiez l'absence de fautes de frappe et que le DNS l'atteint depuis ce serveur.",
+ "Hint: API endpoint not found. Check the API host and that the configured API version is supported by your Etherpad.": "Conseil : point de terminaison de l’API introuvable. Vérifiez l’hôte de l’API et que la version configurée est prise en charge par votre Etherpad.",
+ "Hint: Connection refused. Etherpad does not appear to be running on the configured host and port.": "Conseil : connexion refusée. Etherpad ne semble pas être en cours d’exécution sur l’hôte et le port configurés.",
+ "Hint: Connection timed out. Check that this server can reach the Etherpad host (firewall, network).": "Conseil : délai de connexion dépassé. Vérifiez que ce serveur peut joindre l’hôte Etherpad (pare-feu, réseau).",
+ "Hint: Could not reach Etherpad. Check the API host and that this server can connect to it.": "Conseil : impossible de joindre Etherpad. Vérifiez l’hôte de l’API et que ce serveur peut s’y connecter.",
+ "Hint: Etherpad rejected the API key. Check that the key matches Etherpad's APIKEY.txt.": "Conseil : Etherpad a rejeté la clé d’API. Vérifiez que la clé correspond au fichier APIKEY.txt d’Etherpad.",
+ "Hint: Etherpad returned a server error. Check the Etherpad server logs.": "Conseil : Etherpad a renvoyé une erreur serveur. Consultez les journaux du serveur Etherpad.",
+ "Hint: Etherpad returned non-JSON. Likely a reverse proxy or HTML error page in front of the API host.": "Conseil : Etherpad a renvoyé un contenu non JSON. Probablement un proxy inverse ou une page d’erreur HTML devant l’hôte de l’API.",
+ "Hint: Set \"authenticationMethod\": \"apikey\" in Etherpad's settings.json.": "Conseil : définissez \"authenticationMethod\": \"apikey\" dans le fichier settings.json d’Etherpad.",
+ "Hint: TLS handshake failed. Check the Etherpad certificate and that the configured URL uses the right scheme.": "Conseil : l’établissement de la connexion TLS a échoué. Vérifiez le certificat Etherpad et que l’URL configurée utilise le bon schéma.",
+ "Hint: The configured Etherpad host did not resolve. Check the hostname for typos and that DNS reaches it from this server.": "Conseil : l’hôte Etherpad configuré n’a pas été résolu. Vérifiez l’absence de fautes de frappe et que le DNS l’atteint depuis ce serveur.",
"If enabled, moving a .pad file to the trash also deletes the linked Etherpad pad.": "Si activé, déplacer un fichier .pad vers la corbeille supprime également le pad Etherpad lié.",
"Invalid Etherpad API URL.": "URL API Etherpad invalide.",
"Invalid Etherpad API version format.": "Format de version API Etherpad invalide.",
diff --git a/l10n/fr.json b/l10n/fr.json
index 7c57612..4b1bfcd 100644
--- a/l10n/fr.json
+++ b/l10n/fr.json
@@ -4,7 +4,7 @@
".pad file sync interval (seconds)": "Intervalle de synchronisation du fichier .pad (secondes)",
"A file with this name already exists.": "Un fichier portant ce nom existe déjà.",
"Absolute https origins allowed to embed the /embed/by-id and /embed/create-by-parent routes. Leave empty to disable external embedding.": "Origines HTTPS absolues autorisées à intégrer les routes /embed/by-id et /embed/create-by-parent. Laisser vide pour désactiver l’intégration externe.",
- "Add trusted Etherpad hostnames or HTTPS origins. Leave empty only if all public HTTPS hosts should be trusted.": "Ajoutez des noms d'hôte Etherpad ou des origines HTTPS de confiance. Ne laissez vide que si tous les hôtes HTTPS publics doivent être considérés comme de confiance.",
+ "Add trusted Etherpad hostnames or HTTPS origins. Leave empty only if all public HTTPS hosts should be trusted.": "Ajouter des noms d’hôte Etherpad ou des origines HTTPS de confiance. Ne laisser vide que si tous les hôtes HTTPS publics doivent être considérés comme de confiance.",
"Admin permissions required.": "Permissions administrateur requises.",
"Allow linking external public pads": "Autoriser les liens vers des pads publics externes",
"Authentication required.": "Authentification requise.",
@@ -74,16 +74,16 @@
"Failed to update test fault.": "Échec de la mise à jour de l'erreur de test.",
"File name": "Nom de fichier",
"File name is required.": "Le nom de fichier est requis.",
- "Hint: API endpoint not found. Check the API host and that the configured API version is supported by your Etherpad.": "Indice : point d'accès de l'API introuvable. Vérifiez l'hôte de l'API et que la version configurée est prise en charge par votre Etherpad.",
- "Hint: Connection refused. Etherpad does not appear to be running on the configured host and port.": "Indice : connexion refusée. Etherpad ne semble pas être en cours d'exécution sur l'hôte et le port configurés.",
- "Hint: Connection timed out. Check that this server can reach the Etherpad host (firewall, network).": "Indice : délai de connexion dépassé. Vérifiez que ce serveur peut joindre l'hôte Etherpad (pare-feu, réseau).",
- "Hint: Could not reach Etherpad. Check the API host and that this server can connect to it.": "Indice : impossible de joindre Etherpad. Vérifiez l'hôte de l'API et que ce serveur peut s'y connecter.",
- "Hint: Etherpad rejected the API key. Check that the key matches Etherpad's APIKEY.txt.": "Indice : Etherpad a rejeté la clé d'API. Vérifiez que la clé correspond au fichier APIKEY.txt d'Etherpad.",
- "Hint: Etherpad returned a server error. Check the Etherpad server logs.": "Indice : Etherpad a renvoyé une erreur serveur. Consultez les journaux du serveur Etherpad.",
- "Hint: Etherpad returned non-JSON. Likely a reverse proxy or HTML error page in front of the API host.": "Indice : Etherpad a renvoyé un contenu non JSON. Probablement un proxy inverse ou une page d'erreur HTML devant l'hôte de l'API.",
- "Hint: Set \"authenticationMethod\": \"apikey\" in Etherpad's settings.json.": "Indice : définissez \"authenticationMethod\": \"apikey\" dans le fichier settings.json d'Etherpad.",
- "Hint: TLS handshake failed. Check the Etherpad certificate and that the configured URL uses the right scheme.": "Indice : l'établissement de la connexion TLS a échoué. Vérifiez le certificat Etherpad et que l'URL configurée utilise le bon schéma.",
- "Hint: The configured Etherpad host did not resolve. Check the hostname for typos and that DNS reaches it from this server.": "Indice : l'hôte Etherpad configuré n'a pas été résolu. Vérifiez l'absence de fautes de frappe et que le DNS l'atteint depuis ce serveur.",
+ "Hint: API endpoint not found. Check the API host and that the configured API version is supported by your Etherpad.": "Conseil : point de terminaison de l’API introuvable. Vérifiez l’hôte de l’API et que la version configurée est prise en charge par votre Etherpad.",
+ "Hint: Connection refused. Etherpad does not appear to be running on the configured host and port.": "Conseil : connexion refusée. Etherpad ne semble pas être en cours d’exécution sur l’hôte et le port configurés.",
+ "Hint: Connection timed out. Check that this server can reach the Etherpad host (firewall, network).": "Conseil : délai de connexion dépassé. Vérifiez que ce serveur peut joindre l’hôte Etherpad (pare-feu, réseau).",
+ "Hint: Could not reach Etherpad. Check the API host and that this server can connect to it.": "Conseil : impossible de joindre Etherpad. Vérifiez l’hôte de l’API et que ce serveur peut s’y connecter.",
+ "Hint: Etherpad rejected the API key. Check that the key matches Etherpad's APIKEY.txt.": "Conseil : Etherpad a rejeté la clé d’API. Vérifiez que la clé correspond au fichier APIKEY.txt d’Etherpad.",
+ "Hint: Etherpad returned a server error. Check the Etherpad server logs.": "Conseil : Etherpad a renvoyé une erreur serveur. Consultez les journaux du serveur Etherpad.",
+ "Hint: Etherpad returned non-JSON. Likely a reverse proxy or HTML error page in front of the API host.": "Conseil : Etherpad a renvoyé un contenu non JSON. Probablement un proxy inverse ou une page d’erreur HTML devant l’hôte de l’API.",
+ "Hint: Set \"authenticationMethod\": \"apikey\" in Etherpad's settings.json.": "Conseil : définissez \"authenticationMethod\": \"apikey\" dans le fichier settings.json d’Etherpad.",
+ "Hint: TLS handshake failed. Check the Etherpad certificate and that the configured URL uses the right scheme.": "Conseil : l’établissement de la connexion TLS a échoué. Vérifiez le certificat Etherpad et que l’URL configurée utilise le bon schéma.",
+ "Hint: The configured Etherpad host did not resolve. Check the hostname for typos and that DNS reaches it from this server.": "Conseil : l’hôte Etherpad configuré n’a pas été résolu. Vérifiez l’absence de fautes de frappe et que le DNS l’atteint depuis ce serveur.",
"If enabled, moving a .pad file to the trash also deletes the linked Etherpad pad.": "Si activé, déplacer un fichier .pad vers la corbeille supprime également le pad Etherpad lié.",
"Invalid Etherpad API URL.": "URL API Etherpad invalide.",
"Invalid Etherpad API version format.": "Format de version API Etherpad invalide.",
From c3ca78ce2dab7346cd363bb42230ab166eb0e405 Mon Sep 17 00:00:00 2001
From: Jaggob <37583151+Jaggob@users.noreply.github.com>
Date: Wed, 27 May 2026 14:05:51 +0200
Subject: [PATCH 12/13] i18n: rename allowlist label to clarify scope (Etherpad
hosts only)
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
'External host allowlist' was ambiguous — sounded like a generic
firewall-style host filter. It's actually the list of Etherpad
server hostnames from which external pads may be linked. Rename
source key to 'External Etherpad host allowlist (optional)' and
update DE/ES/FR accordingly. DE uses the positive phrasing
'Erlaubte externe Etherpad-Hosts (optional)' (drops 'Allowlist'
in favor of the clearer 'Erlaubte ... Hosts').
---
l10n/de.js | 2 +-
l10n/de.json | 2 +-
l10n/es.js | 2 +-
l10n/es.json | 2 +-
l10n/fr.js | 2 +-
l10n/fr.json | 2 +-
lib/Settings/AdminSettings.php | 2 +-
7 files changed, 7 insertions(+), 7 deletions(-)
diff --git a/l10n/de.js b/l10n/de.js
index b8b84fc..908cec7 100644
--- a/l10n/de.js
+++ b/l10n/de.js
@@ -66,9 +66,9 @@ OC.L10N.register(
"Etherpad connection test failed: {detail}": "Etherpad-Verbindung konnte nicht geprüft werden: {detail}",
"Etherpad connection test successful.": "Etherpad-Verbindung erfolgreich geprüft.",
"Etherpad session cookie domain (optional)": "Etherpad-Session-Cookie-Domain (optional)",
+ "External Etherpad host allowlist (optional)": "Erlaubte externe Etherpad-Hosts (optional)",
"External allowlist URL must use https: {host}": "Die externe Allowlist-URL muss HTTPS verwenden: {host}",
"External allowlist contains invalid host: {host}": "Die externe Allowlist enthält einen ungültigen Host: {host}",
- "External host allowlist (optional)": "Allowlist externer Hosts (optional)",
"External pad URL": "Externe Pad-URL",
"External pad URL is required.": "Externe Pad-URL ist erforderlich.",
"Failed to save settings.": "Einstellungen konnten nicht gespeichert werden.",
diff --git a/l10n/de.json b/l10n/de.json
index 6fc7690..29ed19c 100644
--- a/l10n/de.json
+++ b/l10n/de.json
@@ -65,9 +65,9 @@
"Etherpad connection test failed: {detail}": "Etherpad-Verbindung konnte nicht geprüft werden: {detail}",
"Etherpad connection test successful.": "Etherpad-Verbindung erfolgreich geprüft.",
"Etherpad session cookie domain (optional)": "Etherpad-Session-Cookie-Domain (optional)",
+ "External Etherpad host allowlist (optional)": "Erlaubte externe Etherpad-Hosts (optional)",
"External allowlist URL must use https: {host}": "Die externe Allowlist-URL muss HTTPS verwenden: {host}",
"External allowlist contains invalid host: {host}": "Die externe Allowlist enthält einen ungültigen Host: {host}",
- "External host allowlist (optional)": "Allowlist externer Hosts (optional)",
"External pad URL": "Externe Pad-URL",
"External pad URL is required.": "Externe Pad-URL ist erforderlich.",
"Failed to save settings.": "Einstellungen konnten nicht gespeichert werden.",
diff --git a/l10n/es.js b/l10n/es.js
index 4ab64d6..f02c99b 100644
--- a/l10n/es.js
+++ b/l10n/es.js
@@ -66,9 +66,9 @@ OC.L10N.register(
"Etherpad connection test failed: {detail}": "No se pudo comprobar la conexión con Etherpad: {detail}",
"Etherpad connection test successful.": "Conexión con Etherpad comprobada correctamente.",
"Etherpad session cookie domain (optional)": "Dominio de cookie de sesión de Etherpad (opcional)",
+ "External Etherpad host allowlist (optional)": "Lista de hosts Etherpad externos permitidos (opcional)",
"External allowlist URL must use https: {host}": "La URL de la lista de permitidos externa debe usar HTTPS: {host}",
"External allowlist contains invalid host: {host}": "La lista de permitidos externa contiene un host no válido: {host}",
- "External host allowlist (optional)": "Lista de hosts externos permitidos (opcional)",
"External pad URL": "URL de pad externo",
"External pad URL is required.": "La URL de pad externo es obligatoria.",
"Failed to save settings.": "No se han podido guardar los ajustes.",
diff --git a/l10n/es.json b/l10n/es.json
index 7754d9e..087ad8f 100644
--- a/l10n/es.json
+++ b/l10n/es.json
@@ -65,9 +65,9 @@
"Etherpad connection test failed: {detail}": "No se pudo comprobar la conexión con Etherpad: {detail}",
"Etherpad connection test successful.": "Conexión con Etherpad comprobada correctamente.",
"Etherpad session cookie domain (optional)": "Dominio de cookie de sesión de Etherpad (opcional)",
+ "External Etherpad host allowlist (optional)": "Lista de hosts Etherpad externos permitidos (opcional)",
"External allowlist URL must use https: {host}": "La URL de la lista de permitidos externa debe usar HTTPS: {host}",
"External allowlist contains invalid host: {host}": "La lista de permitidos externa contiene un host no válido: {host}",
- "External host allowlist (optional)": "Lista de hosts externos permitidos (opcional)",
"External pad URL": "URL de pad externo",
"External pad URL is required.": "La URL de pad externo es obligatoria.",
"Failed to save settings.": "No se han podido guardar los ajustes.",
diff --git a/l10n/fr.js b/l10n/fr.js
index 39a70ba..7c1afdb 100644
--- a/l10n/fr.js
+++ b/l10n/fr.js
@@ -66,9 +66,9 @@ OC.L10N.register(
"Etherpad connection test failed: {detail}": "Impossible de vérifier la connexion à Etherpad : {detail}",
"Etherpad connection test successful.": "Connexion à Etherpad vérifiée avec succès.",
"Etherpad session cookie domain (optional)": "Domaine du cookie de session Etherpad (optionnel)",
+ "External Etherpad host allowlist (optional)": "Liste des hôtes Etherpad externes autorisés (facultatif)",
"External allowlist URL must use https: {host}": "L'URL de la liste d'autorisation externe doit utiliser HTTPS : {host}",
"External allowlist contains invalid host: {host}": "La liste d’autorisation externe contient un hôte invalide : {host}",
- "External host allowlist (optional)": "Liste des hôtes externes autorisés (facultatif)",
"External pad URL": "URL du pad externe",
"External pad URL is required.": "L'URL du pad externe est requise.",
"Failed to save settings.": "Impossible d'enregistrer les paramètres.",
diff --git a/l10n/fr.json b/l10n/fr.json
index 4b1bfcd..cf85dad 100644
--- a/l10n/fr.json
+++ b/l10n/fr.json
@@ -65,9 +65,9 @@
"Etherpad connection test failed: {detail}": "Impossible de vérifier la connexion à Etherpad : {detail}",
"Etherpad connection test successful.": "Connexion à Etherpad vérifiée avec succès.",
"Etherpad session cookie domain (optional)": "Domaine du cookie de session Etherpad (optionnel)",
+ "External Etherpad host allowlist (optional)": "Liste des hôtes Etherpad externes autorisés (facultatif)",
"External allowlist URL must use https: {host}": "L'URL de la liste d'autorisation externe doit utiliser HTTPS : {host}",
"External allowlist contains invalid host: {host}": "La liste d’autorisation externe contient un hôte invalide : {host}",
- "External host allowlist (optional)": "Liste des hôtes externes autorisés (facultatif)",
"External pad URL": "URL du pad externe",
"External pad URL is required.": "L'URL du pad externe est requise.",
"Failed to save settings.": "Impossible d'enregistrer les paramètres.",
diff --git a/lib/Settings/AdminSettings.php b/lib/Settings/AdminSettings.php
index 358f0f8..41ef867 100644
--- a/lib/Settings/AdminSettings.php
+++ b/lib/Settings/AdminSettings.php
@@ -77,7 +77,7 @@ public function getForm(): TemplateResponse {
'delete_on_trash' => $this->l10n->t('Delete linked Etherpad pad when .pad file is moved to trash'),
'delete_on_trash_hint' => $this->l10n->t('If enabled, moving a .pad file to the trash also deletes the linked Etherpad pad.'),
'allow_external_pads' => $this->l10n->t('Allow linking external public pads'),
- 'external_allowlist' => $this->l10n->t('External host allowlist (optional)'),
+ 'external_allowlist' => $this->l10n->t('External Etherpad host allowlist (optional)'),
'external_allowlist_hint' => $this->l10n->t('Add trusted Etherpad hostnames or HTTPS origins. Leave empty only if all public HTTPS hosts should be trusted.'),
'trusted_embed_origins' => $this->l10n->t('Trusted embed origins (optional)'),
'trusted_embed_origins_hint' => $this->l10n->t('Absolute https origins allowed to embed the /embed/by-id and /embed/create-by-parent routes. Leave empty to disable external embedding.'),
From 39b0e7232ddd5bfca014e64f198fe7be4d9d9094 Mon Sep 17 00:00:00 2001
From: Jaggob <37583151+Jaggob@users.noreply.github.com>
Date: Wed, 27 May 2026 14:13:53 +0200
Subject: [PATCH 13/13] docs: refresh i18n.md and README after locale-structure
cleanup
- docs/i18n.md: rewrite for the new layout (de/es/fr only, .json + .js
per locale, no .php, no de_DE mirror). Note the translatewiki plan
and link the Nextcloud l10n docs.
- README: 'Health check' -> 'Test Etherpad connection' to match the
renamed admin button.
---
README.md | 2 +-
docs/i18n.md | 46 +++++++++++++++++++++++++++-------------------
2 files changed, 28 insertions(+), 20 deletions(-)
diff --git a/README.md b/README.md
index cac6089..6e29c84 100644
--- a/README.md
+++ b/README.md
@@ -174,7 +174,7 @@ PHP checks and optional E2E checks are described in [docs/release-process.md](do
### Protected pad permission errors
- Verify Etherpad API key and Etherpad auth mode
-- Run admin `Health check` in `Settings -> Administration -> Pads`
+- Run admin `Test Etherpad connection` in `Settings -> Administration -> Pads`
### Protected pads fail because of cookies / iframe auth
diff --git a/docs/i18n.md b/docs/i18n.md
index 96d0ddc..ed5e5d0 100644
--- a/docs/i18n.md
+++ b/docs/i18n.md
@@ -5,31 +5,39 @@ SPDX-License-Identifier: AGPL-3.0-or-later
## Status
- Admin settings UI text uses Nextcloud L10N (`IL10N->t(...)` / `t(app, key)`).
-- File menu labels for `+ New` are localized (`New pad`, `Public pad`, `External public pad`).
+- File menu labels for `+ New` are localized (`New pad`, `Public pad`, `Public pad from URL`).
+- Currently maintained locales: `de`, `es`, `fr`. Additional locales are
+ expected to come in via translatewiki once the project is onboarded.
## Translation File Formats
-Available translations currently exist in multiple formats:
+Per locale we ship two files in `l10n/`:
-- `l10n/de.json`
-- `l10n/de_DE.json`
-- `l10n/de.php`
-- `l10n/de_DE.php`
-- `l10n/de.js`
-- `l10n/de_DE.js`
-- `l10n/fr.json`
-- `l10n/fr.php`
-- `l10n/fr.js`
-- `l10n/es.json`
-- `l10n/es.php`
-- `l10n/es.js`
+- `l10n/