From 423bf1a53f4e49cb84cf23b4d7bd458e0d7e9bf6 Mon Sep 17 00:00:00 2001 From: Marc Brooks Date: Tue, 14 Oct 2025 18:15:57 -0500 Subject: [PATCH] Delete unused messages --- scripts/find_duplicate_translations.py | 82 ++++++++++++++++ scripts/find_unused_messages.py | 96 +++++++++++++++++++ ui/localization/messages/da.json | 37 +------ ui/localization/messages/de.json | 35 +------ ui/localization/messages/en.json | 35 +------ ui/localization/messages/es.json | 35 +------ ui/localization/messages/fr.json | 35 +------ ui/localization/messages/it.json | 35 +------ ui/localization/messages/nb.json | 35 +------ ui/localization/messages/sv.json | 35 +------ ui/localization/messages/zh.json | 35 +------ .../popovers/WakeOnLan/AddDeviceForm.tsx | 2 +- .../devices.$id.settings.macros.edit.tsx | 2 +- .../routes/devices.$id.settings.network.tsx | 2 +- 14 files changed, 191 insertions(+), 310 deletions(-) create mode 100644 scripts/find_duplicate_translations.py create mode 100644 scripts/find_unused_messages.py diff --git a/scripts/find_duplicate_translations.py b/scripts/find_duplicate_translations.py new file mode 100644 index 00000000..fdb24904 --- /dev/null +++ b/scripts/find_duplicate_translations.py @@ -0,0 +1,82 @@ +#!/usr/bin/env python3 +import argparse +import json +import os +import re +from datetime import datetime +from pathlib import Path + +def flatten_strings(obj, prefix=""): + if isinstance(obj, dict): + for k, v in obj.items(): + key = f"{prefix}.{k}" if prefix else k + yield from flatten_strings(v, key) + else: + # only consider scalar strings for translation targets + if isinstance(obj, str): + yield prefix, obj + +def normalize(s, ignore_case=False, trim=False, collapse_ws=False): + if collapse_ws: + s = re.sub(r"\s+", " ", s) + if trim: + s = s.strip() + if ignore_case: + s = s.lower() + return s + +def main(): + p = argparse.ArgumentParser(description="Find identical translation targets with different keys in en.json") + p.add_argument("--en", default="../ui/localization/messages/en.json", help="path to en.json") + p.add_argument("--out", default="../reports/duplicate_translations.json", help="output report path (JSON)") + p.add_argument("--ignore-case", action="store_true", help="ignore case when comparing values") + p.add_argument("--trim", action="store_true", help="trim surrounding whitespace before comparing") + p.add_argument("--collapse-ws", action="store_true", help="collapse internal whitespace before comparing") + args = p.parse_args() + + en_path = Path(args.en) + if not en_path.is_file(): + print(f"en.json not found: {en_path}") + raise SystemExit(2) + + with en_path.open(encoding="utf-8") as f: + payload = json.load(f) + + entries = list(flatten_strings(payload)) + total_keys = len(entries) + + groups = {} + original_values = {} + for key, val in entries: + norm = normalize(val, ignore_case=args.ignore_case, trim=args.trim, collapse_ws=args.collapse_ws) + groups.setdefault(norm, []).append(key) + # keep the first seen original for reporting + original_values.setdefault(norm, val) + + duplicates = [] + for norm, keys in groups.items(): + if len(keys) > 1: + duplicates.append({ + "normalized_value": norm, + "original_value": original_values.get(norm), + "keys": sorted(keys), + "count": len(keys) + }) + + report = { + "generated_at": datetime.utcnow().isoformat() + "Z", + "en_json": str(en_path), + "total_string_keys": total_keys, + "duplicate_groups": sorted(duplicates, key=lambda d: (-d["count"], d["normalized_value"])), + "duplicate_count": len(duplicates) + } + + out_path = Path(args.out) + out_path.parent.mkdir(parents=True, exist_ok=True) + with out_path.open("w", encoding="utf-8") as f: + json.dump(report, f, indent=2, ensure_ascii=False) + + print(f"Wrote {out_path} — total keys: {total_keys}, duplicate groups: {len(duplicates)}") + +if __name__ == "__main__": + main() \ No newline at end of file diff --git a/scripts/find_unused_messages.py b/scripts/find_unused_messages.py new file mode 100644 index 00000000..fc90c03b --- /dev/null +++ b/scripts/find_unused_messages.py @@ -0,0 +1,96 @@ +#!/usr/bin/env python3 +import argparse +import json +import os +import re +from datetime import datetime +from pathlib import Path + +def flatten(d, prefix=""): + for k, v in d.items(): + key = f"{prefix}.{k}" if prefix else k + if isinstance(v, dict): + yield from flatten(v, key) + else: + yield key + +def gather_files(src_dir, exts=(".ts", ".tsx", ".js", ".jsx", ".html", ".vue", ".json")): + for root, _, files in os.walk(src_dir): + parts = root.split(os.sep) + if "node_modules" in parts or ".git" in parts: + continue + for fn in files: + if fn.endswith(exts): + yield Path(root) / fn + +def find_usages(keys, files): + usages = {k: [] for k in keys} + # Precompile patterns for speed + patterns = {k: re.compile(r"\bm\." + re.escape(k) + r"\s*\(") for k in keys} + for file in files: + try: + text = file.read_text(encoding="utf-8") + except Exception: + continue + lines = text.splitlines() + for i, line in enumerate(lines, start=1): + for k, pat in patterns.items(): + if pat.search(line): + usages[k].append({ + "file": str(file), + "line": i, + "text": line.strip() + }) + return usages + +def main(): + p = argparse.ArgumentParser(description="Generate JSON report of localization key usage (m.key_name_here()).") + p.add_argument("--en", default="../ui/localization/messages/en.json", help="path to en.json") + p.add_argument("--src", default="../ui", help="root source directory to scan") + p.add_argument("--out", default="../reports/localization_report.json", help="output report file") + args = p.parse_args() + + en_path = Path(args.en) + if not en_path.is_file(): + print(f"en.json not found: {en_path}", flush=True) + raise SystemExit(2) + + with en_path.open(encoding="utf-8") as f: + payload = json.load(f) + + keys = sorted(list(flatten(payload))) + files = list(gather_files(args.src)) + usages = find_usages(keys, files) + + report = { + "generated_at": datetime.utcnow().isoformat() + "Z", + "en_json": str(en_path), + "src_root": args.src, + "total_keys": len(keys), + "keys": {} + } + + unused_count = 0 + for k in keys: + occ = usages.get(k, []) + used = bool(occ) + if not used: + unused_count += 1 + report["keys"][k] = { + "used": used, + "occurrences": occ + } + + report["unused_count"] = unused_count + report["unused_keys"] = [k for k, v in report["keys"].items() if not v["used"]] + + out_path = Path(args.out) + out_path.parent.mkdir(parents=True, exist_ok=True) + with out_path.open("w", encoding="utf-8") as f: + json.dump(report, f, indent=2, ensure_ascii=False) + + print(f"Report written to {out_path}") + print(f"Total keys: {report['total_keys']}, Unused: {report['unused_count']}") + +if __name__ == "__main__": + main() \ No newline at end of file diff --git a/ui/localization/messages/da.json b/ui/localization/messages/da.json index 50768958..ddb6c5d6 100644 --- a/ui/localization/messages/da.json +++ b/ui/localization/messages/da.json @@ -48,7 +48,6 @@ "access_tls_updated": "TLS-indstillingerne er blevet opdateret", "access_update_tls_settings": "Opdater TLS-indstillinger", "action_bar_connection_stats": "Forbindelsesstatistik", - "action_bar_exit_fullscreen": "Afslut fuldskærm", "action_bar_extension": "Udvidelse", "action_bar_fullscreen": "Fuldskærm", "action_bar_paste_text": "Indsæt tekst", @@ -201,13 +200,11 @@ "dc_power_control_set_restore_state_error": "Kunne ikke sende DC-strømgendannelsesstatus til {state} : {error}", "dc_power_control_voltage_unit": "V", "dc_power_control_voltage": "Spænding", - "default": "Misligholdelse", "delete": "Slet", "deregister_button": "Afregistrering fra Cloud", "deregister_cloud_devices": "Cloud-enheder", "deregister_description": "Dette vil fjerne enheden fra din cloud-konto og tilbagekalde fjernadgang til den. Bemærk venligst, at lokal adgang stadig vil være mulig.", "deregister_error": "Der opstod en fejl {status} under afregistreringen af din enhed. Prøv igen.", - "deregister_from_cloud": "Afregistrering fra skyen", "deregister_headline": "Afregistrér {device} fra din cloud-konto", "detach": "Løsrive", "dhcp_lease_boot_file": "Boot-fil", @@ -330,7 +327,6 @@ "invalid_password": "Ugyldig adgangskode", "ip_address": "IP-adresse", "ipv6_address_label": "Adresse", - "ipv6_addresses": "IPv6-adresser", "ipv6_information": "IPv6-oplysninger", "ipv6_link_local": "Link-lokal", "ipv6_preferred_lifetime": "Foretrukken levetid", @@ -339,7 +335,6 @@ "jetkvm_device": "JetKVM-enhed", "jetkvm_logo": "JetKVM-logo", "jetkvm_setup": "Opsæt din JetKVM", - "jetkvm": "JetKVM", "jiggler_cron_schedule_description": "Cron-udtryk til planlægning", "jiggler_cron_schedule_label": "Cron-skema", "jiggler_example_business_hours_early": "Åbningstider 8-17", @@ -370,7 +365,6 @@ "local_auth_change_local_device_password_description": "Indtast din nuværende adgangskode og en ny adgangskode for at opdatere din lokale enhedsbeskyttelse.", "local_auth_change_local_device_password_title": "Skift adgangskode til den lokale enhed", "local_auth_confirm_new_password_label": "Bekræft ny adgangskode", - "local_auth_create_confirm_password_label": "Bekræft ny adgangskode", "local_auth_create_confirm_password_placeholder": "Indtast din adgangskode igen", "local_auth_create_description": "Opret en adgangskode for at beskytte din enhed mod uautoriseret lokal adgang.", "local_auth_create_new_password_label": "Ny adgangskode", @@ -400,12 +394,7 @@ "local_auth_success_password_set_title": "Adgangskode indstillet", "local_auth_success_password_updated_description": "Du har ændret din adgangskode til beskyttelse af din lokale enhed. Husk din nye adgangskode til senere brug.", "local_auth_success_password_updated_title": "Adgangskode opdateret", - "local_auth_update_confirm_password_label": "Bekræft ny adgangskode", - "local_auth_update_current_password_label": "Nuværende adgangskode", - "local_auth_update_description": "Indtast din nuværende adgangskode og en ny adgangskode for at opdatere din lokale enhedsbeskyttelse.", - "local_auth_update_new_password_label": "Ny adgangskode", "local_auth_update_password_button": "Opdater adgangskode", - "local_auth_update_title": "Skift adgangskode til den lokale enhed", "log_in": "Log ind", "log_out": "Log ud", "logged_in_as": "Logget ind som", @@ -452,19 +441,16 @@ "macros_confirm_deleting": "Sletter…", "macros_create_first_description": "Kombinér tastetryk i én handling", "macros_create_first_headline": "Opret din første makro", - "macros_create_first": "Opret din første makro for at komme i gang", "macros_created_success": "Makro \" {name} \" blev oprettet", "macros_delay_only": "Kun forsinkelse", "macros_delete_confirm": "Er du sikker på, at du vil slette denne makro? Denne handling kan ikke fortrydes.", "macros_delete_macro": "Slet makro", "macros_deleted_success": "Makro \" {name} \" slettet", "macros_deleting": "Sletning", - "macros_duplicate": "Duplikere", "macros_duplicated_success": "Makro \" {name} \" duplikeret", "macros_edit_button": "Redigere", "macros_edit_description": "Rediger din tastaturmakro", "macros_edit_title": "Rediger makro", - "macros_edit": "Redigere", "macros_failed_create_error": "Kunne ikke oprette makro: {error}", "macros_failed_create": "Kunne ikke oprette makro", "macros_failed_delete_error": "Kunne ikke slette makroen: {error}", @@ -473,16 +459,13 @@ "macros_failed_duplicate": "Makroen kunne ikke duplikeres", "macros_failed_reorder_error": "Kunne ikke omarrangere makroer: {error}", "macros_failed_reorder": "Kunne ikke omarrangere makroer", - "macros_failed_update_error": "Kunne ikke opdatere makroen: {error}", "macros_failed_update": "Makroen kunne ikke opdateres", + "macros_failed_update_error": "Kunne ikke opdatere makroen: {error}", "macros_invalid_data": "Ugyldige makrodata", "macros_loading": "Indlæser makroer…", "macros_max_reached": "Maksimum nået", "macros_maximum_macros_reached": "Du har nået det maksimale antal {maximum} makroer.", - "macros_move_down": "Flyt ned", - "macros_move_up": "Flyt op", "macros_no_macros_available": "Ingen makroer tilgængelige", - "macros_no_macros_found": "Ingen makroer fundet", "macros_order_updated": "Makroordren er blevet opdateret", "macros_title": "Tastaturmakroer", "macros_updated_success": "Makro \" {name} \" opdateret", @@ -496,8 +479,6 @@ "mount_button_continue_upload": "Fortsæt upload", "mount_button_mount_file": "Monter fil", "mount_button_mount_url": "Monterings-URL", - "mount_button_next": "Næste", - "mount_button_previous": "Tidligere", "mount_button_select": "Vælge", "mount_button_showing_results": "Viser resultater fra {from} til {to} af resultaterne fra {total}", "mount_button_upload_new_image": "Upload et nyt billede", @@ -508,7 +489,6 @@ "mount_click_to_select_incomplete": "Klik for at vælge \" {name} \"", "mount_confirm_delete": "Er du sikker på, at du vil slette {name} ?", "mount_continue_uploading_with_name": "Fortsæt med at uploade \" {name} \"", - "mount_description_mode": "Vælg hvordan du vil montere dine virtuelle medier", "mount_error_delete_file": "Fejl ved sletning af fil: {error}", "mount_error_description": "Der opstod en fejl under forsøget på at montere mediet. Prøv igen.", "mount_error_get_storage_space": "Fejl ved hentning af lagerplads: {error}", @@ -517,9 +497,6 @@ "mount_get_state_error": "Kunne ikke hente virtuel medietilstand: {error}", "mount_jetkvm_storage_description": "Monter tidligere uploadede filer fra JetKVM-lageret", "mount_jetkvm_storage": "JetKVM-lagerbeslag", - "mount_label_mount_as": "Monter som", - "mount_label_url_description": "Monter filer fra enhver offentlig webadresse", - "mount_label_url": "URL-montering", "mount_mode_cdrom": "CD/DVD", "mount_mode_disk": "Disk", "mount_mounted_as": "Monteret som", @@ -528,13 +505,10 @@ "mount_no_images_title": "Ingen billeder tilgængelige", "mount_no_mounted_media": "Ingen monterede medier", "mount_percentage_used": "{percentageUsed} % brugt", - "mount_please_select_file_to_upload": "Vælg venligst den fil, der skal uploades.", "mount_please_select_file": "Vælg venligst filen \" {name} \" for at fortsætte uploaden.", "mount_popular_images": "Populære billeder", "mount_streaming_from_url": "Streaming fra URL", "mount_supported_formats": "Understøttede formater: ISO, IMG", - "mount_tag_experimental": "Eksperimentel", - "mount_title_mode": "Virtuel mediekilde", "mount_unmount_error": "Kunne ikke afmontere billede: {error}", "mount_unmount": "Afmonter", "mount_upload_description": "Vælg en billedfil, der skal uploades til JetKVM-lageret", @@ -567,7 +541,6 @@ "mouse_jiggler_description": "Simuler bevægelsen af en computermus", "mouse_jiggler_disabled": "Handicappet", "mouse_jiggler_error_config": "Der opstod en fejl under indstilling af jiggler-konfigurationen", - "mouse_jiggler_failed_config": "Kunne ikke indstille jiggler-konfiguration: {error}", "mouse_jiggler_failed_state": "Kunne ikke indstille jiggler-tilstand: {error}", "mouse_jiggler_frequent": "Hyppig - 30'erne", "mouse_jiggler_invalid_cron": "Ugyldigt cron-udtryk. Kontroller venligst dit tidsplanformat (f.eks. '0 * * * * *' for hvert minut).", @@ -591,10 +564,7 @@ "network_custom_domain": "Brugerdefineret domæne", "network_description": "Konfigurer dine netværksindstillinger", "network_dhcp_information": "DHCP-oplysninger", - "network_dhcp_lease_information": "DHCP-leaseoplysninger", - "network_dhcp_lease_lifetime_not_applicable": "Ikke tilgængelig", "network_dhcp_lease_renew_confirm_description": "Dette vil anmode om en ny IP-adresse fra din DHCP-server. Din enhed kan midlertidigt miste netværksforbindelsen under denne proces.", - "network_dhcp_lease_renew_confirm_title": "Forny DHCP-lease", "network_dhcp_lease_renew_confirm": "Forny lejekontrakt", "network_dhcp_lease_renew_failed": "Kunne ikke forny leasing: {error}", "network_dhcp_lease_renew_success": "DHCP-lease fornyet", @@ -611,7 +581,6 @@ "network_ipv4_mode_description": "Konfigurer IPv4-tilstanden", "network_ipv4_mode_dhcp": "DHCP", "network_ipv4_mode_title": "IPv4-tilstand", - "network_ipv6_addresses": "IPv6-adresser", "network_ipv6_information": "IPv6-oplysninger", "network_ipv6_mode_description": "Konfigurer IPv6-tilstanden", "network_ipv6_mode_disabled": "Handicappet", @@ -644,6 +613,7 @@ "never_seen_online": "Aldrig set online", "next": "Næste", "no_results_found": "Ingen resultater fundet", + "not_applicable": "Ikke tilgængelig", "not_available": "Ikke tilgængelig", "not_found": "Ikke fundet", "ntp_servers": "NTP-servere", @@ -684,7 +654,6 @@ "rename_device_new_name_label": "Nyt enhedsnavn", "rename_device_new_name_placeholder": "Plex-medieserver", "rename_device_no_name": "Angiv venligst et navn", - "rename": "Omdøb", "retry": "Prøv igen", "saving": "Gemmer…", "search_placeholder": "Søge…", @@ -842,9 +811,7 @@ "video_stream_quality_title": "Streamkvalitet", "video_title": "Video", "view_details": "Se detaljer", - "virtual_keyboard_description": "Brug det virtuelle tastatur til at sende specielle taster eller tastekombinationer til den eksterne computer.", "virtual_keyboard_header": "Virtuelt tastatur", - "wake_on_lan_add_device_back": "Tilbage", "wake_on_lan_add_device_device_name": "Enhedsnavn", "wake_on_lan_add_device_example_device_name": "Plex-medieserver", "wake_on_lan_add_device_mac_address": "MAC-adresse", diff --git a/ui/localization/messages/de.json b/ui/localization/messages/de.json index 9f75fb64..503e764a 100644 --- a/ui/localization/messages/de.json +++ b/ui/localization/messages/de.json @@ -48,7 +48,6 @@ "access_tls_updated": "TLS-Einstellungen erfolgreich aktualisiert", "access_update_tls_settings": "TLS-Einstellungen aktualisieren", "action_bar_connection_stats": "Verbindungsstatistiken", - "action_bar_exit_fullscreen": "Vollbildmodus beenden", "action_bar_extension": "Verlängerung", "action_bar_fullscreen": "Vollbild", "action_bar_paste_text": "Text einfügen", @@ -201,13 +200,11 @@ "dc_power_control_set_restore_state_error": "Der Status zur Wiederherstellung der Gleichstromversorgung konnte nicht an {state} gesendet werden: {error}", "dc_power_control_voltage_unit": "V", "dc_power_control_voltage": "Stromspannung", - "default": "Standard", "delete": "Löschen", "deregister_button": "Abmelden von der Cloud", "deregister_cloud_devices": "Cloud-Geräte", "deregister_description": "Dadurch wird das Gerät aus Ihrem Cloud-Konto entfernt und der Fernzugriff darauf widerrufen. Bitte beachten Sie, dass der lokale Zugriff weiterhin möglich ist.", "deregister_error": "Beim Abmelden Ihres Geräts ist ein Fehler aufgetreten {status} . Bitte versuchen Sie es erneut.", - "deregister_from_cloud": "Abmelden von der Cloud", "deregister_headline": "Melden Sie {device}", "detach": "Abtrennen", "dhcp_lease_boot_file": "Boot-Datei", @@ -330,7 +327,6 @@ "invalid_password": "Ungültiges Passwort", "ip_address": "IP-Adresse", "ipv6_address_label": "Adresse", - "ipv6_addresses": "IPv6-Adressen", "ipv6_information": "IPv6-Informationen", "ipv6_link_local": "Link-lokal", "ipv6_preferred_lifetime": "Bevorzugte Lebensdauer", @@ -339,7 +335,6 @@ "jetkvm_device": "JetKVM-Gerät", "jetkvm_logo": "JetKVM Logo", "jetkvm_setup": "Richten Sie Ihr JetKVM ein", - "jetkvm": "JetKVM", "jiggler_cron_schedule_description": "Cron-Ausdruck für die Planung", "jiggler_cron_schedule_label": "Cron-Zeitplan", "jiggler_example_business_hours_early": "Öffnungszeiten 8-17", @@ -370,7 +365,6 @@ "local_auth_change_local_device_password_description": "Geben Sie Ihr aktuelles Passwort und ein neues Passwort ein, um den Schutz Ihres lokalen Geräts zu aktualisieren.", "local_auth_change_local_device_password_title": "Ändern des lokalen Gerätekennworts", "local_auth_confirm_new_password_label": "Neues Passwort bestätigen", - "local_auth_create_confirm_password_label": "Neues Passwort bestätigen", "local_auth_create_confirm_password_placeholder": "Geben Sie Ihr Passwort erneut ein", "local_auth_create_description": "Erstellen Sie ein Passwort, um Ihr Gerät vor unbefugtem lokalem Zugriff zu schützen.", "local_auth_create_new_password_label": "Neues Passwort", @@ -400,12 +394,7 @@ "local_auth_success_password_set_title": "Passwort erfolgreich festgelegt", "local_auth_success_password_updated_description": "Sie haben Ihr lokales Geräteschutzkennwort erfolgreich geändert. Merken Sie sich das neue Kennwort für zukünftige Zugriffe.", "local_auth_success_password_updated_title": "Passwort erfolgreich aktualisiert", - "local_auth_update_confirm_password_label": "Neues Passwort bestätigen", - "local_auth_update_current_password_label": "Aktuelles Passwort", - "local_auth_update_description": "Geben Sie Ihr aktuelles Passwort und ein neues Passwort ein, um den Schutz Ihres lokalen Geräts zu aktualisieren.", - "local_auth_update_new_password_label": "Neues Passwort", "local_auth_update_password_button": "Kennwort aktualisieren", - "local_auth_update_title": "Ändern des lokalen Gerätekennworts", "log_in": "Einloggen", "log_out": "Ausloggen", "logged_in_as": "Angemeldet als", @@ -452,19 +441,16 @@ "macros_confirm_deleting": "Löschen…", "macros_create_first_description": "Kombinieren Sie Tastenanschläge zu einer einzigen Aktion", "macros_create_first_headline": "Erstellen Sie Ihr erstes Makro", - "macros_create_first": "Erstellen Sie Ihr erstes Makro, um loszulegen", "macros_created_success": "Makro \" {name} \" erfolgreich erstellt", "macros_delay_only": "Nur Verzögerung", "macros_delete_confirm": "Möchten Sie dieses Makro wirklich löschen? Diese Aktion kann nicht rückgängig gemacht werden.", "macros_delete_macro": "Makro löschen", "macros_deleted_success": "Makro \" {name} \" erfolgreich gelöscht", "macros_deleting": "Löschen", - "macros_duplicate": "Duplikat", "macros_duplicated_success": "Makro \" {name} \" erfolgreich dupliziert", "macros_edit_button": "Bearbeiten", "macros_edit_description": "Ändern Sie Ihr Tastaturmakro", "macros_edit_title": "Makro bearbeiten", - "macros_edit": "Bearbeiten", "macros_failed_create_error": "Makro konnte nicht erstellt werden: {error}", "macros_failed_create": "Makro konnte nicht erstellt werden", "macros_failed_delete_error": "Makro konnte nicht gelöscht werden: {error}", @@ -479,10 +465,7 @@ "macros_loading": "Makros werden geladen …", "macros_max_reached": "Max. erreicht", "macros_maximum_macros_reached": "Sie haben die maximal zulässige Anzahl von {maximum} Makros erreicht.", - "macros_move_down": "Nach unten", - "macros_move_up": "Nach oben", "macros_no_macros_available": "Keine Makros verfügbar", - "macros_no_macros_found": "Keine Makros gefunden", "macros_order_updated": "Makroreihenfolge erfolgreich aktualisiert", "macros_title": "Tastaturmakros", "macros_updated_success": "Makro \" {name} \" erfolgreich aktualisiert", @@ -496,8 +479,6 @@ "mount_button_continue_upload": "Weiter hochladen", "mount_button_mount_file": "Datei einbinden", "mount_button_mount_url": "Mount-URL", - "mount_button_next": "Nächste", - "mount_button_previous": "Vorherige", "mount_button_select": "Wählen", "mount_button_showing_results": "Anzeige von {from} bis {to} von {total} Ergebnissen", "mount_button_upload_new_image": "Laden Sie ein neues Bild hoch", @@ -508,7 +489,6 @@ "mount_click_to_select_incomplete": "Klicken Sie, um \" {name} \" auszuwählen.", "mount_confirm_delete": "Möchten Sie {name} wirklich löschen?", "mount_continue_uploading_with_name": "Weiter hochladen \" {name} \"", - "mount_description_mode": "Wählen Sie, wie Sie Ihr virtuelles Medium mounten möchten", "mount_error_delete_file": "Fehler beim Löschen der Datei: {error}", "mount_error_description": "Beim Einbinden des Mediums ist ein Fehler aufgetreten. Bitte versuchen Sie es erneut.", "mount_error_get_storage_space": "Fehler beim Abrufen des Speicherplatzes: {error}", @@ -517,9 +497,6 @@ "mount_get_state_error": "Der Status des virtuellen Mediums konnte nicht abgerufen werden: {error}", "mount_jetkvm_storage_description": "Mounten Sie zuvor hochgeladene Dateien aus dem JetKVM-Speicher", "mount_jetkvm_storage": "JetKVM-Speicherhalterung", - "mount_label_mount_as": "Montieren als", - "mount_label_url_description": "Mounten Sie Dateien von jeder öffentlichen Webadresse", - "mount_label_url": "URL-Mount", "mount_mode_cdrom": "CD/DVD", "mount_mode_disk": "Scheibe", "mount_mounted_as": "Montiert als", @@ -528,13 +505,10 @@ "mount_no_images_title": "Keine Bilder verfügbar", "mount_no_mounted_media": "Keine gemounteten Medien", "mount_percentage_used": "{percentageUsed} % verwendet", - "mount_please_select_file_to_upload": "Bitte wählen Sie die hochzuladende Datei aus.", "mount_please_select_file": "Bitte wählen Sie die Datei \" {name} \" aus, um den Upload fortzusetzen.", "mount_popular_images": "Beliebte Bilder", "mount_streaming_from_url": "Streaming von URL", "mount_supported_formats": "Unterstützte Formate: ISO, IMG", - "mount_tag_experimental": "Experimental", - "mount_title_mode": "Virtuelle Medienquelle", "mount_unmount_error": "Abbild konnte nicht ausgehängt werden: {error}", "mount_unmount": "Aushängen", "mount_upload_description": "Wählen Sie eine Bilddatei zum Hochladen in den JetKVM-Speicher aus", @@ -567,7 +541,6 @@ "mouse_jiggler_description": "Simulieren Sie die Bewegung einer Computermaus", "mouse_jiggler_disabled": "Deaktiviert", "mouse_jiggler_error_config": "Beim Festlegen der Jiggler-Konfiguration ist ein Fehler aufgetreten", - "mouse_jiggler_failed_config": "Jiggler-Konfiguration konnte nicht festgelegt werden: {error}", "mouse_jiggler_failed_state": "Jiggler-Status konnte nicht festgelegt werden: {error}", "mouse_jiggler_frequent": "Häufig - 30er", "mouse_jiggler_invalid_cron": "Ungültiger Cron-Ausdruck. Bitte überprüfen Sie Ihr Zeitplanformat (z. B. „0 * * * * *“ für jede Minute).", @@ -591,10 +564,7 @@ "network_custom_domain": "Benutzerdefinierte Domäne", "network_description": "Konfigurieren Sie Ihre Netzwerkeinstellungen", "network_dhcp_information": "DHCP-Informationen", - "network_dhcp_lease_information": "DHCP-Lease-Informationen", - "network_dhcp_lease_lifetime_not_applicable": "N / A", "network_dhcp_lease_renew_confirm_description": "Dadurch wird eine neue IP-Adresse von Ihrem DHCP-Server angefordert. Während dieses Vorgangs kann die Netzwerkverbindung Ihres Geräts vorübergehend unterbrochen werden.", - "network_dhcp_lease_renew_confirm_title": "DHCP-Lease erneuern", "network_dhcp_lease_renew_confirm": "Mietvertrag verlängern", "network_dhcp_lease_renew_failed": "Leasing konnte nicht erneuert werden: {error}", "network_dhcp_lease_renew_success": "DHCP-Lease erneuert", @@ -611,7 +581,6 @@ "network_ipv4_mode_description": "Konfigurieren des IPv4-Modus", "network_ipv4_mode_dhcp": "DHCP", "network_ipv4_mode_title": "IPv4-Modus", - "network_ipv6_addresses": "IPv6-Adressen", "network_ipv6_information": "IPv6-Informationen", "network_ipv6_mode_description": "Konfigurieren des IPv6-Modus", "network_ipv6_mode_disabled": "Deaktiviert", @@ -644,6 +613,7 @@ "never_seen_online": "Noch nie online gesehen", "next": "Nächste", "no_results_found": "Keine Ergebnisse gefunden", + "not_applicable": "N / A", "not_available": "N / A", "not_found": "Nicht gefunden", "ntp_servers": "NTP-Server", @@ -684,7 +654,6 @@ "rename_device_new_name_label": "Neuer Gerätename", "rename_device_new_name_placeholder": "Plex Media Server", "rename_device_no_name": "Bitte geben Sie einen Namen an", - "rename": "Umbenennen", "retry": "Wiederholen", "saving": "Speichern…", "search_placeholder": "Suchen…", @@ -842,9 +811,7 @@ "video_stream_quality_title": "Stream-Qualität", "video_title": "Video", "view_details": "Details anzeigen", - "virtual_keyboard_description": "Verwenden Sie die virtuelle Tastatur, um spezielle Tasten oder Tastenkombinationen an den Remotecomputer zu senden.", "virtual_keyboard_header": "Virtuelle Tastatur", - "wake_on_lan_add_device_back": "Zurück", "wake_on_lan_add_device_device_name": "Gerätename", "wake_on_lan_add_device_example_device_name": "Plex Media Server", "wake_on_lan_add_device_mac_address": "MAC-Adresse", diff --git a/ui/localization/messages/en.json b/ui/localization/messages/en.json index 70cb1ad0..1692f5fb 100644 --- a/ui/localization/messages/en.json +++ b/ui/localization/messages/en.json @@ -48,7 +48,6 @@ "access_tls_updated": "TLS settings updated successfully", "access_update_tls_settings": "Update TLS Settings", "action_bar_connection_stats": "Connection Stats", - "action_bar_exit_fullscreen": "Exit Fullscreen", "action_bar_extension": "Extension", "action_bar_fullscreen": "Fullscreen", "action_bar_paste_text": "Paste text", @@ -201,13 +200,11 @@ "dc_power_control_set_restore_state_error": "Failed to send DC power restore state to {state}: {error}", "dc_power_control_voltage_unit": "V", "dc_power_control_voltage": "Voltage", - "default": "Default", "delete": "Delete", "deregister_button": "Deregister from Cloud", "deregister_cloud_devices": "Cloud Devices", "deregister_description": "This will remove the device from your cloud account and revoke remote access to it. Please note that local access will still be possible", "deregister_error": "There was an error {status} deregistering your device. Please try again.", - "deregister_from_cloud": "Deregister from cloud", "deregister_headline": "Deregister {device} from your cloud account", "detach": "Detach", "dhcp_lease_boot_file": "Boot File", @@ -330,7 +327,6 @@ "invalid_password": "Invalid password", "ip_address": "IP Address", "ipv6_address_label": "Address", - "ipv6_addresses": "IPv6 Addresses", "ipv6_information": "IPv6 Information", "ipv6_link_local": "Link-local", "ipv6_preferred_lifetime": "Preferred Lifetime", @@ -339,7 +335,6 @@ "jetkvm_device": "JetKVM Device", "jetkvm_logo": "JetKVM Logo", "jetkvm_setup": "Set up your JetKVM", - "jetkvm": "JetKVM", "jiggler_cron_schedule_description": "Cron expression for scheduling", "jiggler_cron_schedule_label": "Cron Schedule", "jiggler_example_business_hours_early": "Business Hours 8-17", @@ -370,7 +365,6 @@ "local_auth_change_local_device_password_description": "Enter your current password and a new password to update your local device protection.", "local_auth_change_local_device_password_title": "Change Local Device Password", "local_auth_confirm_new_password_label": "Confirm New Password", - "local_auth_create_confirm_password_label": "Confirm New Password", "local_auth_create_confirm_password_placeholder": "Re-enter your password", "local_auth_create_description": "Create a password to protect your device from unauthorized local access.", "local_auth_create_new_password_label": "New Password", @@ -400,12 +394,7 @@ "local_auth_success_password_set_title": "Password Set Successfully", "local_auth_success_password_updated_description": "You've successfully changed your local device protection password. Make sure to remember your new password for future access.", "local_auth_success_password_updated_title": "Password Updated Successfully", - "local_auth_update_confirm_password_label": "Confirm New Password", - "local_auth_update_current_password_label": "Current Password", - "local_auth_update_description": "Enter your current password and a new password to update your local device protection.", - "local_auth_update_new_password_label": "New Password", "local_auth_update_password_button": "Update Password", - "local_auth_update_title": "Change Local Device Password", "log_in": "Log In", "log_out": "Log out", "logged_in_as": "Logged in as", @@ -452,19 +441,16 @@ "macros_confirm_deleting": "Deleting…", "macros_create_first_description": "Combine keystrokes into a single action", "macros_create_first_headline": "Create Your First Macro", - "macros_create_first": "Create your first macro to get started", "macros_created_success": "Macro \"{name}\" created successfully", "macros_delay_only": "Delay only", "macros_delete_confirm": "Are you sure you want to delete this macro? This action cannot be undone.", "macros_delete_macro": "Delete Macro", "macros_deleted_success": "Macro \"{name}\" deleted successfully", "macros_deleting": "Deleting", - "macros_duplicate": "Duplicate", "macros_duplicated_success": "Macro \"{name}\" duplicated successfully", "macros_edit_button": "Edit", "macros_edit_description": "Modify your keyboard macro", "macros_edit_title": "Edit Macro", - "macros_edit": "Edit", "macros_failed_create_error": "Failed to create macro: {error}", "macros_failed_create": "Failed to create macro", "macros_failed_delete_error": "Failed to delete macro: {error}", @@ -479,10 +465,7 @@ "macros_loading": "Loading macros…", "macros_max_reached": "Max Reached", "macros_maximum_macros_reached": "You have reached the maximum number of {maximum} macros allowed.", - "macros_move_down": "Move Down", - "macros_move_up": "Move Up", "macros_no_macros_available": "No macros available", - "macros_no_macros_found": "No macros found", "macros_order_updated": "Macro order updated successfully", "macros_title": "Keyboard Macros", "macros_updated_success": "Macro \"{name}\" updated successfully", @@ -496,8 +479,6 @@ "mount_button_continue_upload": "Continue uploading", "mount_button_mount_file": "Mount File", "mount_button_mount_url": "Mount URL", - "mount_button_next": "Next", - "mount_button_previous": "Previous", "mount_button_select": "Select", "mount_button_showing_results": "Showing {from} to {to} of {total} results", "mount_button_upload_new_image": "Upload a new image", @@ -508,7 +489,6 @@ "mount_click_to_select_incomplete": "Click to select \"{name}\"", "mount_confirm_delete": "Are you sure you want to delete {name}?", "mount_continue_uploading_with_name": "Continue uploading \"{name}\"", - "mount_description_mode": "Choose how you want to mount your virtual media", "mount_error_delete_file": "Error deleting file: {error}", "mount_error_description": "An error occurred while attempting to mount the media. Please try again.", "mount_error_get_storage_space": "Error getting storage space: {error}", @@ -517,9 +497,6 @@ "mount_get_state_error": "Failed to get virtual media state: {error}", "mount_jetkvm_storage_description": "Mount previously uploaded files from the JetKVM storage", "mount_jetkvm_storage": "JetKVM Storage Mount", - "mount_label_mount_as": "Mount as", - "mount_label_url_description": "Mount files from any public web address", - "mount_label_url": "URL Mount", "mount_mode_cdrom": "CD/DVD", "mount_mode_disk": "Disk", "mount_mounted_as": "Mounted as", @@ -528,13 +505,10 @@ "mount_no_images_title": "No images available", "mount_no_mounted_media": "No mounted media", "mount_percentage_used": "{percentageUsed}% used", - "mount_please_select_file_to_upload": "Please select the file to upload.", "mount_please_select_file": "Please select the file \"{name}\" to continue the upload.", "mount_popular_images": "Popular images", "mount_streaming_from_url": "Streaming from URL", "mount_supported_formats": "Supported formats: ISO, IMG", - "mount_tag_experimental": "Experimental", - "mount_title_mode": "Virtual Media Source", "mount_unmount_error": "Failed to unmount image: {error}", "mount_unmount": "Unmount", "mount_upload_description": "Select an image file to upload to JetKVM storage", @@ -567,7 +541,6 @@ "mouse_jiggler_description": "Simulate movement of a computer mouse", "mouse_jiggler_disabled": "Disabled", "mouse_jiggler_error_config": "There was an error setting the jiggler config", - "mouse_jiggler_failed_config": "Failed to set jiggler config: {error}", "mouse_jiggler_failed_state": "Failed to set jiggler state: {error}", "mouse_jiggler_frequent": "Frequent - 30s", "mouse_jiggler_invalid_cron": "Invalid cron expression. Please check your schedule format (e.g., '0 * * * * *' for every minute).", @@ -591,10 +564,7 @@ "network_custom_domain": "Custom Domain", "network_description": "Configure your network settings", "network_dhcp_information": "DHCP Information", - "network_dhcp_lease_information": "DHCP Lease Information", - "network_dhcp_lease_lifetime_not_applicable": "N/A", "network_dhcp_lease_renew_confirm_description": "This will request a new IP address from your DHCP server. Your device may temporarily lose network connectivity during this process.", - "network_dhcp_lease_renew_confirm_title": "Renew DHCP Lease", "network_dhcp_lease_renew_confirm": "Renew Lease", "network_dhcp_lease_renew_failed": "Failed to renew lease: {error}", "network_dhcp_lease_renew_success": "DHCP lease renewed", @@ -611,7 +581,6 @@ "network_ipv4_mode_description": "Configure the IPv4 mode", "network_ipv4_mode_dhcp": "DHCP", "network_ipv4_mode_title": "IPv4 Mode", - "network_ipv6_addresses": "IPv6 Addresses", "network_ipv6_information": "IPv6 Information", "network_ipv6_mode_description": "Configure the IPv6 mode", "network_ipv6_mode_disabled": "Disabled", @@ -644,6 +613,7 @@ "never_seen_online": "Never seen online", "next": "Next", "no_results_found": "No results found", + "not_applicable": "N/A", "not_available": "N/A", "not_found": "Not found", "ntp_servers": "NTP Servers", @@ -684,7 +654,6 @@ "rename_device_new_name_label": "New device name", "rename_device_new_name_placeholder": "Plex Media Server", "rename_device_no_name": "Please specify a name", - "rename": "Rename", "retry": "Retry", "saving": "Saving…", "search_placeholder": "Search…", @@ -842,9 +811,7 @@ "video_stream_quality_title": "Stream Quality", "video_title": "Video", "view_details": "View Details", - "virtual_keyboard_description": "Use the virtual keyboard to send special keys or key combinations to the remote computer.", "virtual_keyboard_header": "Virtual Keyboard", - "wake_on_lan_add_device_back": "Back", "wake_on_lan_add_device_device_name": "Device Name", "wake_on_lan_add_device_example_device_name": "Plex Media Server", "wake_on_lan_add_device_mac_address": "MAC Address", diff --git a/ui/localization/messages/es.json b/ui/localization/messages/es.json index f41f7b8c..c7fa5922 100644 --- a/ui/localization/messages/es.json +++ b/ui/localization/messages/es.json @@ -48,7 +48,6 @@ "access_tls_updated": "La configuración de TLS se actualizó correctamente", "access_update_tls_settings": "Actualizar la configuración de TLS", "action_bar_connection_stats": "Estadísticas de conexión", - "action_bar_exit_fullscreen": "Salir de pantalla completa", "action_bar_extension": "Extensión", "action_bar_fullscreen": "Pantalla completa", "action_bar_paste_text": "Pegar texto", @@ -201,13 +200,11 @@ "dc_power_control_set_restore_state_error": "No se pudo enviar el estado de restauración de energía de CC a {state} : {error}", "dc_power_control_voltage_unit": "V", "dc_power_control_voltage": "Voltaje", - "default": "Por defecto", "delete": "Borrar", "deregister_button": "Darse de baja de la nube", "deregister_cloud_devices": "Dispositivos en la nube", "deregister_description": "Esto eliminará el dispositivo de su cuenta en la nube y revocará el acceso remoto. Tenga en cuenta que el acceso local seguirá siendo posible.", "deregister_error": "Se produjo un error {status} al cancelar el registro de su dispositivo. Inténtelo de nuevo.", - "deregister_from_cloud": "Darse de baja de la nube", "deregister_headline": "Anular el registro de {device} en su cuenta en la nube", "detach": "Despegar", "dhcp_lease_boot_file": "Archivo de arranque", @@ -330,7 +327,6 @@ "invalid_password": "Contraseña inválida", "ip_address": "Dirección IP", "ipv6_address_label": "DIRECCIÓN", - "ipv6_addresses": "Direcciones IPv6", "ipv6_information": "Información de IPv6", "ipv6_link_local": "Enlace local", "ipv6_preferred_lifetime": "Vida útil preferida", @@ -339,7 +335,6 @@ "jetkvm_device": "Dispositivo JetKVM", "jetkvm_logo": "Logotipo de JetKVM", "jetkvm_setup": "Configura tu JetKVM", - "jetkvm": "JetKVM", "jiggler_cron_schedule_description": "Expresión cron para la programación", "jiggler_cron_schedule_label": "Programación cron", "jiggler_example_business_hours_early": "Horario comercial 8-17", @@ -370,7 +365,6 @@ "local_auth_change_local_device_password_description": "Ingrese su contraseña actual y una nueva contraseña para actualizar la protección de su dispositivo local.", "local_auth_change_local_device_password_title": "Cambiar la contraseña del dispositivo local", "local_auth_confirm_new_password_label": "Confirmar nueva contraseña", - "local_auth_create_confirm_password_label": "Confirmar nueva contraseña", "local_auth_create_confirm_password_placeholder": "Vuelva a introducir su contraseña", "local_auth_create_description": "Cree una contraseña para proteger su dispositivo contra acceso local no autorizado.", "local_auth_create_new_password_label": "Nueva contraseña", @@ -400,12 +394,7 @@ "local_auth_success_password_set_title": "Contraseña establecida exitosamente", "local_auth_success_password_updated_description": "Has cambiado correctamente la contraseña de protección de tu dispositivo local. Recuerda la nueva contraseña para acceder en el futuro.", "local_auth_success_password_updated_title": "Contraseña actualizada exitosamente", - "local_auth_update_confirm_password_label": "Confirmar nueva contraseña", - "local_auth_update_current_password_label": "Contraseña actual", - "local_auth_update_description": "Ingrese su contraseña actual y una nueva contraseña para actualizar la protección de su dispositivo local.", - "local_auth_update_new_password_label": "Nueva contraseña", "local_auth_update_password_button": "Actualizar contraseña", - "local_auth_update_title": "Cambiar la contraseña del dispositivo local", "log_in": "Acceso", "log_out": "Finalizar la sesión", "logged_in_as": "Inició sesión como", @@ -452,19 +441,16 @@ "macros_confirm_deleting": "Borrando…", "macros_create_first_description": "Combine pulsaciones de teclas en una sola acción", "macros_create_first_headline": "Crea tu primera macro", - "macros_create_first": "Crea tu primera macro para comenzar", "macros_created_success": "Macro \" {name} \" creada correctamente", "macros_delay_only": "Solo retraso", "macros_delete_confirm": "¿Seguro que desea eliminar esta macro? Esta acción no se puede deshacer.", "macros_delete_macro": "Eliminar macro", "macros_deleted_success": "Macro \" {name} \" eliminada correctamente", "macros_deleting": "Eliminando", - "macros_duplicate": "Duplicado", "macros_duplicated_success": "Macro \" {name} \" duplicada correctamente", "macros_edit_button": "Editar", "macros_edit_description": "Modificar la macro del teclado", "macros_edit_title": "Editar macro", - "macros_edit": "Editar", "macros_failed_create_error": "No se pudo crear la macro: {error}", "macros_failed_create": "No se pudo crear la macro", "macros_failed_delete_error": "No se pudo eliminar la macro: {error}", @@ -479,10 +465,7 @@ "macros_loading": "Cargando macros…", "macros_max_reached": "Máximo alcanzado", "macros_maximum_macros_reached": "Ha alcanzado el número máximo de macros {maximum} permitidas.", - "macros_move_down": "Bajar", - "macros_move_up": "Subir", "macros_no_macros_available": "No hay macros disponibles", - "macros_no_macros_found": "No se encontraron macros", "macros_order_updated": "La orden macro se actualizó correctamente", "macros_title": "Macros del teclado", "macros_updated_success": "Macro \" {name} \" actualizada correctamente", @@ -496,8 +479,6 @@ "mount_button_continue_upload": "Continuar subiendo", "mount_button_mount_file": "Montar archivo", "mount_button_mount_url": "URL de montaje", - "mount_button_next": "Próximo", - "mount_button_previous": "Anterior", "mount_button_select": "Seleccionar", "mount_button_showing_results": "Mostrando {from} a {to} de {total} resultados", "mount_button_upload_new_image": "Subir una nueva imagen", @@ -508,7 +489,6 @@ "mount_click_to_select_incomplete": "Haga clic para seleccionar \" {name} \"", "mount_confirm_delete": "¿Estás seguro de que deseas eliminar {name} ?", "mount_continue_uploading_with_name": "Continuar cargando \" {name} \"", - "mount_description_mode": "Elige cómo quieres montar tus medios virtuales", "mount_error_delete_file": "Error al eliminar el archivo: {error}", "mount_error_description": "Se produjo un error al intentar montar el medio. Inténtelo de nuevo.", "mount_error_get_storage_space": "Error al obtener espacio de almacenamiento: {error}", @@ -517,9 +497,6 @@ "mount_get_state_error": "No se pudo obtener el estado del medio virtual: {error}", "mount_jetkvm_storage_description": "Montar archivos cargados previamente desde el almacenamiento JetKVM", "mount_jetkvm_storage": "Soporte de almacenamiento JetKVM", - "mount_label_mount_as": "Monte como", - "mount_label_url_description": "Montar archivos desde cualquier dirección web pública", - "mount_label_url": "Montaje de URL", "mount_mode_cdrom": "CD/DVD", "mount_mode_disk": "Disco", "mount_mounted_as": "Montado como", @@ -528,13 +505,10 @@ "mount_no_images_title": "No hay imágenes disponibles", "mount_no_mounted_media": "No hay medios montados", "mount_percentage_used": "{percentageUsed} % usado", - "mount_please_select_file_to_upload": "Seleccione el archivo que desea cargar.", "mount_please_select_file": "Seleccione el archivo \" {name} \" para continuar con la carga.", "mount_popular_images": "Imágenes populares", "mount_streaming_from_url": "Transmisión desde URL", "mount_supported_formats": "Formatos compatibles: ISO, IMG", - "mount_tag_experimental": "Experimental", - "mount_title_mode": "Fuente de medios virtuales", "mount_unmount_error": "Error al desmontar la imagen: {error}", "mount_unmount": "Desmontar", "mount_upload_description": "Seleccione un archivo de imagen para cargar al almacenamiento de JetKVM", @@ -567,7 +541,6 @@ "mouse_jiggler_description": "Simular el movimiento de un ratón de ordenador", "mouse_jiggler_disabled": "Desactivado", "mouse_jiggler_error_config": "Se produjo un error al configurar el jiggler.", - "mouse_jiggler_failed_config": "No se pudo establecer la configuración de Jiggler: {error}", "mouse_jiggler_failed_state": "No se pudo establecer el estado del jiggler: {error}", "mouse_jiggler_frequent": "Frecuente - 30s", "mouse_jiggler_invalid_cron": "Expresión cron no válida. Verifique el formato de su programación (p. ej., '0 * * * * *' para cada minuto).", @@ -591,10 +564,7 @@ "network_custom_domain": "Dominio personalizado", "network_description": "Configurar sus ajustes de red", "network_dhcp_information": "Información de DHCP", - "network_dhcp_lease_information": "Información de arrendamiento de DHCP", - "network_dhcp_lease_lifetime_not_applicable": "N / A", "network_dhcp_lease_renew_confirm_description": "Esto solicitará una nueva dirección IP a su servidor DHCP. Es posible que su dispositivo pierda temporalmente la conexión a la red durante este proceso.", - "network_dhcp_lease_renew_confirm_title": "Renovar la concesión de DHCP", "network_dhcp_lease_renew_confirm": "Renovar el contrato de arrendamiento", "network_dhcp_lease_renew_failed": "No se pudo renovar el contrato de arrendamiento: {error}", "network_dhcp_lease_renew_success": "Se renovó la concesión de DHCP", @@ -611,7 +581,6 @@ "network_ipv4_mode_description": "Configurar el modo IPv4", "network_ipv4_mode_dhcp": "DHCP", "network_ipv4_mode_title": "Modo IPv4", - "network_ipv6_addresses": "Direcciones IPv6", "network_ipv6_information": "Información de IPv6", "network_ipv6_mode_description": "Configurar el modo IPv6", "network_ipv6_mode_disabled": "Desactivado", @@ -644,6 +613,7 @@ "never_seen_online": "Nunca visto en línea", "next": "Próximo", "no_results_found": "No se encontraron resultados", + "not_applicable": "N / A", "not_available": "N / A", "not_found": "Extraviado", "ntp_servers": "Servidores NTP", @@ -684,7 +654,6 @@ "rename_device_new_name_label": "Nuevo nombre del dispositivo", "rename_device_new_name_placeholder": "Servidor multimedia Plex", "rename_device_no_name": "Por favor especifique un nombre", - "rename": "Rebautizar", "retry": "Rever", "saving": "Ahorro…", "search_placeholder": "Buscar…", @@ -842,9 +811,7 @@ "video_stream_quality_title": "Calidad de la transmisión", "video_title": "Video", "view_details": "Ver detalles", - "virtual_keyboard_description": "Utilice el teclado virtual para enviar teclas especiales o combinaciones de teclas a la computadora remota.", "virtual_keyboard_header": "Teclado virtual", - "wake_on_lan_add_device_back": "Atrás", "wake_on_lan_add_device_device_name": "Nombre del dispositivo", "wake_on_lan_add_device_example_device_name": "Servidor multimedia Plex", "wake_on_lan_add_device_mac_address": "Dirección MAC", diff --git a/ui/localization/messages/fr.json b/ui/localization/messages/fr.json index 1c97886b..e58862ce 100644 --- a/ui/localization/messages/fr.json +++ b/ui/localization/messages/fr.json @@ -48,7 +48,6 @@ "access_tls_updated": "Les paramètres TLS ont été mis à jour avec succès", "access_update_tls_settings": "Mettre à jour les paramètres TLS", "action_bar_connection_stats": "Statistiques de connexion", - "action_bar_exit_fullscreen": "Quitter le plein écran", "action_bar_extension": "Extension", "action_bar_fullscreen": "Plein écran", "action_bar_paste_text": "Coller du texte", @@ -201,13 +200,11 @@ "dc_power_control_set_restore_state_error": "Échec de l'envoi de l'état de restauration de l'alimentation CC à {state} : {error}", "dc_power_control_voltage_unit": "V", "dc_power_control_voltage": "Tension", - "default": "Défaut", "delete": "Supprimer", "deregister_button": "Se désinscrire du Cloud", "deregister_cloud_devices": "Appareils Cloud", "deregister_description": "Cela supprimera l'appareil de votre compte cloud et révoquera l'accès à distance. Veuillez noter que l'accès local restera possible.", "deregister_error": "Une erreur {status} s'est produite lors de l'annulation de l'enregistrement de votre appareil. Veuillez réessayer.", - "deregister_from_cloud": "Se désinscrire du cloud", "deregister_headline": "Désinscrivez {device} de votre compte cloud", "detach": "Détacher", "dhcp_lease_boot_file": "Fichier de démarrage", @@ -330,7 +327,6 @@ "invalid_password": "Mot de passe invalide", "ip_address": "Adresse IP", "ipv6_address_label": "Adresse", - "ipv6_addresses": "Adresses IPv6", "ipv6_information": "Informations IPv6", "ipv6_link_local": "Lien local", "ipv6_preferred_lifetime": "Durée de vie préférée", @@ -339,7 +335,6 @@ "jetkvm_device": "Périphérique JetKVM", "jetkvm_logo": "Logo JetKVM", "jetkvm_setup": "Configurez votre JetKVM", - "jetkvm": "JetKVM", "jiggler_cron_schedule_description": "Expression Cron pour la planification", "jiggler_cron_schedule_label": "Planification Cron", "jiggler_example_business_hours_early": "Heures d'ouverture 8-17", @@ -370,7 +365,6 @@ "local_auth_change_local_device_password_description": "Saisissez votre mot de passe actuel et un nouveau mot de passe pour mettre à jour la protection de votre appareil local.", "local_auth_change_local_device_password_title": "Modifier le mot de passe de l'appareil local", "local_auth_confirm_new_password_label": "Confirmer le nouveau mot de passe", - "local_auth_create_confirm_password_label": "Confirmer le nouveau mot de passe", "local_auth_create_confirm_password_placeholder": "Ré-entrez votre mot de passe", "local_auth_create_description": "Créez un mot de passe pour protéger votre appareil contre tout accès local non autorisé.", "local_auth_create_new_password_label": "Nouveau mot de passe", @@ -400,12 +394,7 @@ "local_auth_success_password_set_title": "Mot de passe défini avec succès", "local_auth_success_password_updated_description": "Vous avez modifié avec succès le mot de passe de protection de votre appareil local. N'oubliez pas de le mémoriser pour y accéder ultérieurement.", "local_auth_success_password_updated_title": "Mot de passe mis à jour avec succès", - "local_auth_update_confirm_password_label": "Confirmer le nouveau mot de passe", - "local_auth_update_current_password_label": "Mot de passe actuel", - "local_auth_update_description": "Saisissez votre mot de passe actuel et un nouveau mot de passe pour mettre à jour la protection de votre appareil local.", - "local_auth_update_new_password_label": "Nouveau mot de passe", "local_auth_update_password_button": "Mettre à jour le mot de passe", - "local_auth_update_title": "Modifier le mot de passe de l'appareil local", "log_in": "Se connecter", "log_out": "Se déconnecter", "logged_in_as": "Connecté en tant que", @@ -452,19 +441,16 @@ "macros_confirm_deleting": "Suppression…", "macros_create_first_description": "Combinez les frappes en une seule action", "macros_create_first_headline": "Créez votre première macro", - "macros_create_first": "Créez votre première macro pour commencer", "macros_created_success": "Macro « {name} » créée avec succès", "macros_delay_only": "Retard seulement", "macros_delete_confirm": "Êtes-vous sûr de vouloir supprimer cette macro ? Cette action est irréversible.", "macros_delete_macro": "Supprimer la macro", "macros_deleted_success": "Macro « {name} » supprimée avec succès", "macros_deleting": "Suppression", - "macros_duplicate": "Double", "macros_duplicated_success": "Macro « {name} » dupliquée avec succès", "macros_edit_button": "Modifier", "macros_edit_description": "Modifiez votre macro de clavier", "macros_edit_title": "Modifier la macro", - "macros_edit": "Modifier", "macros_failed_create_error": "Échec de la création de la macro : {error}", "macros_failed_create": "Échec de la création de la macro", "macros_failed_delete_error": "Échec de la suppression de la macro : {error}", @@ -479,10 +465,7 @@ "macros_loading": "Chargement des macros…", "macros_max_reached": "Max atteint", "macros_maximum_macros_reached": "Vous avez atteint le nombre maximal de macros {maximum} autorisées.", - "macros_move_down": "Descendre", - "macros_move_up": "Monter", "macros_no_macros_available": "Aucune macro disponible", - "macros_no_macros_found": "Aucune macro trouvée", "macros_order_updated": "L'ordre des macros a été mis à jour avec succès", "macros_title": "Macros de clavier", "macros_updated_success": "Macro « {name} » mise à jour avec succès", @@ -496,8 +479,6 @@ "mount_button_continue_upload": "Continuer le téléchargement", "mount_button_mount_file": "Fichier de montage", "mount_button_mount_url": "URL de montage", - "mount_button_next": "Suivant", - "mount_button_previous": "Précédent", "mount_button_select": "Sélectionner", "mount_button_showing_results": "Affichage des résultats {from} à {to} sur {total}", "mount_button_upload_new_image": "Télécharger une nouvelle image", @@ -508,7 +489,6 @@ "mount_click_to_select_incomplete": "Cliquez pour sélectionner « {name} »", "mount_confirm_delete": "Êtes-vous sûr de vouloir supprimer {name} ?", "mount_continue_uploading_with_name": "Continuer le téléchargement de « {name} »", - "mount_description_mode": "Choisissez comment vous souhaitez monter votre support virtuel", "mount_error_delete_file": "Erreur lors de la suppression du fichier : {error}", "mount_error_description": "Une erreur s'est produite lors du montage du support. Veuillez réessayer.", "mount_error_get_storage_space": "Erreur lors de l'obtention de l'espace de stockage : {error}", @@ -517,9 +497,6 @@ "mount_get_state_error": "Échec de l'obtention de l'état du support virtuel : {error}", "mount_jetkvm_storage_description": "Monter les fichiers précédemment téléchargés à partir du stockage JetKVM", "mount_jetkvm_storage": "Support de stockage JetKVM", - "mount_label_mount_as": "Monter comme", - "mount_label_url_description": "Monter des fichiers à partir de n'importe quelle adresse Web publique", - "mount_label_url": "Montage d'URL", "mount_mode_cdrom": "CD/DVD", "mount_mode_disk": "Disque", "mount_mounted_as": "Monté comme", @@ -528,13 +505,10 @@ "mount_no_images_title": "Aucune image disponible", "mount_no_mounted_media": "Aucun support monté", "mount_percentage_used": "{percentageUsed} % utilisé", - "mount_please_select_file_to_upload": "Veuillez sélectionner le fichier à télécharger.", "mount_please_select_file": "Veuillez sélectionner le fichier « {name} » pour continuer le téléchargement.", "mount_popular_images": "Images populaires", "mount_streaming_from_url": "Diffusion à partir d'une URL", "mount_supported_formats": "Formats pris en charge : ISO, IMG", - "mount_tag_experimental": "Expérimental", - "mount_title_mode": "Source de média virtuel", "mount_unmount_error": "Échec du démontage de l'image : {error}", "mount_unmount": "Démonter", "mount_upload_description": "Sélectionnez un fichier image à télécharger sur le stockage JetKVM", @@ -567,7 +541,6 @@ "mouse_jiggler_description": "Simuler le mouvement d'une souris d'ordinateur", "mouse_jiggler_disabled": "Désactivé", "mouse_jiggler_error_config": "Une erreur s'est produite lors de la configuration du jiggler", - "mouse_jiggler_failed_config": "Échec de la définition de la configuration du jiggler : {error}", "mouse_jiggler_failed_state": "Échec de la définition de l'état du jiggler : {error}", "mouse_jiggler_frequent": "Fréquent - 30 s", "mouse_jiggler_invalid_cron": "Expression cron non valide. Veuillez vérifier le format de votre planification (par exemple, « 0 * * * * * » pour chaque minute).", @@ -591,10 +564,7 @@ "network_custom_domain": "Domaine personnalisé", "network_description": "Configurez vos paramètres réseau", "network_dhcp_information": "Informations DHCP", - "network_dhcp_lease_information": "Informations sur le bail DHCP", - "network_dhcp_lease_lifetime_not_applicable": "N / A", "network_dhcp_lease_renew_confirm_description": "Cette opération demandera une nouvelle adresse IP à votre serveur DHCP. Votre appareil pourrait perdre temporairement sa connectivité réseau pendant cette opération.", - "network_dhcp_lease_renew_confirm_title": "Renouveler le bail DHCP", "network_dhcp_lease_renew_confirm": "Renouveler le bail", "network_dhcp_lease_renew_failed": "Échec du renouvellement du bail : {error}", "network_dhcp_lease_renew_success": "Renouvellement du bail DHCP", @@ -611,7 +581,6 @@ "network_ipv4_mode_description": "Configurer le mode IPv4", "network_ipv4_mode_dhcp": "DHCP", "network_ipv4_mode_title": "Mode IPv4", - "network_ipv6_addresses": "Adresses IPv6", "network_ipv6_information": "Informations IPv6", "network_ipv6_mode_description": "Configurer le mode IPv6", "network_ipv6_mode_disabled": "Désactivé", @@ -644,6 +613,7 @@ "never_seen_online": "Jamais vu en ligne", "next": "Suivant", "no_results_found": "Aucun résultat trouvé", + "not_applicable": "N / A", "not_available": "N / A", "not_found": "Non trouvé", "ntp_servers": "Serveurs NTP", @@ -684,7 +654,6 @@ "rename_device_new_name_label": "Nouveau nom de l'appareil", "rename_device_new_name_placeholder": "Serveur multimédia Plex", "rename_device_no_name": "Veuillez spécifier un nom", - "rename": "Rebaptiser", "retry": "Réessayer", "saving": "Économie…", "search_placeholder": "Rechercher…", @@ -842,9 +811,7 @@ "video_stream_quality_title": "Qualité du flux", "video_title": "Vidéo", "view_details": "Voir les détails", - "virtual_keyboard_description": "Utilisez le clavier virtuel pour envoyer des touches spéciales ou des combinaisons de touches à l’ordinateur distant.", "virtual_keyboard_header": "Clavier virtuel", - "wake_on_lan_add_device_back": "Dos", "wake_on_lan_add_device_device_name": "Nom de l'appareil", "wake_on_lan_add_device_example_device_name": "Serveur multimédia Plex", "wake_on_lan_add_device_mac_address": "Adresse MAC", diff --git a/ui/localization/messages/it.json b/ui/localization/messages/it.json index e0075dd3..7bb80363 100644 --- a/ui/localization/messages/it.json +++ b/ui/localization/messages/it.json @@ -48,7 +48,6 @@ "access_tls_updated": "Impostazioni TLS aggiornate correttamente", "access_update_tls_settings": "Aggiorna le impostazioni TLS", "action_bar_connection_stats": "Statistiche di connessione", - "action_bar_exit_fullscreen": "Esci dalla modalità a schermo intero", "action_bar_extension": "Estensione", "action_bar_fullscreen": "A schermo intero", "action_bar_paste_text": "Incolla il testo", @@ -201,13 +200,11 @@ "dc_power_control_set_restore_state_error": "Impossibile inviare lo stato di ripristino dell'alimentazione CC a {state} : {error}", "dc_power_control_voltage_unit": "V", "dc_power_control_voltage": "Voltaggio", - "default": "Predefinito", "delete": "Eliminare", "deregister_button": "Annulla registrazione dal cloud", "deregister_cloud_devices": "Dispositivi cloud", "deregister_description": "Questo rimuoverà il dispositivo dal tuo account cloud e ne revocherà l'accesso remoto. Tieni presente che l'accesso locale sarà comunque possibile.", "deregister_error": "Si è verificato un errore {status} durante l'annullamento della registrazione del dispositivo. Riprova.", - "deregister_from_cloud": "Annulla la registrazione dal cloud", "deregister_headline": "Annulla la registrazione di {device} dal tuo account cloud", "detach": "Staccare", "dhcp_lease_boot_file": "File di avvio", @@ -330,7 +327,6 @@ "invalid_password": "Password non valida", "ip_address": "Indirizzo IP", "ipv6_address_label": "Indirizzo", - "ipv6_addresses": "Indirizzi IPv6", "ipv6_information": "Informazioni IPv6", "ipv6_link_local": "Collegamento locale", "ipv6_preferred_lifetime": "Durata preferita", @@ -339,7 +335,6 @@ "jetkvm_device": "Dispositivo JetKVM", "jetkvm_logo": "Logo JetKVM", "jetkvm_setup": "Configura il tuo JetKVM", - "jetkvm": "JetKVM", "jiggler_cron_schedule_description": "Espressione cron per la pianificazione", "jiggler_cron_schedule_label": "Cron Schedule", "jiggler_example_business_hours_early": "Orario di lavoro 8-17", @@ -370,7 +365,6 @@ "local_auth_change_local_device_password_description": "Inserisci la tua password attuale e una nuova password per aggiornare la protezione del tuo dispositivo locale.", "local_auth_change_local_device_password_title": "Cambia la password del dispositivo locale", "local_auth_confirm_new_password_label": "Conferma nuova password", - "local_auth_create_confirm_password_label": "Conferma nuova password", "local_auth_create_confirm_password_placeholder": "Reinserisci la tua password", "local_auth_create_description": "Crea una password per proteggere il tuo dispositivo da accessi locali non autorizzati.", "local_auth_create_new_password_label": "Nuova password", @@ -400,12 +394,7 @@ "local_auth_success_password_set_title": "Password impostata correttamente", "local_auth_success_password_updated_description": "Hai modificato correttamente la password di protezione del tuo dispositivo locale. Assicurati di ricordare la nuova password per gli accessi futuri.", "local_auth_success_password_updated_title": "Password aggiornata con successo", - "local_auth_update_confirm_password_label": "Conferma nuova password", - "local_auth_update_current_password_label": "password attuale", - "local_auth_update_description": "Inserisci la tua password attuale e una nuova password per aggiornare la protezione del tuo dispositivo locale.", - "local_auth_update_new_password_label": "Nuova password", "local_auth_update_password_button": "Aggiorna password", - "local_auth_update_title": "Cambia la password del dispositivo locale", "log_in": "Login", "log_out": "Disconnetti", "logged_in_as": "Accedi come", @@ -452,19 +441,16 @@ "macros_confirm_deleting": "Eliminazione in corso…", "macros_create_first_description": "Combina le sequenze di tasti in un'unica azione", "macros_create_first_headline": "Crea la tua prima macro", - "macros_create_first": "Crea la tua prima macro per iniziare", "macros_created_success": "Macro \" {name} \" creata con successo", "macros_delay_only": "Solo ritardo", "macros_delete_confirm": "Vuoi davvero eliminare questa macro? Questa azione non può essere annullata.", "macros_delete_macro": "Elimina macro", "macros_deleted_success": "Macro \" {name} \" eliminata con successo", "macros_deleting": "Eliminazione", - "macros_duplicate": "Duplicato", "macros_duplicated_success": "Macro \" {name} \" duplicata correttamente", "macros_edit_button": "Modificare", "macros_edit_description": "Modifica la macro della tastiera", "macros_edit_title": "Modifica macro", - "macros_edit": "Modificare", "macros_failed_create_error": "Impossibile creare la macro: {error}", "macros_failed_create": "Impossibile creare la macro", "macros_failed_delete_error": "Impossibile eliminare la macro: {error}", @@ -479,10 +465,7 @@ "macros_loading": "Caricamento macro in corso…", "macros_max_reached": "Massimo raggiunto", "macros_maximum_macros_reached": "Hai raggiunto il numero massimo di {maximum} consentite.", - "macros_move_down": "Sposta giù", - "macros_move_up": "Spostarsi verso l'alto", "macros_no_macros_available": "Nessuna macro disponibile", - "macros_no_macros_found": "Nessuna macro trovata", "macros_order_updated": "Ordine macro aggiornato con successo", "macros_title": "Macro della tastiera", "macros_updated_success": "Macro \" {name} \" aggiornata con successo", @@ -496,8 +479,6 @@ "mount_button_continue_upload": "Continua a caricare", "mount_button_mount_file": "Monta file", "mount_button_mount_url": "Monta URL", - "mount_button_next": "Prossimo", - "mount_button_previous": "Precedente", "mount_button_select": "Selezionare", "mount_button_showing_results": "Visualizzazione di {from} a {to} di {total} risultati", "mount_button_upload_new_image": "Carica una nuova immagine", @@ -508,7 +489,6 @@ "mount_click_to_select_incomplete": "Fai clic per selezionare \" {name} \"", "mount_confirm_delete": "Sei sicuro di voler eliminare {name} ?", "mount_continue_uploading_with_name": "Continua a caricare \" {name} \"", - "mount_description_mode": "Scegli come vuoi montare i tuoi media virtuali", "mount_error_delete_file": "Errore durante l'eliminazione del file: {error}", "mount_error_description": "Si è verificato un errore durante il tentativo di montare il supporto. Riprova.", "mount_error_get_storage_space": "Errore durante l'ottenimento dello spazio di archiviazione: {error}", @@ -517,9 +497,6 @@ "mount_get_state_error": "Impossibile ottenere lo stato del supporto virtuale: {error}", "mount_jetkvm_storage_description": "Montare i file caricati in precedenza dall'archiviazione JetKVM", "mount_jetkvm_storage": "Montaggio di archiviazione JetKVM", - "mount_label_mount_as": "Montare come", - "mount_label_url_description": "Montare file da qualsiasi indirizzo web pubblico", - "mount_label_url": "Montaggio URL", "mount_mode_cdrom": "CD/DVD", "mount_mode_disk": "Disco", "mount_mounted_as": "Montato come", @@ -528,13 +505,10 @@ "mount_no_images_title": "Nessuna immagine disponibile", "mount_no_mounted_media": "Nessun supporto montato", "mount_percentage_used": "{percentageUsed} % utilizzata", - "mount_please_select_file_to_upload": "Seleziona il file da caricare.", "mount_please_select_file": "Seleziona il file \" {name} \" per continuare il caricamento.", "mount_popular_images": "Immagini popolari", "mount_streaming_from_url": "Streaming da URL", "mount_supported_formats": "Formati supportati: ISO, IMG", - "mount_tag_experimental": "Sperimentale", - "mount_title_mode": "Fonte multimediale virtuale", "mount_unmount_error": "Impossibile smontare l'immagine: {error}", "mount_unmount": "Smontare", "mount_upload_description": "Seleziona un file immagine da caricare nell'archiviazione JetKVM", @@ -567,7 +541,6 @@ "mouse_jiggler_description": "Simula il movimento del mouse di un computer", "mouse_jiggler_disabled": "Disabili", "mouse_jiggler_error_config": "Si è verificato un errore durante l'impostazione della configurazione di Jiggler", - "mouse_jiggler_failed_config": "Impossibile impostare la configurazione di Jiggler: {error}", "mouse_jiggler_failed_state": "Impossibile impostare lo stato del jiggler: {error}", "mouse_jiggler_frequent": "Frequente - 30s", "mouse_jiggler_invalid_cron": "Espressione cron non valida. Controlla il formato della tua pianificazione (ad esempio, '0 * * * * *' per ogni minuto).", @@ -591,10 +564,7 @@ "network_custom_domain": "Dominio personalizzato", "network_description": "Configura le impostazioni di rete", "network_dhcp_information": "Informazioni DHCP", - "network_dhcp_lease_information": "Informazioni sul lease DHCP", - "network_dhcp_lease_lifetime_not_applicable": "N / A", "network_dhcp_lease_renew_confirm_description": "Verrà richiesto un nuovo indirizzo IP al server DHCP. Durante questo processo, il dispositivo potrebbe perdere temporaneamente la connettività di rete.", - "network_dhcp_lease_renew_confirm_title": "Rinnova il contratto di locazione DHCP", "network_dhcp_lease_renew_confirm": "Rinnovare il contratto di locazione", "network_dhcp_lease_renew_failed": "Impossibile rinnovare il contratto di locazione: {error}", "network_dhcp_lease_renew_success": "Rinnovo del contratto di locazione DHCP", @@ -611,7 +581,6 @@ "network_ipv4_mode_description": "Configurare la modalità IPv4", "network_ipv4_mode_dhcp": "DHCP", "network_ipv4_mode_title": "Modalità IPv4", - "network_ipv6_addresses": "Indirizzi IPv6", "network_ipv6_information": "Informazioni IPv6", "network_ipv6_mode_description": "Configurare la modalità IPv6", "network_ipv6_mode_disabled": "Disabili", @@ -644,6 +613,7 @@ "never_seen_online": "Mai visto online", "next": "Prossimo", "no_results_found": "Nessun risultato trovato", + "not_applicable": "N / A", "not_available": "N / A", "not_found": "Non trovato", "ntp_servers": "Server NTP", @@ -684,7 +654,6 @@ "rename_device_new_name_label": "Nuovo nome del dispositivo", "rename_device_new_name_placeholder": "Server multimediale Plex", "rename_device_no_name": "Si prega di specificare un nome", - "rename": "Rinominare", "retry": "Riprova", "saving": "Risparmio…", "search_placeholder": "Ricerca…", @@ -842,9 +811,7 @@ "video_stream_quality_title": "Qualità dello streaming", "video_title": "Video", "view_details": "Visualizza dettagli", - "virtual_keyboard_description": "Utilizzare la tastiera virtuale per inviare tasti speciali o combinazioni di tasti al computer remoto.", "virtual_keyboard_header": "Tastiera virtuale", - "wake_on_lan_add_device_back": "Indietro", "wake_on_lan_add_device_device_name": "Nome del dispositivo", "wake_on_lan_add_device_example_device_name": "Server multimediale Plex", "wake_on_lan_add_device_mac_address": "Indirizzo MAC", diff --git a/ui/localization/messages/nb.json b/ui/localization/messages/nb.json index 57542882..6a517397 100644 --- a/ui/localization/messages/nb.json +++ b/ui/localization/messages/nb.json @@ -48,7 +48,6 @@ "access_tls_updated": "TLS-innstillingene er oppdatert", "access_update_tls_settings": "Oppdater TLS-innstillinger", "action_bar_connection_stats": "Tilkoblingsstatistikk", - "action_bar_exit_fullscreen": "Avslutt fullskjerm", "action_bar_extension": "Forlengelse", "action_bar_fullscreen": "Fullskjerm", "action_bar_paste_text": "Lim inn tekst", @@ -201,13 +200,11 @@ "dc_power_control_set_restore_state_error": "Kunne ikke sende gjenopprettingsstatus for likestrøm til {state} : {error}", "dc_power_control_voltage_unit": "V", "dc_power_control_voltage": "Spenning", - "default": "Misligholde", "delete": "Slett", "deregister_button": "Avregistrer deg fra skyen", "deregister_cloud_devices": "Skyenheter", "deregister_description": "Dette vil fjerne enheten fra skykontoen din og oppheve ekstern tilgang til den. Vær oppmerksom på at lokal tilgang fortsatt vil være mulig.", "deregister_error": "Det oppsto en feil {status} enheten din skulle avregistreres. Prøv på nytt.", - "deregister_from_cloud": "Avregistrer deg fra skyen", "deregister_headline": "Avregistrer {device} fra skykontoen din", "detach": "Løsne", "dhcp_lease_boot_file": "Oppstartsfil", @@ -330,7 +327,6 @@ "invalid_password": "Ugyldig passord", "ip_address": "IP-adresse", "ipv6_address_label": "Adresse", - "ipv6_addresses": "IPv6-adresser", "ipv6_information": "IPv6-informasjon", "ipv6_link_local": "Link-local", "ipv6_preferred_lifetime": "Foretrukket levetid", @@ -339,7 +335,6 @@ "jetkvm_device": "JetKVM-enhet", "jetkvm_logo": "JetKVM-logo", "jetkvm_setup": "Sett opp JetKVM-en din", - "jetkvm": "JetKVM", "jiggler_cron_schedule_description": "Cron-uttrykk for planlegging", "jiggler_cron_schedule_label": "Cron-plan", "jiggler_example_business_hours_early": "Åpningstider 8-17", @@ -370,7 +365,6 @@ "local_auth_change_local_device_password_description": "Skriv inn ditt nåværende passord og et nytt passord for å oppdatere den lokale enhetsbeskyttelsen.", "local_auth_change_local_device_password_title": "Endre passord for lokal enhet", "local_auth_confirm_new_password_label": "Bekreft nytt passord", - "local_auth_create_confirm_password_label": "Bekreft nytt passord", "local_auth_create_confirm_password_placeholder": "Skriv inn passordet ditt på nytt", "local_auth_create_description": "Opprett et passord for å beskytte enheten din mot uautorisert lokal tilgang.", "local_auth_create_new_password_label": "Nytt passord", @@ -400,12 +394,7 @@ "local_auth_success_password_set_title": "Passord angitt", "local_auth_success_password_updated_description": "Du har endret passordet for beskyttelse av den lokale enheten. Husk det nye passordet for fremtidig tilgang.", "local_auth_success_password_updated_title": "Passord oppdatert", - "local_auth_update_confirm_password_label": "Bekreft nytt passord", - "local_auth_update_current_password_label": "Nåværende passord", - "local_auth_update_description": "Skriv inn ditt nåværende passord og et nytt passord for å oppdatere den lokale enhetsbeskyttelsen.", - "local_auth_update_new_password_label": "Nytt passord", "local_auth_update_password_button": "Oppdater passord", - "local_auth_update_title": "Endre passord for lokal enhet", "log_in": "Logg inn", "log_out": "Logg ut", "logged_in_as": "Logget inn som", @@ -452,19 +441,16 @@ "macros_confirm_deleting": "Sletter…", "macros_create_first_description": "Kombiner tastetrykk til én handling", "macros_create_first_headline": "Lag din første makro", - "macros_create_first": "Opprett din første makro for å komme i gang", "macros_created_success": "Makroen « {name} « ble opprettet", "macros_delay_only": "Bare forsinkelse", "macros_delete_confirm": "Er du sikker på at du vil slette denne makroen? Denne handlingen kan ikke angres.", "macros_delete_macro": "Slett makro", "macros_deleted_success": "Makroen « {name} « ble slettet", "macros_deleting": "Sletter", - "macros_duplicate": "Kopiere", "macros_duplicated_success": "Makroen « {name} « ble duplisert", "macros_edit_button": "Redigere", "macros_edit_description": "Endre tastaturmakroen din", "macros_edit_title": "Rediger makro", - "macros_edit": "Redigere", "macros_failed_create_error": "Klarte ikke å opprette makro: {error}", "macros_failed_create": "Kunne ikke opprette makroen", "macros_failed_delete_error": "Klarte ikke å slette makroen: {error}", @@ -479,10 +465,7 @@ "macros_loading": "Laster inn makroer …", "macros_max_reached": "Maks nådd", "macros_maximum_macros_reached": "Du har nådd det maksimale antallet tillatte makroer {maximum}", - "macros_move_down": "Flytt ned", - "macros_move_up": "Flytt opp", "macros_no_macros_available": "Ingen makroer tilgjengelig", - "macros_no_macros_found": "Ingen makroer funnet", "macros_order_updated": "Makroordren er oppdatert", "macros_title": "Tastaturmakroer", "macros_updated_success": "Makroen « {name} « ble oppdatert", @@ -496,8 +479,6 @@ "mount_button_continue_upload": "Fortsett opplastingen", "mount_button_mount_file": "Monter fil", "mount_button_mount_url": "Monterings-URL", - "mount_button_next": "Neste", - "mount_button_previous": "Tidligere", "mount_button_select": "Velge", "mount_button_showing_results": "Viser {from} til {to} av {total} resultater", "mount_button_upload_new_image": "Last opp et nytt bilde", @@ -508,7 +489,6 @@ "mount_click_to_select_incomplete": "Klikk for å velge « {name} »", "mount_confirm_delete": "Er du sikker på at du vil slette {name} ?", "mount_continue_uploading_with_name": "Fortsett å laste opp « {name} »", - "mount_description_mode": "Velg hvordan du vil montere virtuelle medier", "mount_error_delete_file": "Feil ved sletting av fil: {error}", "mount_error_description": "Det oppsto en feil under forsøk på å montere mediet. Prøv på nytt.", "mount_error_get_storage_space": "Feil ved henting av lagringsplass: {error}", @@ -517,9 +497,6 @@ "mount_get_state_error": "Klarte ikke å hente status for virtuelle medier: {error}", "mount_jetkvm_storage_description": "Monter tidligere opplastede filer fra JetKVM-lagringen", "mount_jetkvm_storage": "JetKVM-lagringsmontering", - "mount_label_mount_as": "Monter som", - "mount_label_url_description": "Monter filer fra en hvilken som helst offentlig nettadresse", - "mount_label_url": "URL-montering", "mount_mode_cdrom": "CD/DVD", "mount_mode_disk": "Disk", "mount_mounted_as": "Montert som", @@ -528,13 +505,10 @@ "mount_no_images_title": "Ingen bilder tilgjengelig", "mount_no_mounted_media": "Ingen monterte medier", "mount_percentage_used": "{percentageUsed} % brukt", - "mount_please_select_file_to_upload": "Vennligst velg filen du vil laste opp.", "mount_please_select_file": "Vennligst velg filen « {name} » for å fortsette opplastingen.", "mount_popular_images": "Populære bilder", "mount_streaming_from_url": "Strømming fra URL", "mount_supported_formats": "Støttede formater: ISO, IMG", - "mount_tag_experimental": "Eksperimentell", - "mount_title_mode": "Virtuell mediekilde", "mount_unmount_error": "Klarte ikke å demontere bildet: {error}", "mount_unmount": "Avmonter", "mount_upload_description": "Velg en bildefil som skal lastes opp til JetKVM-lagring", @@ -567,7 +541,6 @@ "mouse_jiggler_description": "Simuler bevegelsen til en datamus", "mouse_jiggler_disabled": "Funksjonshemmet", "mouse_jiggler_error_config": "Det oppsto en feil under innstilling av jiggler-konfigurasjonen", - "mouse_jiggler_failed_config": "Klarte ikke å angi jiggler-konfigurasjon: {error}", "mouse_jiggler_failed_state": "Klarte ikke å angi jiggler-tilstand: {error}", "mouse_jiggler_frequent": "Hyppig - 30-tallet", "mouse_jiggler_invalid_cron": "Ugyldig cron-uttrykk. Sjekk planformatet ditt (f.eks. '0 * * * * *' for hvert minutt).", @@ -591,10 +564,7 @@ "network_custom_domain": "Tilpasset domene", "network_description": "Konfigurer nettverksinnstillingene dine", "network_dhcp_information": "DHCP-informasjon", - "network_dhcp_lease_information": "DHCP-leaseinformasjon", - "network_dhcp_lease_lifetime_not_applicable": "Ikke aktuelt", "network_dhcp_lease_renew_confirm_description": "Dette vil be om en ny IP-adresse fra DHCP-serveren din. Enheten din kan midlertidig miste nettverkstilkoblingen under denne prosessen.", - "network_dhcp_lease_renew_confirm_title": "Forny DHCP-leieavtale", "network_dhcp_lease_renew_confirm": "Forny leieavtalen", "network_dhcp_lease_renew_failed": "Kunne ikke fornye leieavtalen: {error}", "network_dhcp_lease_renew_success": "DHCP-leieavtale fornyet", @@ -611,7 +581,6 @@ "network_ipv4_mode_description": "Konfigurer IPv4-modusen", "network_ipv4_mode_dhcp": "DHCP", "network_ipv4_mode_title": "IPv4-modus", - "network_ipv6_addresses": "IPv6-adresser", "network_ipv6_information": "IPv6-informasjon", "network_ipv6_mode_description": "Konfigurer IPv6-modusen", "network_ipv6_mode_disabled": "Funksjonshemmet", @@ -644,6 +613,7 @@ "never_seen_online": "Aldri sett på nett", "next": "Neste", "no_results_found": "Ingen resultater funnet", + "not_applicable": "Ikke aktuelt", "not_available": "Ikke aktuelt", "not_found": "Ikke funnet", "ntp_servers": "NTP-servere", @@ -684,7 +654,6 @@ "rename_device_new_name_label": "Nytt enhetsnavn", "rename_device_new_name_placeholder": "Plex Media Server", "rename_device_no_name": "Vennligst oppgi et navn", - "rename": "Gi nytt navn", "retry": "Prøv på nytt", "saving": "Lagrer…", "search_placeholder": "Søk…", @@ -842,9 +811,7 @@ "video_stream_quality_title": "Strømmekvalitet", "video_title": "Video", "view_details": "Vis detaljer", - "virtual_keyboard_description": "Bruk det virtuelle tastaturet til å sende spesialtaster eller tastekombinasjoner til den eksterne datamaskinen.", "virtual_keyboard_header": "Virtuelt tastatur", - "wake_on_lan_add_device_back": "Tilbake", "wake_on_lan_add_device_device_name": "Enhetsnavn", "wake_on_lan_add_device_example_device_name": "Plex Media Server", "wake_on_lan_add_device_mac_address": "MAC-adresse", diff --git a/ui/localization/messages/sv.json b/ui/localization/messages/sv.json index 2979cd80..c4bda6af 100644 --- a/ui/localization/messages/sv.json +++ b/ui/localization/messages/sv.json @@ -48,7 +48,6 @@ "access_tls_updated": "TLS-inställningarna har uppdaterats", "access_update_tls_settings": "Uppdatera TLS-inställningar", "action_bar_connection_stats": "Anslutningsstatistik", - "action_bar_exit_fullscreen": "Avsluta helskärm", "action_bar_extension": "Förlängning", "action_bar_fullscreen": "Helskärm", "action_bar_paste_text": "Klistra in text", @@ -201,13 +200,11 @@ "dc_power_control_set_restore_state_error": "Misslyckades med att skicka återställningsstatus för likström till {state} : {error}", "dc_power_control_voltage_unit": "V", "dc_power_control_voltage": "Spänning", - "default": "Standard", "delete": "Radera", "deregister_button": "Avregistrera dig från molnet", "deregister_cloud_devices": "Molnenheter", "deregister_description": "Detta kommer att ta bort enheten från ditt molnkonto och återkalla fjärråtkomst till den. Observera att lokal åtkomst fortfarande kommer att vara möjlig.", "deregister_error": "Det uppstod ett fel {status} enheten avregistrerades. Försök igen.", - "deregister_from_cloud": "Avregistrera dig från molnet", "deregister_headline": "Avregistrera {device} från ditt molnkonto", "detach": "Lösgöra", "dhcp_lease_boot_file": "Startfil", @@ -330,7 +327,6 @@ "invalid_password": "Ogiltigt lösenord", "ip_address": "IP-adress", "ipv6_address_label": "Adress", - "ipv6_addresses": "IPv6-adresser", "ipv6_information": "IPv6-information", "ipv6_link_local": "Länklokal", "ipv6_preferred_lifetime": "Föredragen livslängd", @@ -339,7 +335,6 @@ "jetkvm_device": "JetKVM-enhet", "jetkvm_logo": "JetKVM-logotyp", "jetkvm_setup": "Konfigurera din JetKVM", - "jetkvm": "JetKVM", "jiggler_cron_schedule_description": "Cron-uttryck för schemaläggning", "jiggler_cron_schedule_label": "Cron-schema", "jiggler_example_business_hours_early": "Öppettider 8-17", @@ -370,7 +365,6 @@ "local_auth_change_local_device_password_description": "Ange ditt nuvarande lösenord och ett nytt lösenord för att uppdatera ditt lokala enhetsskydd.", "local_auth_change_local_device_password_title": "Ändra lösenord för lokal enhet", "local_auth_confirm_new_password_label": "Bekräfta nytt lösenord", - "local_auth_create_confirm_password_label": "Bekräfta nytt lösenord", "local_auth_create_confirm_password_placeholder": "Ange ditt lösenord igen", "local_auth_create_description": "Skapa ett lösenord för att skydda din enhet från obehörig lokal åtkomst.", "local_auth_create_new_password_label": "Nytt lösenord", @@ -400,12 +394,7 @@ "local_auth_success_password_set_title": "Lösenordet har ställts in", "local_auth_success_password_updated_description": "Du har ändrat ditt lösenord för lokal enhetsskydd. Se till att komma ihåg ditt nya lösenord för framtida åtkomst.", "local_auth_success_password_updated_title": "Lösenordet har uppdaterats", - "local_auth_update_confirm_password_label": "Bekräfta nytt lösenord", - "local_auth_update_current_password_label": "Nuvarande lösenord", - "local_auth_update_description": "Ange ditt nuvarande lösenord och ett nytt lösenord för att uppdatera ditt lokala enhetsskydd.", - "local_auth_update_new_password_label": "Nytt lösenord", "local_auth_update_password_button": "Uppdatera lösenord", - "local_auth_update_title": "Ändra lösenord för lokal enhet", "log_in": "Logga in", "log_out": "Logga ut", "logged_in_as": "Inloggad som", @@ -452,19 +441,16 @@ "macros_confirm_deleting": "Tar bort…", "macros_create_first_description": "Kombinera tangenttryckningar till en enda åtgärd", "macros_create_first_headline": "Skapa ditt första makro", - "macros_create_first": "Skapa ditt första makro för att komma igång", "macros_created_success": "Makrot \" {name} \" skapades", "macros_delay_only": "Endast fördröjning", "macros_delete_confirm": "Är du säker på att du vill ta bort det här makrot? Åtgärden kan inte ångras.", "macros_delete_macro": "Ta bort makro", "macros_deleted_success": "Makrot \" {name} \" har raderats", "macros_deleting": "Tar bort", - "macros_duplicate": "Duplicera", "macros_duplicated_success": "Makrot \" {name} \" duplicerades", "macros_edit_button": "Redigera", "macros_edit_description": "Ändra ditt tangentbordsmakro", "macros_edit_title": "Redigera makro", - "macros_edit": "Redigera", "macros_failed_create_error": "Misslyckades med att skapa makrot: {error}", "macros_failed_create": "Misslyckades med att skapa makrot", "macros_failed_delete_error": "Misslyckades med att ta bort makrot: {error}", @@ -479,10 +465,7 @@ "macros_loading": "Läser in makron…", "macros_max_reached": "Max uppnått", "macros_maximum_macros_reached": "Du har nått det maximala antalet tillåtna makron {maximum} .", - "macros_move_down": "Flytta ner", - "macros_move_up": "Flytta upp", "macros_no_macros_available": "Inga makron tillgängliga", - "macros_no_macros_found": "Inga makron hittades", "macros_order_updated": "Makroordningen har uppdaterats", "macros_title": "Tangentbordsmakron", "macros_updated_success": "Makrot \" {name} \" uppdaterades", @@ -496,8 +479,6 @@ "mount_button_continue_upload": "Fortsätt uppladdningen", "mount_button_mount_file": "Montera fil", "mount_button_mount_url": "Monterings-URL", - "mount_button_next": "Nästa", - "mount_button_previous": "Tidigare", "mount_button_select": "Välja", "mount_button_showing_results": "Visar {from} till {to} av {total} resultat", "mount_button_upload_new_image": "Ladda upp en ny bild", @@ -508,7 +489,6 @@ "mount_click_to_select_incomplete": "Klicka för att välja \" {name} \"", "mount_confirm_delete": "Är du säker på att du vill ta bort {name} ?", "mount_continue_uploading_with_name": "Fortsätt ladda upp \" {name} \"", - "mount_description_mode": "Välj hur du vill montera ditt virtuella media", "mount_error_delete_file": "Fel vid borttagning av fil: {error}", "mount_error_description": "Ett fel uppstod när mediet skulle monteras. Försök igen.", "mount_error_get_storage_space": "Fel vid hämtning av lagringsutrymme: {error}", @@ -517,9 +497,6 @@ "mount_get_state_error": "Misslyckades med att hämta virtuellt medietillstånd: {error}", "mount_jetkvm_storage_description": "Montera tidigare uppladdade filer från JetKVM-lagringen", "mount_jetkvm_storage": "JetKVM-lagringsmontering", - "mount_label_mount_as": "Montera som", - "mount_label_url_description": "Montera filer från valfri offentlig webbadress", - "mount_label_url": "URL-montering", "mount_mode_cdrom": "CD/DVD", "mount_mode_disk": "Disk", "mount_mounted_as": "Monterad som", @@ -528,13 +505,10 @@ "mount_no_images_title": "Inga bilder tillgängliga", "mount_no_mounted_media": "Inget monterat media", "mount_percentage_used": "{percentageUsed} % använd", - "mount_please_select_file_to_upload": "Välj filen att ladda upp.", "mount_please_select_file": "Välj filen \" {name} \" för att fortsätta uppladdningen.", "mount_popular_images": "Populära bilder", "mount_streaming_from_url": "Streaming från URL", "mount_supported_formats": "Format som stöds: ISO, IMG", - "mount_tag_experimental": "Experimentell", - "mount_title_mode": "Virtuell mediekälla", "mount_unmount_error": "Misslyckades med att avmontera bilden: {error}", "mount_unmount": "Avmontera", "mount_upload_description": "Välj en bildfil att ladda upp till JetKVM-lagring", @@ -567,7 +541,6 @@ "mouse_jiggler_description": "Simulera rörelsen hos en datormus", "mouse_jiggler_disabled": "Funktionshindrad", "mouse_jiggler_error_config": "Det uppstod ett fel vid konfiguration av jiggler", - "mouse_jiggler_failed_config": "Misslyckades med att ställa in jiggler-konfigurationen: {error}", "mouse_jiggler_failed_state": "Misslyckades med att ställa in jiggler-tillstånd: {error}", "mouse_jiggler_frequent": "Frekvent - 30-talet", "mouse_jiggler_invalid_cron": "Ogiltigt cron-uttryck. Kontrollera schemaformatet (t.ex. '0 * * * * *' för varje minut).", @@ -591,10 +564,7 @@ "network_custom_domain": "Anpassad domän", "network_description": "Konfigurera dina nätverksinställningar", "network_dhcp_information": "DHCP-information", - "network_dhcp_lease_information": "DHCP-leasinginformation", - "network_dhcp_lease_lifetime_not_applicable": "Ej tillämpligt", "network_dhcp_lease_renew_confirm_description": "Detta kommer att begära en ny IP-adress från din DHCP-server. Din enhet kan tillfälligt förlora nätverksanslutningen under denna process.", - "network_dhcp_lease_renew_confirm_title": "Förnya DHCP-lease", "network_dhcp_lease_renew_confirm": "Förnya hyresavtalet", "network_dhcp_lease_renew_failed": "Misslyckades med att förnya leasingavtalet: {error}", "network_dhcp_lease_renew_success": "DHCP-lease förnyad", @@ -611,7 +581,6 @@ "network_ipv4_mode_description": "Konfigurera IPv4-läget", "network_ipv4_mode_dhcp": "DHCP", "network_ipv4_mode_title": "IPv4-läge", - "network_ipv6_addresses": "IPv6-adresser", "network_ipv6_information": "IPv6-information", "network_ipv6_mode_description": "Konfigurera IPv6-läget", "network_ipv6_mode_disabled": "Funktionshindrad", @@ -644,6 +613,7 @@ "never_seen_online": "Aldrig sett online", "next": "Nästa", "no_results_found": "Inga resultat hittades", + "not_applicable": "Ej tillämpligt", "not_available": "Ej tillämpligt", "not_found": "Inte hittad", "ntp_servers": "NTP-servrar", @@ -684,7 +654,6 @@ "rename_device_new_name_label": "Nytt enhetsnamn", "rename_device_new_name_placeholder": "Plex Media Server", "rename_device_no_name": "Vänligen ange ett namn", - "rename": "Döpa om", "retry": "Försöka igen", "saving": "Sparande…", "search_placeholder": "Söka…", @@ -842,9 +811,7 @@ "video_stream_quality_title": "Strömningskvalitet", "video_title": "Video", "view_details": "Visa detaljer", - "virtual_keyboard_description": "Använd det virtuella tangentbordet för att skicka specialtangenter eller tangentkombinationer till fjärrdatorn.", "virtual_keyboard_header": "Virtuellt tangentbord", - "wake_on_lan_add_device_back": "Tillbaka", "wake_on_lan_add_device_device_name": "Enhetsnamn", "wake_on_lan_add_device_example_device_name": "Plex Media Server", "wake_on_lan_add_device_mac_address": "MAC-adress", diff --git a/ui/localization/messages/zh.json b/ui/localization/messages/zh.json index 5051b5af..d817deea 100644 --- a/ui/localization/messages/zh.json +++ b/ui/localization/messages/zh.json @@ -48,7 +48,6 @@ "access_tls_updated": "TLS 设置更新成功", "access_update_tls_settings": "更新 TLS 设置", "action_bar_connection_stats": "连接统计", - "action_bar_exit_fullscreen": "退出全屏", "action_bar_extension": "扩展", "action_bar_fullscreen": "全屏", "action_bar_paste_text": "粘贴文本", @@ -201,13 +200,11 @@ "dc_power_control_set_restore_state_error": "无法将直流电源恢复状态发送到 {state} : {error}", "dc_power_control_voltage_unit": "V", "dc_power_control_voltage": "电压", - "default": "默认", "delete": "删除", "deregister_button": "从云端注销", "deregister_cloud_devices": "云设备", "deregister_description": "这将从您的云帐户中移除该设备,并撤销其远程访问权限。请注意,您仍然可以进行本地访问", "deregister_error": "注销您的设备时出现错误{status} 。请重试。", - "deregister_from_cloud": "从云端取消注册", "deregister_headline": "从您的云帐户中取消注册{device}", "detach": "分离", "dhcp_lease_boot_file": "引导文件", @@ -330,7 +327,6 @@ "invalid_password": "密码无效", "ip_address": "IP 地址", "ipv6_address_label": "地址", - "ipv6_addresses": "IPv6 地址", "ipv6_information": "IPv6 信息", "ipv6_link_local": "本地链路", "ipv6_preferred_lifetime": "首选寿命", @@ -339,7 +335,6 @@ "jetkvm_device": "JetKVM 设备", "jetkvm_logo": "JetKVM 徽标", "jetkvm_setup": "设置您的 JetKVM", - "jetkvm": "JetKVM", "jiggler_cron_schedule_description": "用于调度的 Cron 表达式", "jiggler_cron_schedule_label": "Cron 计划", "jiggler_example_business_hours_early": "营业时间 8-17", @@ -370,7 +365,6 @@ "local_auth_change_local_device_password_description": "输入您当前的密码和新密码以更新您的本地设备保护。", "local_auth_change_local_device_password_title": "更改本地设备密码", "local_auth_confirm_new_password_label": "确认新密码", - "local_auth_create_confirm_password_label": "确认新密码", "local_auth_create_confirm_password_placeholder": "重新输入您的密码", "local_auth_create_description": "创建密码以保护您的设备免遭未经授权的本地访问。", "local_auth_create_new_password_label": "新密码", @@ -400,12 +394,7 @@ "local_auth_success_password_set_title": "密码设置成功", "local_auth_success_password_updated_description": "您已成功更改本地设备保护密码。请务必记住新密码,以便日后访问。", "local_auth_success_password_updated_title": "密码更新成功", - "local_auth_update_confirm_password_label": "确认新密码", - "local_auth_update_current_password_label": "当前密码", - "local_auth_update_description": "输入您当前的密码和新密码以更新您的本地设备保护。", - "local_auth_update_new_password_label": "新密码", "local_auth_update_password_button": "更新密码", - "local_auth_update_title": "更改本地设备密码", "log_in": "登录", "log_out": "登出", "logged_in_as": "登录身份", @@ -452,19 +441,16 @@ "macros_confirm_deleting": "正在删除…", "macros_create_first_description": "将按键组合成一个动作", "macros_create_first_headline": "创建您的第一个宏", - "macros_create_first": "创建您的第一个宏以开始使用", "macros_created_success": "宏“ {name} ”已成功创建", "macros_delay_only": "仅延迟", "macros_delete_confirm": "您确定要删除此宏吗?此操作无法撤消。", "macros_delete_macro": "删除宏", "macros_deleted_success": "宏“ {name} ”已成功删除", "macros_deleting": "删除", - "macros_duplicate": "复制", "macros_duplicated_success": "宏“ {name} ”复制成功", "macros_edit_button": "编辑", "macros_edit_description": "修改键盘宏", "macros_edit_title": "编辑宏", - "macros_edit": "编辑", "macros_failed_create_error": "无法创建宏: {error}", "macros_failed_create": "无法创建宏", "macros_failed_delete_error": "无法删除宏: {error}", @@ -479,10 +465,7 @@ "macros_loading": "正在加载宏...", "macros_max_reached": "已达到最大值", "macros_maximum_macros_reached": "您已达到允许的最大{maximum}宏数量。", - "macros_move_down": "下移", - "macros_move_up": "上移", "macros_no_macros_available": "没有可用的宏", - "macros_no_macros_found": "未找到宏", "macros_order_updated": "宏命令更新成功", "macros_title": "键盘宏", "macros_updated_success": "宏“ {name} ”已成功更新", @@ -496,8 +479,6 @@ "mount_button_continue_upload": "继续上传", "mount_button_mount_file": "挂载文件", "mount_button_mount_url": "安装 URL", - "mount_button_next": "下一个", - "mount_button_previous": "以前的", "mount_button_select": "选择", "mount_button_showing_results": "显示{from}至{to}共{total}个结果", "mount_button_upload_new_image": "上传新图片", @@ -508,7 +489,6 @@ "mount_click_to_select_incomplete": "点击选择“ {name} ”", "mount_confirm_delete": "您确定要删除{name} ?", "mount_continue_uploading_with_name": "继续上传“ {name} ”", - "mount_description_mode": "选择如何安装虚拟媒体", "mount_error_delete_file": "删除文件时出错: {error}", "mount_error_description": "尝试装载媒体时出错。请重试。", "mount_error_get_storage_space": "获取存储空间时出错: {error}", @@ -517,9 +497,6 @@ "mount_get_state_error": "无法获取虚拟媒体状态: {error}", "mount_jetkvm_storage_description": "从 JetKVM 存储挂载之前上传的文件", "mount_jetkvm_storage": "JetKVM 存储支架", - "mount_label_mount_as": "挂载为", - "mount_label_url_description": "从任何公共网址挂载文件", - "mount_label_url": "URL 挂载", "mount_mode_cdrom": "CD/DVD", "mount_mode_disk": "磁盘", "mount_mounted_as": "安装为", @@ -528,13 +505,10 @@ "mount_no_images_title": "没有可用的图像", "mount_no_mounted_media": "没有安装媒体", "mount_percentage_used": "{percentageUsed}使用百分比", - "mount_please_select_file_to_upload": "请选择要上传的文件。", "mount_please_select_file": "请选择文件“ {name} ”继续上传。", "mount_popular_images": "热门图片", "mount_streaming_from_url": "从 URL 流式传输", "mount_supported_formats": "支持的格式:ISO、IMG", - "mount_tag_experimental": "实验", - "mount_title_mode": "虚拟媒体源", "mount_unmount_error": "无法卸载映像: {error}", "mount_unmount": "卸载", "mount_upload_description": "选择要上传到 JetKVM 存储的图像文件", @@ -567,7 +541,6 @@ "mouse_jiggler_description": "模拟计算机鼠标的移动", "mouse_jiggler_disabled": "已禁用", "mouse_jiggler_error_config": "设置抖动器配置时出错", - "mouse_jiggler_failed_config": "无法设置 jiggler 配置: {error}", "mouse_jiggler_failed_state": "无法设置抖动器状态: {error}", "mouse_jiggler_frequent": "频繁 - 30 秒", "mouse_jiggler_invalid_cron": "cron 表达式无效。请检查您的计划格式(例如,每分钟为“0 * * * * *”)。", @@ -591,10 +564,7 @@ "network_custom_domain": "自定义域", "network_description": "配置您的网络设置", "network_dhcp_information": "DHCP 信息", - "network_dhcp_lease_information": "DHCP 租约信息", - "network_dhcp_lease_lifetime_not_applicable": "不适用", "network_dhcp_lease_renew_confirm_description": "这将从您的 DHCP 服务器请求新的 IP 地址。在此过程中,您的设备可能会暂时失去网络连接。", - "network_dhcp_lease_renew_confirm_title": "续订 DHCP 租约", "network_dhcp_lease_renew_confirm": "续租", "network_dhcp_lease_renew_failed": "无法续订租约: {error}", "network_dhcp_lease_renew_success": "DHCP 租约已续订", @@ -611,7 +581,6 @@ "network_ipv4_mode_description": "配置 IPv4 模式", "network_ipv4_mode_dhcp": "DHCP", "network_ipv4_mode_title": "IPv4 模式", - "network_ipv6_addresses": "IPv6 地址", "network_ipv6_information": "IPv6 信息", "network_ipv6_mode_description": "配置 IPv6 模式", "network_ipv6_mode_disabled": "已禁用", @@ -644,6 +613,7 @@ "never_seen_online": "网上没见过", "next": "下一个", "no_results_found": "未找到结果", + "not_applicable": "不适用", "not_available": "不适用", "not_found": "未找到", "ntp_servers": "NTP 服务器", @@ -684,7 +654,6 @@ "rename_device_new_name_label": "新设备名称", "rename_device_new_name_placeholder": "Plex媒体服务器", "rename_device_no_name": "请指定名称", - "rename": "重命名", "retry": "重试", "saving": "保存…", "search_placeholder": "搜索…", @@ -842,9 +811,7 @@ "video_stream_quality_title": "流质量", "video_title": "视频", "view_details": "查看详情", - "virtual_keyboard_description": "使用虚拟键盘向远程计算机发送特殊键或组合键。", "virtual_keyboard_header": "虚拟键盘", - "wake_on_lan_add_device_back": "后退", "wake_on_lan_add_device_device_name": "设备名称", "wake_on_lan_add_device_example_device_name": "Plex媒体服务器", "wake_on_lan_add_device_mac_address": "MAC 地址", diff --git a/ui/src/components/popovers/WakeOnLan/AddDeviceForm.tsx b/ui/src/components/popovers/WakeOnLan/AddDeviceForm.tsx index 9695cc37..dcdc9965 100644 --- a/ui/src/components/popovers/WakeOnLan/AddDeviceForm.tsx +++ b/ui/src/components/popovers/WakeOnLan/AddDeviceForm.tsx @@ -83,7 +83,7 @@ export default function AddDeviceForm({