diff --git a/crates/ui-egui/locales/cs-formats.json b/crates/ui-egui/locales/cs-formats.json index 1eb882f09..aadd26ce9 100644 --- a/crates/ui-egui/locales/cs-formats.json +++ b/crates/ui-egui/locales/cs-formats.json @@ -305,5 +305,9 @@ "Could not read {name}: {e}": "Soubor {name} se nepodařilo přečíst: {e}", "Added {n} photo{}": "Přidáno fotografií: {n}{:.0}", "Where should the Lightroom catalog “{catalog}” go?": "Kam má jít katalog Lightroomu „{catalog}“?", - "Merge into the open library “{library}” ({count} photo{})": "Sloučit s otevřenou knihovnou „{library}“ (fotografie: {count}{:.0})" + "Merge into the open library “{library}” ({count} photo{})": "Sloučit s otevřenou knihovnou „{library}“ (fotografie: {count}{:.0})", + "Panel layout could not be restored: {error}": "Rozložení panelů se nepodařilo obnovit: {error}", + "Panel move was not applied: {error}": "Přesun panelu nebyl použit: {error}", + "{name} is installed": "{name} je nainstalován", + "{name} is installed and in use: face recognition is on": "{name} je nainstalován a používán: rozpoznávání obličejů je zapnuto" } diff --git a/crates/ui-egui/locales/cs.json b/crates/ui-egui/locales/cs.json index 52ca94a52..ae834f6c4 100644 --- a/crates/ui-egui/locales/cs.json +++ b/crates/ui-egui/locales/cs.json @@ -600,6 +600,7 @@ "Download Place Names (GeoNames)": "Stáhnout názvy míst (GeoNames)", "Download the SAM 3 Model?": "Stáhnout model SAM 3?", "Downloaded and checked. Installing…": "Staženo a ověřeno. Probíhá instalace…", + "The download failed": "Stažení se nezdařilo", "Downloading model": "Stahování modelu", "Downloading place names": "Stahování názvů míst", "Downloads": "Stažené soubory", @@ -2408,5 +2409,12 @@ "Import dropped files without review": "Importovat přetažené soubory bez kontroly", "An import is running": "Import už běží", "An import is running. Drop photos when it has finished": "Import už běží. Fotky přetáhněte, až skončí", - "Finish Lightroom catalog import before adding photos": "Dokončete import katalogu Lightroom, než přidáte fotky" + "Finish Lightroom catalog import before adding photos": "Dokončete import katalogu Lightroom, než přidáte fotky", + "Face recognition is on": "Rozpoznávání obličejů je zapnuto", + "Face recognition is off. Turn it on to get name suggestions and see look-alike faces together.": "Rozpoznávání obličejů je vypnuto. Zapněte je, abyste dostávali návrhy jmen a viděli podobné obličeje pohromadě.", + "Turn on": "Zapnout", + "Set up face recognition": "Nastavit rozpoznávání obličejů", + "Face recognition needs a model to suggest names: a one-time download, in Settings.": "Rozpoznávání obličejů potřebuje model, aby mohlo navrhovat jména: jednorázové stažení v Nastavení.", + "Turn on name suggestions": "Zapnout návrhy jmen", + "Set up name suggestions…": "Nastavit návrhy jmen…" } diff --git a/crates/ui-egui/locales/de-formats.json b/crates/ui-egui/locales/de-formats.json index 79390f136..1cf2b1d04 100644 --- a/crates/ui-egui/locales/de-formats.json +++ b/crates/ui-egui/locales/de-formats.json @@ -305,5 +305,9 @@ "Could not read {name}: {e}": "{name} konnte nicht gelesen werden: {e}", "Added {n} photo{}": "{n} Foto{} hinzugefügt", "Where should the Lightroom catalog “{catalog}” go?": "Wohin soll der Lightroom-Katalog „{catalog}“?", - "Merge into the open library “{library}” ({count} photo{})": "Mit der geöffneten Bibliothek „{library}“ zusammenführen ({count} Foto{})" + "Merge into the open library “{library}” ({count} photo{})": "Mit der geöffneten Bibliothek „{library}“ zusammenführen ({count} Foto{})", + "Panel layout could not be restored: {error}": "Die Bereichsanordnung konnte nicht wiederhergestellt werden: {error}", + "Panel move was not applied: {error}": "Das Verschieben des Bereichs wurde nicht ausgeführt: {error}", + "{name} is installed": "{name} ist installiert", + "{name} is installed and in use: face recognition is on": "{name} ist installiert und in Gebrauch: Gesichtserkennung ist eingeschaltet" } diff --git a/crates/ui-egui/locales/de.json b/crates/ui-egui/locales/de.json index e2205db78..9a994d9fb 100644 --- a/crates/ui-egui/locales/de.json +++ b/crates/ui-egui/locales/de.json @@ -1871,6 +1871,7 @@ "Denoise Settings": "Entrauschungseinstellungen", "Denoise all photos with an Amount": "Alle Fotos mit einer Stärke entrauschen", "Downloaded and checked. Installing…": "Heruntergeladen und geprüft. Wird installiert…", + "The download failed": "Der Download ist fehlgeschlagen", "Failed its last test": "Letzter Test fehlgeschlagen", "Graphics card": "Grafikkarte", "I have read these terms and accept them for my own use": "Ich habe diese Bedingungen gelesen und akzeptiere sie für meine eigene Nutzung", @@ -3440,5 +3441,12 @@ "Import dropped files without review": "Abgelegte Dateien ohne Prüfung importieren", "An import is running": "Ein Import läuft", "An import is running. Drop photos when it has finished": "Ein Import läuft. Lege die Fotos ab, wenn er fertig ist", - "Finish Lightroom catalog import before adding photos": "Schließe den Import des Lightroom-Katalogs ab, bevor du Fotos hinzufügst" + "Finish Lightroom catalog import before adding photos": "Schließe den Import des Lightroom-Katalogs ab, bevor du Fotos hinzufügst", + "Face recognition is on": "Gesichtserkennung ist eingeschaltet", + "Face recognition is off. Turn it on to get name suggestions and see look-alike faces together.": "Gesichtserkennung ist ausgeschaltet. Schalte sie ein, um Namensvorschläge zu erhalten und ähnliche Gesichter zusammen zu sehen.", + "Turn on": "Einschalten", + "Set up face recognition": "Gesichtserkennung einrichten", + "Face recognition needs a model to suggest names: a one-time download, in Settings.": "Die Gesichtserkennung braucht ein Modell, um Namen vorzuschlagen: ein einmaliger Download in den Einstellungen.", + "Turn on name suggestions": "Namensvorschläge einschalten", + "Set up name suggestions…": "Namensvorschläge einrichten…" } diff --git a/crates/ui-egui/locales/es-formats.json b/crates/ui-egui/locales/es-formats.json index 33e5f52fc..5b5c8ccf8 100644 --- a/crates/ui-egui/locales/es-formats.json +++ b/crates/ui-egui/locales/es-formats.json @@ -305,5 +305,9 @@ "Could not read {name}: {e}": "No se pudo leer {name}: {e}", "Added {n} photo{}": "{n} foto{0} añadida{0}", "Where should the Lightroom catalog “{catalog}” go?": "¿Dónde debe ir el catálogo de Lightroom “{catalog}”?", - "Merge into the open library “{library}” ({count} photo{})": "Combinar con la biblioteca abierta “{library}” ({count} foto{})" + "Merge into the open library “{library}” ({count} photo{})": "Combinar con la biblioteca abierta “{library}” ({count} foto{})", + "Panel layout could not be restored: {error}": "No se pudo restablecer la disposición de paneles: {error}", + "Panel move was not applied: {error}": "No se aplicó el movimiento del panel: {error}", + "{name} is installed": "{name} está instalado", + "{name} is installed and in use: face recognition is on": "{name} está instalado y en uso: el reconocimiento facial está activado" } diff --git a/crates/ui-egui/locales/es.json b/crates/ui-egui/locales/es.json index 8b56411fb..7f86065ac 100644 --- a/crates/ui-egui/locales/es.json +++ b/crates/ui-egui/locales/es.json @@ -1886,6 +1886,7 @@ "Denoise Settings": "Ajustes de reducción de ruido", "Denoise all photos with an Amount": "Reducir el ruido de todas las fotos con una cantidad", "Downloaded and checked. Installing…": "Descargado y comprobado. Instalando…", + "The download failed": "La descarga ha fallado", "Failed its last test": "Falló en su última prueba", "Graphics card": "Tarjeta gráfica", "I have read these terms and accept them for my own use": "He leído estas condiciones y las acepto para mi propio uso", @@ -2359,5 +2360,12 @@ "Import dropped files without review": "Importar los archivos soltados sin revisión", "An import is running": "Hay una importación en curso", "An import is running. Drop photos when it has finished": "Hay una importación en curso. Suelta las fotos cuando termine", - "Finish Lightroom catalog import before adding photos": "Termina la importación del catálogo de Lightroom antes de añadir fotos" + "Finish Lightroom catalog import before adding photos": "Termina la importación del catálogo de Lightroom antes de añadir fotos", + "Face recognition is on": "El reconocimiento facial está activado", + "Face recognition is off. Turn it on to get name suggestions and see look-alike faces together.": "El reconocimiento facial está desactivado. Actívalo para obtener sugerencias de nombres y ver juntas las caras parecidas.", + "Turn on": "Activar", + "Set up face recognition": "Configurar el reconocimiento facial", + "Face recognition needs a model to suggest names: a one-time download, in Settings.": "El reconocimiento facial necesita un modelo para sugerir nombres: una descarga única, en Ajustes.", + "Turn on name suggestions": "Activar sugerencias de nombres", + "Set up name suggestions…": "Configurar sugerencias de nombres…" } diff --git a/crates/ui-egui/locales/fi-formats.json b/crates/ui-egui/locales/fi-formats.json index 8a13ec5e2..50ad2c35b 100644 --- a/crates/ui-egui/locales/fi-formats.json +++ b/crates/ui-egui/locales/fi-formats.json @@ -305,5 +305,9 @@ "Drop to import {n} preset{}": "Pudota tuodaksesi esiasetuksia: {n}{:.0}", "Drop to review {n} item{} for import": "Pudota tarkistaaksesi ennen tuontia (kohteita: {n}){:.0}", "Where should the Lightroom catalog “{catalog}” go?": "Minne Lightroom-luettelo ”{catalog}” tuodaan?", - "Merge into the open library “{library}” ({count} photo{})": "Yhdistä avoimeen kirjastoon ”{library}” (kuvia: {count}{:.0})" + "Merge into the open library “{library}” ({count} photo{})": "Yhdistä avoimeen kirjastoon ”{library}” (kuvia: {count}{:.0})", + "Panel layout could not be restored: {error}": "Paneelien asettelua ei voitu palauttaa: {error}", + "Panel move was not applied: {error}": "Paneelin siirtoa ei otettu käyttöön: {error}", + "{name} is installed": "{name} on asennettu", + "{name} is installed and in use: face recognition is on": "{name} on asennettu ja käytössä: kasvojentunnistus on päällä" } diff --git a/crates/ui-egui/locales/fi.json b/crates/ui-egui/locales/fi.json index e0a8c622a..214cad041 100644 --- a/crates/ui-egui/locales/fi.json +++ b/crates/ui-egui/locales/fi.json @@ -557,6 +557,7 @@ "Download Place Names (GeoNames)": "Lataa paikannimet (GeoNames)", "Download the SAM 3 Model?": "Ladataanko SAM 3 -malli?", "Downloaded and checked. Installing…": "Ladattu ja tarkistettu. Asennetaan…", + "The download failed": "Lataus epäonnistui", "Downloading model": "Ladataan mallia", "Downloading place names": "Ladataan paikannimiä", "Downloads": "Lataukset", @@ -2327,5 +2328,12 @@ "Drop to open the face model": "Pudota avataksesi kasvomallin", "Dropped Files": "Pudotetut tiedostot", "Finish Lightroom catalog import before adding photos": "Viimeistele Lightroom-luettelon tuonti ennen kuvien lisäämistä", - "Import dropped files without review": "Tuo pudotetut tiedostot ilman tarkistusta" + "Import dropped files without review": "Tuo pudotetut tiedostot ilman tarkistusta", + "Face recognition is on": "Kasvojentunnistus on päällä", + "Face recognition is off. Turn it on to get name suggestions and see look-alike faces together.": "Kasvojentunnistus on pois päältä. Ota se käyttöön, niin saat nimiehdotuksia ja näet samannäköiset kasvot yhdessä.", + "Turn on": "Ota käyttöön", + "Set up face recognition": "Määritä kasvojentunnistus", + "Face recognition needs a model to suggest names: a one-time download, in Settings.": "Kasvojentunnistus tarvitsee mallin nimien ehdottamiseen: kertaluonteinen lataus Asetuksissa.", + "Turn on name suggestions": "Ota nimiehdotukset käyttöön", + "Set up name suggestions…": "Määritä nimiehdotukset…" } diff --git a/crates/ui-egui/locales/fr-formats.json b/crates/ui-egui/locales/fr-formats.json index 294273781..7fe24eba9 100644 --- a/crates/ui-egui/locales/fr-formats.json +++ b/crates/ui-egui/locales/fr-formats.json @@ -305,5 +305,9 @@ "Could not read {name}: {e}": "Impossible de lire {name} : {e}", "Added {n} photo{}": "{n} photo{} ajoutée(s)", "Where should the Lightroom catalog “{catalog}” go?": "Où importer le catalogue Lightroom « {catalog} » ?", - "Merge into the open library “{library}” ({count} photo{})": "Fusionner avec la bibliothèque ouverte « {library} » ({count} photo{})" + "Merge into the open library “{library}” ({count} photo{})": "Fusionner avec la bibliothèque ouverte « {library} » ({count} photo{})", + "Panel layout could not be restored: {error}": "La disposition des panneaux n'a pas pu être restaurée : {error}", + "Panel move was not applied: {error}": "Le déplacement du panneau n'a pas été appliqué : {error}", + "{name} is installed": "{name} est installé", + "{name} is installed and in use: face recognition is on": "{name} est installé et utilisé : la reconnaissance des visages est activée" } diff --git a/crates/ui-egui/locales/fr.json b/crates/ui-egui/locales/fr.json index 42b0667ee..0c17c4290 100644 --- a/crates/ui-egui/locales/fr.json +++ b/crates/ui-egui/locales/fr.json @@ -1706,6 +1706,7 @@ "Denoise Settings": "Réglages de débruitage", "Denoise all photos with an Amount": "Débruiter toutes les photos ayant une Quantité", "Downloaded and checked. Installing…": "Téléchargé et vérifié. Installation en cours…", + "The download failed": "Le téléchargement a échoué", "Failed its last test": "Échec lors de son dernier test", "Graphics card": "Carte graphique", "I have read these terms and accept them for my own use": "J'ai lu ces conditions et je les accepte pour mon propre usage", @@ -2391,5 +2392,12 @@ "Checking recent libraries": "Vérification des bibliothèques récentes", "The photos are imported once a library is open": "Les photos seront importées dès qu'une bibliothèque sera ouverte", "Open a library first, then drop the presets again": "Ouvrez d'abord une bibliothèque, puis déposez à nouveau les préréglages", - "This library couldn't be checked:": "Impossible de vérifier cette bibliothèque :" + "This library couldn't be checked:": "Impossible de vérifier cette bibliothèque :", + "Face recognition is on": "La reconnaissance des visages est activée", + "Face recognition is off. Turn it on to get name suggestions and see look-alike faces together.": "La reconnaissance des visages est désactivée. Activez-la pour obtenir des suggestions de noms et voir ensemble les visages qui se ressemblent.", + "Turn on": "Activer", + "Set up face recognition": "Configurer la reconnaissance des visages", + "Face recognition needs a model to suggest names: a one-time download, in Settings.": "La reconnaissance des visages a besoin d'un modèle pour suggérer des noms : un téléchargement unique, dans Réglages.", + "Turn on name suggestions": "Activer les suggestions de noms", + "Set up name suggestions…": "Configurer les suggestions de noms…" } diff --git a/crates/ui-egui/locales/id-formats.json b/crates/ui-egui/locales/id-formats.json index e21cbb156..af9d59aa0 100644 --- a/crates/ui-egui/locales/id-formats.json +++ b/crates/ui-egui/locales/id-formats.json @@ -305,5 +305,9 @@ "Drop to review {n} item{} for import": "Jatuhkan untuk meninjau {n} item sebelum impor{:.0}", "Inside: {names}": "Di dalam: {names}", "Where should the Lightroom catalog “{catalog}” go?": "Ke mana katalog Lightroom “{catalog}” diimpor?", - "Merge into the open library “{library}” ({count} photo{})": "Gabungkan ke pustaka yang terbuka “{library}” ({count} foto{:.0})" + "Merge into the open library “{library}” ({count} photo{})": "Gabungkan ke pustaka yang terbuka “{library}” ({count} foto{:.0})", + "Panel layout could not be restored: {error}": "Tata letak panel tidak dapat dipulihkan: {error}", + "Panel move was not applied: {error}": "Pemindahan panel tidak diterapkan: {error}", + "{name} is installed": "{name} sudah terinstal", + "{name} is installed and in use: face recognition is on": "{name} sudah terinstal dan digunakan: pengenalan wajah aktif" } diff --git a/crates/ui-egui/locales/id.json b/crates/ui-egui/locales/id.json index 5ae0bda06..beb76cb0f 100644 --- a/crates/ui-egui/locales/id.json +++ b/crates/ui-egui/locales/id.json @@ -560,6 +560,7 @@ "Download Place Names (GeoNames)": "Unduh nama tempat (GeoNames)", "Download the SAM 3 Model?": "Unduh model SAM 3?", "Downloaded and checked. Installing…": "Sudah diunduh dan diverifikasi. Menginstal…", + "The download failed": "Pengunduhan gagal", "Downloading model": "Mengunduh model", "Downloading place names": "Mengunduh nama tempat", "Downloads": "Unduhan", @@ -2340,5 +2341,12 @@ "Drop to open the face model": "Jatuhkan untuk membuka model wajah", "Dropped Files": "File yang dijatuhkan", "Finish Lightroom catalog import before adding photos": "Selesaikan impor katalog Lightroom sebelum menambahkan foto", - "Import dropped files without review": "Impor file yang dijatuhkan tanpa tinjauan" + "Import dropped files without review": "Impor file yang dijatuhkan tanpa tinjauan", + "Face recognition is on": "Pengenalan wajah aktif", + "Face recognition is off. Turn it on to get name suggestions and see look-alike faces together.": "Pengenalan wajah nonaktif. Aktifkan untuk mendapatkan saran nama dan melihat wajah yang mirip bersama-sama.", + "Turn on": "Aktifkan", + "Set up face recognition": "Siapkan pengenalan wajah", + "Face recognition needs a model to suggest names: a one-time download, in Settings.": "Pengenalan wajah memerlukan model untuk menyarankan nama: sekali unduh, di Pengaturan.", + "Turn on name suggestions": "Aktifkan saran nama", + "Set up name suggestions…": "Siapkan saran nama…" } diff --git a/crates/ui-egui/locales/it-formats.json b/crates/ui-egui/locales/it-formats.json index 7efae90e9..e244cfbcc 100644 --- a/crates/ui-egui/locales/it-formats.json +++ b/crates/ui-egui/locales/it-formats.json @@ -305,5 +305,9 @@ "Could not read {name}: {e}": "Impossibile leggere {name}: {e}", "Added {n} photo{}": "Foto aggiunte: {n}{:.0}", "Where should the Lightroom catalog “{catalog}” go?": "Dove importare il catalogo Lightroom “{catalog}”?", - "Merge into the open library “{library}” ({count} photo{})": "Unisci alla libreria aperta “{library}” (foto: {count}{:.0})" + "Merge into the open library “{library}” ({count} photo{})": "Unisci alla libreria aperta “{library}” (foto: {count}{:.0})", + "Panel layout could not be restored: {error}": "Non è stato possibile ripristinare la disposizione dei pannelli: {error}", + "Panel move was not applied: {error}": "Lo spostamento del pannello non è stato applicato: {error}", + "{name} is installed": "{name} è installato", + "{name} is installed and in use: face recognition is on": "{name} è installato e in uso: il riconoscimento dei volti è attivo" } diff --git a/crates/ui-egui/locales/it.json b/crates/ui-egui/locales/it.json index 864bf5faf..4f44438f4 100644 --- a/crates/ui-egui/locales/it.json +++ b/crates/ui-egui/locales/it.json @@ -1736,6 +1736,7 @@ "Denoise Settings": "Impostazioni della riduzione disturbo", "Denoise all photos with an Amount": "Riduci il disturbo in tutte le foto con una quantità", "Downloaded and checked. Installing…": "Scaricato e verificato. Installazione…", + "The download failed": "Download non riuscito", "Failed its last test": "Non ha superato l'ultimo test", "Graphics card": "Scheda grafica", "I have read these terms and accept them for my own use": "Ho letto queste condizioni e le accetto per uso personale", @@ -2449,5 +2450,12 @@ "No named people yet. Name the faces below to start.": "Ancora nessuna persona con nome. Per iniziare, dai un nome ai volti qui sotto.", "No people yet": "Ancora nessuna persona", "No person by that name": "Nessuna persona con quel nome", - "No unnamed faces. Faces found in your photos appear here until you name them.": "Nessun volto senza nome. I volti trovati nelle tue foto compaiono qui finché non dai loro un nome." + "No unnamed faces. Faces found in your photos appear here until you name them.": "Nessun volto senza nome. I volti trovati nelle tue foto compaiono qui finché non dai loro un nome.", + "Face recognition is on": "Il riconoscimento dei volti è attivo", + "Face recognition is off. Turn it on to get name suggestions and see look-alike faces together.": "Il riconoscimento dei volti è disattivato. Attivalo per ricevere suggerimenti di nomi e vedere insieme i volti simili.", + "Turn on": "Attiva", + "Set up face recognition": "Configura il riconoscimento dei volti", + "Face recognition needs a model to suggest names: a one-time download, in Settings.": "Il riconoscimento dei volti ha bisogno di un modello per suggerire i nomi: un download una tantum, in Impostazioni.", + "Turn on name suggestions": "Attiva i suggerimenti di nomi", + "Set up name suggestions…": "Configura i suggerimenti di nomi…" } diff --git a/crates/ui-egui/locales/ja-formats.json b/crates/ui-egui/locales/ja-formats.json index 99c14bf16..7c43c061d 100644 --- a/crates/ui-egui/locales/ja-formats.json +++ b/crates/ui-egui/locales/ja-formats.json @@ -305,5 +305,9 @@ "Could not read {name}: {e}": "{name} を読み取れませんでした: {e}", "Added {n} photo{}": "{n}枚を追加しました{:.0}", "Where should the Lightroom catalog “{catalog}” go?": "Lightroom カタログ「{catalog}」をどこに読み込みますか?", - "Merge into the open library “{library}” ({count} photo{})": "開いているライブラリ「{library}」に統合(写真{count}枚){:.0}" + "Merge into the open library “{library}” ({count} photo{})": "開いているライブラリ「{library}」に統合(写真{count}枚){:.0}", + "Panel layout could not be restored: {error}": "パネル配置を復元できませんでした:{error}", + "Panel move was not applied: {error}": "パネルの移動は適用されませんでした:{error}", + "{name} is installed": "{name} をインストールしました", + "{name} is installed and in use: face recognition is on": "{name} をインストールして使用中です:顔認識はオンです" } diff --git a/crates/ui-egui/locales/ja.json b/crates/ui-egui/locales/ja.json index b85fcc495..25d0f5a15 100644 --- a/crates/ui-egui/locales/ja.json +++ b/crates/ui-egui/locales/ja.json @@ -1718,6 +1718,7 @@ "Denoise Settings": "ノイズ除去の設定", "Denoise all photos with an Amount": "適用量のあるすべての写真のノイズを除去", "Downloaded and checked. Installing…": "ダウンロードして確認しました。インストール中…", + "The download failed": "ダウンロードに失敗しました。", "Failed its last test": "前回のテストに失敗", "Graphics card": "グラフィックカード", "I have read these terms and accept them for my own use": "この条件を読み、自分の使用のために同意します", @@ -2357,5 +2358,12 @@ "Import dropped files without review": "ドロップしたファイルを確認せずに読み込む", "An import is running": "読み込み中です", "An import is running. Drop photos when it has finished": "読み込み中です。完了してから写真をドロップしてください", - "Finish Lightroom catalog import before adding photos": "写真を追加する前に Lightroom カタログの読み込みを完了してください" + "Finish Lightroom catalog import before adding photos": "写真を追加する前に Lightroom カタログの読み込みを完了してください", + "Face recognition is on": "顔認識をオンにしました", + "Face recognition is off. Turn it on to get name suggestions and see look-alike faces together.": "顔認識はオフです。オンにすると、名前の候補が表示され、似た顔をまとめて見られます。", + "Turn on": "オンにする", + "Set up face recognition": "顔認識を設定", + "Face recognition needs a model to suggest names: a one-time download, in Settings.": "顔認識で名前の候補を表示するにはモデルが必要です。設定から一度だけダウンロードします。", + "Turn on name suggestions": "名前の候補をオンにする", + "Set up name suggestions…": "名前の候補を設定…" } diff --git a/crates/ui-egui/locales/ka-formats.json b/crates/ui-egui/locales/ka-formats.json index c3c459e23..b20e5252e 100644 --- a/crates/ui-egui/locales/ka-formats.json +++ b/crates/ui-egui/locales/ka-formats.json @@ -305,5 +305,9 @@ "Could not read {name}: {e}": "ვერ წაიკითხა {name}: {e}", "Added {n} photo{}": "დაემატა ფოტო: {n}{:.0}", "Where should the Lightroom catalog “{catalog}” go?": "სად გადავიტანოთ Lightroom-ის კატალოგი „{catalog}“?", - "Merge into the open library “{library}” ({count} photo{})": "გაერთიანება ღია ბიბლიოთეკასთან „{library}“ (ფოტოები: {count}){:.0}" + "Merge into the open library “{library}” ({count} photo{})": "გაერთიანება ღია ბიბლიოთეკასთან „{library}“ (ფოტოები: {count}){:.0}", + "Panel layout could not be restored: {error}": "პანელების განლაგების აღდგენა ვერ მოხერხდა: {error}", + "Panel move was not applied: {error}": "პანელის გადატანა არ შესრულდა: {error}", + "{name} is installed": "{name} დაინსტალირებულია", + "{name} is installed and in use: face recognition is on": "{name} დაინსტალირებულია და გამოიყენება: სახეების ამოცნობა ჩართულია" } diff --git a/crates/ui-egui/locales/ka.json b/crates/ui-egui/locales/ka.json index 815715f2e..85f9c0014 100644 --- a/crates/ui-egui/locales/ka.json +++ b/crates/ui-egui/locales/ka.json @@ -621,6 +621,7 @@ "Download Place Names (GeoNames)": "ადგილების სახელების ჩამოტვირთვა (GeoNames)", "Download the SAM 3 Model?": "ჩამოიტვირთოს SAM 3 მოდელი?", "Downloaded and checked. Installing…": "ჩამოტვირთულია და შემოწმებულია. ინსტალირდება…", + "The download failed": "ჩამოტვირთვა ვერ მოხერხდა", "Downloading model": "მოდელი იტვირთება", "Downloading place names": "ადგილების სახელები იტვირთება", "Downloads": "ჩამოტვირთვები", @@ -3629,5 +3630,12 @@ "`slideshow.playback`; `view.slideshow` takes any of them for one run (`interval` still sets the slide duration).": "`slideshow.playback`-ს; `view.slideshow` ნებისმიერ მათგანს ერთი გაშვებისთვის იღებს (`interval` კვლავ სლაიდის ხანგრძლივობას ადგენს).", "While it plays, moving the pointer shows a small control bar: previous, play / pause, next, the slide number and": "დაკვრისას მაჩვენებლის მოძრაობა პატარა მართვის ზოლს აჩენს: წინა, დაკვრა / პაუზა, შემდეგი, სლაიდის ნომერი და", "end. Space pauses, ← / → step (a cut), Esc ends. A slide's time starts once it is shown sharp.": "დასრულება. Space აპაუზებს, ← / → გადადის (გადაჭრით), Esc ასრულებს. სლაიდის დრო მაშინ იწყება, როცა ის მკვეთრად გამოჩნდება.", - "M50, R100, R8 and RP (on the RP also in 1.6× crop mode). CR3 files the decoder can't read yet still open from their embedded JPEG, as before.": "M50, R100, R8 და RP კამერებზე (RP-ზე 1.6× ჩამოჭრის რეჟიმშიც). CR3 ფაილები, რომლებსაც დეკოდერი ჯერ ვერ კითხულობს, კვლავ ჩაშენებული JPEG-იდან იხსნება, როგორც ადრე." + "M50, R100, R8 and RP (on the RP also in 1.6× crop mode). CR3 files the decoder can't read yet still open from their embedded JPEG, as before.": "M50, R100, R8 და RP კამერებზე (RP-ზე 1.6× ჩამოჭრის რეჟიმშიც). CR3 ფაილები, რომლებსაც დეკოდერი ჯერ ვერ კითხულობს, კვლავ ჩაშენებული JPEG-იდან იხსნება, როგორც ადრე.", + "Face recognition is on": "სახეების ამოცნობა ჩართულია", + "Face recognition is off. Turn it on to get name suggestions and see look-alike faces together.": "სახეების ამოცნობა გამორთულია. ჩართეთ, რომ მიიღოთ სახელების შეთავაზებები და ერთად ნახოთ მსგავსი სახეები.", + "Turn on": "ჩართვა", + "Set up face recognition": "სახეების ამოცნობის დაყენება", + "Face recognition needs a model to suggest names: a one-time download, in Settings.": "სახეების ამოცნობას სახელების შესათავაზებლად მოდელი სჭირდება: ერთჯერადი ჩამოტვირთვა, პარამეტრებში.", + "Turn on name suggestions": "სახელების შეთავაზებების ჩართვა", + "Set up name suggestions…": "სახელების შეთავაზებების დაყენება…" } diff --git a/crates/ui-egui/locales/pl-formats.json b/crates/ui-egui/locales/pl-formats.json index 20c7f840d..8ecf99e5b 100644 --- a/crates/ui-egui/locales/pl-formats.json +++ b/crates/ui-egui/locales/pl-formats.json @@ -305,5 +305,9 @@ "Added {n} photo{}": "Dodano zdjęcia: {n}{:.0}", "Inside: {names}": "Wewnątrz: {names}", "Where should the Lightroom catalog “{catalog}” go?": "Dokąd zaimportować katalog Lightroom „{catalog}”?", - "Merge into the open library “{library}” ({count} photo{})": "Scal z otwartą biblioteką „{library}” (zdjęcia: {count}){:.0}" + "Merge into the open library “{library}” ({count} photo{})": "Scal z otwartą biblioteką „{library}” (zdjęcia: {count}){:.0}", + "Panel layout could not be restored: {error}": "Nie udało się przywrócić układu paneli: {error}", + "Panel move was not applied: {error}": "Przeniesienie panelu nie zostało zastosowane: {error}", + "{name} is installed": "{name} jest zainstalowany", + "{name} is installed and in use: face recognition is on": "{name} jest zainstalowany i używany: rozpoznawanie twarzy jest włączone" } diff --git a/crates/ui-egui/locales/pl.json b/crates/ui-egui/locales/pl.json index ea3931072..83c692895 100644 --- a/crates/ui-egui/locales/pl.json +++ b/crates/ui-egui/locales/pl.json @@ -1670,6 +1670,7 @@ "Denoise Settings": "Ustawienia odszumiania", "Denoise all photos with an Amount": "Odszum wszystkie zdjęcia z ustawioną intensywnością", "Downloaded and checked. Installing…": "Pobrano i sprawdzono. Instalowanie…", + "The download failed": "Pobieranie nie powiodło się", "Failed its last test": "Nie przeszedł ostatniego testu", "Graphics card": "Karta graficzna", "I have read these terms and accept them for my own use": "Przeczytałem warunki i akceptuję je na własny użytek", @@ -2284,5 +2285,12 @@ "Import dropped files without review": "Importuj upuszczone pliki bez przeglądu", "An import is running": "Import jest w toku", "An import is running. Drop photos when it has finished": "Import jest w toku. Upuść zdjęcia, gdy się zakończy", - "Finish Lightroom catalog import before adding photos": "Zakończ import katalogu Lightrooma, zanim dodasz zdjęcia" + "Finish Lightroom catalog import before adding photos": "Zakończ import katalogu Lightrooma, zanim dodasz zdjęcia", + "Face recognition is on": "Rozpoznawanie twarzy jest włączone", + "Face recognition is off. Turn it on to get name suggestions and see look-alike faces together.": "Rozpoznawanie twarzy jest wyłączone. Włącz je, aby dostawać propozycje imion i widzieć podobne twarze razem.", + "Turn on": "Włącz", + "Set up face recognition": "Skonfiguruj rozpoznawanie twarzy", + "Face recognition needs a model to suggest names: a one-time download, in Settings.": "Rozpoznawanie twarzy potrzebuje modelu, aby proponować imiona: jednorazowe pobranie w Ustawieniach.", + "Turn on name suggestions": "Włącz propozycje imion", + "Set up name suggestions…": "Skonfiguruj propozycje imion…" } diff --git a/crates/ui-egui/locales/pt-br-formats.json b/crates/ui-egui/locales/pt-br-formats.json index f17f2c0fd..4f059e516 100644 --- a/crates/ui-egui/locales/pt-br-formats.json +++ b/crates/ui-egui/locales/pt-br-formats.json @@ -305,5 +305,9 @@ "Could not read {name}: {e}": "Não foi possível ler {name}: {e}", "Added {n} photo{}": "{n} foto{0} adicionada{0}", "Where should the Lightroom catalog “{catalog}” go?": "Para onde vai o catálogo do Lightroom “{catalog}”?", - "Merge into the open library “{library}” ({count} photo{})": "Mesclar na biblioteca aberta “{library}” ({count} foto{})" + "Merge into the open library “{library}” ({count} photo{})": "Mesclar na biblioteca aberta “{library}” ({count} foto{})", + "Panel layout could not be restored: {error}": "Não foi possível restaurar a disposição dos painéis: {error}", + "Panel move was not applied: {error}": "A movimentação do painel não foi aplicada: {error}", + "{name} is installed": "{name} está instalado", + "{name} is installed and in use: face recognition is on": "{name} está instalado e em uso: o reconhecimento facial está ativado" } diff --git a/crates/ui-egui/locales/pt-br.json b/crates/ui-egui/locales/pt-br.json index fd3e9973f..a59647341 100644 --- a/crates/ui-egui/locales/pt-br.json +++ b/crates/ui-egui/locales/pt-br.json @@ -1718,6 +1718,7 @@ "Denoise Settings": "Configurações de redução de ruído", "Denoise all photos with an Amount": "Reduzir o ruído de todas as fotos com uma Quantidade", "Downloaded and checked. Installing…": "Baixado e verificado. Instalando…", + "The download failed": "Falha ao baixar", "Failed its last test": "Falhou no último teste", "Graphics card": "Placa de vídeo", "I have read these terms and accept them for my own use": "Li estes termos e os aceito para meu uso pessoal", @@ -2203,5 +2204,12 @@ "Import dropped files without review": "Importar arquivos soltos sem revisão", "An import is running": "Uma importação está em andamento", "An import is running. Drop photos when it has finished": "Uma importação está em andamento. Solte as fotos quando ela terminar", - "Finish Lightroom catalog import before adding photos": "Conclua a importação do catálogo do Lightroom antes de adicionar fotos" + "Finish Lightroom catalog import before adding photos": "Conclua a importação do catálogo do Lightroom antes de adicionar fotos", + "Face recognition is on": "O reconhecimento facial está ativado", + "Face recognition is off. Turn it on to get name suggestions and see look-alike faces together.": "O reconhecimento facial está desativado. Ative-o para receber sugestões de nomes e ver rostos parecidos juntos.", + "Turn on": "Ativar", + "Set up face recognition": "Configurar o reconhecimento facial", + "Face recognition needs a model to suggest names: a one-time download, in Settings.": "O reconhecimento facial precisa de um modelo para sugerir nomes: um download único, em Configurações.", + "Turn on name suggestions": "Ativar sugestões de nomes", + "Set up name suggestions…": "Configurar sugestões de nomes…" } diff --git a/crates/ui-egui/locales/ru-formats.json b/crates/ui-egui/locales/ru-formats.json index 76b7af427..8fdb59c69 100644 --- a/crates/ui-egui/locales/ru-formats.json +++ b/crates/ui-egui/locales/ru-formats.json @@ -305,5 +305,9 @@ "Could not read {name}: {e}": "Не удалось прочитать {name}: {e}", "Added {n} photo{}": "Добавлено фото: {n}{:.0}", "Where should the Lightroom catalog “{catalog}” go?": "Куда импортировать каталог Lightroom «{catalog}»?", - "Merge into the open library “{library}” ({count} photo{})": "Объединить с открытой библиотекой «{library}» (фото: {count}){:.0}" + "Merge into the open library “{library}” ({count} photo{})": "Объединить с открытой библиотекой «{library}» (фото: {count}){:.0}", + "Panel layout could not be restored: {error}": "Не удалось восстановить расположение панелей: {error}", + "Panel move was not applied: {error}": "Перемещение панели не применено: {error}", + "{name} is installed": "Модель {name} установлена", + "{name} is installed and in use: face recognition is on": "Модель {name} установлена и используется: распознавание лиц включено" } diff --git a/crates/ui-egui/locales/ru.json b/crates/ui-egui/locales/ru.json index f740aaed9..bc90991ff 100644 --- a/crates/ui-egui/locales/ru.json +++ b/crates/ui-egui/locales/ru.json @@ -1605,6 +1605,7 @@ "Denoise Settings": "Настройки шумоподавления", "Denoise all photos with an Amount": "Подавить шум на всех фото с заданным количеством", "Downloaded and checked. Installing…": "Загружено и проверено. Установка…", + "The download failed": "Не удалось загрузить", "Failed its last test": "Последняя проверка не пройдена", "Graphics card": "Видеокарта", "I have read these terms and accept them for my own use": "Я прочитал эти условия и принимаю их для собственного использования", @@ -2566,5 +2567,12 @@ "An import is running": "Импорт уже выполняется", "An import is running. Drop photos when it has finished": "Импорт уже выполняется. Перетащите фото, когда он закончится", "Finish Lightroom catalog import before adding photos": "Завершите импорт каталога Lightroom, прежде чем добавлять фото", - "★ Favorites": "★ Избранное" + "★ Favorites": "★ Избранное", + "Face recognition is on": "Распознавание лиц включено", + "Face recognition is off. Turn it on to get name suggestions and see look-alike faces together.": "Распознавание лиц выключено. Включите его, чтобы получать подсказки имён и видеть похожие лица вместе.", + "Turn on": "Включить", + "Set up face recognition": "Настроить распознавание лиц", + "Face recognition needs a model to suggest names: a one-time download, in Settings.": "Для подсказок имён распознаванию лиц нужна модель: однократная загрузка в Настройках.", + "Turn on name suggestions": "Включить подсказки имён", + "Set up name suggestions…": "Настроить подсказки имён…" } diff --git a/crates/ui-egui/locales/sv-formats.json b/crates/ui-egui/locales/sv-formats.json index 06d7d7905..b82d4f848 100644 --- a/crates/ui-egui/locales/sv-formats.json +++ b/crates/ui-egui/locales/sv-formats.json @@ -305,5 +305,9 @@ "Drop to review {n} item{} for import": "Släpp för att granska {n} objekt före import{:.0}", "Inside: {names}": "Inuti: {names}", "Where should the Lightroom catalog “{catalog}” go?": "Vart ska Lightroom-katalogen ”{catalog}” importeras?", - "Merge into the open library “{library}” ({count} photo{})": "Slå samman med det öppna biblioteket ”{library}” ({count} foto{:.0})" + "Merge into the open library “{library}” ({count} photo{})": "Slå samman med det öppna biblioteket ”{library}” ({count} foto{:.0})", + "Panel layout could not be restored: {error}": "Panellayouten kunde inte återställas: {error}", + "Panel move was not applied: {error}": "Panelflytten tillämpades inte: {error}", + "{name} is installed": "{name} är installerad", + "{name} is installed and in use: face recognition is on": "{name} är installerad och används: ansiktsigenkänning är på" } diff --git a/crates/ui-egui/locales/sv.json b/crates/ui-egui/locales/sv.json index 66e69b7ba..55c42dec9 100644 --- a/crates/ui-egui/locales/sv.json +++ b/crates/ui-egui/locales/sv.json @@ -606,6 +606,7 @@ "Download Place Names (GeoNames)": "Hämta ortnamn (GeoNames)", "Download the SAM 3 Model?": "Vill du hämta SAM 3-modellen?", "Downloaded and checked. Installing…": "Hämtad och kontrollerad. Installerar…", + "The download failed": "Hämtningen misslyckades", "Downloading model": "Hämtar modell", "Downloading place names": "Hämtar ortnamn", "Downloads": "Hämtade filer", @@ -2429,5 +2430,12 @@ "Drop to open the face model": "Släpp för att öppna ansiktsmodellen", "Dropped Files": "Släppta filer", "Finish Lightroom catalog import before adding photos": "Slutför importen av Lightroom-katalogen innan du lägger till foton", - "Import dropped files without review": "Importera släppta filer utan granskning" + "Import dropped files without review": "Importera släppta filer utan granskning", + "Face recognition is on": "Ansiktsigenkänning är på", + "Face recognition is off. Turn it on to get name suggestions and see look-alike faces together.": "Ansiktsigenkänning är av. Slå på den för att få namnförslag och se liknande ansikten tillsammans.", + "Turn on": "Slå på", + "Set up face recognition": "Ställ in ansiktsigenkänning", + "Face recognition needs a model to suggest names: a one-time download, in Settings.": "Ansiktsigenkänning behöver en modell för att föreslå namn: en engångsnedladdning, i Inställningar.", + "Turn on name suggestions": "Slå på namnförslag", + "Set up name suggestions…": "Ställ in namnförslag…" } diff --git a/crates/ui-egui/locales/uk-formats.json b/crates/ui-egui/locales/uk-formats.json index 36022ac1a..3a1bde588 100644 --- a/crates/ui-egui/locales/uk-formats.json +++ b/crates/ui-egui/locales/uk-formats.json @@ -305,5 +305,9 @@ "Could not read {name}: {e}": "Не вдалося прочитати {name}: {e}", "Added {n} photo{}": "Додано фото: {n}{:.0}", "Where should the Lightroom catalog “{catalog}” go?": "Куди імпортувати каталог Lightroom «{catalog}»?", - "Merge into the open library “{library}” ({count} photo{})": "Об’єднати з відкритою бібліотекою «{library}» (фото: {count}){:.0}" + "Merge into the open library “{library}” ({count} photo{})": "Об’єднати з відкритою бібліотекою «{library}» (фото: {count}){:.0}", + "Panel layout could not be restored: {error}": "Не вдалося відновити розташування панелей: {error}", + "Panel move was not applied: {error}": "Переміщення панелі не застосовано: {error}", + "{name} is installed": "{name} установлено", + "{name} is installed and in use: face recognition is on": "{name} установлено й використовується: розпізнавання облич увімкнено" } diff --git a/crates/ui-egui/locales/uk.json b/crates/ui-egui/locales/uk.json index 84cb74fb0..aa8e218cb 100644 --- a/crates/ui-egui/locales/uk.json +++ b/crates/ui-egui/locales/uk.json @@ -1709,6 +1709,7 @@ "Denoise Settings": "Налаштування усунення шуму", "Denoise all photos with an Amount": "Обробити всі фото зі значенням усунення шуму", "Downloaded and checked. Installing…": "Завантажено й перевірено. Установлення…", + "The download failed": "Не вдалося завантажити", "Failed its last test": "Останню перевірку не пройдено", "Graphics card": "Відеокарта", "I have read these terms and accept them for my own use": "Я прочитав ці умови й приймаю їх для власного використання", @@ -2355,5 +2356,12 @@ "Import dropped files without review": "Імпортувати перетягнуті файли без перегляду", "An import is running": "Імпорт уже виконується", "An import is running. Drop photos when it has finished": "Імпорт уже виконується. Перетягніть фото, коли він завершиться", - "Finish Lightroom catalog import before adding photos": "Завершіть імпорт каталогу Lightroom, перш ніж додавати фото" + "Finish Lightroom catalog import before adding photos": "Завершіть імпорт каталогу Lightroom, перш ніж додавати фото", + "Face recognition is on": "Розпізнавання облич увімкнено", + "Face recognition is off. Turn it on to get name suggestions and see look-alike faces together.": "Розпізнавання облич вимкнено. Увімкніть його, щоб отримувати підказки імен і бачити схожі обличчя разом.", + "Turn on": "Увімкнути", + "Set up face recognition": "Налаштувати розпізнавання облич", + "Face recognition needs a model to suggest names: a one-time download, in Settings.": "Для підказок імен розпізнаванню облич потрібна модель: одноразове завантаження в Налаштуваннях.", + "Turn on name suggestions": "Увімкнути підказки імен", + "Set up name suggestions…": "Налаштувати підказки імен…" } diff --git a/crates/ui-egui/locales/vi-formats.json b/crates/ui-egui/locales/vi-formats.json index 948367cc5..384d76b1a 100644 --- a/crates/ui-egui/locales/vi-formats.json +++ b/crates/ui-egui/locales/vi-formats.json @@ -305,5 +305,9 @@ "Drop to import {n} preset{}": "Thả để nhập {n} thiết lập sẵn{:.0}", "Drop to review {n} item{} for import": "Thả để xem lại {n} mục trước khi nhập{:.0}", "Where should the Lightroom catalog “{catalog}” go?": "Nhập danh mục Lightroom «{catalog}» vào đâu?", - "Merge into the open library “{library}” ({count} photo{})": "Gộp vào thư viện đang mở «{library}» ({count} ảnh{:.0})" + "Merge into the open library “{library}” ({count} photo{})": "Gộp vào thư viện đang mở «{library}» ({count} ảnh{:.0})", + "Panel layout could not be restored: {error}": "Không thể khôi phục bố cục bảng: {error}", + "Panel move was not applied: {error}": "Việc di chuyển bảng chưa được áp dụng: {error}", + "{name} is installed": "{name} đã được cài đặt", + "{name} is installed and in use: face recognition is on": "{name} đã được cài đặt và đang dùng: nhận diện khuôn mặt đã bật" } diff --git a/crates/ui-egui/locales/vi.json b/crates/ui-egui/locales/vi.json index 6e98d36f5..91aaf0579 100644 --- a/crates/ui-egui/locales/vi.json +++ b/crates/ui-egui/locales/vi.json @@ -518,6 +518,7 @@ "Download Place Names (GeoNames)": "Tải tên địa điểm (GeoNames)", "Download the SAM 3 Model?": "Tải mô hình SAM 3?", "Downloaded and checked. Installing…": "Đã tải và kiểm tra. Đang cài…", + "The download failed": "Tải xuống không thành công", "Downloading model": "Đang tải mô hình", "Downloading place names": "Đang tải tên địa điểm", "Downloads": "Tải xuống", @@ -2656,5 +2657,12 @@ "Checking for updates…": "Đang kiểm tra cập nhật…", "LightCraft {version} is currently the newest version available.": "LightCraft {version} hiện là phiên bản mới nhất.", "Could not check for updates:\n{error}": "Không thể kiểm tra cập nhật:\n{error}", - "LightCraft Updates": "Cập nhật LightCraft" + "LightCraft Updates": "Cập nhật LightCraft", + "Face recognition is on": "Nhận diện khuôn mặt đã bật", + "Face recognition is off. Turn it on to get name suggestions and see look-alike faces together.": "Nhận diện khuôn mặt đang tắt. Hãy bật để nhận gợi ý tên và xem các khuôn mặt giống nhau cùng nhau.", + "Turn on": "Bật", + "Set up face recognition": "Thiết lập nhận diện khuôn mặt", + "Face recognition needs a model to suggest names: a one-time download, in Settings.": "Nhận diện khuôn mặt cần một mô hình để gợi ý tên: tải xuống một lần, trong Cài đặt.", + "Turn on name suggestions": "Bật gợi ý tên", + "Set up name suggestions…": "Thiết lập gợi ý tên…" } diff --git a/crates/ui-egui/locales/zh-hans-formats.json b/crates/ui-egui/locales/zh-hans-formats.json index 7406c39b8..d7a6c9659 100644 --- a/crates/ui-egui/locales/zh-hans-formats.json +++ b/crates/ui-egui/locales/zh-hans-formats.json @@ -305,5 +305,9 @@ "Could not read {name}: {e}": "无法读取 {name}:{e}", "Added {n} photo{}": "已添加 {n} 张照片{:.0}", "Where should the Lightroom catalog “{catalog}” go?": "Lightroom 目录“{catalog}”要导入到哪里?", - "Merge into the open library “{library}” ({count} photo{})": "合并到当前打开的图库“{library}”({count} 张照片){:.0}" + "Merge into the open library “{library}” ({count} photo{})": "合并到当前打开的图库“{library}”({count} 张照片){:.0}", + "Panel layout could not be restored: {error}": "无法恢复面板布局:{error}", + "Panel move was not applied: {error}": "面板移动未应用:{error}", + "{name} is installed": "{name} 已安装", + "{name} is installed and in use: face recognition is on": "{name} 已安装并在使用:人脸识别已开启" } diff --git a/crates/ui-egui/locales/zh-hans.json b/crates/ui-egui/locales/zh-hans.json index fbb92bf98..e7d652577 100644 --- a/crates/ui-egui/locales/zh-hans.json +++ b/crates/ui-egui/locales/zh-hans.json @@ -1712,6 +1712,7 @@ "Denoise Settings": "降噪设置", "Denoise all photos with an Amount": "对所有设置了数量的照片进行降噪", "Downloaded and checked. Installing…": "已下载并校验完成。正在安装…", + "The download failed": "下载失败。", "Failed its last test": "上次检测未通过", "Graphics card": "显卡", "I have read these terms and accept them for my own use": "我已阅读这些条款,并为个人使用表示接受", @@ -2358,5 +2359,12 @@ "one by one — they can always be exported again, and on a USB drive or a NAS that per-file sync dominated a large": "逐个进行——它们随时可以重新导出,而在 USB 硬盘或 NAS 上,逐文件同步曾占用了大量", "over a same-name same-size look-alike, and skips (and reports) photos it can't tell apart instead of guessing.": "而不是同名同大小的相似文件,并且会跳过(并报告)无法区分的照片,而不是猜测。", "Panasonic and Leica raws (RW2, RWL and the older RAW files, DMC-LX1 to DC-S1R II) develop from the raw data in": "Panasonic 和 Leica 的 RAW 文件(RW2、RWL 及更早的 RAW 文件,DMC-LX1 至 DC-S1R II)在", - "part out), or type what to select (\"sky\", \"the red car\", \"car, road\"); both combine with other masks, have an": "部分选中),或输入要选择的内容(“天空”、“红色汽车”、“汽车、道路”);两者都可与其他蒙版组合,并具有" + "part out), or type what to select (\"sky\", \"the red car\", \"car, road\"); both combine with other masks, have an": "部分选中),或输入要选择的内容(“天空”、“红色汽车”、“汽车、道路”);两者都可与其他蒙版组合,并具有", + "Face recognition is on": "人脸识别已开启", + "Face recognition is off. Turn it on to get name suggestions and see look-alike faces together.": "人脸识别已关闭。开启后可获得姓名建议,并将相似的人脸放在一起查看。", + "Turn on": "开启", + "Set up face recognition": "设置人脸识别", + "Face recognition needs a model to suggest names: a one-time download, in Settings.": "人脸识别需要一个模型来建议姓名:只需在“设置”中下载一次。", + "Turn on name suggestions": "开启姓名建议", + "Set up name suggestions…": "设置姓名建议…" } diff --git a/crates/ui-egui/locales/zh-hant-formats.json b/crates/ui-egui/locales/zh-hant-formats.json index d5c4eb279..7a0621e37 100644 --- a/crates/ui-egui/locales/zh-hant-formats.json +++ b/crates/ui-egui/locales/zh-hant-formats.json @@ -305,5 +305,9 @@ "Could not read {name}: {e}": "無法讀取 {name}:{e}", "Added {n} photo{}": "已加入 {n} 張照片{:.0}", "Where should the Lightroom catalog “{catalog}” go?": "Lightroom 目錄「{catalog}」要匯入到哪裡?", - "Merge into the open library “{library}” ({count} photo{})": "合併到目前開啟的照片庫「{library}」({count} 張照片){:.0}" + "Merge into the open library “{library}” ({count} photo{})": "合併到目前開啟的照片庫「{library}」({count} 張照片){:.0}", + "Panel layout could not be restored: {error}": "無法還原面板配置:{error}", + "Panel move was not applied: {error}": "面板移動未套用:{error}", + "{name} is installed": "{name} 已安裝", + "{name} is installed and in use: face recognition is on": "{name} 已安裝並在使用中:臉部辨識已開啟" } diff --git a/crates/ui-egui/locales/zh-hant.json b/crates/ui-egui/locales/zh-hant.json index bdbdc7fc6..660aecd75 100644 --- a/crates/ui-egui/locales/zh-hant.json +++ b/crates/ui-egui/locales/zh-hant.json @@ -1718,6 +1718,7 @@ "Denoise Settings": "Denoise Settings", "Denoise all photos with an Amount": "Denoise all photos with an Amount", "Downloaded and checked. Installing…": "Downloaded and checked. Installing…", + "The download failed": "下載失敗。", "Failed its last test": "Failed its last test", "Graphics card": "Graphics card", "I have read these terms and accept them for my own use": "I have read these terms and accept them for my own use", @@ -2358,5 +2359,12 @@ "Without Saving and Quit (issue #100). It no longer quietly starts a demo session that looked like a reset library and": "不儲存並結束(問題 #100)。它不再靜默啟動一個看似已重設圖庫的示範工作階段,", "written by a newer LightCraft is refused with \"this library was written by a newer version of LightCraft\" and left": "由更新版本 LightCraft 寫入的目錄會被拒絕,提示「此圖庫由更新版本的 LightCraft 寫入」,並保持", "written by a newer LightCraft), LightCraft says so and why, and offers Try Again, Choose Another Library…, Continue": "由更新版本 LightCraft 寫入),LightCraft 會說明情況和原因,並提供 重試、選擇其他圖庫…、繼續", - "⌘-drag to straighten, ⇧G Guided Upright, a grid while transforming.": "⌘-拖曳進行拉直,⇧G 引導式垂直校正,變換時顯示網格。" + "⌘-drag to straighten, ⇧G Guided Upright, a grid while transforming.": "⌘-拖曳進行拉直,⇧G 引導式垂直校正,變換時顯示網格。", + "Face recognition is on": "臉部辨識已開啟", + "Face recognition is off. Turn it on to get name suggestions and see look-alike faces together.": "臉部辨識已關閉。開啟後可取得姓名建議,並將相似的臉孔放在一起檢視。", + "Turn on": "開啟", + "Set up face recognition": "設定臉部辨識", + "Face recognition needs a model to suggest names: a one-time download, in Settings.": "臉部辨識需要一個模型來建議姓名:只需在「設定」中下載一次。", + "Turn on name suggestions": "開啟姓名建議", + "Set up name suggestions…": "設定姓名建議…" } diff --git a/crates/ui-egui/src/dialogs/faces.rs b/crates/ui-egui/src/dialogs/faces.rs index 1811ec0a9..032e6f082 100644 --- a/crates/ui-egui/src/dialogs/faces.rs +++ b/crates/ui-egui/src/dialogs/faces.rs @@ -137,7 +137,7 @@ pub fn take_step(app: &mut LightcraftApp, ctx: &egui::Context, step: Setup) { if app.run("faces.enable", json!({"enabled": true})).is_ok() { app.caches.faces_epoch += 1; app.ui.status = "Face recognition is on".into(); - app.toast(ctx, "Face recognition is on"); + app.toast(ctx, crate::i18n::tr("Face recognition is on")); } } Setup::GetModel => { @@ -154,8 +154,8 @@ pub fn setup_banner(app: &mut LightcraftApp, ui: &mut egui::Ui) { let t = Tokens::get(ui.ctx()); egui::Frame::NONE.inner_margin(egui::Margin::symmetric(12, 6)).show(ui, |ui| { ui.horizontal_wrapped(|ui| { - ui.label(RichText::new(message).font(t.font(12.5)).color(t.text_dim)); - let r = ui.button(button); + ui.label(RichText::new(crate::i18n::tr(message)).font(t.font(12.5)).color(t.text_dim)); + let r = ui.button(crate::i18n::tr(button)); register(ui, "faces:setup", r.rect); if r.clicked() { take_step(app, ui.ctx(), step); @@ -379,7 +379,7 @@ fn model_row(app: &mut LightcraftApp, ui: &mut egui::Ui, t: &Tokens, m: &Value, }); } (Some("failed"), Some(d)) => { - let why = sentence(d["error"].as_str().unwrap_or("The download failed")); + let why = crate::panels::denoise::download_failure(d); ui.add(egui::Label::new(RichText::new(why).font(t.font(11.5)).color(t.caution)).wrap()); } _ => {} @@ -683,7 +683,7 @@ pub fn name_editor( } } if let Some(label) = setup.short() { - let b = ui.add(egui::Button::new(RichText::new(label).font(t.font(12.0)).color(t.accent)).frame(false)); + let b = ui.add(egui::Button::new(RichText::new(crate::i18n::tr(label)).font(t.font(12.0)).color(t.accent)).frame(false)); register(ui, "faces:setup", b.rect); if b.clicked() { outcome = Editor::Setup; @@ -809,8 +809,13 @@ fn watch_downloads(app: &mut LightcraftApp, ctx: &egui::Context) { .ok() .is_some_and(|l| l["models"].as_array().is_some_and(|a| a.iter().any(|m| m["id"] == id.as_str() && m["role"] == "detector"))); let text = if detector { format!("{name} is installed") } else { format!("{name} is installed and in use: face recognition is on") }; - app.ui.status = text.clone(); - app.toast(ctx, text); + let toast = if detector { + crate::i18n::tr_format!("{name} is installed", name = name) + } else { + crate::i18n::tr_format!("{name} is installed and in use: face recognition is on", name = name) + }; + app.ui.status = text; + app.toast(ctx, toast); } ctx.request_repaint_after(std::time::Duration::from_millis(120)); } diff --git a/crates/ui-egui/src/docking.rs b/crates/ui-egui/src/docking.rs index f2bc190d7..577ac4496 100644 --- a/crates/ui-egui/src/docking.rs +++ b/crates/ui-egui/src/docking.rs @@ -347,7 +347,7 @@ pub fn show(app: &mut crate::LightcraftApp, ui: &mut egui::Ui) { let t = crate::theme::Tokens::get(ui.ctx()); let mut workspace = app.ui.docking.clone().unwrap_or_else(|| from_ui(app)); if let Err(error) = validate(&workspace).and_then(|()| sync(&mut workspace, app)) { - app.ui.toast = Some((format!("Panel layout could not be restored: {error}"), app.tick_now() + 8.0, None)); + app.ui.toast = Some((crate::i18n::tr_format!("Panel layout could not be restored: {error}", error = error), app.tick_now() + 8.0, None)); workspace = from_ui(app); let _ = sync(&mut workspace, app); } @@ -454,7 +454,7 @@ pub fn show(app: &mut crate::LightcraftApp, ui: &mut egui::Ui) { .map_err(|error| error.to_string()) .and_then(|action| command_impl(app, false, &json!({"action": action}), true)) { - app.ui.toast = Some((format!("Panel move was not applied: {error}"), app.tick_now() + 8.0, None)); + app.ui.toast = Some((crate::i18n::tr_format!("Panel move was not applied: {error}", error = error), app.tick_now() + 8.0, None)); } } } diff --git a/crates/ui-egui/src/headless/tests.rs b/crates/ui-egui/src/headless/tests.rs index 13bd7a2ae..fb5cc7701 100644 --- a/crates/ui-egui/src/headless/tests.rs +++ b/crates/ui-egui/src/headless/tests.rs @@ -872,11 +872,23 @@ fn people_and_the_name_box_offer_to_set_face_recognition_up() { h.step(); assert!(offers(&mut h)); assert_eq!(h.app.session.execute("faces.models.list", &json!({})).unwrap()["enabled"], false); + h.app.ui.language = crate::i18n::Locale::De; + crate::i18n::set_language(crate::i18n::Locale::De); + h.step(); + h.step(); + assert!(offers(&mut h), "the offer is still there in German"); let r = h.request("ui.clickWidget", json!({"id": "faces:setup"}), t); assert_eq!(r["ok"], true, "{r}"); h.step(); h.step(); assert_eq!(h.app.session.execute("faces.models.list", &json!({})).unwrap()["enabled"], true); + assert_eq!( + h.app.ui.toast.as_ref().map(|toast| toast.0.as_str()), + Some(crate::i18n::Locale::De.tr("Face recognition is on")), + "the toast is looked up in the UI language" + ); + h.app.ui.language = crate::i18n::Locale::En; + crate::i18n::set_language(crate::i18n::Locale::En); assert_eq!(h.app.ui.dialog, None, "nothing to go to Settings for"); h.step(); assert!(!offers(&mut h), "once it is on the offer is gone"); diff --git a/crates/ui-egui/src/panels/denoise.rs b/crates/ui-egui/src/panels/denoise.rs index b72df10b2..4bb3ceeb3 100644 --- a/crates/ui-egui/src/panels/denoise.rs +++ b/crates/ui-egui/src/panels/denoise.rs @@ -508,7 +508,7 @@ fn model_row(app: &mut LightcraftApp, ui: &mut egui::Ui, t: &Tokens, m: &Value, }); } (Some("failed"), Some(d)) => { - let why = sentence(d["error"].as_str().unwrap_or("The download failed")); + let why = download_failure(d); ui.add(egui::Label::new(RichText::new(why).font(t.font(11.5)).color(t.caution)).wrap()); } _ => {} @@ -664,10 +664,15 @@ pub(super) fn mb(bytes: Option) -> String { } } +/// Why a model download failed, as a sentence: the engine's reason, or, when it gave none, a message in the UI language. +pub(crate) fn download_failure(d: &Value) -> String { + sentence(d["error"].as_str().unwrap_or_else(|| tr("The download failed"))) +} + pub(super) fn sentence(s: &str) -> String { let s = s.trim(); let mut out = crate::i18n::upper_first(s); - if !out.is_empty() && !out.ends_with(['.', '!', '?']) { + if !out.is_empty() && !out.ends_with(['.', '!', '?', '。', '!', '?']) { out.push('.'); } out @@ -765,3 +770,19 @@ pub fn model_dialog(app: &mut LightcraftApp, ui: &mut egui::Ui, t: &Tokens, info }; ui.label(RichText::new(tr(closing)).font(t.font(11.5)).color(t.text_dim)); } + +#[cfg(test)] +mod tests { + use super::*; + + #[test] + fn a_download_failure_without_a_reason_is_said_in_the_ui_language() { + let de = crate::i18n::Locale::De; + crate::i18n::set_language(de); + let said = download_failure(&json!({})); + crate::i18n::set_language(crate::i18n::Locale::En); + assert_eq!(said, sentence(de.tr("The download failed"))); + assert_eq!(download_failure(&json!({"error": "no space left"})), "No space left.", "the engine's own reason is shown as given"); + assert_eq!(sentence("下载失败。"), "下载失败。", "a Chinese or Japanese full stop ends the sentence"); + } +} diff --git a/crates/ui-egui/src/panels/second.rs b/crates/ui-egui/src/panels/second.rs index cbdaa2d73..57fc5756a 100644 --- a/crates/ui-egui/src/panels/second.rs +++ b/crates/ui-egui/src/panels/second.rs @@ -14,7 +14,7 @@ pub fn show(app: &mut LightcraftApp, ctx: &egui::Context) { return; } let vid = egui::ViewportId::from_hash_of("lightcraft-second-window"); - let builder = egui::ViewportBuilder::default().with_title("LightCraft — Second Window").with_inner_size([960.0, 640.0]); + let builder = egui::ViewportBuilder::default().with_title(crate::i18n::tr("LightCraft — Second Window")).with_inner_size([960.0, 640.0]); ctx.show_viewport_immediate(vid, builder, |ui, class| { // 0.37 passes the viewport's root `Ui` (not a `Context`). Do not enter `root_ui` from it. // (without native windows — web, headless — egui wraps this in a floating window) diff --git a/docs/parity-checklist.md b/docs/parity-checklist.md index 08dab300b..628f5a8f0 100644 --- a/docs/parity-checklist.md +++ b/docs/parity-checklist.md @@ -961,3 +961,4 @@ Latin stays upright. Advanced Japanese composition remains open. Regression cove | 2026-10-23 | patch | LRC-LIB-FILTERBAR: showing an album (`library.source`) while the filter holds an album drops the filter's album, as showing a library folder already dropped its folder filter; before, the old album stayed in the filter unseen (the filter bar has no album chip) and narrowed the next source such as All Photos; the row's note says so; status unchanged (✅) | | 2026-10-27 | patch | MENU-EDIT-SELECTNONE, MENU-EDIT-PASTESELECTED: Select Only Active Photo and Paste Settings from Previous were not in the Edit menu's layout and ended up after Settings…, near the end of the menu; they now sit with the other Select and Paste rows. On macOS the Edit menu no longer shows two separators in a row where Settings… moved to the app menu; status unchanged (✅) | | 2026-10-27 | patch | MENU-FILE-CLOSE, KEY-CLOSEWINDOW: the notes say that Close Window and the red close button of the main window quit the app, after the check Quit makes; kept on purpose; a user page says so; status unchanged (✅) | +| 2026-10-23 | minor | LR-BEHAV-LOCALIZE: panel layout toasts, the face recognition prompts and toasts, and the second window's title are looked up in the interface language in all 17 catalogs; status unchanged (🟡) | diff --git a/docs/whats-new.md b/docs/whats-new.md index a0213da82..0a19b5e67 100644 --- a/docs/whats-new.md +++ b/docs/whats-new.md @@ -93,6 +93,13 @@ library you open and are imported into it, as files given on the command line are; presets dropped then are refused with a note, since they belong to a library. +### Panel layout messages, face recognition prompts and the second window's title in your language +- The messages shown when a panel layout cannot be restored or a panel move is not applied, the face recognition + prompts (the banner and the name box's offer, with their buttons), the "Face recognition is on" and "is installed" + messages, and the title of the second window are now in the interface language in all 17 languages. They stayed in + English before. So did "The download failed", shown under a denoise or face recognition model's download when the + download gives no reason. + ## 2026-10-22 ### Reliability