From c67f2faec262dab78a31f63fa74eb02dc12d4c59 Mon Sep 17 00:00:00 2001 From: Tim Haasdyk Date: Sat, 13 Jun 2026 10:06:13 +0200 Subject: [PATCH 01/65] Update source file en.po [ci skip] --- frontend/viewer/src/locales/en.po | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/frontend/viewer/src/locales/en.po b/frontend/viewer/src/locales/en.po index 7678587387..f8fa8f0022 100644 --- a/frontend/viewer/src/locales/en.po +++ b/frontend/viewer/src/locales/en.po @@ -294,6 +294,10 @@ msgstr "blue" msgid "Browse" msgstr "Browse" +#: src/project/browse/BrowseView.svelte +msgid "Browse view failed" +msgstr "Browse view failed" + #. Button to close dialog without saving #. Appears in dialog footer; discards any pending edits #. Synonyms across UI: "Don't delete" (Delete dialog), "Close" (About dialog) @@ -356,6 +360,7 @@ msgid "Close" msgstr "Close" #. Menu option to close project +#: src/lib/layout/ViewErrorBoundary.svelte #: src/project/ProjectSidebar.svelte msgid "Close Dictionary" msgstr "Close Dictionary" @@ -1731,6 +1736,10 @@ msgstr "Size:" msgid "Skip" msgstr "Skip" +#: src/lib/layout/ViewErrorBoundary.svelte +msgid "Something went wrong" +msgstr "Something went wrong" + #. Filter option #: src/project/browse/SearchFilter.svelte msgid "Specific field" @@ -1830,6 +1839,10 @@ msgstr "Task {0}" msgid "Task not found: {0}" msgstr "Task not found: {0}" +#: src/project/tasks/TasksView.svelte +msgid "Task view failed" +msgstr "Task view failed" + #. Sidebar menu item #: src/project/ProjectSidebar.svelte msgid "Tasks" @@ -1929,6 +1942,10 @@ msgstr "Translation {0}" msgid "Troubleshoot" msgstr "Troubleshoot" +#: src/lib/layout/ViewErrorBoundary.svelte +msgid "Try again" +msgstr "Try again" + #. Task instruction #: src/project/tasks/tasks-service.ts msgid "Type a Definition" From ef966ed26eba0434c9814aeb1f435ad6863844d9 Mon Sep 17 00:00:00 2001 From: Tim Haasdyk Date: Sat, 13 Jun 2026 10:06:15 +0200 Subject: [PATCH 02/65] New translations en.po (French) [ci skip] --- frontend/viewer/src/locales/fr.po | 20 +++++++++++++++++++- 1 file changed, 19 insertions(+), 1 deletion(-) diff --git a/frontend/viewer/src/locales/fr.po b/frontend/viewer/src/locales/fr.po index 485d6334c9..3870289cb4 100644 --- a/frontend/viewer/src/locales/fr.po +++ b/frontend/viewer/src/locales/fr.po @@ -8,7 +8,7 @@ msgstr "" "Language: fr\n" "Project-Id-Version: language-depot\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2026-05-14 10:19\n" +"PO-Revision-Date: 2026-06-13 08:06\n" "Last-Translator: \n" "Language-Team: French\n" "Plural-Forms: nplurals=2; plural=(n > 1);\n" @@ -299,6 +299,10 @@ msgstr "bleu" msgid "Browse" msgstr "Parcourir" +#: src/project/browse/BrowseView.svelte +msgid "Browse view failed" +msgstr "La vue de la navigation a échoué" + #. Button to close dialog without saving #. Appears in dialog footer; discards any pending edits #. Synonyms across UI: "Don't delete" (Delete dialog), "Close" (About dialog) @@ -361,6 +365,7 @@ msgid "Close" msgstr "Fermer" #. Menu option to close project +#: src/lib/layout/ViewErrorBoundary.svelte #: src/project/ProjectSidebar.svelte msgid "Close Dictionary" msgstr "Fermer le dictionnaire" @@ -1736,6 +1741,10 @@ msgstr "Taille :" msgid "Skip" msgstr "Ignorer" +#: src/lib/layout/ViewErrorBoundary.svelte +msgid "Something went wrong" +msgstr "Quelque chose s'est mal passé" + #. Filter option #: src/project/browse/SearchFilter.svelte msgid "Specific field" @@ -1835,6 +1844,10 @@ msgstr "Tâche {0}" msgid "Task not found: {0}" msgstr "Tâche introuvable : {0}" +#: src/project/tasks/TasksView.svelte +msgid "Task view failed" +msgstr "La vue des tâches a échoué" + #. Sidebar menu item #: src/project/ProjectSidebar.svelte msgid "Tasks" @@ -1934,6 +1947,10 @@ msgstr "Traduction {0}" msgid "Troubleshoot" msgstr "Dépannage" +#: src/lib/layout/ViewErrorBoundary.svelte +msgid "Try again" +msgstr "Réessayez" + #. Task instruction #: src/project/tasks/tasks-service.ts msgid "Type a Definition" @@ -2162,3 +2179,4 @@ msgstr "Vous n'êtes pas autorisé(e) de télécharger le projet {0} depuis {1}" #: src/home/Server.svelte msgid "You have already downloaded the {0} project" msgstr "Vous avez déjà téléchargé le projet {0}" + From a809c1bf9b51f08af702b8fe1a09868771599bb0 Mon Sep 17 00:00:00 2001 From: Tim Haasdyk Date: Sat, 13 Jun 2026 10:06:17 +0200 Subject: [PATCH 03/65] New translations en.po (Spanish) [ci skip] --- frontend/viewer/src/locales/es.po | 20 +++++++++++++++++++- 1 file changed, 19 insertions(+), 1 deletion(-) diff --git a/frontend/viewer/src/locales/es.po b/frontend/viewer/src/locales/es.po index 880e5da21e..cc780121e6 100644 --- a/frontend/viewer/src/locales/es.po +++ b/frontend/viewer/src/locales/es.po @@ -8,7 +8,7 @@ msgstr "" "Language: es\n" "Project-Id-Version: language-depot\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2026-05-14 10:19\n" +"PO-Revision-Date: 2026-06-13 08:06\n" "Last-Translator: \n" "Language-Team: Spanish\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" @@ -299,6 +299,10 @@ msgstr "azul" msgid "Browse" msgstr "Visite" +#: src/project/browse/BrowseView.svelte +msgid "Browse view failed" +msgstr "Vista de navegación fallida" + #. Button to close dialog without saving #. Appears in dialog footer; discards any pending edits #. Synonyms across UI: "Don't delete" (Delete dialog), "Close" (About dialog) @@ -361,6 +365,7 @@ msgid "Close" msgstr "Cerrar" #. Menu option to close project +#: src/lib/layout/ViewErrorBoundary.svelte #: src/project/ProjectSidebar.svelte msgid "Close Dictionary" msgstr "Cerrar Diccionario" @@ -1736,6 +1741,10 @@ msgstr "Tamaño:" msgid "Skip" msgstr "Saltar" +#: src/lib/layout/ViewErrorBoundary.svelte +msgid "Something went wrong" +msgstr "Algo salió mal" + #. Filter option #: src/project/browse/SearchFilter.svelte msgid "Specific field" @@ -1835,6 +1844,10 @@ msgstr "Tarea {0}" msgid "Task not found: {0}" msgstr "Tarea no encontrada: {0}" +#: src/project/tasks/TasksView.svelte +msgid "Task view failed" +msgstr "Vista de tarea fallida" + #. Sidebar menu item #: src/project/ProjectSidebar.svelte msgid "Tasks" @@ -1934,6 +1947,10 @@ msgstr "Traducción {0}" msgid "Troubleshoot" msgstr "Solución de problemas" +#: src/lib/layout/ViewErrorBoundary.svelte +msgid "Try again" +msgstr "Inténtalo de nuevo" + #. Task instruction #: src/project/tasks/tasks-service.ts msgid "Type a Definition" @@ -2162,3 +2179,4 @@ msgstr "No tiene permiso para descargar el proyecto {0} desde {1}" #: src/home/Server.svelte msgid "You have already downloaded the {0} project" msgstr "Ya has descargado el proyecto {0}" + From aa9f3ad64516c4c1d4da076ce3b769b7b2b34f40 Mon Sep 17 00:00:00 2001 From: Tim Haasdyk Date: Sat, 13 Jun 2026 10:06:19 +0200 Subject: [PATCH 04/65] New translations en.po (Korean) [ci skip] --- frontend/viewer/src/locales/ko.po | 20 +++++++++++++++++++- 1 file changed, 19 insertions(+), 1 deletion(-) diff --git a/frontend/viewer/src/locales/ko.po b/frontend/viewer/src/locales/ko.po index d84aaca2d1..faa67ba3a2 100644 --- a/frontend/viewer/src/locales/ko.po +++ b/frontend/viewer/src/locales/ko.po @@ -8,7 +8,7 @@ msgstr "" "Language: ko\n" "Project-Id-Version: language-depot\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2026-05-14 10:19\n" +"PO-Revision-Date: 2026-06-13 08:06\n" "Last-Translator: \n" "Language-Team: Korean\n" "Plural-Forms: nplurals=1; plural=0;\n" @@ -299,6 +299,10 @@ msgstr "파란색" msgid "Browse" msgstr "찾아보기" +#: src/project/browse/BrowseView.svelte +msgid "Browse view failed" +msgstr "찾아보기 실패" + #. Button to close dialog without saving #. Appears in dialog footer; discards any pending edits #. Synonyms across UI: "Don't delete" (Delete dialog), "Close" (About dialog) @@ -361,6 +365,7 @@ msgid "Close" msgstr "닫기" #. Menu option to close project +#: src/lib/layout/ViewErrorBoundary.svelte #: src/project/ProjectSidebar.svelte msgid "Close Dictionary" msgstr "사전 닫기" @@ -1736,6 +1741,10 @@ msgstr "크기:" msgid "Skip" msgstr "건너뛰기" +#: src/lib/layout/ViewErrorBoundary.svelte +msgid "Something went wrong" +msgstr "문제가 발생했습니다." + #. Filter option #: src/project/browse/SearchFilter.svelte msgid "Specific field" @@ -1835,6 +1844,10 @@ msgstr "작업 {0}" msgid "Task not found: {0}" msgstr "작업을 찾을 수 없음: {0}" +#: src/project/tasks/TasksView.svelte +msgid "Task view failed" +msgstr "작업 보기 실패" + #. Sidebar menu item #: src/project/ProjectSidebar.svelte msgid "Tasks" @@ -1934,6 +1947,10 @@ msgstr "번역 {0}" msgid "Troubleshoot" msgstr "문제 해결" +#: src/lib/layout/ViewErrorBoundary.svelte +msgid "Try again" +msgstr "다시 시도" + #. Task instruction #: src/project/tasks/tasks-service.ts msgid "Type a Definition" @@ -2162,3 +2179,4 @@ msgstr "{1}에서 {0} 프로젝트를 다운로드할 수 있는 권한이 없 #: src/home/Server.svelte msgid "You have already downloaded the {0} project" msgstr "이미 {0} 프로젝트를 다운로드하셨습니다." + From 013858d81341633b99b3cbd3bc245e1d3beef86f Mon Sep 17 00:00:00 2001 From: Tim Haasdyk Date: Sat, 13 Jun 2026 10:06:20 +0200 Subject: [PATCH 05/65] New translations en.po (Vietnamese) [ci skip] --- frontend/viewer/src/locales/vi.po | 22 ++++++++++++++++++++-- 1 file changed, 20 insertions(+), 2 deletions(-) diff --git a/frontend/viewer/src/locales/vi.po b/frontend/viewer/src/locales/vi.po index 74bb968e9f..324fb27cda 100644 --- a/frontend/viewer/src/locales/vi.po +++ b/frontend/viewer/src/locales/vi.po @@ -8,7 +8,7 @@ msgstr "" "Language: vi\n" "Project-Id-Version: language-depot\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2026-05-28 10:55\n" +"PO-Revision-Date: 2026-06-13 08:06\n" "Last-Translator: \n" "Language-Team: Vietnamese\n" "Plural-Forms: nplurals=1; plural=0;\n" @@ -23,7 +23,7 @@ msgstr "" #. {0} = number of changes (e.g., 1, 5, 10) #: src/lib/activity/ActivityItem.svelte msgid "– ({0} changes)" -msgstr "– ({0} thay đổi)" +msgstr "– ({0} các thay đổi)" #. Generic placeholder for dynamic content #: src/home/HomeView.svelte @@ -299,6 +299,10 @@ msgstr "xanh dương" msgid "Browse" msgstr "Duyệt" +#: src/project/browse/BrowseView.svelte +msgid "Browse view failed" +msgstr "Không thể hiển thị chế độ xem" + #. Button to close dialog without saving #. Appears in dialog footer; discards any pending edits #. Synonyms across UI: "Don't delete" (Delete dialog), "Close" (About dialog) @@ -361,6 +365,7 @@ msgid "Close" msgstr "Đóng" #. Menu option to close project +#: src/lib/layout/ViewErrorBoundary.svelte #: src/project/ProjectSidebar.svelte msgid "Close Dictionary" msgstr "Đóng Từ điển" @@ -1736,6 +1741,10 @@ msgstr "Kích thước:" msgid "Skip" msgstr "Bỏ qua" +#: src/lib/layout/ViewErrorBoundary.svelte +msgid "Something went wrong" +msgstr "Đã xảy ra sự cố" + #. Filter option #: src/project/browse/SearchFilter.svelte msgid "Specific field" @@ -1835,6 +1844,10 @@ msgstr "Nhiệm vụ {0}" msgid "Task not found: {0}" msgstr "Không tìm thấy nhiệm vụ: {0}" +#: src/project/tasks/TasksView.svelte +msgid "Task view failed" +msgstr "Không thể hiển thị chế độ xem tác vụ" + #. Sidebar menu item #: src/project/ProjectSidebar.svelte msgid "Tasks" @@ -1934,6 +1947,10 @@ msgstr "Bản dịch {0}" msgid "Troubleshoot" msgstr "Khắc phục sự cố" +#: src/lib/layout/ViewErrorBoundary.svelte +msgid "Try again" +msgstr "Hãy thử lại" + #. Task instruction #: src/project/tasks/tasks-service.ts msgid "Type a Definition" @@ -2162,3 +2179,4 @@ msgstr "Bạn không có quyền tải dự án {0} từ {1}" #: src/home/Server.svelte msgid "You have already downloaded the {0} project" msgstr "Bạn đã tải xuống dự án {0}" + From 1e1292a0f453c44aa2756bb27834e41010dddc15 Mon Sep 17 00:00:00 2001 From: Tim Haasdyk Date: Sat, 13 Jun 2026 10:06:22 +0200 Subject: [PATCH 06/65] New translations en.po (Indonesian) [ci skip] --- frontend/viewer/src/locales/id.po | 20 +++++++++++++++++++- 1 file changed, 19 insertions(+), 1 deletion(-) diff --git a/frontend/viewer/src/locales/id.po b/frontend/viewer/src/locales/id.po index 215f56abd7..bb50bb84ef 100644 --- a/frontend/viewer/src/locales/id.po +++ b/frontend/viewer/src/locales/id.po @@ -8,7 +8,7 @@ msgstr "" "Language: id\n" "Project-Id-Version: language-depot\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2026-05-14 10:19\n" +"PO-Revision-Date: 2026-06-13 08:06\n" "Last-Translator: \n" "Language-Team: Indonesian\n" "Plural-Forms: nplurals=1; plural=0;\n" @@ -299,6 +299,10 @@ msgstr "biru" msgid "Browse" msgstr "Jelajahi" +#: src/project/browse/BrowseView.svelte +msgid "Browse view failed" +msgstr "Tampilan penelusuran gagal" + #. Button to close dialog without saving #. Appears in dialog footer; discards any pending edits #. Synonyms across UI: "Don't delete" (Delete dialog), "Close" (About dialog) @@ -361,6 +365,7 @@ msgid "Close" msgstr "Tutup" #. Menu option to close project +#: src/lib/layout/ViewErrorBoundary.svelte #: src/project/ProjectSidebar.svelte msgid "Close Dictionary" msgstr "Tutup Kamus" @@ -1736,6 +1741,10 @@ msgstr "Ukuran:" msgid "Skip" msgstr "Lewati" +#: src/lib/layout/ViewErrorBoundary.svelte +msgid "Something went wrong" +msgstr "Ada yang tidak beres" + #. Filter option #: src/project/browse/SearchFilter.svelte msgid "Specific field" @@ -1835,6 +1844,10 @@ msgstr "Tugas {0}" msgid "Task not found: {0}" msgstr "Tugas tidak ditemukan: {0}" +#: src/project/tasks/TasksView.svelte +msgid "Task view failed" +msgstr "Tampilan tugas gagal" + #. Sidebar menu item #: src/project/ProjectSidebar.svelte msgid "Tasks" @@ -1934,6 +1947,10 @@ msgstr "Terjemahan {0}" msgid "Troubleshoot" msgstr "Memecahkan masalah" +#: src/lib/layout/ViewErrorBoundary.svelte +msgid "Try again" +msgstr "Coba lagi" + #. Task instruction #: src/project/tasks/tasks-service.ts msgid "Type a Definition" @@ -2162,3 +2179,4 @@ msgstr "Anda tidak memiliki izin untuk mengunduh proyek {0} dari {1}" #: src/home/Server.svelte msgid "You have already downloaded the {0} project" msgstr "Anda telah mengunduh proyek {0}" + From ace3c91e4bdddc993a2c9e6aecdb397984c46576 Mon Sep 17 00:00:00 2001 From: Tim Haasdyk Date: Sat, 13 Jun 2026 10:06:24 +0200 Subject: [PATCH 07/65] New translations en.po (Malay) [ci skip] --- frontend/viewer/src/locales/ms.po | 20 +++++++++++++++++++- 1 file changed, 19 insertions(+), 1 deletion(-) diff --git a/frontend/viewer/src/locales/ms.po b/frontend/viewer/src/locales/ms.po index 86edeaa7f4..a8011e1d31 100644 --- a/frontend/viewer/src/locales/ms.po +++ b/frontend/viewer/src/locales/ms.po @@ -8,7 +8,7 @@ msgstr "" "Language: ms\n" "Project-Id-Version: language-depot\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2026-05-28 10:55\n" +"PO-Revision-Date: 2026-06-13 08:06\n" "Last-Translator: \n" "Language-Team: Malay\n" "Plural-Forms: nplurals=1; plural=0;\n" @@ -299,6 +299,10 @@ msgstr "biru" msgid "Browse" msgstr "Terokai" +#: src/project/browse/BrowseView.svelte +msgid "Browse view failed" +msgstr "Paparan semak imbas gagal" + #. Button to close dialog without saving #. Appears in dialog footer; discards any pending edits #. Synonyms across UI: "Don't delete" (Delete dialog), "Close" (About dialog) @@ -361,6 +365,7 @@ msgid "Close" msgstr "Tutup" #. Menu option to close project +#: src/lib/layout/ViewErrorBoundary.svelte #: src/project/ProjectSidebar.svelte msgid "Close Dictionary" msgstr "Tutup Kamus" @@ -1736,6 +1741,10 @@ msgstr "Saiz:" msgid "Skip" msgstr "Langkau" +#: src/lib/layout/ViewErrorBoundary.svelte +msgid "Something went wrong" +msgstr "Sesuatu telah berlaku dengan salah" + #. Filter option #: src/project/browse/SearchFilter.svelte msgid "Specific field" @@ -1835,6 +1844,10 @@ msgstr "Tugasan {0}" msgid "Task not found: {0}" msgstr "Tugasan tidak ditemui: {0}" +#: src/project/tasks/TasksView.svelte +msgid "Task view failed" +msgstr "Tinjauan tugas gagal" + #. Sidebar menu item #: src/project/ProjectSidebar.svelte msgid "Tasks" @@ -1934,6 +1947,10 @@ msgstr "Terjemahan {0}" msgid "Troubleshoot" msgstr "Selesaikan masalah" +#: src/lib/layout/ViewErrorBoundary.svelte +msgid "Try again" +msgstr "Cuba lagi" + #. Task instruction #: src/project/tasks/tasks-service.ts msgid "Type a Definition" @@ -2162,3 +2179,4 @@ msgstr "Anda tidak mempunyai kebenaran untuk memuat turun projek {0} daripada {1 #: src/home/Server.svelte msgid "You have already downloaded the {0} project" msgstr "Anda telah pun memuat turun projek {0}" + From 28ddd535eaf40f629781ebe5ce32429f60bbc019 Mon Sep 17 00:00:00 2001 From: Tim Haasdyk Date: Sat, 13 Jun 2026 10:06:25 +0200 Subject: [PATCH 08/65] New translations en.po (Swahili) [ci skip] --- frontend/viewer/src/locales/sw.po | 20 +++++++++++++++++++- 1 file changed, 19 insertions(+), 1 deletion(-) diff --git a/frontend/viewer/src/locales/sw.po b/frontend/viewer/src/locales/sw.po index ddc5f77608..67000e2d21 100644 --- a/frontend/viewer/src/locales/sw.po +++ b/frontend/viewer/src/locales/sw.po @@ -8,7 +8,7 @@ msgstr "" "Language: sw\n" "Project-Id-Version: language-depot\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2026-05-28 10:55\n" +"PO-Revision-Date: 2026-06-13 08:06\n" "Last-Translator: \n" "Language-Team: Swahili\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" @@ -299,6 +299,10 @@ msgstr "buluu" msgid "Browse" msgstr "Angalia" +#: src/project/browse/BrowseView.svelte +msgid "Browse view failed" +msgstr "Uangaliaji wa kuvinjari umeshindikana" + #. Button to close dialog without saving #. Appears in dialog footer; discards any pending edits #. Synonyms across UI: "Don't delete" (Delete dialog), "Close" (About dialog) @@ -361,6 +365,7 @@ msgid "Close" msgstr "Funga" #. Menu option to close project +#: src/lib/layout/ViewErrorBoundary.svelte #: src/project/ProjectSidebar.svelte msgid "Close Dictionary" msgstr "Funga Kamusi" @@ -1736,6 +1741,10 @@ msgstr "Ukubwa:" msgid "Skip" msgstr "Ruka" +#: src/lib/layout/ViewErrorBoundary.svelte +msgid "Something went wrong" +msgstr "Kuna tatizo limetokea" + #. Filter option #: src/project/browse/SearchFilter.svelte msgid "Specific field" @@ -1835,6 +1844,10 @@ msgstr "Jukumu {0}" msgid "Task not found: {0}" msgstr "Jukumu halipatikani: {0}" +#: src/project/tasks/TasksView.svelte +msgid "Task view failed" +msgstr "Uoni wa kazi umeshindwa" + #. Sidebar menu item #: src/project/ProjectSidebar.svelte msgid "Tasks" @@ -1934,6 +1947,10 @@ msgstr "Tafsiri {0}" msgid "Troubleshoot" msgstr "Tatanua" +#: src/lib/layout/ViewErrorBoundary.svelte +msgid "Try again" +msgstr "Jaribu tena" + #. Task instruction #: src/project/tasks/tasks-service.ts msgid "Type a Definition" @@ -2162,3 +2179,4 @@ msgstr "Huna ruhusa ya kupakua mradi {0} kutoka {1}" #: src/home/Server.svelte msgid "You have already downloaded the {0} project" msgstr "Umeshapakua mradi wa {0}" + From b0682c93cdb4719ecc3139232d06fc13c1ab344a Mon Sep 17 00:00:00 2001 From: Tim Haasdyk Date: Tue, 16 Jun 2026 05:05:47 +0200 Subject: [PATCH 09/65] Update source file en.po [ci skip] --- frontend/viewer/src/locales/en.po | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/frontend/viewer/src/locales/en.po b/frontend/viewer/src/locales/en.po index f8fa8f0022..bd1f1f1831 100644 --- a/frontend/viewer/src/locales/en.po +++ b/frontend/viewer/src/locales/en.po @@ -168,6 +168,12 @@ msgstr "Add part of" msgid "Add Sense" msgstr "Add Sense" +#. Subtitle of a placeholder row shown at the end of the entry list while searching (also in the no-results state) +#. The search text is displayed above it as a headword; clicking opens the new-entry dialog pre-filled with that text +#: src/project/browse/EntriesList.svelte +msgid "Add to dictionary" +msgstr "Add to dictionary" + #. Dialog title #: src/lib/entry-editor/NewEntryDialog.svelte msgid "Add Word" @@ -1322,6 +1328,7 @@ msgstr "No subject, unable to create a new {0}" #. Relevant view: Lite #. Classic view equivalent: "No entries found" #: src/lib/entry-editor/EntryOrSensePicker.svelte +#: src/project/browse/EntriesList.svelte msgid "No words found" msgstr "No words found" From 51754f66a3015c4b14a5f2568ca8f458baf726a3 Mon Sep 17 00:00:00 2001 From: Tim Haasdyk Date: Tue, 16 Jun 2026 05:05:50 +0200 Subject: [PATCH 10/65] New translations en.po (French) [ci skip] --- frontend/viewer/src/locales/fr.po | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/frontend/viewer/src/locales/fr.po b/frontend/viewer/src/locales/fr.po index 3870289cb4..59306ddaca 100644 --- a/frontend/viewer/src/locales/fr.po +++ b/frontend/viewer/src/locales/fr.po @@ -8,7 +8,7 @@ msgstr "" "Language: fr\n" "Project-Id-Version: language-depot\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2026-06-13 08:06\n" +"PO-Revision-Date: 2026-06-16 03:05\n" "Last-Translator: \n" "Language-Team: French\n" "Plural-Forms: nplurals=2; plural=(n > 1);\n" @@ -173,6 +173,12 @@ msgstr "Ajouter une partie de" msgid "Add Sense" msgstr "Ajouter du sens" +#. Subtitle of a placeholder row shown at the end of the entry list while searching (also in the no-results state) +#. The search text is displayed above it as a headword; clicking opens the new-entry dialog pre-filled with that text +#: src/project/browse/EntriesList.svelte +msgid "Add to dictionary" +msgstr "Ajouter au dictionnaire" + #. Dialog title #: src/lib/entry-editor/NewEntryDialog.svelte msgid "Add Word" @@ -1327,6 +1333,7 @@ msgstr "Aucun sujet, impossible de créer un nouveau {0}" #. Relevant view: Lite #. Classic view equivalent: "No entries found" #: src/lib/entry-editor/EntryOrSensePicker.svelte +#: src/project/browse/EntriesList.svelte msgid "No words found" msgstr "Aucun mot trouvé" From e45f2dc4457a1b2a4221c603c7d64d90f7bddd71 Mon Sep 17 00:00:00 2001 From: Tim Haasdyk Date: Tue, 16 Jun 2026 05:05:51 +0200 Subject: [PATCH 11/65] New translations en.po (Spanish) [ci skip] --- frontend/viewer/src/locales/es.po | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/frontend/viewer/src/locales/es.po b/frontend/viewer/src/locales/es.po index cc780121e6..25f8b7d670 100644 --- a/frontend/viewer/src/locales/es.po +++ b/frontend/viewer/src/locales/es.po @@ -8,7 +8,7 @@ msgstr "" "Language: es\n" "Project-Id-Version: language-depot\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2026-06-13 08:06\n" +"PO-Revision-Date: 2026-06-16 03:05\n" "Last-Translator: \n" "Language-Team: Spanish\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" @@ -173,6 +173,12 @@ msgstr "Añadir parte de" msgid "Add Sense" msgstr "Añadir acepción" +#. Subtitle of a placeholder row shown at the end of the entry list while searching (also in the no-results state) +#. The search text is displayed above it as a headword; clicking opens the new-entry dialog pre-filled with that text +#: src/project/browse/EntriesList.svelte +msgid "Add to dictionary" +msgstr "Añadir al diccionario" + #. Dialog title #: src/lib/entry-editor/NewEntryDialog.svelte msgid "Add Word" @@ -1327,6 +1333,7 @@ msgstr "No hay tema, no se puede crear un nuevo {0}" #. Relevant view: Lite #. Classic view equivalent: "No entries found" #: src/lib/entry-editor/EntryOrSensePicker.svelte +#: src/project/browse/EntriesList.svelte msgid "No words found" msgstr "No se han encontrado palabras" From 3ee4cf06af6a787788a0826c0fafe43ef07d775e Mon Sep 17 00:00:00 2001 From: Tim Haasdyk Date: Tue, 16 Jun 2026 05:05:53 +0200 Subject: [PATCH 12/65] New translations en.po (Korean) [ci skip] --- frontend/viewer/src/locales/ko.po | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/frontend/viewer/src/locales/ko.po b/frontend/viewer/src/locales/ko.po index faa67ba3a2..064c784d50 100644 --- a/frontend/viewer/src/locales/ko.po +++ b/frontend/viewer/src/locales/ko.po @@ -8,7 +8,7 @@ msgstr "" "Language: ko\n" "Project-Id-Version: language-depot\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2026-06-13 08:06\n" +"PO-Revision-Date: 2026-06-16 03:05\n" "Last-Translator: \n" "Language-Team: Korean\n" "Plural-Forms: nplurals=1; plural=0;\n" @@ -173,6 +173,12 @@ msgstr "의 일부를 추가합니다." msgid "Add Sense" msgstr "센스 추가" +#. Subtitle of a placeholder row shown at the end of the entry list while searching (also in the no-results state) +#. The search text is displayed above it as a headword; clicking opens the new-entry dialog pre-filled with that text +#: src/project/browse/EntriesList.svelte +msgid "Add to dictionary" +msgstr "사전에 추가" + #. Dialog title #: src/lib/entry-editor/NewEntryDialog.svelte msgid "Add Word" @@ -1327,6 +1333,7 @@ msgstr "제목이 없습니다, 새로 만들 수 없습니다 {0}" #. Relevant view: Lite #. Classic view equivalent: "No entries found" #: src/lib/entry-editor/EntryOrSensePicker.svelte +#: src/project/browse/EntriesList.svelte msgid "No words found" msgstr "단어를 찾을 수 없습니다." From ef5fe32c226eee44ab80e680058f808a73c05b1f Mon Sep 17 00:00:00 2001 From: Tim Haasdyk Date: Tue, 16 Jun 2026 05:05:55 +0200 Subject: [PATCH 13/65] New translations en.po (Vietnamese) [ci skip] --- frontend/viewer/src/locales/vi.po | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/frontend/viewer/src/locales/vi.po b/frontend/viewer/src/locales/vi.po index 324fb27cda..dd0457288b 100644 --- a/frontend/viewer/src/locales/vi.po +++ b/frontend/viewer/src/locales/vi.po @@ -8,7 +8,7 @@ msgstr "" "Language: vi\n" "Project-Id-Version: language-depot\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2026-06-13 08:06\n" +"PO-Revision-Date: 2026-06-16 03:05\n" "Last-Translator: \n" "Language-Team: Vietnamese\n" "Plural-Forms: nplurals=1; plural=0;\n" @@ -173,6 +173,12 @@ msgstr "Thêm phần của" msgid "Add Sense" msgstr "Thêm Ý nghĩa (sense)" +#. Subtitle of a placeholder row shown at the end of the entry list while searching (also in the no-results state) +#. The search text is displayed above it as a headword; clicking opens the new-entry dialog pre-filled with that text +#: src/project/browse/EntriesList.svelte +msgid "Add to dictionary" +msgstr "Thêm vào từ điển" + #. Dialog title #: src/lib/entry-editor/NewEntryDialog.svelte msgid "Add Word" @@ -1327,6 +1333,7 @@ msgstr "Không có chủ đề, không thể tạo mới {0}" #. Relevant view: Lite #. Classic view equivalent: "No entries found" #: src/lib/entry-editor/EntryOrSensePicker.svelte +#: src/project/browse/EntriesList.svelte msgid "No words found" msgstr "Không tìm thấy từ nào" From 7bc79d0f5214e9740250536401f6de85efad0bda Mon Sep 17 00:00:00 2001 From: Tim Haasdyk Date: Tue, 16 Jun 2026 05:05:56 +0200 Subject: [PATCH 14/65] New translations en.po (Indonesian) [ci skip] --- frontend/viewer/src/locales/id.po | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/frontend/viewer/src/locales/id.po b/frontend/viewer/src/locales/id.po index bb50bb84ef..2e3bec692f 100644 --- a/frontend/viewer/src/locales/id.po +++ b/frontend/viewer/src/locales/id.po @@ -8,7 +8,7 @@ msgstr "" "Language: id\n" "Project-Id-Version: language-depot\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2026-06-13 08:06\n" +"PO-Revision-Date: 2026-06-16 03:05\n" "Last-Translator: \n" "Language-Team: Indonesian\n" "Plural-Forms: nplurals=1; plural=0;\n" @@ -173,6 +173,12 @@ msgstr "Tambahkan bagian dari" msgid "Add Sense" msgstr "Tambahkan Pengertian" +#. Subtitle of a placeholder row shown at the end of the entry list while searching (also in the no-results state) +#. The search text is displayed above it as a headword; clicking opens the new-entry dialog pre-filled with that text +#: src/project/browse/EntriesList.svelte +msgid "Add to dictionary" +msgstr "Tambahkan ke kamus" + #. Dialog title #: src/lib/entry-editor/NewEntryDialog.svelte msgid "Add Word" @@ -1327,6 +1333,7 @@ msgstr "Tidak ada subjek, tidak dapat membuat {0}baru" #. Relevant view: Lite #. Classic view equivalent: "No entries found" #: src/lib/entry-editor/EntryOrSensePicker.svelte +#: src/project/browse/EntriesList.svelte msgid "No words found" msgstr "Tidak ada kata yang ditemukan" From 8eaa32d2ff5bbeb97e830055ac578077908bde04 Mon Sep 17 00:00:00 2001 From: Tim Haasdyk Date: Tue, 16 Jun 2026 05:05:58 +0200 Subject: [PATCH 15/65] New translations en.po (Malay) [ci skip] --- frontend/viewer/src/locales/ms.po | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/frontend/viewer/src/locales/ms.po b/frontend/viewer/src/locales/ms.po index a8011e1d31..cbae89b4fa 100644 --- a/frontend/viewer/src/locales/ms.po +++ b/frontend/viewer/src/locales/ms.po @@ -8,7 +8,7 @@ msgstr "" "Language: ms\n" "Project-Id-Version: language-depot\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2026-06-13 08:06\n" +"PO-Revision-Date: 2026-06-16 03:05\n" "Last-Translator: \n" "Language-Team: Malay\n" "Plural-Forms: nplurals=1; plural=0;\n" @@ -173,6 +173,12 @@ msgstr "Tambah sebahagian daripada" msgid "Add Sense" msgstr "Tambah Makna" +#. Subtitle of a placeholder row shown at the end of the entry list while searching (also in the no-results state) +#. The search text is displayed above it as a headword; clicking opens the new-entry dialog pre-filled with that text +#: src/project/browse/EntriesList.svelte +msgid "Add to dictionary" +msgstr "Tambah ke kamus" + #. Dialog title #: src/lib/entry-editor/NewEntryDialog.svelte msgid "Add Word" @@ -1327,6 +1333,7 @@ msgstr "Tiada subjek, tidak dapat membuat {0} baru" #. Relevant view: Lite #. Classic view equivalent: "No entries found" #: src/lib/entry-editor/EntryOrSensePicker.svelte +#: src/project/browse/EntriesList.svelte msgid "No words found" msgstr "Tiada perkataan ditemui" From 166582b944dc6f781214011410be0cf77d3c1790 Mon Sep 17 00:00:00 2001 From: Tim Haasdyk Date: Tue, 16 Jun 2026 05:06:00 +0200 Subject: [PATCH 16/65] New translations en.po (Swahili) [ci skip] --- frontend/viewer/src/locales/sw.po | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/frontend/viewer/src/locales/sw.po b/frontend/viewer/src/locales/sw.po index 67000e2d21..451bb1c5c7 100644 --- a/frontend/viewer/src/locales/sw.po +++ b/frontend/viewer/src/locales/sw.po @@ -8,7 +8,7 @@ msgstr "" "Language: sw\n" "Project-Id-Version: language-depot\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2026-06-13 08:06\n" +"PO-Revision-Date: 2026-06-16 03:05\n" "Last-Translator: \n" "Language-Team: Swahili\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" @@ -173,6 +173,12 @@ msgstr "Ongeza sehemu ya" msgid "Add Sense" msgstr "Ongeza Maana" +#. Subtitle of a placeholder row shown at the end of the entry list while searching (also in the no-results state) +#. The search text is displayed above it as a headword; clicking opens the new-entry dialog pre-filled with that text +#: src/project/browse/EntriesList.svelte +msgid "Add to dictionary" +msgstr "Ongeza kwenye kamusi" + #. Dialog title #: src/lib/entry-editor/NewEntryDialog.svelte msgid "Add Word" @@ -1327,6 +1333,7 @@ msgstr "Hakuna kigezo, haiwezi kutengeneza {0} mpya" #. Relevant view: Lite #. Classic view equivalent: "No entries found" #: src/lib/entry-editor/EntryOrSensePicker.svelte +#: src/project/browse/EntriesList.svelte msgid "No words found" msgstr "Hakuna neno liliyopatikana" From f822e56a840cd8e6d4280dcbf977272bb2ed398d Mon Sep 17 00:00:00 2001 From: Tim Haasdyk Date: Thu, 25 Jun 2026 09:37:28 +0200 Subject: [PATCH 17/65] Update source file en.po [ci skip] --- frontend/viewer/src/locales/en.po | 22 +++++++++++++++++++++- 1 file changed, 21 insertions(+), 1 deletion(-) diff --git a/frontend/viewer/src/locales/en.po b/frontend/viewer/src/locales/en.po index bd1f1f1831..06ac139d0a 100644 --- a/frontend/viewer/src/locales/en.po +++ b/frontend/viewer/src/locales/en.po @@ -438,6 +438,12 @@ msgstr "Copied to clipboard" msgid "Copy version" msgstr "Copy version" +#. Transient warning toast (short timeout) shown when "Sync to local" fails (offline, server unreachable, or not logged in). +#. Both clauses matter: the failure reason is implicit; the reassurance that local data is intact is intentional. +#: src/project/SyncDialog.svelte +msgid "Couldn't sync right now — your local changes are safe." +msgstr "Couldn't sync right now — your local changes are safe." + #. Dialog title when creating a new custom view. #: src/lib/views/custom/CreateCustomViewDialog.svelte msgid "Create Custom View" @@ -768,7 +774,6 @@ msgstr "Failed to open URL: {0}" #. Error notification #: src/lib/services/sync-status-service.ts -#: src/project/SyncDialog.svelte msgid "Failed to synchronize" msgstr "Failed to synchronize" @@ -1117,6 +1122,11 @@ msgstr "Local only" msgid "Login" msgstr "Login" +#. Toast shown when the user closes or cancels the login dialog before signing in. +#: src/lib/auth/LoginButton.svelte +msgid "Login cancelled." +msgstr "Login cancelled." + #. Default button label on the login button when not yet authenticated. Clicking opens the login flow for a server. #: src/lib/auth/LoginButton.svelte #: src/lib/auth/LoginButton.svelte @@ -1404,6 +1414,11 @@ msgstr "Open" msgid "Open Data Directory" msgstr "Open Data Directory" +#. Action button on the offline-login warning toast; opens the server's site in a browser so the user can check the connection. +#: src/lib/auth/LoginButton.svelte +msgid "Open in browser" +msgstr "Open in browser" + #. Button label #: src/lib/components/OpenInFieldWorksButton.svelte msgid "Open in FieldWorks" @@ -2161,6 +2176,11 @@ msgstr "Writing systems" msgid "Writing Systems" msgstr "Writing Systems" +#. Warning toast shown when a login attempt can't connect to the server. {0} is the server name (e.g. "Lexbox"). +#: src/lib/auth/LoginButton.svelte +msgid "You appear to be offline. Can you connect to {0}?" +msgstr "You appear to be offline. Can you connect to {0}?" + #. Status message when no updates are available #: src/lib/updates/UpdateDialogContent.svelte msgid "You are running the latest version." From 8db8c047c84595dcf9e60a538d5b8f79cd1bd702 Mon Sep 17 00:00:00 2001 From: Tim Haasdyk Date: Thu, 25 Jun 2026 09:37:31 +0200 Subject: [PATCH 18/65] New translations en.po (French) [ci skip] --- frontend/viewer/src/locales/fr.po | 24 ++++++++++++++++++++++-- 1 file changed, 22 insertions(+), 2 deletions(-) diff --git a/frontend/viewer/src/locales/fr.po b/frontend/viewer/src/locales/fr.po index 59306ddaca..3aeb66e2d4 100644 --- a/frontend/viewer/src/locales/fr.po +++ b/frontend/viewer/src/locales/fr.po @@ -8,7 +8,7 @@ msgstr "" "Language: fr\n" "Project-Id-Version: language-depot\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2026-06-16 03:05\n" +"PO-Revision-Date: 2026-06-25 07:37\n" "Last-Translator: \n" "Language-Team: French\n" "Plural-Forms: nplurals=2; plural=(n > 1);\n" @@ -443,6 +443,12 @@ msgstr "Copié dans le presse-papiers" msgid "Copy version" msgstr "Copier la version dans le presse-papiers" +#. Transient warning toast (short timeout) shown when "Sync to local" fails (offline, server unreachable, or not logged in). +#. Both clauses matter: the failure reason is implicit; the reassurance that local data is intact is intentional. +#: src/project/SyncDialog.svelte +msgid "Couldn't sync right now — your local changes are safe." +msgstr "Échec de la synchronisation pour le moment, vos modifications locales sont sécurisées." + #. Dialog title when creating a new custom view. #: src/lib/views/custom/CreateCustomViewDialog.svelte msgid "Create Custom View" @@ -773,7 +779,6 @@ msgstr "Impossible d'ouvrir l'URL : {0}" #. Error notification #: src/lib/services/sync-status-service.ts -#: src/project/SyncDialog.svelte msgid "Failed to synchronize" msgstr "Synchronisation échouée" @@ -1122,6 +1127,11 @@ msgstr "Uniquement au niveau local" msgid "Login" msgstr "Connexion" +#. Toast shown when the user closes or cancels the login dialog before signing in. +#: src/lib/auth/LoginButton.svelte +msgid "Login cancelled." +msgstr "Connexion annulée." + #. Default button label on the login button when not yet authenticated. Clicking opens the login flow for a server. #: src/lib/auth/LoginButton.svelte #: src/lib/auth/LoginButton.svelte @@ -1409,6 +1419,11 @@ msgstr "Ouvert" msgid "Open Data Directory" msgstr "Répertoire des données ouvertes" +#. Action button on the offline-login warning toast; opens the server's site in a browser so the user can check the connection. +#: src/lib/auth/LoginButton.svelte +msgid "Open in browser" +msgstr "Ouvrir dans le navigateur" + #. Button label #: src/lib/components/OpenInFieldWorksButton.svelte msgid "Open in FieldWorks" @@ -2166,6 +2181,11 @@ msgstr "Systèmes d'écriture" msgid "Writing Systems" msgstr "Systèmes d'écriture" +#. Warning toast shown when a login attempt can't connect to the server. {0} is the server name (e.g. "Lexbox"). +#: src/lib/auth/LoginButton.svelte +msgid "You appear to be offline. Can you connect to {0}?" +msgstr "Vous semblez être hors ligne. Pouvez-vous vous connecter à {0}?" + #. Status message when no updates are available #: src/lib/updates/UpdateDialogContent.svelte msgid "You are running the latest version." From 8c4d1c4417f1b85860066077bdd9596838d4c149 Mon Sep 17 00:00:00 2001 From: Tim Haasdyk Date: Thu, 25 Jun 2026 09:37:33 +0200 Subject: [PATCH 19/65] New translations en.po (Spanish) [ci skip] --- frontend/viewer/src/locales/es.po | 24 ++++++++++++++++++++++-- 1 file changed, 22 insertions(+), 2 deletions(-) diff --git a/frontend/viewer/src/locales/es.po b/frontend/viewer/src/locales/es.po index 25f8b7d670..8825c898c0 100644 --- a/frontend/viewer/src/locales/es.po +++ b/frontend/viewer/src/locales/es.po @@ -8,7 +8,7 @@ msgstr "" "Language: es\n" "Project-Id-Version: language-depot\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2026-06-16 03:05\n" +"PO-Revision-Date: 2026-06-25 07:37\n" "Last-Translator: \n" "Language-Team: Spanish\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" @@ -443,6 +443,12 @@ msgstr "Copiado al portapapeles" msgid "Copy version" msgstr "Copiar versión" +#. Transient warning toast (short timeout) shown when "Sync to local" fails (offline, server unreachable, or not logged in). +#. Both clauses matter: the failure reason is implicit; the reassurance that local data is intact is intentional. +#: src/project/SyncDialog.svelte +msgid "Couldn't sync right now — your local changes are safe." +msgstr "No se pudo sincronizar ahora mismo, los cambios locales están seguros." + #. Dialog title when creating a new custom view. #: src/lib/views/custom/CreateCustomViewDialog.svelte msgid "Create Custom View" @@ -773,7 +779,6 @@ msgstr "Error al abrir la URL: {0}" #. Error notification #: src/lib/services/sync-status-service.ts -#: src/project/SyncDialog.svelte msgid "Failed to synchronize" msgstr "Error de sincronización" @@ -1122,6 +1127,11 @@ msgstr "Sólo local" msgid "Login" msgstr "Inicio de sesión" +#. Toast shown when the user closes or cancels the login dialog before signing in. +#: src/lib/auth/LoginButton.svelte +msgid "Login cancelled." +msgstr "Inicio de sesión cancelado." + #. Default button label on the login button when not yet authenticated. Clicking opens the login flow for a server. #: src/lib/auth/LoginButton.svelte #: src/lib/auth/LoginButton.svelte @@ -1409,6 +1419,11 @@ msgstr "Abrir" msgid "Open Data Directory" msgstr "Directorio de datos abiertos" +#. Action button on the offline-login warning toast; opens the server's site in a browser so the user can check the connection. +#: src/lib/auth/LoginButton.svelte +msgid "Open in browser" +msgstr "Abrir en el navegador" + #. Button label #: src/lib/components/OpenInFieldWorksButton.svelte msgid "Open in FieldWorks" @@ -2166,6 +2181,11 @@ msgstr "Sistemas de escritura" msgid "Writing Systems" msgstr "Sistemas de escritura" +#. Warning toast shown when a login attempt can't connect to the server. {0} is the server name (e.g. "Lexbox"). +#: src/lib/auth/LoginButton.svelte +msgid "You appear to be offline. Can you connect to {0}?" +msgstr "Pareces estar desconectado. ¿Puedes conectarte a {0}?" + #. Status message when no updates are available #: src/lib/updates/UpdateDialogContent.svelte msgid "You are running the latest version." From 8291835add74d8f4a775daa335426899b855d172 Mon Sep 17 00:00:00 2001 From: Tim Haasdyk Date: Thu, 25 Jun 2026 09:37:35 +0200 Subject: [PATCH 20/65] New translations en.po (Korean) [ci skip] --- frontend/viewer/src/locales/ko.po | 24 ++++++++++++++++++++++-- 1 file changed, 22 insertions(+), 2 deletions(-) diff --git a/frontend/viewer/src/locales/ko.po b/frontend/viewer/src/locales/ko.po index 064c784d50..db5f16f61b 100644 --- a/frontend/viewer/src/locales/ko.po +++ b/frontend/viewer/src/locales/ko.po @@ -8,7 +8,7 @@ msgstr "" "Language: ko\n" "Project-Id-Version: language-depot\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2026-06-16 03:05\n" +"PO-Revision-Date: 2026-06-25 07:37\n" "Last-Translator: \n" "Language-Team: Korean\n" "Plural-Forms: nplurals=1; plural=0;\n" @@ -443,6 +443,12 @@ msgstr "클립보드에 복사" msgid "Copy version" msgstr "복사 버전" +#. Transient warning toast (short timeout) shown when "Sync to local" fails (offline, server unreachable, or not logged in). +#. Both clauses matter: the failure reason is implicit; the reassurance that local data is intact is intentional. +#: src/project/SyncDialog.svelte +msgid "Couldn't sync right now — your local changes are safe." +msgstr "지금은 동기화할 수 없습니다. 로컬에서 변경한 내용은 안전하게 보관됩니다." + #. Dialog title when creating a new custom view. #: src/lib/views/custom/CreateCustomViewDialog.svelte msgid "Create Custom View" @@ -773,7 +779,6 @@ msgstr "URL을 열지 못했습니다: {0}" #. Error notification #: src/lib/services/sync-status-service.ts -#: src/project/SyncDialog.svelte msgid "Failed to synchronize" msgstr "동기화 실패" @@ -1122,6 +1127,11 @@ msgstr "로컬 전용" msgid "Login" msgstr "로그인" +#. Toast shown when the user closes or cancels the login dialog before signing in. +#: src/lib/auth/LoginButton.svelte +msgid "Login cancelled." +msgstr "로그인이 취소되었습니다." + #. Default button label on the login button when not yet authenticated. Clicking opens the login flow for a server. #: src/lib/auth/LoginButton.svelte #: src/lib/auth/LoginButton.svelte @@ -1409,6 +1419,11 @@ msgstr "열기" msgid "Open Data Directory" msgstr "오픈 데이터 디렉터리" +#. Action button on the offline-login warning toast; opens the server's site in a browser so the user can check the connection. +#: src/lib/auth/LoginButton.svelte +msgid "Open in browser" +msgstr "브라우저에서 열기" + #. Button label #: src/lib/components/OpenInFieldWorksButton.svelte msgid "Open in FieldWorks" @@ -2166,6 +2181,11 @@ msgstr "쓰기 시스템" msgid "Writing Systems" msgstr "쓰기 시스템" +#. Warning toast shown when a login attempt can't connect to the server. {0} is the server name (e.g. "Lexbox"). +#: src/lib/auth/LoginButton.svelte +msgid "You appear to be offline. Can you connect to {0}?" +msgstr "현재 오프라인 상태인 것 같습니다. {0} 에 접속할 수 있나요?" + #. Status message when no updates are available #: src/lib/updates/UpdateDialogContent.svelte msgid "You are running the latest version." From 6d5955027ba3c432d997c0cf4b98a5e590a036cd Mon Sep 17 00:00:00 2001 From: Tim Haasdyk Date: Thu, 25 Jun 2026 09:37:37 +0200 Subject: [PATCH 21/65] New translations en.po (Vietnamese) [ci skip] --- frontend/viewer/src/locales/vi.po | 24 ++++++++++++++++++++++-- 1 file changed, 22 insertions(+), 2 deletions(-) diff --git a/frontend/viewer/src/locales/vi.po b/frontend/viewer/src/locales/vi.po index dd0457288b..1cbec5c9ae 100644 --- a/frontend/viewer/src/locales/vi.po +++ b/frontend/viewer/src/locales/vi.po @@ -8,7 +8,7 @@ msgstr "" "Language: vi\n" "Project-Id-Version: language-depot\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2026-06-16 03:05\n" +"PO-Revision-Date: 2026-06-25 07:37\n" "Last-Translator: \n" "Language-Team: Vietnamese\n" "Plural-Forms: nplurals=1; plural=0;\n" @@ -443,6 +443,12 @@ msgstr "Đã sao chép vào khay nhớ tạm" msgid "Copy version" msgstr "Sao chép phiên bản" +#. Transient warning toast (short timeout) shown when "Sync to local" fails (offline, server unreachable, or not logged in). +#. Both clauses matter: the failure reason is implicit; the reassurance that local data is intact is intentional. +#: src/project/SyncDialog.svelte +msgid "Couldn't sync right now — your local changes are safe." +msgstr "Hiện tại không thể đồng bộ hóa — các thay đổi trên máy của bạn vẫn được lưu giữ an toàn." + #. Dialog title when creating a new custom view. #: src/lib/views/custom/CreateCustomViewDialog.svelte msgid "Create Custom View" @@ -773,7 +779,6 @@ msgstr "Mở URL thất bại: {0}" #. Error notification #: src/lib/services/sync-status-service.ts -#: src/project/SyncDialog.svelte msgid "Failed to synchronize" msgstr "Đồng bộ thất bại" @@ -1122,6 +1127,11 @@ msgstr "Chỉ cục bộ" msgid "Login" msgstr "Đăng nhập" +#. Toast shown when the user closes or cancels the login dialog before signing in. +#: src/lib/auth/LoginButton.svelte +msgid "Login cancelled." +msgstr "Việc đăng nhập đã bị hủy." + #. Default button label on the login button when not yet authenticated. Clicking opens the login flow for a server. #: src/lib/auth/LoginButton.svelte #: src/lib/auth/LoginButton.svelte @@ -1409,6 +1419,11 @@ msgstr "Mở" msgid "Open Data Directory" msgstr "Mở Thư mục Dữ liệu" +#. Action button on the offline-login warning toast; opens the server's site in a browser so the user can check the connection. +#: src/lib/auth/LoginButton.svelte +msgid "Open in browser" +msgstr "Mở trong trình duyệt" + #. Button label #: src/lib/components/OpenInFieldWorksButton.svelte msgid "Open in FieldWorks" @@ -2166,6 +2181,11 @@ msgstr "Hệ thống chữ viết" msgid "Writing Systems" msgstr "Các hệ chữ" +#. Warning toast shown when a login attempt can't connect to the server. {0} is the server name (e.g. "Lexbox"). +#: src/lib/auth/LoginButton.svelte +msgid "You appear to be offline. Can you connect to {0}?" +msgstr "Có vẻ như bạn đang ở chế độ ngoại tuyến. Bạn có thể truy cập vào trang {0} không?" + #. Status message when no updates are available #: src/lib/updates/UpdateDialogContent.svelte msgid "You are running the latest version." From 6c78049307aecffbd89b6d88a6b54ab2a4586cf8 Mon Sep 17 00:00:00 2001 From: Tim Haasdyk Date: Thu, 25 Jun 2026 09:37:38 +0200 Subject: [PATCH 22/65] New translations en.po (Indonesian) [ci skip] --- frontend/viewer/src/locales/id.po | 24 ++++++++++++++++++++++-- 1 file changed, 22 insertions(+), 2 deletions(-) diff --git a/frontend/viewer/src/locales/id.po b/frontend/viewer/src/locales/id.po index 2e3bec692f..a536a5a0a2 100644 --- a/frontend/viewer/src/locales/id.po +++ b/frontend/viewer/src/locales/id.po @@ -8,7 +8,7 @@ msgstr "" "Language: id\n" "Project-Id-Version: language-depot\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2026-06-16 03:05\n" +"PO-Revision-Date: 2026-06-25 07:37\n" "Last-Translator: \n" "Language-Team: Indonesian\n" "Plural-Forms: nplurals=1; plural=0;\n" @@ -443,6 +443,12 @@ msgstr "Disalin ke papan klip" msgid "Copy version" msgstr "Versi salin" +#. Transient warning toast (short timeout) shown when "Sync to local" fails (offline, server unreachable, or not logged in). +#. Both clauses matter: the failure reason is implicit; the reassurance that local data is intact is intentional. +#: src/project/SyncDialog.svelte +msgid "Couldn't sync right now — your local changes are safe." +msgstr "Saat ini tidak bisa disinkronkan — perubahan lokal Anda tetap aman." + #. Dialog title when creating a new custom view. #: src/lib/views/custom/CreateCustomViewDialog.svelte msgid "Create Custom View" @@ -773,7 +779,6 @@ msgstr "Gagal membuka URL: {0}" #. Error notification #: src/lib/services/sync-status-service.ts -#: src/project/SyncDialog.svelte msgid "Failed to synchronize" msgstr "Gagal menyinkronkan" @@ -1122,6 +1127,11 @@ msgstr "Hanya lokal" msgid "Login" msgstr "Masuk" +#. Toast shown when the user closes or cancels the login dialog before signing in. +#: src/lib/auth/LoginButton.svelte +msgid "Login cancelled." +msgstr "Masuk dibatalkan." + #. Default button label on the login button when not yet authenticated. Clicking opens the login flow for a server. #: src/lib/auth/LoginButton.svelte #: src/lib/auth/LoginButton.svelte @@ -1409,6 +1419,11 @@ msgstr "Buka" msgid "Open Data Directory" msgstr "Direktori Data Terbuka" +#. Action button on the offline-login warning toast; opens the server's site in a browser so the user can check the connection. +#: src/lib/auth/LoginButton.svelte +msgid "Open in browser" +msgstr "Buka di peramban" + #. Button label #: src/lib/components/OpenInFieldWorksButton.svelte msgid "Open in FieldWorks" @@ -2166,6 +2181,11 @@ msgstr "Sistem penulisan" msgid "Writing Systems" msgstr "Sistem Penulisan" +#. Warning toast shown when a login attempt can't connect to the server. {0} is the server name (e.g. "Lexbox"). +#: src/lib/auth/LoginButton.svelte +msgid "You appear to be offline. Can you connect to {0}?" +msgstr "Sepertinya Anda sedang offline. Bisakah Anda mengakses {0}?" + #. Status message when no updates are available #: src/lib/updates/UpdateDialogContent.svelte msgid "You are running the latest version." From 1be3c91b48956fbb38b696ce93b57c11b1bf09af Mon Sep 17 00:00:00 2001 From: Tim Haasdyk Date: Thu, 25 Jun 2026 09:37:40 +0200 Subject: [PATCH 23/65] New translations en.po (Malay) [ci skip] --- frontend/viewer/src/locales/ms.po | 24 ++++++++++++++++++++++-- 1 file changed, 22 insertions(+), 2 deletions(-) diff --git a/frontend/viewer/src/locales/ms.po b/frontend/viewer/src/locales/ms.po index cbae89b4fa..101fc2558b 100644 --- a/frontend/viewer/src/locales/ms.po +++ b/frontend/viewer/src/locales/ms.po @@ -8,7 +8,7 @@ msgstr "" "Language: ms\n" "Project-Id-Version: language-depot\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2026-06-16 03:05\n" +"PO-Revision-Date: 2026-06-25 07:37\n" "Last-Translator: \n" "Language-Team: Malay\n" "Plural-Forms: nplurals=1; plural=0;\n" @@ -443,6 +443,12 @@ msgstr "Disalin ke papan keratan" msgid "Copy version" msgstr "Salin versi" +#. Transient warning toast (short timeout) shown when "Sync to local" fails (offline, server unreachable, or not logged in). +#. Both clauses matter: the failure reason is implicit; the reassurance that local data is intact is intentional. +#: src/project/SyncDialog.svelte +msgid "Couldn't sync right now — your local changes are safe." +msgstr "Tidak dapat menyegerakkan sekarang — perubahan tempatan anda selamat." + #. Dialog title when creating a new custom view. #: src/lib/views/custom/CreateCustomViewDialog.svelte msgid "Create Custom View" @@ -773,7 +779,6 @@ msgstr "Gagal membuka URL: {0}" #. Error notification #: src/lib/services/sync-status-service.ts -#: src/project/SyncDialog.svelte msgid "Failed to synchronize" msgstr "Gagal menyegerak" @@ -1122,6 +1127,11 @@ msgstr "Tempatan sahaja" msgid "Login" msgstr "Log masuk" +#. Toast shown when the user closes or cancels the login dialog before signing in. +#: src/lib/auth/LoginButton.svelte +msgid "Login cancelled." +msgstr "Log masuk dibatalkan." + #. Default button label on the login button when not yet authenticated. Clicking opens the login flow for a server. #: src/lib/auth/LoginButton.svelte #: src/lib/auth/LoginButton.svelte @@ -1409,6 +1419,11 @@ msgstr "Buka" msgid "Open Data Directory" msgstr "Buka Direktori Data" +#. Action button on the offline-login warning toast; opens the server's site in a browser so the user can check the connection. +#: src/lib/auth/LoginButton.svelte +msgid "Open in browser" +msgstr "Buka dalam pelayar" + #. Button label #: src/lib/components/OpenInFieldWorksButton.svelte msgid "Open in FieldWorks" @@ -2166,6 +2181,11 @@ msgstr "Sistem tulisan" msgid "Writing Systems" msgstr "Sistem Penulisan" +#. Warning toast shown when a login attempt can't connect to the server. {0} is the server name (e.g. "Lexbox"). +#: src/lib/auth/LoginButton.svelte +msgid "You appear to be offline. Can you connect to {0}?" +msgstr "Anda nampaknya tidak dalam talian. Bolehkah anda menyambung ke {0}?" + #. Status message when no updates are available #: src/lib/updates/UpdateDialogContent.svelte msgid "You are running the latest version." From 9d8811a878ed4f76295fe09c89dd433d1de8fb42 Mon Sep 17 00:00:00 2001 From: Tim Haasdyk Date: Thu, 25 Jun 2026 09:37:41 +0200 Subject: [PATCH 24/65] New translations en.po (Swahili) [ci skip] --- frontend/viewer/src/locales/sw.po | 24 ++++++++++++++++++++++-- 1 file changed, 22 insertions(+), 2 deletions(-) diff --git a/frontend/viewer/src/locales/sw.po b/frontend/viewer/src/locales/sw.po index 451bb1c5c7..13d8418463 100644 --- a/frontend/viewer/src/locales/sw.po +++ b/frontend/viewer/src/locales/sw.po @@ -8,7 +8,7 @@ msgstr "" "Language: sw\n" "Project-Id-Version: language-depot\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2026-06-16 03:05\n" +"PO-Revision-Date: 2026-06-25 07:37\n" "Last-Translator: \n" "Language-Team: Swahili\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" @@ -443,6 +443,12 @@ msgstr "Imenakiliwa kwenye ubao wa kunakili" msgid "Copy version" msgstr "Nakili toleo" +#. Transient warning toast (short timeout) shown when "Sync to local" fails (offline, server unreachable, or not logged in). +#. Both clauses matter: the failure reason is implicit; the reassurance that local data is intact is intentional. +#: src/project/SyncDialog.svelte +msgid "Couldn't sync right now — your local changes are safe." +msgstr "Haikuweza kusawazisha kwa sasa — mabadiliko yako ya ndani yako salama." + #. Dialog title when creating a new custom view. #: src/lib/views/custom/CreateCustomViewDialog.svelte msgid "Create Custom View" @@ -773,7 +779,6 @@ msgstr "Imeshindwa kufungua URL: {0}" #. Error notification #: src/lib/services/sync-status-service.ts -#: src/project/SyncDialog.svelte msgid "Failed to synchronize" msgstr "Imeshindwa kuoanisha" @@ -1122,6 +1127,11 @@ msgstr "Mitaa tu" msgid "Login" msgstr "Ingia" +#. Toast shown when the user closes or cancels the login dialog before signing in. +#: src/lib/auth/LoginButton.svelte +msgid "Login cancelled." +msgstr "Uingiaji umefutwa." + #. Default button label on the login button when not yet authenticated. Clicking opens the login flow for a server. #: src/lib/auth/LoginButton.svelte #: src/lib/auth/LoginButton.svelte @@ -1409,6 +1419,11 @@ msgstr "Fungua" msgid "Open Data Directory" msgstr "Fungua Faharasa ya Data" +#. Action button on the offline-login warning toast; opens the server's site in a browser so the user can check the connection. +#: src/lib/auth/LoginButton.svelte +msgid "Open in browser" +msgstr "Fungua kwenye kivinjari" + #. Button label #: src/lib/components/OpenInFieldWorksButton.svelte msgid "Open in FieldWorks" @@ -2166,6 +2181,11 @@ msgstr "Mifumo ya uandishi" msgid "Writing Systems" msgstr "Mifumo ya Kuandika" +#. Warning toast shown when a login attempt can't connect to the server. {0} is the server name (e.g. "Lexbox"). +#: src/lib/auth/LoginButton.svelte +msgid "You appear to be offline. Can you connect to {0}?" +msgstr "Inaonekana uko nje ya mtandao. Je, unaweza kuunganisha na {0}?" + #. Status message when no updates are available #: src/lib/updates/UpdateDialogContent.svelte msgid "You are running the latest version." From e1911c005cd386d60ffc6555e1e0178c59e1fc64 Mon Sep 17 00:00:00 2001 From: Tim Haasdyk Date: Fri, 26 Jun 2026 11:11:25 +0200 Subject: [PATCH 25/65] Update source file en.po [ci skip] --- frontend/viewer/src/locales/en.po | 73 ++++++++++++++++++++++++++++++- 1 file changed, 71 insertions(+), 2 deletions(-) diff --git a/frontend/viewer/src/locales/en.po b/frontend/viewer/src/locales/en.po index 06ac139d0a..c31ad2ee21 100644 --- a/frontend/viewer/src/locales/en.po +++ b/frontend/viewer/src/locales/en.po @@ -38,11 +38,19 @@ msgstr "{0} (FieldWorks Lite)" msgid "{0} (FieldWorks)" msgstr "{0} (FieldWorks)" +#: src/lib/activity/ActivityFilter.svelte +msgid "{0} activity types" +msgstr "{0} activity types" + #. Time display format #: src/lib/components/ui/format/format-relative-date-fn.svelte.ts msgid "{0} ago" msgstr "{0} ago" +#: src/lib/activity/ActivityFilter.svelte +msgid "{0} authors" +msgstr "{0} authors" + #. File size display with unit #: src/lib/components/audio/audio-editor.svelte msgid "{0} MB" @@ -185,6 +193,20 @@ msgstr "Add Word" msgid "All" msgstr "All" +#. Filter option in activity view activity-type dropdown — show all kinds of edits. +#: src/lib/activity/ActivityFilter.svelte +#: src/lib/activity/ActivityFilter.svelte +#: src/lib/activity/ActivityFilter.svelte +msgid "All activity types" +msgstr "All activity types" + +#. Filter option in activity view author dropdown — show commits from every author. +#: src/lib/activity/ActivityFilter.svelte +#: src/lib/activity/ActivityFilter.svelte +#: src/lib/activity/ActivityFilter.svelte +msgid "All authors" +msgstr "All authors" + #. Relevant view: Classic #. Lite view equivalent: "a word" #. Placeholder/suggestion in search field @@ -756,6 +778,12 @@ msgstr "Failed to copy to clipboard" msgid "Failed to download {0}" msgstr "Failed to download {0}" +#. Error message when the activity feed fails to load (toast and empty state). +#: src/lib/activity/ActivityView.svelte +#: src/lib/activity/ActivityView.svelte +msgid "Failed to load activity" +msgstr "Failed to load activity" + #. Error message when entries fail to load #: src/project/browse/EntriesList.svelte #: src/project/browse/EntriesList.svelte @@ -819,6 +847,7 @@ msgstr "FieldWorks Lite version" #. Alt text for FieldWorks logo image #: src/home/HomeView.svelte +#: src/lib/activity/ActivityFilter.svelte #: src/lib/components/OpenInFieldWorksButton.svelte #: src/project/ProjectDropdown.svelte #: src/project/sync/FwLiteToFwMergeDetails.svelte @@ -982,6 +1011,7 @@ msgstr "Headword" msgid "Hide" msgstr "Hide" +#: src/lib/activity/ActivityItem.svelte #: src/lib/history/HistoryView.svelte #: src/project/browse/EntryMenu.svelte msgid "History" @@ -1096,6 +1126,11 @@ msgstr "List mode" msgid "Literal meaning" msgstr "Literal meaning" +#. Accessible label on the activity view loading spinner while filtered commits are fetched. +#: src/lib/activity/ActivityView.svelte +msgid "Loading activity" +msgstr "Loading activity" + #. Loading state text shown in the project/dictionary dropdown while the list of dictionaries is being fetched. #: src/project/ProjectDropdown.svelte msgid "Loading Dictionaries..." @@ -1271,13 +1306,23 @@ msgstr "New Entry" msgid "New Word" msgstr "New Word" +#. Sort option in activity view — most recent commit first. +#: src/lib/activity/ActivityFilter.svelte +msgid "Newest first" +msgstr "Newest first" + #: src/project/tasks/SubjectPopup.svelte msgid "Next" msgstr "Next" +#. Empty state when activity list filters exclude every commit. #: src/lib/activity/ActivityView.svelte -msgid "No activity found" -msgstr "No activity found" +msgid "No activity matches these filters" +msgstr "No activity matches these filters" + +#: src/lib/activity/ActivityFilter.svelte +msgid "No activity types" +msgstr "No activity types" #. Placeholder when no audio file #. Shows in audio field when empty (no file uploaded yet) @@ -1285,6 +1330,10 @@ msgstr "No activity found" msgid "No audio" msgstr "No audio" +#: src/lib/activity/ActivityFilter.svelte +msgid "No authors" +msgstr "No authors" + #. Empty state message in the manage custom views dialog when none exist. #: src/lib/views/custom/ManageCustomViewsDialog.svelte msgid "No custom views yet." @@ -1399,6 +1448,11 @@ msgstr "Offline" msgid "Offline, unable to download" msgstr "Offline, unable to download" +#. Sort option in activity view — earliest commit first. +#: src/lib/activity/ActivityFilter.svelte +msgid "Oldest first" +msgstr "Oldest first" + #. Explanation of sync behavior #: src/project/sync/FwLiteToFwMergeDetails.svelte msgid "One FieldWorks Classic commit may consist of changes to multiple entries or fields. On the other hand, a commit may only affect data that is not synced to FieldWorks Lite." @@ -1821,6 +1875,16 @@ msgstr "Sync your changes with other FieldWorks Lite users" msgid "Synced" msgstr "Synced" +#. Sort option in activity view — by upload/download time, newest synced first (unsynced commits last). +#: src/lib/activity/ActivityFilter.svelte +msgid "Synced newest" +msgstr "Synced newest" + +#. Sort option in activity view — by upload/download time, oldest synced first (unsynced commits last). +#: src/lib/activity/ActivityFilter.svelte +msgid "Synced oldest" +msgstr "Synced oldest" + #. Status showing sync source server #: src/home/HomeView.svelte msgid "Synced with {0}" @@ -1907,6 +1971,7 @@ msgstr "The time when you uploaded or downloaded these changes" #. Error message when changes are pending upload #: src/lib/activity/ActivityItem.svelte +#: src/lib/activity/ActivityView.svelte msgid "These changes have not been uploaded yet. Ensure you're online and logged in to share your changes." msgstr "These changes have not been uploaded yet. Ensure you're online and logged in to share your changes." @@ -1994,7 +2059,11 @@ msgid "Unable to open in FieldWorks" msgstr "Unable to open in FieldWorks" #. Fallback value shown when author name or last-change date is unavailable (e.g., in activity history or the sync panel). +#: src/lib/activity/ActivityFilter.svelte +#: src/lib/activity/ActivityFilter.svelte +#: src/lib/activity/ActivityFilter.svelte #: src/lib/activity/ActivityItem.svelte +#: src/lib/activity/ActivityView.svelte #: src/project/sync/FwLiteToFwMergeDetails.svelte #: src/project/sync/FwLiteToFwMergeDetails.svelte msgid "Unknown" From 03efe59fc5b0db3f73af9b251a5c8700cc6871ec Mon Sep 17 00:00:00 2001 From: Tim Haasdyk Date: Fri, 26 Jun 2026 11:11:29 +0200 Subject: [PATCH 26/65] New translations en.po (French) [ci skip] --- frontend/viewer/src/locales/fr.po | 75 +++++++++++++++++++++++++++++-- 1 file changed, 72 insertions(+), 3 deletions(-) diff --git a/frontend/viewer/src/locales/fr.po b/frontend/viewer/src/locales/fr.po index 3aeb66e2d4..561bfb8fbc 100644 --- a/frontend/viewer/src/locales/fr.po +++ b/frontend/viewer/src/locales/fr.po @@ -8,7 +8,7 @@ msgstr "" "Language: fr\n" "Project-Id-Version: language-depot\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2026-06-25 07:37\n" +"PO-Revision-Date: 2026-06-26 09:11\n" "Last-Translator: \n" "Language-Team: French\n" "Plural-Forms: nplurals=2; plural=(n > 1);\n" @@ -43,11 +43,19 @@ msgstr "{0} (FieldWorks Lite)" msgid "{0} (FieldWorks)" msgstr "{0} (FieldWorks)" +#: src/lib/activity/ActivityFilter.svelte +msgid "{0} activity types" +msgstr "Types d'activité {0}" + #. Time display format #: src/lib/components/ui/format/format-relative-date-fn.svelte.ts msgid "{0} ago" msgstr "il y a {0}" +#: src/lib/activity/ActivityFilter.svelte +msgid "{0} authors" +msgstr "Auteurs {0}" + #. File size display with unit #: src/lib/components/audio/audio-editor.svelte msgid "{0} MB" @@ -190,6 +198,20 @@ msgstr "Ajouter un mot" msgid "All" msgstr "Tous" +#. Filter option in activity view activity-type dropdown — show all kinds of edits. +#: src/lib/activity/ActivityFilter.svelte +#: src/lib/activity/ActivityFilter.svelte +#: src/lib/activity/ActivityFilter.svelte +msgid "All activity types" +msgstr "Tous les types d'activité" + +#. Filter option in activity view author dropdown — show commits from every author. +#: src/lib/activity/ActivityFilter.svelte +#: src/lib/activity/ActivityFilter.svelte +#: src/lib/activity/ActivityFilter.svelte +msgid "All authors" +msgstr "Tous les auteurs" + #. Relevant view: Classic #. Lite view equivalent: "a word" #. Placeholder/suggestion in search field @@ -761,6 +783,12 @@ msgstr "Copie dans le presse-papiers échouée" msgid "Failed to download {0}" msgstr "Téléchargement échoué {0}" +#. Error message when the activity feed fails to load (toast and empty state). +#: src/lib/activity/ActivityView.svelte +#: src/lib/activity/ActivityView.svelte +msgid "Failed to load activity" +msgstr "Impossible de charger l'activité" + #. Error message when entries fail to load #: src/project/browse/EntriesList.svelte #: src/project/browse/EntriesList.svelte @@ -824,6 +852,7 @@ msgstr "Version de FieldWorks Lite" #. Alt text for FieldWorks logo image #: src/home/HomeView.svelte +#: src/lib/activity/ActivityFilter.svelte #: src/lib/components/OpenInFieldWorksButton.svelte #: src/project/ProjectDropdown.svelte #: src/project/sync/FwLiteToFwMergeDetails.svelte @@ -987,6 +1016,7 @@ msgstr "Entrée de dictionnaire" msgid "Hide" msgstr "Cacher" +#: src/lib/activity/ActivityItem.svelte #: src/lib/history/HistoryView.svelte #: src/project/browse/EntryMenu.svelte msgid "History" @@ -1101,6 +1131,11 @@ msgstr "Mode liste" msgid "Literal meaning" msgstr "Sens littéral" +#. Accessible label on the activity view loading spinner while filtered commits are fetched. +#: src/lib/activity/ActivityView.svelte +msgid "Loading activity" +msgstr "Chargement de l'activité" + #. Loading state text shown in the project/dictionary dropdown while the list of dictionaries is being fetched. #: src/project/ProjectDropdown.svelte msgid "Loading Dictionaries..." @@ -1276,13 +1311,23 @@ msgstr "Nouvelle entrée" msgid "New Word" msgstr "Nouveau mot" +#. Sort option in activity view — most recent commit first. +#: src/lib/activity/ActivityFilter.svelte +msgid "Newest first" +msgstr "Plus récent en premier" + #: src/project/tasks/SubjectPopup.svelte msgid "Next" msgstr "Suivant" +#. Empty state when activity list filters exclude every commit. #: src/lib/activity/ActivityView.svelte -msgid "No activity found" -msgstr "Aucune activité trouvée" +msgid "No activity matches these filters" +msgstr "Aucune activité ne correspond à ces filtres" + +#: src/lib/activity/ActivityFilter.svelte +msgid "No activity types" +msgstr "Aucun type d'activité" #. Placeholder when no audio file #. Shows in audio field when empty (no file uploaded yet) @@ -1290,6 +1335,10 @@ msgstr "Aucune activité trouvée" msgid "No audio" msgstr "Aucun contenu audio" +#: src/lib/activity/ActivityFilter.svelte +msgid "No authors" +msgstr "Aucun auteur" + #. Empty state message in the manage custom views dialog when none exist. #: src/lib/views/custom/ManageCustomViewsDialog.svelte msgid "No custom views yet." @@ -1404,6 +1453,11 @@ msgstr "Déconnecté" msgid "Offline, unable to download" msgstr "Déconnecté, impossible de télécharger" +#. Sort option in activity view — earliest commit first. +#: src/lib/activity/ActivityFilter.svelte +msgid "Oldest first" +msgstr "Le plus ancien en premier" + #. Explanation of sync behavior #: src/project/sync/FwLiteToFwMergeDetails.svelte msgid "One FieldWorks Classic commit may consist of changes to multiple entries or fields. On the other hand, a commit may only affect data that is not synced to FieldWorks Lite." @@ -1826,6 +1880,16 @@ msgstr "Synchronisez vos modifications avec d'autres utilisateurs FieldWorks Lit msgid "Synced" msgstr "Synchronisé" +#. Sort option in activity view — by upload/download time, newest synced first (unsynced commits last). +#: src/lib/activity/ActivityFilter.svelte +msgid "Synced newest" +msgstr "Récemment synchronisé" + +#. Sort option in activity view — by upload/download time, oldest synced first (unsynced commits last). +#: src/lib/activity/ActivityFilter.svelte +msgid "Synced oldest" +msgstr "Plus ancien synchronisé" + #. Status showing sync source server #: src/home/HomeView.svelte msgid "Synced with {0}" @@ -1912,6 +1976,7 @@ msgstr "L'heure où vous avez téléchargé ou téléchargé ces modifications" #. Error message when changes are pending upload #: src/lib/activity/ActivityItem.svelte +#: src/lib/activity/ActivityView.svelte msgid "These changes have not been uploaded yet. Ensure you're online and logged in to share your changes." msgstr "Ces modifications n'ont pas encore été téléchargées. Assurez-vous que vous êtes connecté et que vous êtes connecté pour partager vos modifications." @@ -1999,7 +2064,11 @@ msgid "Unable to open in FieldWorks" msgstr "Impossible d'ouvrir FieldWorks" #. Fallback value shown when author name or last-change date is unavailable (e.g., in activity history or the sync panel). +#: src/lib/activity/ActivityFilter.svelte +#: src/lib/activity/ActivityFilter.svelte +#: src/lib/activity/ActivityFilter.svelte #: src/lib/activity/ActivityItem.svelte +#: src/lib/activity/ActivityView.svelte #: src/project/sync/FwLiteToFwMergeDetails.svelte #: src/project/sync/FwLiteToFwMergeDetails.svelte msgid "Unknown" From 14c21091d0324301a49f70461ce6f3dc83acb3b9 Mon Sep 17 00:00:00 2001 From: Tim Haasdyk Date: Fri, 26 Jun 2026 11:11:31 +0200 Subject: [PATCH 27/65] New translations en.po (Spanish) [ci skip] --- frontend/viewer/src/locales/es.po | 75 +++++++++++++++++++++++++++++-- 1 file changed, 72 insertions(+), 3 deletions(-) diff --git a/frontend/viewer/src/locales/es.po b/frontend/viewer/src/locales/es.po index 8825c898c0..312ce388f2 100644 --- a/frontend/viewer/src/locales/es.po +++ b/frontend/viewer/src/locales/es.po @@ -8,7 +8,7 @@ msgstr "" "Language: es\n" "Project-Id-Version: language-depot\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2026-06-25 07:37\n" +"PO-Revision-Date: 2026-06-26 09:11\n" "Last-Translator: \n" "Language-Team: Spanish\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" @@ -43,11 +43,19 @@ msgstr "{0} (FieldWorks Lite)" msgid "{0} (FieldWorks)" msgstr "{0} (FieldWorks)" +#: src/lib/activity/ActivityFilter.svelte +msgid "{0} activity types" +msgstr "Tipos de actividad {0}" + #. Time display format #: src/lib/components/ui/format/format-relative-date-fn.svelte.ts msgid "{0} ago" msgstr "{0} hace" +#: src/lib/activity/ActivityFilter.svelte +msgid "{0} authors" +msgstr "Autores {0}" + #. File size display with unit #: src/lib/components/audio/audio-editor.svelte msgid "{0} MB" @@ -190,6 +198,20 @@ msgstr "Añadir palabra" msgid "All" msgstr "Todos" +#. Filter option in activity view activity-type dropdown — show all kinds of edits. +#: src/lib/activity/ActivityFilter.svelte +#: src/lib/activity/ActivityFilter.svelte +#: src/lib/activity/ActivityFilter.svelte +msgid "All activity types" +msgstr "Todos los tipos de actividad" + +#. Filter option in activity view author dropdown — show commits from every author. +#: src/lib/activity/ActivityFilter.svelte +#: src/lib/activity/ActivityFilter.svelte +#: src/lib/activity/ActivityFilter.svelte +msgid "All authors" +msgstr "Todos los autores" + #. Relevant view: Classic #. Lite view equivalent: "a word" #. Placeholder/suggestion in search field @@ -761,6 +783,12 @@ msgstr "Error al copiar al portapapeles" msgid "Failed to download {0}" msgstr "Error al descargar {0}" +#. Error message when the activity feed fails to load (toast and empty state). +#: src/lib/activity/ActivityView.svelte +#: src/lib/activity/ActivityView.svelte +msgid "Failed to load activity" +msgstr "Error al cargar la actividad" + #. Error message when entries fail to load #: src/project/browse/EntriesList.svelte #: src/project/browse/EntriesList.svelte @@ -824,6 +852,7 @@ msgstr "Versión de FieldWorks Lite" #. Alt text for FieldWorks logo image #: src/home/HomeView.svelte +#: src/lib/activity/ActivityFilter.svelte #: src/lib/components/OpenInFieldWorksButton.svelte #: src/project/ProjectDropdown.svelte #: src/project/sync/FwLiteToFwMergeDetails.svelte @@ -987,6 +1016,7 @@ msgstr "Palabra clave" msgid "Hide" msgstr "Ocultar" +#: src/lib/activity/ActivityItem.svelte #: src/lib/history/HistoryView.svelte #: src/project/browse/EntryMenu.svelte msgid "History" @@ -1101,6 +1131,11 @@ msgstr "Modo lista" msgid "Literal meaning" msgstr "Significado literal" +#. Accessible label on the activity view loading spinner while filtered commits are fetched. +#: src/lib/activity/ActivityView.svelte +msgid "Loading activity" +msgstr "Cargando actividad" + #. Loading state text shown in the project/dictionary dropdown while the list of dictionaries is being fetched. #: src/project/ProjectDropdown.svelte msgid "Loading Dictionaries..." @@ -1276,13 +1311,23 @@ msgstr "Nueva entrada" msgid "New Word" msgstr "Nueva palabra" +#. Sort option in activity view — most recent commit first. +#: src/lib/activity/ActivityFilter.svelte +msgid "Newest first" +msgstr "Más nuevo primero" + #: src/project/tasks/SubjectPopup.svelte msgid "Next" msgstr "Siguiente" +#. Empty state when activity list filters exclude every commit. #: src/lib/activity/ActivityView.svelte -msgid "No activity found" -msgstr "No se ha encontrado actividad" +msgid "No activity matches these filters" +msgstr "Ninguna actividad coincide con estos filtros" + +#: src/lib/activity/ActivityFilter.svelte +msgid "No activity types" +msgstr "No hay tipos de actividad" #. Placeholder when no audio file #. Shows in audio field when empty (no file uploaded yet) @@ -1290,6 +1335,10 @@ msgstr "No se ha encontrado actividad" msgid "No audio" msgstr "Sin audio" +#: src/lib/activity/ActivityFilter.svelte +msgid "No authors" +msgstr "No hay autores" + #. Empty state message in the manage custom views dialog when none exist. #: src/lib/views/custom/ManageCustomViewsDialog.svelte msgid "No custom views yet." @@ -1404,6 +1453,11 @@ msgstr "Fuera de línea" msgid "Offline, unable to download" msgstr "Desconectado, no se puede descargar" +#. Sort option in activity view — earliest commit first. +#: src/lib/activity/ActivityFilter.svelte +msgid "Oldest first" +msgstr "Lo más antiguo primero" + #. Explanation of sync behavior #: src/project/sync/FwLiteToFwMergeDetails.svelte msgid "One FieldWorks Classic commit may consist of changes to multiple entries or fields. On the other hand, a commit may only affect data that is not synced to FieldWorks Lite." @@ -1826,6 +1880,16 @@ msgstr "Sincroniza tus cambios con otros usuarios de FieldWorks Lite" msgid "Synced" msgstr "Sincronizado" +#. Sort option in activity view — by upload/download time, newest synced first (unsynced commits last). +#: src/lib/activity/ActivityFilter.svelte +msgid "Synced newest" +msgstr "Sincronizado más reciente" + +#. Sort option in activity view — by upload/download time, oldest synced first (unsynced commits last). +#: src/lib/activity/ActivityFilter.svelte +msgid "Synced oldest" +msgstr "Sincronizado más antiguo" + #. Status showing sync source server #: src/home/HomeView.svelte msgid "Synced with {0}" @@ -1912,6 +1976,7 @@ msgstr "El tiempo cuando subiste o descargaste estos cambios" #. Error message when changes are pending upload #: src/lib/activity/ActivityItem.svelte +#: src/lib/activity/ActivityView.svelte msgid "These changes have not been uploaded yet. Ensure you're online and logged in to share your changes." msgstr "Estos cambios no se han subido todavía. Asegúrate de que estás conectado e inicia sesión para compartir tus cambios." @@ -1999,7 +2064,11 @@ msgid "Unable to open in FieldWorks" msgstr "No se puede abrir en FieldWorks" #. Fallback value shown when author name or last-change date is unavailable (e.g., in activity history or the sync panel). +#: src/lib/activity/ActivityFilter.svelte +#: src/lib/activity/ActivityFilter.svelte +#: src/lib/activity/ActivityFilter.svelte #: src/lib/activity/ActivityItem.svelte +#: src/lib/activity/ActivityView.svelte #: src/project/sync/FwLiteToFwMergeDetails.svelte #: src/project/sync/FwLiteToFwMergeDetails.svelte msgid "Unknown" From 4e7c6cbbf77d4868262da7a5f50cbead8c136305 Mon Sep 17 00:00:00 2001 From: Tim Haasdyk Date: Fri, 26 Jun 2026 11:11:32 +0200 Subject: [PATCH 28/65] New translations en.po (Korean) [ci skip] --- frontend/viewer/src/locales/ko.po | 75 +++++++++++++++++++++++++++++-- 1 file changed, 72 insertions(+), 3 deletions(-) diff --git a/frontend/viewer/src/locales/ko.po b/frontend/viewer/src/locales/ko.po index db5f16f61b..6a50143d71 100644 --- a/frontend/viewer/src/locales/ko.po +++ b/frontend/viewer/src/locales/ko.po @@ -8,7 +8,7 @@ msgstr "" "Language: ko\n" "Project-Id-Version: language-depot\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2026-06-25 07:37\n" +"PO-Revision-Date: 2026-06-26 09:11\n" "Last-Translator: \n" "Language-Team: Korean\n" "Plural-Forms: nplurals=1; plural=0;\n" @@ -43,11 +43,19 @@ msgstr "{0} (FieldWorks Lite)" msgid "{0} (FieldWorks)" msgstr "{0} (FieldWorks)" +#: src/lib/activity/ActivityFilter.svelte +msgid "{0} activity types" +msgstr "{0} 활동 유형" + #. Time display format #: src/lib/components/ui/format/format-relative-date-fn.svelte.ts msgid "{0} ago" msgstr "{0} 전" +#: src/lib/activity/ActivityFilter.svelte +msgid "{0} authors" +msgstr "{0} 저자" + #. File size display with unit #: src/lib/components/audio/audio-editor.svelte msgid "{0} MB" @@ -190,6 +198,20 @@ msgstr "단어 추가" msgid "All" msgstr "모두" +#. Filter option in activity view activity-type dropdown — show all kinds of edits. +#: src/lib/activity/ActivityFilter.svelte +#: src/lib/activity/ActivityFilter.svelte +#: src/lib/activity/ActivityFilter.svelte +msgid "All activity types" +msgstr "모든 활동 유형" + +#. Filter option in activity view author dropdown — show commits from every author. +#: src/lib/activity/ActivityFilter.svelte +#: src/lib/activity/ActivityFilter.svelte +#: src/lib/activity/ActivityFilter.svelte +msgid "All authors" +msgstr "모든 저자" + #. Relevant view: Classic #. Lite view equivalent: "a word" #. Placeholder/suggestion in search field @@ -761,6 +783,12 @@ msgstr "클립보드에 복사하지 못했습니다." msgid "Failed to download {0}" msgstr "다운로드에 실패했습니다 {0}" +#. Error message when the activity feed fails to load (toast and empty state). +#: src/lib/activity/ActivityView.svelte +#: src/lib/activity/ActivityView.svelte +msgid "Failed to load activity" +msgstr "활동을 불러오는 데 실패했습니다." + #. Error message when entries fail to load #: src/project/browse/EntriesList.svelte #: src/project/browse/EntriesList.svelte @@ -824,6 +852,7 @@ msgstr "FieldWorks Lite 버전" #. Alt text for FieldWorks logo image #: src/home/HomeView.svelte +#: src/lib/activity/ActivityFilter.svelte #: src/lib/components/OpenInFieldWorksButton.svelte #: src/project/ProjectDropdown.svelte #: src/project/sync/FwLiteToFwMergeDetails.svelte @@ -987,6 +1016,7 @@ msgstr "헤드워드" msgid "Hide" msgstr "숨기기" +#: src/lib/activity/ActivityItem.svelte #: src/lib/history/HistoryView.svelte #: src/project/browse/EntryMenu.svelte msgid "History" @@ -1101,6 +1131,11 @@ msgstr "목록 모드" msgid "Literal meaning" msgstr "문자 그대로의 의미" +#. Accessible label on the activity view loading spinner while filtered commits are fetched. +#: src/lib/activity/ActivityView.svelte +msgid "Loading activity" +msgstr "로딩 중" + #. Loading state text shown in the project/dictionary dropdown while the list of dictionaries is being fetched. #: src/project/ProjectDropdown.svelte msgid "Loading Dictionaries..." @@ -1276,13 +1311,23 @@ msgstr "새 항목" msgid "New Word" msgstr "새 단어" +#. Sort option in activity view — most recent commit first. +#: src/lib/activity/ActivityFilter.svelte +msgid "Newest first" +msgstr "최신순" + #: src/project/tasks/SubjectPopup.svelte msgid "Next" msgstr "다음" +#. Empty state when activity list filters exclude every commit. #: src/lib/activity/ActivityView.svelte -msgid "No activity found" -msgstr "활동을 찾을 수 없습니다." +msgid "No activity matches these filters" +msgstr "이 필터 조건에 맞는 활동이 없습니다." + +#: src/lib/activity/ActivityFilter.svelte +msgid "No activity types" +msgstr "활동 유형 없음" #. Placeholder when no audio file #. Shows in audio field when empty (no file uploaded yet) @@ -1290,6 +1335,10 @@ msgstr "활동을 찾을 수 없습니다." msgid "No audio" msgstr "오디오 없음" +#: src/lib/activity/ActivityFilter.svelte +msgid "No authors" +msgstr "저자 없음" + #. Empty state message in the manage custom views dialog when none exist. #: src/lib/views/custom/ManageCustomViewsDialog.svelte msgid "No custom views yet." @@ -1404,6 +1453,11 @@ msgstr "오프라인" msgid "Offline, unable to download" msgstr "오프라인 상태, 다운로드할 수 없음" +#. Sort option in activity view — earliest commit first. +#: src/lib/activity/ActivityFilter.svelte +msgid "Oldest first" +msgstr "가장 오래된 순서대로" + #. Explanation of sync behavior #: src/project/sync/FwLiteToFwMergeDetails.svelte msgid "One FieldWorks Classic commit may consist of changes to multiple entries or fields. On the other hand, a commit may only affect data that is not synced to FieldWorks Lite." @@ -1826,6 +1880,16 @@ msgstr "다른 FieldWorks Lite 사용자와 변경 사항 동기화" msgid "Synced" msgstr "동기화" +#. Sort option in activity view — by upload/download time, newest synced first (unsynced commits last). +#: src/lib/activity/ActivityFilter.svelte +msgid "Synced newest" +msgstr "최신 버전과 동기화됨" + +#. Sort option in activity view — by upload/download time, oldest synced first (unsynced commits last). +#: src/lib/activity/ActivityFilter.svelte +msgid "Synced oldest" +msgstr "동기화된 가장 오래된 항목" + #. Status showing sync source server #: src/home/HomeView.svelte msgid "Synced with {0}" @@ -1912,6 +1976,7 @@ msgstr "이러한 변경 사항을 업로드하거나 다운로드한 시간" #. Error message when changes are pending upload #: src/lib/activity/ActivityItem.svelte +#: src/lib/activity/ActivityView.svelte msgid "These changes have not been uploaded yet. Ensure you're online and logged in to share your changes." msgstr "변경 내용이 아직 업로드되지 않았습니다. 변경 내용을 공유하려면 온라인 상태이고 로그인했는지 확인하세요." @@ -1999,7 +2064,11 @@ msgid "Unable to open in FieldWorks" msgstr "FieldWorks에서 열 수 없음" #. Fallback value shown when author name or last-change date is unavailable (e.g., in activity history or the sync panel). +#: src/lib/activity/ActivityFilter.svelte +#: src/lib/activity/ActivityFilter.svelte +#: src/lib/activity/ActivityFilter.svelte #: src/lib/activity/ActivityItem.svelte +#: src/lib/activity/ActivityView.svelte #: src/project/sync/FwLiteToFwMergeDetails.svelte #: src/project/sync/FwLiteToFwMergeDetails.svelte msgid "Unknown" From 58d17c5f303fac7cbf02b2d606163e35f692337c Mon Sep 17 00:00:00 2001 From: Tim Haasdyk Date: Fri, 26 Jun 2026 11:11:34 +0200 Subject: [PATCH 29/65] New translations en.po (Vietnamese) [ci skip] --- frontend/viewer/src/locales/vi.po | 75 +++++++++++++++++++++++++++++-- 1 file changed, 72 insertions(+), 3 deletions(-) diff --git a/frontend/viewer/src/locales/vi.po b/frontend/viewer/src/locales/vi.po index 1cbec5c9ae..6c9ddab029 100644 --- a/frontend/viewer/src/locales/vi.po +++ b/frontend/viewer/src/locales/vi.po @@ -8,7 +8,7 @@ msgstr "" "Language: vi\n" "Project-Id-Version: language-depot\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2026-06-25 07:37\n" +"PO-Revision-Date: 2026-06-26 09:11\n" "Last-Translator: \n" "Language-Team: Vietnamese\n" "Plural-Forms: nplurals=1; plural=0;\n" @@ -43,11 +43,19 @@ msgstr "{0} (FieldWorks Lite)" msgid "{0} (FieldWorks)" msgstr "{0} (FieldWorks)" +#: src/lib/activity/ActivityFilter.svelte +msgid "{0} activity types" +msgstr "{0} các loại hoạt động" + #. Time display format #: src/lib/components/ui/format/format-relative-date-fn.svelte.ts msgid "{0} ago" msgstr "{0} trước" +#: src/lib/activity/ActivityFilter.svelte +msgid "{0} authors" +msgstr "{0} tác giả" + #. File size display with unit #: src/lib/components/audio/audio-editor.svelte msgid "{0} MB" @@ -190,6 +198,20 @@ msgstr "Thêm Từ" msgid "All" msgstr "Tất cả" +#. Filter option in activity view activity-type dropdown — show all kinds of edits. +#: src/lib/activity/ActivityFilter.svelte +#: src/lib/activity/ActivityFilter.svelte +#: src/lib/activity/ActivityFilter.svelte +msgid "All activity types" +msgstr "Tất cả các loại hoạt động" + +#. Filter option in activity view author dropdown — show commits from every author. +#: src/lib/activity/ActivityFilter.svelte +#: src/lib/activity/ActivityFilter.svelte +#: src/lib/activity/ActivityFilter.svelte +msgid "All authors" +msgstr "Tất cả các tác giả" + #. Relevant view: Classic #. Lite view equivalent: "a word" #. Placeholder/suggestion in search field @@ -761,6 +783,12 @@ msgstr "Sao chép vào khay nhớ tạm thất bại" msgid "Failed to download {0}" msgstr "Tải xuống {0} thất bại" +#. Error message when the activity feed fails to load (toast and empty state). +#: src/lib/activity/ActivityView.svelte +#: src/lib/activity/ActivityView.svelte +msgid "Failed to load activity" +msgstr "Không thể tải hoạt động" + #. Error message when entries fail to load #: src/project/browse/EntriesList.svelte #: src/project/browse/EntriesList.svelte @@ -824,6 +852,7 @@ msgstr "Phiên bản FieldWorks Lite" #. Alt text for FieldWorks logo image #: src/home/HomeView.svelte +#: src/lib/activity/ActivityFilter.svelte #: src/lib/components/OpenInFieldWorksButton.svelte #: src/project/ProjectDropdown.svelte #: src/project/sync/FwLiteToFwMergeDetails.svelte @@ -987,6 +1016,7 @@ msgstr "Từ đầu mục" msgid "Hide" msgstr "Ẩn" +#: src/lib/activity/ActivityItem.svelte #: src/lib/history/HistoryView.svelte #: src/project/browse/EntryMenu.svelte msgid "History" @@ -1101,6 +1131,11 @@ msgstr "Chế độ danh sách" msgid "Literal meaning" msgstr "Ý nghĩa đen" +#. Accessible label on the activity view loading spinner while filtered commits are fetched. +#: src/lib/activity/ActivityView.svelte +msgid "Loading activity" +msgstr "Hoạt động đang tải" + #. Loading state text shown in the project/dictionary dropdown while the list of dictionaries is being fetched. #: src/project/ProjectDropdown.svelte msgid "Loading Dictionaries..." @@ -1276,13 +1311,23 @@ msgstr "Mục mới" msgid "New Word" msgstr "Từ mới" +#. Sort option in activity view — most recent commit first. +#: src/lib/activity/ActivityFilter.svelte +msgid "Newest first" +msgstr "Hiển thị theo thứ tự từ mới nhất" + #: src/project/tasks/SubjectPopup.svelte msgid "Next" msgstr "Tiếp theo" +#. Empty state when activity list filters exclude every commit. #: src/lib/activity/ActivityView.svelte -msgid "No activity found" -msgstr "Không tìm thấy hoạt động" +msgid "No activity matches these filters" +msgstr "Không có hoạt động nào phù hợp với các tiêu chí lọc này" + +#: src/lib/activity/ActivityFilter.svelte +msgid "No activity types" +msgstr "Không có loại hoạt động nào" #. Placeholder when no audio file #. Shows in audio field when empty (no file uploaded yet) @@ -1290,6 +1335,10 @@ msgstr "Không tìm thấy hoạt động" msgid "No audio" msgstr "Không có âm thanh" +#: src/lib/activity/ActivityFilter.svelte +msgid "No authors" +msgstr "Không có tác giả" + #. Empty state message in the manage custom views dialog when none exist. #: src/lib/views/custom/ManageCustomViewsDialog.svelte msgid "No custom views yet." @@ -1404,6 +1453,11 @@ msgstr "Ngoại tuyến" msgid "Offline, unable to download" msgstr "Ngoại tuyến, không thể tải xuống" +#. Sort option in activity view — earliest commit first. +#: src/lib/activity/ActivityFilter.svelte +msgid "Oldest first" +msgstr "Xếp theo thứ tự từ cũ nhất" + #. Explanation of sync behavior #: src/project/sync/FwLiteToFwMergeDetails.svelte msgid "One FieldWorks Classic commit may consist of changes to multiple entries or fields. On the other hand, a commit may only affect data that is not synced to FieldWorks Lite." @@ -1826,6 +1880,16 @@ msgstr "Đồng bộ các thay đổi của bạn với người dùng FieldWork msgid "Synced" msgstr "Đã đồng bộ" +#. Sort option in activity view — by upload/download time, newest synced first (unsynced commits last). +#: src/lib/activity/ActivityFilter.svelte +msgid "Synced newest" +msgstr "Đã đồng bộ hóa phiên bản mới nhất" + +#. Sort option in activity view — by upload/download time, oldest synced first (unsynced commits last). +#: src/lib/activity/ActivityFilter.svelte +msgid "Synced oldest" +msgstr "Đã đồng bộ hóa bản cũ nhất" + #. Status showing sync source server #: src/home/HomeView.svelte msgid "Synced with {0}" @@ -1912,6 +1976,7 @@ msgstr "Thời gian bạn đã tải lên hoặc tải xuống các thay đổi #. Error message when changes are pending upload #: src/lib/activity/ActivityItem.svelte +#: src/lib/activity/ActivityView.svelte msgid "These changes have not been uploaded yet. Ensure you're online and logged in to share your changes." msgstr "Những thay đổi này chưa được tải lên. Hãy đảm bảo bạn đang trực tuyến và đã đăng nhập để chia sẻ các thay đổi." @@ -1999,7 +2064,11 @@ msgid "Unable to open in FieldWorks" msgstr "Không thể mở trong FieldWorks" #. Fallback value shown when author name or last-change date is unavailable (e.g., in activity history or the sync panel). +#: src/lib/activity/ActivityFilter.svelte +#: src/lib/activity/ActivityFilter.svelte +#: src/lib/activity/ActivityFilter.svelte #: src/lib/activity/ActivityItem.svelte +#: src/lib/activity/ActivityView.svelte #: src/project/sync/FwLiteToFwMergeDetails.svelte #: src/project/sync/FwLiteToFwMergeDetails.svelte msgid "Unknown" From aa15a95587ab346e4e76866b04880a972d2c8eb1 Mon Sep 17 00:00:00 2001 From: Tim Haasdyk Date: Fri, 26 Jun 2026 11:11:36 +0200 Subject: [PATCH 30/65] New translations en.po (Indonesian) [ci skip] --- frontend/viewer/src/locales/id.po | 75 +++++++++++++++++++++++++++++-- 1 file changed, 72 insertions(+), 3 deletions(-) diff --git a/frontend/viewer/src/locales/id.po b/frontend/viewer/src/locales/id.po index a536a5a0a2..7fa2e55265 100644 --- a/frontend/viewer/src/locales/id.po +++ b/frontend/viewer/src/locales/id.po @@ -8,7 +8,7 @@ msgstr "" "Language: id\n" "Project-Id-Version: language-depot\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2026-06-25 07:37\n" +"PO-Revision-Date: 2026-06-26 09:11\n" "Last-Translator: \n" "Language-Team: Indonesian\n" "Plural-Forms: nplurals=1; plural=0;\n" @@ -43,11 +43,19 @@ msgstr "{0} (FieldWorks Lite)" msgid "{0} (FieldWorks)" msgstr "{0} (FieldWorks)" +#: src/lib/activity/ActivityFilter.svelte +msgid "{0} activity types" +msgstr "{0} jenis kegiatan" + #. Time display format #: src/lib/components/ui/format/format-relative-date-fn.svelte.ts msgid "{0} ago" msgstr "{0} yang lalu" +#: src/lib/activity/ActivityFilter.svelte +msgid "{0} authors" +msgstr "{0} penulis" + #. File size display with unit #: src/lib/components/audio/audio-editor.svelte msgid "{0} MB" @@ -190,6 +198,20 @@ msgstr "Tambahkan Kata" msgid "All" msgstr "Semua" +#. Filter option in activity view activity-type dropdown — show all kinds of edits. +#: src/lib/activity/ActivityFilter.svelte +#: src/lib/activity/ActivityFilter.svelte +#: src/lib/activity/ActivityFilter.svelte +msgid "All activity types" +msgstr "Semua jenis aktivitas" + +#. Filter option in activity view author dropdown — show commits from every author. +#: src/lib/activity/ActivityFilter.svelte +#: src/lib/activity/ActivityFilter.svelte +#: src/lib/activity/ActivityFilter.svelte +msgid "All authors" +msgstr "Semua penulis" + #. Relevant view: Classic #. Lite view equivalent: "a word" #. Placeholder/suggestion in search field @@ -761,6 +783,12 @@ msgstr "Gagal menyalin ke papan klip" msgid "Failed to download {0}" msgstr "Gagal mengunduh {0}" +#. Error message when the activity feed fails to load (toast and empty state). +#: src/lib/activity/ActivityView.svelte +#: src/lib/activity/ActivityView.svelte +msgid "Failed to load activity" +msgstr "Gagal memuat aktivitas" + #. Error message when entries fail to load #: src/project/browse/EntriesList.svelte #: src/project/browse/EntriesList.svelte @@ -824,6 +852,7 @@ msgstr "Versi FieldWorks Lite" #. Alt text for FieldWorks logo image #: src/home/HomeView.svelte +#: src/lib/activity/ActivityFilter.svelte #: src/lib/components/OpenInFieldWorksButton.svelte #: src/project/ProjectDropdown.svelte #: src/project/sync/FwLiteToFwMergeDetails.svelte @@ -987,6 +1016,7 @@ msgstr "Headword" msgid "Hide" msgstr "Sembunyikan" +#: src/lib/activity/ActivityItem.svelte #: src/lib/history/HistoryView.svelte #: src/project/browse/EntryMenu.svelte msgid "History" @@ -1101,6 +1131,11 @@ msgstr "Mode daftar" msgid "Literal meaning" msgstr "Arti harfiah" +#. Accessible label on the activity view loading spinner while filtered commits are fetched. +#: src/lib/activity/ActivityView.svelte +msgid "Loading activity" +msgstr "Aktivitas pemuatan" + #. Loading state text shown in the project/dictionary dropdown while the list of dictionaries is being fetched. #: src/project/ProjectDropdown.svelte msgid "Loading Dictionaries..." @@ -1276,13 +1311,23 @@ msgstr "Entri Baru" msgid "New Word" msgstr "Kata Baru" +#. Sort option in activity view — most recent commit first. +#: src/lib/activity/ActivityFilter.svelte +msgid "Newest first" +msgstr "Yang terbaru terlebih dahulu" + #: src/project/tasks/SubjectPopup.svelte msgid "Next" msgstr "Berikutnya" +#. Empty state when activity list filters exclude every commit. #: src/lib/activity/ActivityView.svelte -msgid "No activity found" -msgstr "Tidak ada aktivitas yang ditemukan" +msgid "No activity matches these filters" +msgstr "Tidak ada aktivitas yang sesuai dengan filter ini" + +#: src/lib/activity/ActivityFilter.svelte +msgid "No activity types" +msgstr "Tidak ada jenis aktivitas" #. Placeholder when no audio file #. Shows in audio field when empty (no file uploaded yet) @@ -1290,6 +1335,10 @@ msgstr "Tidak ada aktivitas yang ditemukan" msgid "No audio" msgstr "Tidak ada audio" +#: src/lib/activity/ActivityFilter.svelte +msgid "No authors" +msgstr "Tidak ada penulis" + #. Empty state message in the manage custom views dialog when none exist. #: src/lib/views/custom/ManageCustomViewsDialog.svelte msgid "No custom views yet." @@ -1404,6 +1453,11 @@ msgstr "Offline" msgid "Offline, unable to download" msgstr "Offline, tidak dapat mengunduh" +#. Sort option in activity view — earliest commit first. +#: src/lib/activity/ActivityFilter.svelte +msgid "Oldest first" +msgstr "Yang tertua terlebih dahulu" + #. Explanation of sync behavior #: src/project/sync/FwLiteToFwMergeDetails.svelte msgid "One FieldWorks Classic commit may consist of changes to multiple entries or fields. On the other hand, a commit may only affect data that is not synced to FieldWorks Lite." @@ -1826,6 +1880,16 @@ msgstr "Sinkronkan perubahan Anda dengan pengguna FieldWorks Lite lainnya" msgid "Synced" msgstr "Disinkronkan" +#. Sort option in activity view — by upload/download time, newest synced first (unsynced commits last). +#: src/lib/activity/ActivityFilter.svelte +msgid "Synced newest" +msgstr "Tersinkronisasi dengan versi terbaru" + +#. Sort option in activity view — by upload/download time, oldest synced first (unsynced commits last). +#: src/lib/activity/ActivityFilter.svelte +msgid "Synced oldest" +msgstr "Yang paling lama dan sudah disinkronkan" + #. Status showing sync source server #: src/home/HomeView.svelte msgid "Synced with {0}" @@ -1912,6 +1976,7 @@ msgstr "Waktu ketika Anda mengunggah atau mengunduh perubahan ini" #. Error message when changes are pending upload #: src/lib/activity/ActivityItem.svelte +#: src/lib/activity/ActivityView.svelte msgid "These changes have not been uploaded yet. Ensure you're online and logged in to share your changes." msgstr "Perubahan ini belum diunggah. Pastikan Anda online dan masuk untuk membagikan perubahan Anda." @@ -1999,7 +2064,11 @@ msgid "Unable to open in FieldWorks" msgstr "Tidak dapat dibuka di FieldWorks" #. Fallback value shown when author name or last-change date is unavailable (e.g., in activity history or the sync panel). +#: src/lib/activity/ActivityFilter.svelte +#: src/lib/activity/ActivityFilter.svelte +#: src/lib/activity/ActivityFilter.svelte #: src/lib/activity/ActivityItem.svelte +#: src/lib/activity/ActivityView.svelte #: src/project/sync/FwLiteToFwMergeDetails.svelte #: src/project/sync/FwLiteToFwMergeDetails.svelte msgid "Unknown" From 80a8800195f92fa1614478387d7dc317521c3d27 Mon Sep 17 00:00:00 2001 From: Tim Haasdyk Date: Fri, 26 Jun 2026 11:11:38 +0200 Subject: [PATCH 31/65] New translations en.po (Malay) [ci skip] --- frontend/viewer/src/locales/ms.po | 75 +++++++++++++++++++++++++++++-- 1 file changed, 72 insertions(+), 3 deletions(-) diff --git a/frontend/viewer/src/locales/ms.po b/frontend/viewer/src/locales/ms.po index 101fc2558b..9f2db35087 100644 --- a/frontend/viewer/src/locales/ms.po +++ b/frontend/viewer/src/locales/ms.po @@ -8,7 +8,7 @@ msgstr "" "Language: ms\n" "Project-Id-Version: language-depot\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2026-06-25 07:37\n" +"PO-Revision-Date: 2026-06-26 09:11\n" "Last-Translator: \n" "Language-Team: Malay\n" "Plural-Forms: nplurals=1; plural=0;\n" @@ -43,11 +43,19 @@ msgstr "{0} (FieldWorks Lite)" msgid "{0} (FieldWorks)" msgstr "{0} (FieldWorks)" +#: src/lib/activity/ActivityFilter.svelte +msgid "{0} activity types" +msgstr "{0} jenis aktiviti" + #. Time display format #: src/lib/components/ui/format/format-relative-date-fn.svelte.ts msgid "{0} ago" msgstr "{0} yang lalu" +#: src/lib/activity/ActivityFilter.svelte +msgid "{0} authors" +msgstr "{0} penulis" + #. File size display with unit #: src/lib/components/audio/audio-editor.svelte msgid "{0} MB" @@ -190,6 +198,20 @@ msgstr "Tambah Perkataan" msgid "All" msgstr "Semua" +#. Filter option in activity view activity-type dropdown — show all kinds of edits. +#: src/lib/activity/ActivityFilter.svelte +#: src/lib/activity/ActivityFilter.svelte +#: src/lib/activity/ActivityFilter.svelte +msgid "All activity types" +msgstr "Semua jenis aktiviti" + +#. Filter option in activity view author dropdown — show commits from every author. +#: src/lib/activity/ActivityFilter.svelte +#: src/lib/activity/ActivityFilter.svelte +#: src/lib/activity/ActivityFilter.svelte +msgid "All authors" +msgstr "Semua pengarang" + #. Relevant view: Classic #. Lite view equivalent: "a word" #. Placeholder/suggestion in search field @@ -761,6 +783,12 @@ msgstr "Gagal menyalin ke papan keratan" msgid "Failed to download {0}" msgstr "Gagal memuat turun {0}" +#. Error message when the activity feed fails to load (toast and empty state). +#: src/lib/activity/ActivityView.svelte +#: src/lib/activity/ActivityView.svelte +msgid "Failed to load activity" +msgstr "Gagal memuatkan aktiviti" + #. Error message when entries fail to load #: src/project/browse/EntriesList.svelte #: src/project/browse/EntriesList.svelte @@ -824,6 +852,7 @@ msgstr "Versi FieldWorks Lite" #. Alt text for FieldWorks logo image #: src/home/HomeView.svelte +#: src/lib/activity/ActivityFilter.svelte #: src/lib/components/OpenInFieldWorksButton.svelte #: src/project/ProjectDropdown.svelte #: src/project/sync/FwLiteToFwMergeDetails.svelte @@ -987,6 +1016,7 @@ msgstr "Kata Utama" msgid "Hide" msgstr "Sembunyi" +#: src/lib/activity/ActivityItem.svelte #: src/lib/history/HistoryView.svelte #: src/project/browse/EntryMenu.svelte msgid "History" @@ -1101,6 +1131,11 @@ msgstr "Mod senarai" msgid "Literal meaning" msgstr "Makna harfiah" +#. Accessible label on the activity view loading spinner while filtered commits are fetched. +#: src/lib/activity/ActivityView.svelte +msgid "Loading activity" +msgstr "Muat aktiviti" + #. Loading state text shown in the project/dictionary dropdown while the list of dictionaries is being fetched. #: src/project/ProjectDropdown.svelte msgid "Loading Dictionaries..." @@ -1276,13 +1311,23 @@ msgstr "Entri Baru" msgid "New Word" msgstr "Perkataan Baru" +#. Sort option in activity view — most recent commit first. +#: src/lib/activity/ActivityFilter.svelte +msgid "Newest first" +msgstr "Yang terbaru dahulu" + #: src/project/tasks/SubjectPopup.svelte msgid "Next" msgstr "Seterusnya" +#. Empty state when activity list filters exclude every commit. #: src/lib/activity/ActivityView.svelte -msgid "No activity found" -msgstr "Tiada aktiviti ditemui" +msgid "No activity matches these filters" +msgstr "Tiada aktiviti yang memenuhi penapis ini" + +#: src/lib/activity/ActivityFilter.svelte +msgid "No activity types" +msgstr "Tiada jenis aktiviti" #. Placeholder when no audio file #. Shows in audio field when empty (no file uploaded yet) @@ -1290,6 +1335,10 @@ msgstr "Tiada aktiviti ditemui" msgid "No audio" msgstr "Tiada audio" +#: src/lib/activity/ActivityFilter.svelte +msgid "No authors" +msgstr "Tiada pengarang" + #. Empty state message in the manage custom views dialog when none exist. #: src/lib/views/custom/ManageCustomViewsDialog.svelte msgid "No custom views yet." @@ -1404,6 +1453,11 @@ msgstr "Luar talian" msgid "Offline, unable to download" msgstr "Luar talian, tidak dapat memuat turun" +#. Sort option in activity view — earliest commit first. +#: src/lib/activity/ActivityFilter.svelte +msgid "Oldest first" +msgstr "Yang tertua dahulu" + #. Explanation of sync behavior #: src/project/sync/FwLiteToFwMergeDetails.svelte msgid "One FieldWorks Classic commit may consist of changes to multiple entries or fields. On the other hand, a commit may only affect data that is not synced to FieldWorks Lite." @@ -1826,6 +1880,16 @@ msgstr "Segerakkan perubahan anda dengan pengguna FieldWorks Lite yang lain" msgid "Synced" msgstr "Disegerakkan" +#. Sort option in activity view — by upload/download time, newest synced first (unsynced commits last). +#: src/lib/activity/ActivityFilter.svelte +msgid "Synced newest" +msgstr "Disegerakkan yang terbaru" + +#. Sort option in activity view — by upload/download time, oldest synced first (unsynced commits last). +#: src/lib/activity/ActivityFilter.svelte +msgid "Synced oldest" +msgstr "Yang tertua disegerakkan" + #. Status showing sync source server #: src/home/HomeView.svelte msgid "Synced with {0}" @@ -1912,6 +1976,7 @@ msgstr "Masa apabila anda memuat naik atau memuat turun perubahan ini" #. Error message when changes are pending upload #: src/lib/activity/ActivityItem.svelte +#: src/lib/activity/ActivityView.svelte msgid "These changes have not been uploaded yet. Ensure you're online and logged in to share your changes." msgstr "Perubahan ini belum dimuat naik. Pastikan anda dalam talian dan log masuk untuk berkongsi perubahan anda." @@ -1999,7 +2064,11 @@ msgid "Unable to open in FieldWorks" msgstr "Tidak dapat membuka dalam FieldWorks" #. Fallback value shown when author name or last-change date is unavailable (e.g., in activity history or the sync panel). +#: src/lib/activity/ActivityFilter.svelte +#: src/lib/activity/ActivityFilter.svelte +#: src/lib/activity/ActivityFilter.svelte #: src/lib/activity/ActivityItem.svelte +#: src/lib/activity/ActivityView.svelte #: src/project/sync/FwLiteToFwMergeDetails.svelte #: src/project/sync/FwLiteToFwMergeDetails.svelte msgid "Unknown" From f5c86a1229dce7cde5d2864ff211e99ecd08f847 Mon Sep 17 00:00:00 2001 From: Tim Haasdyk Date: Fri, 26 Jun 2026 11:11:41 +0200 Subject: [PATCH 32/65] New translations en.po (Swahili) [ci skip] --- frontend/viewer/src/locales/sw.po | 75 +++++++++++++++++++++++++++++-- 1 file changed, 72 insertions(+), 3 deletions(-) diff --git a/frontend/viewer/src/locales/sw.po b/frontend/viewer/src/locales/sw.po index 13d8418463..fe6eccdddd 100644 --- a/frontend/viewer/src/locales/sw.po +++ b/frontend/viewer/src/locales/sw.po @@ -8,7 +8,7 @@ msgstr "" "Language: sw\n" "Project-Id-Version: language-depot\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2026-06-25 07:37\n" +"PO-Revision-Date: 2026-06-26 09:11\n" "Last-Translator: \n" "Language-Team: Swahili\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" @@ -43,11 +43,19 @@ msgstr "{0} (FieldWorks Lite)" msgid "{0} (FieldWorks)" msgstr "{0} (FieldWorks)" +#: src/lib/activity/ActivityFilter.svelte +msgid "{0} activity types" +msgstr "{0} aina za shughuli" + #. Time display format #: src/lib/components/ui/format/format-relative-date-fn.svelte.ts msgid "{0} ago" msgstr "{0} iliyopita" +#: src/lib/activity/ActivityFilter.svelte +msgid "{0} authors" +msgstr "{0} waandishi" + #. File size display with unit #: src/lib/components/audio/audio-editor.svelte msgid "{0} MB" @@ -190,6 +198,20 @@ msgstr "Ongeza Neno" msgid "All" msgstr "Vyote" +#. Filter option in activity view activity-type dropdown — show all kinds of edits. +#: src/lib/activity/ActivityFilter.svelte +#: src/lib/activity/ActivityFilter.svelte +#: src/lib/activity/ActivityFilter.svelte +msgid "All activity types" +msgstr "Aina zote za shughuli" + +#. Filter option in activity view author dropdown — show commits from every author. +#: src/lib/activity/ActivityFilter.svelte +#: src/lib/activity/ActivityFilter.svelte +#: src/lib/activity/ActivityFilter.svelte +msgid "All authors" +msgstr "Waandishi wote" + #. Relevant view: Classic #. Lite view equivalent: "a word" #. Placeholder/suggestion in search field @@ -761,6 +783,12 @@ msgstr "Imeshindwa kunakili kwenye ubao wa kunakili" msgid "Failed to download {0}" msgstr "Imeshindwa kupakua {0}" +#. Error message when the activity feed fails to load (toast and empty state). +#: src/lib/activity/ActivityView.svelte +#: src/lib/activity/ActivityView.svelte +msgid "Failed to load activity" +msgstr "Imeshindwa kupakia shughuli" + #. Error message when entries fail to load #: src/project/browse/EntriesList.svelte #: src/project/browse/EntriesList.svelte @@ -824,6 +852,7 @@ msgstr "Toleo la FieldWorks Lite" #. Alt text for FieldWorks logo image #: src/home/HomeView.svelte +#: src/lib/activity/ActivityFilter.svelte #: src/lib/components/OpenInFieldWorksButton.svelte #: src/project/ProjectDropdown.svelte #: src/project/sync/FwLiteToFwMergeDetails.svelte @@ -987,6 +1016,7 @@ msgstr "Neno la kichwa" msgid "Hide" msgstr "Ficha" +#: src/lib/activity/ActivityItem.svelte #: src/lib/history/HistoryView.svelte #: src/project/browse/EntryMenu.svelte msgid "History" @@ -1101,6 +1131,11 @@ msgstr "Hali ya orodha" msgid "Literal meaning" msgstr "Maana halisi" +#. Accessible label on the activity view loading spinner while filtered commits are fetched. +#: src/lib/activity/ActivityView.svelte +msgid "Loading activity" +msgstr "Upakiaji unaendelea" + #. Loading state text shown in the project/dictionary dropdown while the list of dictionaries is being fetched. #: src/project/ProjectDropdown.svelte msgid "Loading Dictionaries..." @@ -1276,13 +1311,23 @@ msgstr "Ingizo Mpya" msgid "New Word" msgstr "Neno Jipya" +#. Sort option in activity view — most recent commit first. +#: src/lib/activity/ActivityFilter.svelte +msgid "Newest first" +msgstr "Zipya kwanza" + #: src/project/tasks/SubjectPopup.svelte msgid "Next" msgstr "Inayofuata" +#. Empty state when activity list filters exclude every commit. #: src/lib/activity/ActivityView.svelte -msgid "No activity found" -msgstr "Hakuna shughuli iliyopatikana" +msgid "No activity matches these filters" +msgstr "Hakuna shughuli inayolingana na vichujio hivi" + +#: src/lib/activity/ActivityFilter.svelte +msgid "No activity types" +msgstr "Hakuna aina za shughuli" #. Placeholder when no audio file #. Shows in audio field when empty (no file uploaded yet) @@ -1290,6 +1335,10 @@ msgstr "Hakuna shughuli iliyopatikana" msgid "No audio" msgstr "Hakuna sauti" +#: src/lib/activity/ActivityFilter.svelte +msgid "No authors" +msgstr "Hakuna waandishi" + #. Empty state message in the manage custom views dialog when none exist. #: src/lib/views/custom/ManageCustomViewsDialog.svelte msgid "No custom views yet." @@ -1404,6 +1453,11 @@ msgstr "Nyuma ya mtandao" msgid "Offline, unable to download" msgstr "Nyuma ya mtandao, haiwezi kupakua" +#. Sort option in activity view — earliest commit first. +#: src/lib/activity/ActivityFilter.svelte +msgid "Oldest first" +msgstr "Za zamani kwanza" + #. Explanation of sync behavior #: src/project/sync/FwLiteToFwMergeDetails.svelte msgid "One FieldWorks Classic commit may consist of changes to multiple entries or fields. On the other hand, a commit may only affect data that is not synced to FieldWorks Lite." @@ -1826,6 +1880,16 @@ msgstr "Kuoanisha mabadiliko yako na watumiaji wengine wa FieldWorks Lite" msgid "Synced" msgstr "Kuoanishwa" +#. Sort option in activity view — by upload/download time, newest synced first (unsynced commits last). +#: src/lib/activity/ActivityFilter.svelte +msgid "Synced newest" +msgstr "Imesawazishwa toleo jipya zaidi" + +#. Sort option in activity view — by upload/download time, oldest synced first (unsynced commits last). +#: src/lib/activity/ActivityFilter.svelte +msgid "Synced oldest" +msgstr "Iliyosawazishwa ya zamani zaidi" + #. Status showing sync source server #: src/home/HomeView.svelte msgid "Synced with {0}" @@ -1912,6 +1976,7 @@ msgstr "Wakati ulipoweka au kupakua mabadiliko haya" #. Error message when changes are pending upload #: src/lib/activity/ActivityItem.svelte +#: src/lib/activity/ActivityView.svelte msgid "These changes have not been uploaded yet. Ensure you're online and logged in to share your changes." msgstr "Mabadiliko haya hayajawekwa bado. Hakikisha unaunganishwa na kuingia ili kushiriki mabadiliko yako." @@ -1999,7 +2064,11 @@ msgid "Unable to open in FieldWorks" msgstr "Haiwezi kufungua katika FieldWorks" #. Fallback value shown when author name or last-change date is unavailable (e.g., in activity history or the sync panel). +#: src/lib/activity/ActivityFilter.svelte +#: src/lib/activity/ActivityFilter.svelte +#: src/lib/activity/ActivityFilter.svelte #: src/lib/activity/ActivityItem.svelte +#: src/lib/activity/ActivityView.svelte #: src/project/sync/FwLiteToFwMergeDetails.svelte #: src/project/sync/FwLiteToFwMergeDetails.svelte msgid "Unknown" From 75deef3d43e01ea98369b15d92f9b2f0ec7b79ff Mon Sep 17 00:00:00 2001 From: Tim Haasdyk Date: Sat, 27 Jun 2026 11:22:15 +0200 Subject: [PATCH 33/65] New translations en.po (Indonesian) [ci skip] --- frontend/viewer/src/locales/id.po | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/frontend/viewer/src/locales/id.po b/frontend/viewer/src/locales/id.po index 7fa2e55265..c4b2e87e10 100644 --- a/frontend/viewer/src/locales/id.po +++ b/frontend/viewer/src/locales/id.po @@ -8,7 +8,7 @@ msgstr "" "Language: id\n" "Project-Id-Version: language-depot\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2026-06-26 09:11\n" +"PO-Revision-Date: 2026-06-27 09:22\n" "Last-Translator: \n" "Language-Team: Indonesian\n" "Plural-Forms: nplurals=1; plural=0;\n" @@ -2167,7 +2167,7 @@ msgstr "Menggunakan komponen sebagai" #. Labels the vernacular language writing systems (the language being documented). #: src/lib/views/custom/CustomViewWritingSystems.svelte msgid "Vernacular" -msgstr "Vernakular" +msgstr "Bahasa Daerah" #. Button label #: src/project/browse/ViewPicker.svelte From 058fef720740c09214d8f41532f10aca5ea9bca3 Mon Sep 17 00:00:00 2001 From: Tim Haasdyk Date: Wed, 1 Jul 2026 06:22:17 +0200 Subject: [PATCH 34/65] Update source file en.po [ci skip] --- frontend/viewer/src/locales/en.po | 52 ++++++++++++++++++++++++++++--- 1 file changed, 47 insertions(+), 5 deletions(-) diff --git a/frontend/viewer/src/locales/en.po b/frontend/viewer/src/locales/en.po index c31ad2ee21..3e1c92a748 100644 --- a/frontend/viewer/src/locales/en.po +++ b/frontend/viewer/src/locales/en.po @@ -220,6 +220,11 @@ msgstr "an entry" msgid "Analysis" msgstr "Analysis" +#. Field label in the create-project dialog. An optional additional analysis writing system to create (English is always included), entered as an IETF language tag. +#: src/home/CreateProjectDialog.svelte +msgid "Analysis writing system code" +msgstr "Analysis writing system code" + #. Relevant view: Classic #. Lite view equivalent: "Any part of speech" #. Filter option: clear grammatical info filter @@ -330,6 +335,7 @@ msgstr "Browse view failed" #. Appears in dialog footer; discards any pending edits #. Synonyms across UI: "Don't delete" (Delete dialog), "Close" (About dialog) #. Keep translation brief (3-4 chars in some languages) to fit button layout +#: src/home/CreateProjectDialog.svelte #: src/lib/admin-dialogs/GetProjectByCodeDialog.svelte #: src/lib/components/SubmitOrCancel.svelte #: src/lib/components/audio/AudioDialog.svelte @@ -393,6 +399,11 @@ msgstr "Close" msgid "Close Dictionary" msgstr "Close Dictionary" +#. Field label in the create-project dialog. The project's short machine-readable identifier (slug), e.g. "my-dictionary". +#: src/home/CreateProjectDialog.svelte +msgid "Code" +msgstr "Code" + #. Tab or section #: src/lib/components/ThemePicker.svelte msgid "Color" @@ -466,6 +477,16 @@ msgstr "Copy version" msgid "Couldn't sync right now — your local changes are safe." msgstr "Couldn't sync right now — your local changes are safe." +#. Confirm button in the create-project dialog footer; creates the new dictionary project. +#: src/home/CreateProjectDialog.svelte +msgid "Create" +msgstr "Create" + +#. Subtitle on the dev-only New Project button; the new project is a blank, local-only FieldWorks Lite project. +#: src/home/HomeView.svelte +msgid "Create a new FieldWorks Lite project" +msgstr "Create a new FieldWorks Lite project" + #. Dialog title when creating a new custom view. #: src/lib/views/custom/CreateCustomViewDialog.svelte msgid "Create Custom View" @@ -676,6 +697,11 @@ msgstr "Downloading {0}..." msgid "Downloading..." msgstr "Downloading..." +#. Placeholder in the Vernacular writing system input. The example IETF language tags don't need to be translated. +#: src/home/CreateProjectDialog.svelte +msgid "e.g. th, sw" +msgstr "e.g. th, sw" + #. Dialog title when editing an existing custom view. #: src/lib/views/custom/EditCustomViewDialog.svelte msgid "Edit Custom View" @@ -1148,6 +1174,7 @@ msgstr "Local" #. Subtitle shown on a project card when the project has no server configured (no sync partner). #: src/home/HomeView.svelte +#: src/home/HomeView.svelte msgid "Local only" msgstr "Local only" @@ -1260,11 +1287,13 @@ msgid "My custom view..." msgstr "My custom view..." #. Field label for the custom view name input. +#: src/home/CreateProjectDialog.svelte #: src/lib/views/custom/CustomViewForm.svelte msgid "Name" msgstr "Name" #. Validation error shown when the custom view name is empty. +#: src/home/CreateProjectDialog.svelte #: src/lib/views/custom/validation.ts msgid "Name is required" msgstr "Name is required" @@ -1298,6 +1327,11 @@ msgstr "New data" msgid "New Entry" msgstr "New Entry" +#: src/home/CreateProjectDialog.svelte +#: src/home/HomeView.svelte +msgid "New Project" +msgstr "New Project" + #. Relevant view: Lite #. Classic view equivalent: "New Entry" #. Dialog title for creating new word @@ -1579,11 +1613,6 @@ msgstr "Project {0} not found on {1}" msgid "Project {0} on {1} is not yet set up for FieldWorks Lite" msgstr "Project {0} on {1} is not yet set up for FieldWorks Lite" -#. Placeholder for project search -#: src/home/HomeView.svelte -msgid "Project name..." -msgstr "Project name..." - #. Filter option #. Publication type/dictionary for entries #. Used to organize entries by which publication(s) they should appear in @@ -2080,6 +2109,10 @@ msgstr "Unknown error" msgid "Unknown error {0}" msgstr "Unknown error {0}" +#: src/home/CreateProjectDialog.svelte +msgid "Unknown error creating project" +msgstr "Unknown error creating project" + #. Error message #: src/lib/admin-dialogs/GetProjectByCodeDialog.svelte msgid "Unknown error downloading {0}" @@ -2164,6 +2197,15 @@ msgstr "Uses components as" msgid "Vernacular" msgstr "Vernacular" +#. Field label in the create-project dialog. The writing system for the language being documented (the vernacular), entered as an IETF language tag. +#: src/home/CreateProjectDialog.svelte +msgid "Vernacular writing system code" +msgstr "Vernacular writing system code" + +#: src/home/CreateProjectDialog.svelte +msgid "Vernacular writing system is required" +msgstr "Vernacular writing system is required" + #. Button label #: src/project/browse/ViewPicker.svelte msgid "View" From 8f53e853e3f02fa84a72b0955d4a4f672b643cef Mon Sep 17 00:00:00 2001 From: Tim Haasdyk Date: Wed, 1 Jul 2026 06:22:20 +0200 Subject: [PATCH 35/65] New translations en.po (French) [ci skip] --- frontend/viewer/src/locales/fr.po | 54 +++++++++++++++++++++++++++---- 1 file changed, 48 insertions(+), 6 deletions(-) diff --git a/frontend/viewer/src/locales/fr.po b/frontend/viewer/src/locales/fr.po index 561bfb8fbc..7af88b21a2 100644 --- a/frontend/viewer/src/locales/fr.po +++ b/frontend/viewer/src/locales/fr.po @@ -8,7 +8,7 @@ msgstr "" "Language: fr\n" "Project-Id-Version: language-depot\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2026-06-26 09:11\n" +"PO-Revision-Date: 2026-07-01 04:22\n" "Last-Translator: \n" "Language-Team: French\n" "Plural-Forms: nplurals=2; plural=(n > 1);\n" @@ -225,6 +225,11 @@ msgstr "une entrée" msgid "Analysis" msgstr "Analyse" +#. Field label in the create-project dialog. An optional additional analysis writing system to create (English is always included), entered as an IETF language tag. +#: src/home/CreateProjectDialog.svelte +msgid "Analysis writing system code" +msgstr "Code du système d'écriture d'analyse" + #. Relevant view: Classic #. Lite view equivalent: "Any part of speech" #. Filter option: clear grammatical info filter @@ -335,6 +340,7 @@ msgstr "La vue de la navigation a échoué" #. Appears in dialog footer; discards any pending edits #. Synonyms across UI: "Don't delete" (Delete dialog), "Close" (About dialog) #. Keep translation brief (3-4 chars in some languages) to fit button layout +#: src/home/CreateProjectDialog.svelte #: src/lib/admin-dialogs/GetProjectByCodeDialog.svelte #: src/lib/components/SubmitOrCancel.svelte #: src/lib/components/audio/AudioDialog.svelte @@ -398,6 +404,11 @@ msgstr "Fermer" msgid "Close Dictionary" msgstr "Fermer le dictionnaire" +#. Field label in the create-project dialog. The project's short machine-readable identifier (slug), e.g. "my-dictionary". +#: src/home/CreateProjectDialog.svelte +msgid "Code" +msgstr "Code" + #. Tab or section #: src/lib/components/ThemePicker.svelte msgid "Color" @@ -471,6 +482,16 @@ msgstr "Copier la version dans le presse-papiers" msgid "Couldn't sync right now — your local changes are safe." msgstr "Échec de la synchronisation pour le moment, vos modifications locales sont sécurisées." +#. Confirm button in the create-project dialog footer; creates the new dictionary project. +#: src/home/CreateProjectDialog.svelte +msgid "Create" +msgstr "Créer" + +#. Subtitle on the dev-only New Project button; the new project is a blank, local-only FieldWorks Lite project. +#: src/home/HomeView.svelte +msgid "Create a new FieldWorks Lite project" +msgstr "Créer un nouveau projet FieldWorks Lite" + #. Dialog title when creating a new custom view. #: src/lib/views/custom/CreateCustomViewDialog.svelte msgid "Create Custom View" @@ -681,6 +702,11 @@ msgstr "Téléchargement en cours {0}..." msgid "Downloading..." msgstr "Téléchargement en cours..." +#. Placeholder in the Vernacular writing system input. The example IETF language tags don't need to be translated. +#: src/home/CreateProjectDialog.svelte +msgid "e.g. th, sw" +msgstr "par exemple th, sw" + #. Dialog title when editing an existing custom view. #: src/lib/views/custom/EditCustomViewDialog.svelte msgid "Edit Custom View" @@ -1153,6 +1179,7 @@ msgstr "Local" #. Subtitle shown on a project card when the project has no server configured (no sync partner). #: src/home/HomeView.svelte +#: src/home/HomeView.svelte msgid "Local only" msgstr "Uniquement au niveau local" @@ -1265,11 +1292,13 @@ msgid "My custom view..." msgstr "Ma vue personnalisée..." #. Field label for the custom view name input. +#: src/home/CreateProjectDialog.svelte #: src/lib/views/custom/CustomViewForm.svelte msgid "Name" msgstr "Nom" #. Validation error shown when the custom view name is empty. +#: src/home/CreateProjectDialog.svelte #: src/lib/views/custom/validation.ts msgid "Name is required" msgstr "Le nom est requis" @@ -1303,6 +1332,11 @@ msgstr "Nouvelles données" msgid "New Entry" msgstr "Nouvelle entrée" +#: src/home/CreateProjectDialog.svelte +#: src/home/HomeView.svelte +msgid "New Project" +msgstr "Nouveau projet" + #. Relevant view: Lite #. Classic view equivalent: "New Entry" #. Dialog title for creating new word @@ -1584,11 +1618,6 @@ msgstr "Projet {0} introuvable sur {1}" msgid "Project {0} on {1} is not yet set up for FieldWorks Lite" msgstr "Le projet {0} sur {1} n'est pas encore configuré pour FieldWorks Lite" -#. Placeholder for project search -#: src/home/HomeView.svelte -msgid "Project name..." -msgstr "Nom du projet..." - #. Filter option #. Publication type/dictionary for entries #. Used to organize entries by which publication(s) they should appear in @@ -2085,6 +2114,10 @@ msgstr "Erreur inconnue" msgid "Unknown error {0}" msgstr "Erreur inconnue {0}" +#: src/home/CreateProjectDialog.svelte +msgid "Unknown error creating project" +msgstr "Erreur inconnue lors de la création du projet" + #. Error message #: src/lib/admin-dialogs/GetProjectByCodeDialog.svelte msgid "Unknown error downloading {0}" @@ -2169,6 +2202,15 @@ msgstr "Utilise des composants comme" msgid "Vernacular" msgstr "Vernaculaire" +#. Field label in the create-project dialog. The writing system for the language being documented (the vernacular), entered as an IETF language tag. +#: src/home/CreateProjectDialog.svelte +msgid "Vernacular writing system code" +msgstr "Code du système d'écriture vernaculaire" + +#: src/home/CreateProjectDialog.svelte +msgid "Vernacular writing system is required" +msgstr "Un système d'écriture vernaculaire est requis" + #. Button label #: src/project/browse/ViewPicker.svelte msgid "View" From 60a97b7b80421315c8d46cd90e9f7b3c084549be Mon Sep 17 00:00:00 2001 From: Tim Haasdyk Date: Wed, 1 Jul 2026 06:22:23 +0200 Subject: [PATCH 36/65] New translations en.po (Spanish) [ci skip] --- frontend/viewer/src/locales/es.po | 54 +++++++++++++++++++++++++++---- 1 file changed, 48 insertions(+), 6 deletions(-) diff --git a/frontend/viewer/src/locales/es.po b/frontend/viewer/src/locales/es.po index 312ce388f2..8627d57efd 100644 --- a/frontend/viewer/src/locales/es.po +++ b/frontend/viewer/src/locales/es.po @@ -8,7 +8,7 @@ msgstr "" "Language: es\n" "Project-Id-Version: language-depot\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2026-06-26 09:11\n" +"PO-Revision-Date: 2026-07-01 04:22\n" "Last-Translator: \n" "Language-Team: Spanish\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" @@ -225,6 +225,11 @@ msgstr "una entrada" msgid "Analysis" msgstr "Análisis" +#. Field label in the create-project dialog. An optional additional analysis writing system to create (English is always included), entered as an IETF language tag. +#: src/home/CreateProjectDialog.svelte +msgid "Analysis writing system code" +msgstr "Código del sistema de análisis" + #. Relevant view: Classic #. Lite view equivalent: "Any part of speech" #. Filter option: clear grammatical info filter @@ -335,6 +340,7 @@ msgstr "Vista de navegación fallida" #. Appears in dialog footer; discards any pending edits #. Synonyms across UI: "Don't delete" (Delete dialog), "Close" (About dialog) #. Keep translation brief (3-4 chars in some languages) to fit button layout +#: src/home/CreateProjectDialog.svelte #: src/lib/admin-dialogs/GetProjectByCodeDialog.svelte #: src/lib/components/SubmitOrCancel.svelte #: src/lib/components/audio/AudioDialog.svelte @@ -398,6 +404,11 @@ msgstr "Cerrar" msgid "Close Dictionary" msgstr "Cerrar Diccionario" +#. Field label in the create-project dialog. The project's short machine-readable identifier (slug), e.g. "my-dictionary". +#: src/home/CreateProjectDialog.svelte +msgid "Code" +msgstr "Código" + #. Tab or section #: src/lib/components/ThemePicker.svelte msgid "Color" @@ -471,6 +482,16 @@ msgstr "Copiar versión" msgid "Couldn't sync right now — your local changes are safe." msgstr "No se pudo sincronizar ahora mismo, los cambios locales están seguros." +#. Confirm button in the create-project dialog footer; creates the new dictionary project. +#: src/home/CreateProjectDialog.svelte +msgid "Create" +msgstr "Crear" + +#. Subtitle on the dev-only New Project button; the new project is a blank, local-only FieldWorks Lite project. +#: src/home/HomeView.svelte +msgid "Create a new FieldWorks Lite project" +msgstr "Crear un nuevo proyecto FieldWorks Lite" + #. Dialog title when creating a new custom view. #: src/lib/views/custom/CreateCustomViewDialog.svelte msgid "Create Custom View" @@ -681,6 +702,11 @@ msgstr "Descargando {0}..." msgid "Downloading..." msgstr "Descargando..." +#. Placeholder in the Vernacular writing system input. The example IETF language tags don't need to be translated. +#: src/home/CreateProjectDialog.svelte +msgid "e.g. th, sw" +msgstr "ej. th, sw" + #. Dialog title when editing an existing custom view. #: src/lib/views/custom/EditCustomViewDialog.svelte msgid "Edit Custom View" @@ -1153,6 +1179,7 @@ msgstr "Local" #. Subtitle shown on a project card when the project has no server configured (no sync partner). #: src/home/HomeView.svelte +#: src/home/HomeView.svelte msgid "Local only" msgstr "Sólo local" @@ -1265,11 +1292,13 @@ msgid "My custom view..." msgstr "Mi vista personalizada..." #. Field label for the custom view name input. +#: src/home/CreateProjectDialog.svelte #: src/lib/views/custom/CustomViewForm.svelte msgid "Name" msgstr "Nombre" #. Validation error shown when the custom view name is empty. +#: src/home/CreateProjectDialog.svelte #: src/lib/views/custom/validation.ts msgid "Name is required" msgstr "Se requiere nombre" @@ -1303,6 +1332,11 @@ msgstr "Nuevos datos" msgid "New Entry" msgstr "Nueva entrada" +#: src/home/CreateProjectDialog.svelte +#: src/home/HomeView.svelte +msgid "New Project" +msgstr "Nuevo proyecto" + #. Relevant view: Lite #. Classic view equivalent: "New Entry" #. Dialog title for creating new word @@ -1584,11 +1618,6 @@ msgstr "Proyecto {0} no encontrado en {1}" msgid "Project {0} on {1} is not yet set up for FieldWorks Lite" msgstr "El proyecto {0} en {1} aún no está configurado para FieldWorks Lite" -#. Placeholder for project search -#: src/home/HomeView.svelte -msgid "Project name..." -msgstr "Nombre del proyecto..." - #. Filter option #. Publication type/dictionary for entries #. Used to organize entries by which publication(s) they should appear in @@ -2085,6 +2114,10 @@ msgstr "Error desconocido" msgid "Unknown error {0}" msgstr "Error desconocido {0}" +#: src/home/CreateProjectDialog.svelte +msgid "Unknown error creating project" +msgstr "Error desconocido al crear el proyecto" + #. Error message #: src/lib/admin-dialogs/GetProjectByCodeDialog.svelte msgid "Unknown error downloading {0}" @@ -2169,6 +2202,15 @@ msgstr "Utiliza componentes como" msgid "Vernacular" msgstr "Vernáculo" +#. Field label in the create-project dialog. The writing system for the language being documented (the vernacular), entered as an IETF language tag. +#: src/home/CreateProjectDialog.svelte +msgid "Vernacular writing system code" +msgstr "Código del sistema de escritura vernacular" + +#: src/home/CreateProjectDialog.svelte +msgid "Vernacular writing system is required" +msgstr "El sistema de escritura vernácular es requerido" + #. Button label #: src/project/browse/ViewPicker.svelte msgid "View" From baf05a97d3f9a43e2753c4cb536e0c46bfa9b491 Mon Sep 17 00:00:00 2001 From: Tim Haasdyk Date: Wed, 1 Jul 2026 06:22:24 +0200 Subject: [PATCH 37/65] New translations en.po (Korean) [ci skip] --- frontend/viewer/src/locales/ko.po | 54 +++++++++++++++++++++++++++---- 1 file changed, 48 insertions(+), 6 deletions(-) diff --git a/frontend/viewer/src/locales/ko.po b/frontend/viewer/src/locales/ko.po index 6a50143d71..ac6eea56e8 100644 --- a/frontend/viewer/src/locales/ko.po +++ b/frontend/viewer/src/locales/ko.po @@ -8,7 +8,7 @@ msgstr "" "Language: ko\n" "Project-Id-Version: language-depot\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2026-06-26 09:11\n" +"PO-Revision-Date: 2026-07-01 04:22\n" "Last-Translator: \n" "Language-Team: Korean\n" "Plural-Forms: nplurals=1; plural=0;\n" @@ -225,6 +225,11 @@ msgstr "항목" msgid "Analysis" msgstr "분석" +#. Field label in the create-project dialog. An optional additional analysis writing system to create (English is always included), entered as an IETF language tag. +#: src/home/CreateProjectDialog.svelte +msgid "Analysis writing system code" +msgstr "시스템 코드 분석 작성" + #. Relevant view: Classic #. Lite view equivalent: "Any part of speech" #. Filter option: clear grammatical info filter @@ -335,6 +340,7 @@ msgstr "찾아보기 실패" #. Appears in dialog footer; discards any pending edits #. Synonyms across UI: "Don't delete" (Delete dialog), "Close" (About dialog) #. Keep translation brief (3-4 chars in some languages) to fit button layout +#: src/home/CreateProjectDialog.svelte #: src/lib/admin-dialogs/GetProjectByCodeDialog.svelte #: src/lib/components/SubmitOrCancel.svelte #: src/lib/components/audio/AudioDialog.svelte @@ -398,6 +404,11 @@ msgstr "닫기" msgid "Close Dictionary" msgstr "사전 닫기" +#. Field label in the create-project dialog. The project's short machine-readable identifier (slug), e.g. "my-dictionary". +#: src/home/CreateProjectDialog.svelte +msgid "Code" +msgstr "코드" + #. Tab or section #: src/lib/components/ThemePicker.svelte msgid "Color" @@ -471,6 +482,16 @@ msgstr "복사 버전" msgid "Couldn't sync right now — your local changes are safe." msgstr "지금은 동기화할 수 없습니다. 로컬에서 변경한 내용은 안전하게 보관됩니다." +#. Confirm button in the create-project dialog footer; creates the new dictionary project. +#: src/home/CreateProjectDialog.svelte +msgid "Create" +msgstr "만들기" + +#. Subtitle on the dev-only New Project button; the new project is a blank, local-only FieldWorks Lite project. +#: src/home/HomeView.svelte +msgid "Create a new FieldWorks Lite project" +msgstr "새로운 FieldWorks Lite 프로젝트 만들기" + #. Dialog title when creating a new custom view. #: src/lib/views/custom/CreateCustomViewDialog.svelte msgid "Create Custom View" @@ -681,6 +702,11 @@ msgstr "다운로드 {0}..." msgid "Downloading..." msgstr "다운로드 중..." +#. Placeholder in the Vernacular writing system input. The example IETF language tags don't need to be translated. +#: src/home/CreateProjectDialog.svelte +msgid "e.g. th, sw" +msgstr "예: th, sw" + #. Dialog title when editing an existing custom view. #: src/lib/views/custom/EditCustomViewDialog.svelte msgid "Edit Custom View" @@ -1153,6 +1179,7 @@ msgstr "로컬" #. Subtitle shown on a project card when the project has no server configured (no sync partner). #: src/home/HomeView.svelte +#: src/home/HomeView.svelte msgid "Local only" msgstr "로컬 전용" @@ -1265,11 +1292,13 @@ msgid "My custom view..." msgstr "내 사용자 지정 보기..." #. Field label for the custom view name input. +#: src/home/CreateProjectDialog.svelte #: src/lib/views/custom/CustomViewForm.svelte msgid "Name" msgstr "이름" #. Validation error shown when the custom view name is empty. +#: src/home/CreateProjectDialog.svelte #: src/lib/views/custom/validation.ts msgid "Name is required" msgstr "이름은 필수 입력 사항입니다." @@ -1303,6 +1332,11 @@ msgstr "새로운 데이터" msgid "New Entry" msgstr "새 항목" +#: src/home/CreateProjectDialog.svelte +#: src/home/HomeView.svelte +msgid "New Project" +msgstr "새로운 프로젝트" + #. Relevant view: Lite #. Classic view equivalent: "New Entry" #. Dialog title for creating new word @@ -1584,11 +1618,6 @@ msgstr "프로젝트 {0} {1}에서 찾을 수 없음" msgid "Project {0} on {1} is not yet set up for FieldWorks Lite" msgstr "{1} 의 프로젝트 {0} 는 아직 FieldWorks Lite용으로 설정되지 않았습니다." -#. Placeholder for project search -#: src/home/HomeView.svelte -msgid "Project name..." -msgstr "프로젝트 이름..." - #. Filter option #. Publication type/dictionary for entries #. Used to organize entries by which publication(s) they should appear in @@ -2085,6 +2114,10 @@ msgstr "알 수 없는 오류" msgid "Unknown error {0}" msgstr "알 수 없는 오류 {0}" +#: src/home/CreateProjectDialog.svelte +msgid "Unknown error creating project" +msgstr "프로젝트 생성 중 알 수 없는 오류가 발생했습니다." + #. Error message #: src/lib/admin-dialogs/GetProjectByCodeDialog.svelte msgid "Unknown error downloading {0}" @@ -2169,6 +2202,15 @@ msgstr "구성 요소를 다음과 같이 사용합니다." msgid "Vernacular" msgstr "토착어" +#. Field label in the create-project dialog. The writing system for the language being documented (the vernacular), entered as an IETF language tag. +#: src/home/CreateProjectDialog.svelte +msgid "Vernacular writing system code" +msgstr "토착 문자 체계 코드" + +#: src/home/CreateProjectDialog.svelte +msgid "Vernacular writing system is required" +msgstr "현지 언어 문자 체계가 필요합니다" + #. Button label #: src/project/browse/ViewPicker.svelte msgid "View" From 249cde7daad1da85a80021156c055eff11fe33be Mon Sep 17 00:00:00 2001 From: Tim Haasdyk Date: Wed, 1 Jul 2026 06:22:27 +0200 Subject: [PATCH 38/65] New translations en.po (Vietnamese) [ci skip] --- frontend/viewer/src/locales/vi.po | 54 +++++++++++++++++++++++++++---- 1 file changed, 48 insertions(+), 6 deletions(-) diff --git a/frontend/viewer/src/locales/vi.po b/frontend/viewer/src/locales/vi.po index 6c9ddab029..2a62268b5a 100644 --- a/frontend/viewer/src/locales/vi.po +++ b/frontend/viewer/src/locales/vi.po @@ -8,7 +8,7 @@ msgstr "" "Language: vi\n" "Project-Id-Version: language-depot\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2026-06-26 09:11\n" +"PO-Revision-Date: 2026-07-01 04:22\n" "Last-Translator: \n" "Language-Team: Vietnamese\n" "Plural-Forms: nplurals=1; plural=0;\n" @@ -225,6 +225,11 @@ msgstr "một mục" msgid "Analysis" msgstr "Phân tích" +#. Field label in the create-project dialog. An optional additional analysis writing system to create (English is always included), entered as an IETF language tag. +#: src/home/CreateProjectDialog.svelte +msgid "Analysis writing system code" +msgstr "Phân tích mã nguồn hệ thống" + #. Relevant view: Classic #. Lite view equivalent: "Any part of speech" #. Filter option: clear grammatical info filter @@ -335,6 +340,7 @@ msgstr "Không thể hiển thị chế độ xem" #. Appears in dialog footer; discards any pending edits #. Synonyms across UI: "Don't delete" (Delete dialog), "Close" (About dialog) #. Keep translation brief (3-4 chars in some languages) to fit button layout +#: src/home/CreateProjectDialog.svelte #: src/lib/admin-dialogs/GetProjectByCodeDialog.svelte #: src/lib/components/SubmitOrCancel.svelte #: src/lib/components/audio/AudioDialog.svelte @@ -398,6 +404,11 @@ msgstr "Đóng" msgid "Close Dictionary" msgstr "Đóng Từ điển" +#. Field label in the create-project dialog. The project's short machine-readable identifier (slug), e.g. "my-dictionary". +#: src/home/CreateProjectDialog.svelte +msgid "Code" +msgstr "Mã" + #. Tab or section #: src/lib/components/ThemePicker.svelte msgid "Color" @@ -471,6 +482,16 @@ msgstr "Sao chép phiên bản" msgid "Couldn't sync right now — your local changes are safe." msgstr "Hiện tại không thể đồng bộ hóa — các thay đổi trên máy của bạn vẫn được lưu giữ an toàn." +#. Confirm button in the create-project dialog footer; creates the new dictionary project. +#: src/home/CreateProjectDialog.svelte +msgid "Create" +msgstr "Tạo" + +#. Subtitle on the dev-only New Project button; the new project is a blank, local-only FieldWorks Lite project. +#: src/home/HomeView.svelte +msgid "Create a new FieldWorks Lite project" +msgstr "Tạo một dự án FieldWorks Lite mới" + #. Dialog title when creating a new custom view. #: src/lib/views/custom/CreateCustomViewDialog.svelte msgid "Create Custom View" @@ -681,6 +702,11 @@ msgstr "Đang tải xuống {0}..." msgid "Downloading..." msgstr "Đang tải xuống..." +#. Placeholder in the Vernacular writing system input. The example IETF language tags don't need to be translated. +#: src/home/CreateProjectDialog.svelte +msgid "e.g. th, sw" +msgstr "ví dụ: th, sw" + #. Dialog title when editing an existing custom view. #: src/lib/views/custom/EditCustomViewDialog.svelte msgid "Edit Custom View" @@ -1153,6 +1179,7 @@ msgstr "Cục bộ" #. Subtitle shown on a project card when the project has no server configured (no sync partner). #: src/home/HomeView.svelte +#: src/home/HomeView.svelte msgid "Local only" msgstr "Chỉ cục bộ" @@ -1265,11 +1292,13 @@ msgid "My custom view..." msgstr "Chế độ xem tùy chỉnh của tôi..." #. Field label for the custom view name input. +#: src/home/CreateProjectDialog.svelte #: src/lib/views/custom/CustomViewForm.svelte msgid "Name" msgstr "Tên" #. Validation error shown when the custom view name is empty. +#: src/home/CreateProjectDialog.svelte #: src/lib/views/custom/validation.ts msgid "Name is required" msgstr "Tên là trường thông tin bắt buộc" @@ -1303,6 +1332,11 @@ msgstr "Dữ liệu mới" msgid "New Entry" msgstr "Mục mới" +#: src/home/CreateProjectDialog.svelte +#: src/home/HomeView.svelte +msgid "New Project" +msgstr "Dự án mới" + #. Relevant view: Lite #. Classic view equivalent: "New Entry" #. Dialog title for creating new word @@ -1584,11 +1618,6 @@ msgstr "Dự án {0} không tìm thấy trên {1}" msgid "Project {0} on {1} is not yet set up for FieldWorks Lite" msgstr "Dự án {0} trên {1} chưa được thiết lập cho FieldWorks Lite" -#. Placeholder for project search -#: src/home/HomeView.svelte -msgid "Project name..." -msgstr "Tên dự án..." - #. Filter option #. Publication type/dictionary for entries #. Used to organize entries by which publication(s) they should appear in @@ -2085,6 +2114,10 @@ msgstr "Lỗi không xác định" msgid "Unknown error {0}" msgstr "Lỗi không xác định {0}" +#: src/home/CreateProjectDialog.svelte +msgid "Unknown error creating project" +msgstr "Xảy ra lỗi không xác định khi tạo dự án" + #. Error message #: src/lib/admin-dialogs/GetProjectByCodeDialog.svelte msgid "Unknown error downloading {0}" @@ -2169,6 +2202,15 @@ msgstr "Sử dụng các thành phần như" msgid "Vernacular" msgstr "Tiếng địa phương" +#. Field label in the create-project dialog. The writing system for the language being documented (the vernacular), entered as an IETF language tag. +#: src/home/CreateProjectDialog.svelte +msgid "Vernacular writing system code" +msgstr "Mã hệ thống chữ viết bản địa" + +#: src/home/CreateProjectDialog.svelte +msgid "Vernacular writing system is required" +msgstr "Phải có hệ thống chữ viết bản địa" + #. Button label #: src/project/browse/ViewPicker.svelte msgid "View" From ebd07ef7a3ba5490d67a09f31efad8597be50b2b Mon Sep 17 00:00:00 2001 From: Tim Haasdyk Date: Wed, 1 Jul 2026 06:22:28 +0200 Subject: [PATCH 39/65] New translations en.po (Indonesian) [ci skip] --- frontend/viewer/src/locales/id.po | 54 +++++++++++++++++++++++++++---- 1 file changed, 48 insertions(+), 6 deletions(-) diff --git a/frontend/viewer/src/locales/id.po b/frontend/viewer/src/locales/id.po index c4b2e87e10..e9d39aa614 100644 --- a/frontend/viewer/src/locales/id.po +++ b/frontend/viewer/src/locales/id.po @@ -8,7 +8,7 @@ msgstr "" "Language: id\n" "Project-Id-Version: language-depot\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2026-06-27 09:22\n" +"PO-Revision-Date: 2026-07-01 04:22\n" "Last-Translator: \n" "Language-Team: Indonesian\n" "Plural-Forms: nplurals=1; plural=0;\n" @@ -225,6 +225,11 @@ msgstr "sebuah entri" msgid "Analysis" msgstr "Analisis" +#. Field label in the create-project dialog. An optional additional analysis writing system to create (English is always included), entered as an IETF language tag. +#: src/home/CreateProjectDialog.svelte +msgid "Analysis writing system code" +msgstr "Analisis penulisan kode sistem" + #. Relevant view: Classic #. Lite view equivalent: "Any part of speech" #. Filter option: clear grammatical info filter @@ -335,6 +340,7 @@ msgstr "Tampilan penelusuran gagal" #. Appears in dialog footer; discards any pending edits #. Synonyms across UI: "Don't delete" (Delete dialog), "Close" (About dialog) #. Keep translation brief (3-4 chars in some languages) to fit button layout +#: src/home/CreateProjectDialog.svelte #: src/lib/admin-dialogs/GetProjectByCodeDialog.svelte #: src/lib/components/SubmitOrCancel.svelte #: src/lib/components/audio/AudioDialog.svelte @@ -398,6 +404,11 @@ msgstr "Tutup" msgid "Close Dictionary" msgstr "Tutup Kamus" +#. Field label in the create-project dialog. The project's short machine-readable identifier (slug), e.g. "my-dictionary". +#: src/home/CreateProjectDialog.svelte +msgid "Code" +msgstr "Kode" + #. Tab or section #: src/lib/components/ThemePicker.svelte msgid "Color" @@ -471,6 +482,16 @@ msgstr "Versi salin" msgid "Couldn't sync right now — your local changes are safe." msgstr "Saat ini tidak bisa disinkronkan — perubahan lokal Anda tetap aman." +#. Confirm button in the create-project dialog footer; creates the new dictionary project. +#: src/home/CreateProjectDialog.svelte +msgid "Create" +msgstr "Buat" + +#. Subtitle on the dev-only New Project button; the new project is a blank, local-only FieldWorks Lite project. +#: src/home/HomeView.svelte +msgid "Create a new FieldWorks Lite project" +msgstr "Buat proyek FieldWorks Lite baru" + #. Dialog title when creating a new custom view. #: src/lib/views/custom/CreateCustomViewDialog.svelte msgid "Create Custom View" @@ -681,6 +702,11 @@ msgstr "Mengunduh {0}..." msgid "Downloading..." msgstr "Mengunduh..." +#. Placeholder in the Vernacular writing system input. The example IETF language tags don't need to be translated. +#: src/home/CreateProjectDialog.svelte +msgid "e.g. th, sw" +msgstr "misalnya: th, sw" + #. Dialog title when editing an existing custom view. #: src/lib/views/custom/EditCustomViewDialog.svelte msgid "Edit Custom View" @@ -1153,6 +1179,7 @@ msgstr "Lokal" #. Subtitle shown on a project card when the project has no server configured (no sync partner). #: src/home/HomeView.svelte +#: src/home/HomeView.svelte msgid "Local only" msgstr "Hanya lokal" @@ -1265,11 +1292,13 @@ msgid "My custom view..." msgstr "Tampilan khusus saya..." #. Field label for the custom view name input. +#: src/home/CreateProjectDialog.svelte #: src/lib/views/custom/CustomViewForm.svelte msgid "Name" msgstr "Nama" #. Validation error shown when the custom view name is empty. +#: src/home/CreateProjectDialog.svelte #: src/lib/views/custom/validation.ts msgid "Name is required" msgstr "Nama harus diisi" @@ -1303,6 +1332,11 @@ msgstr "Data baru" msgid "New Entry" msgstr "Entri Baru" +#: src/home/CreateProjectDialog.svelte +#: src/home/HomeView.svelte +msgid "New Project" +msgstr "Proyek Baru" + #. Relevant view: Lite #. Classic view equivalent: "New Entry" #. Dialog title for creating new word @@ -1584,11 +1618,6 @@ msgstr "Proyek {0} tidak ditemukan di {1}" msgid "Project {0} on {1} is not yet set up for FieldWorks Lite" msgstr "Proyek {0} di {1} belum disiapkan untuk FieldWorks Lite" -#. Placeholder for project search -#: src/home/HomeView.svelte -msgid "Project name..." -msgstr "Nama proyek..." - #. Filter option #. Publication type/dictionary for entries #. Used to organize entries by which publication(s) they should appear in @@ -2085,6 +2114,10 @@ msgstr "Kesalahan yang tidak diketahui" msgid "Unknown error {0}" msgstr "Kesalahan tidak dikenal {0}" +#: src/home/CreateProjectDialog.svelte +msgid "Unknown error creating project" +msgstr "Terjadi kesalahan yang tidak diketahui saat membuat proyek" + #. Error message #: src/lib/admin-dialogs/GetProjectByCodeDialog.svelte msgid "Unknown error downloading {0}" @@ -2169,6 +2202,15 @@ msgstr "Menggunakan komponen sebagai" msgid "Vernacular" msgstr "Bahasa Daerah" +#. Field label in the create-project dialog. The writing system for the language being documented (the vernacular), entered as an IETF language tag. +#: src/home/CreateProjectDialog.svelte +msgid "Vernacular writing system code" +msgstr "Kode sistem penulisan bahasa daerah" + +#: src/home/CreateProjectDialog.svelte +msgid "Vernacular writing system is required" +msgstr "Diperlukan sistem penulisan dalam bahasa daerah" + #. Button label #: src/project/browse/ViewPicker.svelte msgid "View" From ca07d4b9682c1cd5b2b9e0a205feeda036812324 Mon Sep 17 00:00:00 2001 From: Tim Haasdyk Date: Wed, 1 Jul 2026 06:22:30 +0200 Subject: [PATCH 40/65] New translations en.po (Malay) [ci skip] --- frontend/viewer/src/locales/ms.po | 54 +++++++++++++++++++++++++++---- 1 file changed, 48 insertions(+), 6 deletions(-) diff --git a/frontend/viewer/src/locales/ms.po b/frontend/viewer/src/locales/ms.po index 9f2db35087..7c1fa87bb4 100644 --- a/frontend/viewer/src/locales/ms.po +++ b/frontend/viewer/src/locales/ms.po @@ -8,7 +8,7 @@ msgstr "" "Language: ms\n" "Project-Id-Version: language-depot\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2026-06-26 09:11\n" +"PO-Revision-Date: 2026-07-01 04:22\n" "Last-Translator: \n" "Language-Team: Malay\n" "Plural-Forms: nplurals=1; plural=0;\n" @@ -225,6 +225,11 @@ msgstr "satu entri" msgid "Analysis" msgstr "Analisis" +#. Field label in the create-project dialog. An optional additional analysis writing system to create (English is always included), entered as an IETF language tag. +#: src/home/CreateProjectDialog.svelte +msgid "Analysis writing system code" +msgstr "Penulisan analisis sistem kod" + #. Relevant view: Classic #. Lite view equivalent: "Any part of speech" #. Filter option: clear grammatical info filter @@ -335,6 +340,7 @@ msgstr "Paparan semak imbas gagal" #. Appears in dialog footer; discards any pending edits #. Synonyms across UI: "Don't delete" (Delete dialog), "Close" (About dialog) #. Keep translation brief (3-4 chars in some languages) to fit button layout +#: src/home/CreateProjectDialog.svelte #: src/lib/admin-dialogs/GetProjectByCodeDialog.svelte #: src/lib/components/SubmitOrCancel.svelte #: src/lib/components/audio/AudioDialog.svelte @@ -398,6 +404,11 @@ msgstr "Tutup" msgid "Close Dictionary" msgstr "Tutup Kamus" +#. Field label in the create-project dialog. The project's short machine-readable identifier (slug), e.g. "my-dictionary". +#: src/home/CreateProjectDialog.svelte +msgid "Code" +msgstr "Kod" + #. Tab or section #: src/lib/components/ThemePicker.svelte msgid "Color" @@ -471,6 +482,16 @@ msgstr "Salin versi" msgid "Couldn't sync right now — your local changes are safe." msgstr "Tidak dapat menyegerakkan sekarang — perubahan tempatan anda selamat." +#. Confirm button in the create-project dialog footer; creates the new dictionary project. +#: src/home/CreateProjectDialog.svelte +msgid "Create" +msgstr "Mencipta" + +#. Subtitle on the dev-only New Project button; the new project is a blank, local-only FieldWorks Lite project. +#: src/home/HomeView.svelte +msgid "Create a new FieldWorks Lite project" +msgstr "Buat projek FieldWorks Lite baru" + #. Dialog title when creating a new custom view. #: src/lib/views/custom/CreateCustomViewDialog.svelte msgid "Create Custom View" @@ -681,6 +702,11 @@ msgstr "Memuat turun {0}..." msgid "Downloading..." msgstr "Memuat turun..." +#. Placeholder in the Vernacular writing system input. The example IETF language tags don't need to be translated. +#: src/home/CreateProjectDialog.svelte +msgid "e.g. th, sw" +msgstr "contohnya th, sw" + #. Dialog title when editing an existing custom view. #: src/lib/views/custom/EditCustomViewDialog.svelte msgid "Edit Custom View" @@ -1153,6 +1179,7 @@ msgstr "Tempatan" #. Subtitle shown on a project card when the project has no server configured (no sync partner). #: src/home/HomeView.svelte +#: src/home/HomeView.svelte msgid "Local only" msgstr "Tempatan sahaja" @@ -1265,11 +1292,13 @@ msgid "My custom view..." msgstr "Pandangan tersuai saya..." #. Field label for the custom view name input. +#: src/home/CreateProjectDialog.svelte #: src/lib/views/custom/CustomViewForm.svelte msgid "Name" msgstr "Nama" #. Validation error shown when the custom view name is empty. +#: src/home/CreateProjectDialog.svelte #: src/lib/views/custom/validation.ts msgid "Name is required" msgstr "Nama diperlukan" @@ -1303,6 +1332,11 @@ msgstr "Data baru" msgid "New Entry" msgstr "Entri Baru" +#: src/home/CreateProjectDialog.svelte +#: src/home/HomeView.svelte +msgid "New Project" +msgstr "Projek Baru" + #. Relevant view: Lite #. Classic view equivalent: "New Entry" #. Dialog title for creating new word @@ -1584,11 +1618,6 @@ msgstr "Projek {0} tidak ditemui pada {1}" msgid "Project {0} on {1} is not yet set up for FieldWorks Lite" msgstr "Projek {0} pada {1} belum disediakan untuk FieldWorks Lite" -#. Placeholder for project search -#: src/home/HomeView.svelte -msgid "Project name..." -msgstr "Nama projek..." - #. Filter option #. Publication type/dictionary for entries #. Used to organize entries by which publication(s) they should appear in @@ -2085,6 +2114,10 @@ msgstr "Ralat tidak diketahui" msgid "Unknown error {0}" msgstr "Ralat tidak diketahui {0}" +#: src/home/CreateProjectDialog.svelte +msgid "Unknown error creating project" +msgstr "Ralat tidak diketahui semasa mencipta projek" + #. Error message #: src/lib/admin-dialogs/GetProjectByCodeDialog.svelte msgid "Unknown error downloading {0}" @@ -2169,6 +2202,15 @@ msgstr "Menggunakan komponen sebagai" msgid "Vernacular" msgstr "Bahasaan" +#. Field label in the create-project dialog. The writing system for the language being documented (the vernacular), entered as an IETF language tag. +#: src/home/CreateProjectDialog.svelte +msgid "Vernacular writing system code" +msgstr "Kod sistem penulisan Vernakular" + +#: src/home/CreateProjectDialog.svelte +msgid "Vernacular writing system is required" +msgstr "Sistem tulisan vernacular diperlukan" + #. Button label #: src/project/browse/ViewPicker.svelte msgid "View" From 4d8ee7d786e031aca3f8e4a83b38dded2dbd39b9 Mon Sep 17 00:00:00 2001 From: Tim Haasdyk Date: Wed, 1 Jul 2026 06:22:32 +0200 Subject: [PATCH 41/65] New translations en.po (Swahili) [ci skip] --- frontend/viewer/src/locales/sw.po | 54 +++++++++++++++++++++++++++---- 1 file changed, 48 insertions(+), 6 deletions(-) diff --git a/frontend/viewer/src/locales/sw.po b/frontend/viewer/src/locales/sw.po index fe6eccdddd..46d23b3612 100644 --- a/frontend/viewer/src/locales/sw.po +++ b/frontend/viewer/src/locales/sw.po @@ -8,7 +8,7 @@ msgstr "" "Language: sw\n" "Project-Id-Version: language-depot\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2026-06-26 09:11\n" +"PO-Revision-Date: 2026-07-01 04:22\n" "Last-Translator: \n" "Language-Team: Swahili\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" @@ -225,6 +225,11 @@ msgstr "ingizo" msgid "Analysis" msgstr "Uchambuzi" +#. Field label in the create-project dialog. An optional additional analysis writing system to create (English is always included), entered as an IETF language tag. +#: src/home/CreateProjectDialog.svelte +msgid "Analysis writing system code" +msgstr "Uchambuzi wa uandishi wa mfumo wa msimbo" + #. Relevant view: Classic #. Lite view equivalent: "Any part of speech" #. Filter option: clear grammatical info filter @@ -335,6 +340,7 @@ msgstr "Uangaliaji wa kuvinjari umeshindikana" #. Appears in dialog footer; discards any pending edits #. Synonyms across UI: "Don't delete" (Delete dialog), "Close" (About dialog) #. Keep translation brief (3-4 chars in some languages) to fit button layout +#: src/home/CreateProjectDialog.svelte #: src/lib/admin-dialogs/GetProjectByCodeDialog.svelte #: src/lib/components/SubmitOrCancel.svelte #: src/lib/components/audio/AudioDialog.svelte @@ -398,6 +404,11 @@ msgstr "Funga" msgid "Close Dictionary" msgstr "Funga Kamusi" +#. Field label in the create-project dialog. The project's short machine-readable identifier (slug), e.g. "my-dictionary". +#: src/home/CreateProjectDialog.svelte +msgid "Code" +msgstr "Msimbo" + #. Tab or section #: src/lib/components/ThemePicker.svelte msgid "Color" @@ -471,6 +482,16 @@ msgstr "Nakili toleo" msgid "Couldn't sync right now — your local changes are safe." msgstr "Haikuweza kusawazisha kwa sasa — mabadiliko yako ya ndani yako salama." +#. Confirm button in the create-project dialog footer; creates the new dictionary project. +#: src/home/CreateProjectDialog.svelte +msgid "Create" +msgstr "Tengeneza" + +#. Subtitle on the dev-only New Project button; the new project is a blank, local-only FieldWorks Lite project. +#: src/home/HomeView.svelte +msgid "Create a new FieldWorks Lite project" +msgstr "Tengeneza mradi mpya wa FieldWorks Lite" + #. Dialog title when creating a new custom view. #: src/lib/views/custom/CreateCustomViewDialog.svelte msgid "Create Custom View" @@ -681,6 +702,11 @@ msgstr "Inapakua {0}..." msgid "Downloading..." msgstr "Inapakua..." +#. Placeholder in the Vernacular writing system input. The example IETF language tags don't need to be translated. +#: src/home/CreateProjectDialog.svelte +msgid "e.g. th, sw" +msgstr "mfano: th, sw" + #. Dialog title when editing an existing custom view. #: src/lib/views/custom/EditCustomViewDialog.svelte msgid "Edit Custom View" @@ -1153,6 +1179,7 @@ msgstr "Mitaa" #. Subtitle shown on a project card when the project has no server configured (no sync partner). #: src/home/HomeView.svelte +#: src/home/HomeView.svelte msgid "Local only" msgstr "Mitaa tu" @@ -1265,11 +1292,13 @@ msgid "My custom view..." msgstr "Mtazamo wangu maalum..." #. Field label for the custom view name input. +#: src/home/CreateProjectDialog.svelte #: src/lib/views/custom/CustomViewForm.svelte msgid "Name" msgstr "Jina" #. Validation error shown when the custom view name is empty. +#: src/home/CreateProjectDialog.svelte #: src/lib/views/custom/validation.ts msgid "Name is required" msgstr "Jina linahitajika" @@ -1303,6 +1332,11 @@ msgstr "Data mpya" msgid "New Entry" msgstr "Ingizo Mpya" +#: src/home/CreateProjectDialog.svelte +#: src/home/HomeView.svelte +msgid "New Project" +msgstr "Mradi Mpya" + #. Relevant view: Lite #. Classic view equivalent: "New Entry" #. Dialog title for creating new word @@ -1584,11 +1618,6 @@ msgstr "Mradi {0} haipatikani kwenye {1}" msgid "Project {0} on {1} is not yet set up for FieldWorks Lite" msgstr "Mradi {0} kwenye {1} haujajajengwa kwa FieldWorks Lite" -#. Placeholder for project search -#: src/home/HomeView.svelte -msgid "Project name..." -msgstr "Jina la mradi..." - #. Filter option #. Publication type/dictionary for entries #. Used to organize entries by which publication(s) they should appear in @@ -2085,6 +2114,10 @@ msgstr "Hitilafu isiyojulikana" msgid "Unknown error {0}" msgstr "Hitilafu isiyojulikana {0}" +#: src/home/CreateProjectDialog.svelte +msgid "Unknown error creating project" +msgstr "Hitilafu isiyojulikana wakati wa kuunda mradi" + #. Error message #: src/lib/admin-dialogs/GetProjectByCodeDialog.svelte msgid "Unknown error downloading {0}" @@ -2169,6 +2202,15 @@ msgstr "Inatumia sehemu kama" msgid "Vernacular" msgstr "Lugha ya kienyeji" +#. Field label in the create-project dialog. The writing system for the language being documented (the vernacular), entered as an IETF language tag. +#: src/home/CreateProjectDialog.svelte +msgid "Vernacular writing system code" +msgstr "Msimbo wa mfumo wa uandishi wa lugha ya kienyeji" + +#: src/home/CreateProjectDialog.svelte +msgid "Vernacular writing system is required" +msgstr "Mfumo wa uandishi wa lugha ya kienyeji unahitajika" + #. Button label #: src/project/browse/ViewPicker.svelte msgid "View" From 28a4e977091adf451be5bf2d509fb3740ea0c155 Mon Sep 17 00:00:00 2001 From: Tim Haasdyk Date: Fri, 3 Jul 2026 06:36:14 +0200 Subject: [PATCH 42/65] Update source file en.po [ci skip] --- frontend/viewer/src/locales/en.po | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/frontend/viewer/src/locales/en.po b/frontend/viewer/src/locales/en.po index 3e1c92a748..6b84bbad2d 100644 --- a/frontend/viewer/src/locales/en.po +++ b/frontend/viewer/src/locales/en.po @@ -1174,7 +1174,6 @@ msgstr "Local" #. Subtitle shown on a project card when the project has no server configured (no sync partner). #: src/home/HomeView.svelte -#: src/home/HomeView.svelte msgid "Local only" msgstr "Local only" @@ -1328,10 +1327,13 @@ msgid "New Entry" msgstr "New Entry" #: src/home/CreateProjectDialog.svelte -#: src/home/HomeView.svelte msgid "New Project" msgstr "New Project" +#: src/home/HomeView.svelte +msgid "New Project (Local only)" +msgstr "New Project (Local only)" + #. Relevant view: Lite #. Classic view equivalent: "New Entry" #. Dialog title for creating new word @@ -1940,6 +1942,7 @@ msgid "Syncing..." msgstr "Syncing..." #. Theme option +#: src/lib/activity/utils.ts #: src/lib/components/ThemePicker.svelte msgid "System" msgstr "System" @@ -2090,9 +2093,9 @@ msgstr "Unable to open in FieldWorks" #. Fallback value shown when author name or last-change date is unavailable (e.g., in activity history or the sync panel). #: src/lib/activity/ActivityFilter.svelte #: src/lib/activity/ActivityFilter.svelte -#: src/lib/activity/ActivityFilter.svelte #: src/lib/activity/ActivityItem.svelte #: src/lib/activity/ActivityView.svelte +#: src/lib/activity/utils.ts #: src/project/sync/FwLiteToFwMergeDetails.svelte #: src/project/sync/FwLiteToFwMergeDetails.svelte msgid "Unknown" From b323684db11a4a2b604589271bca9393c97b86a8 Mon Sep 17 00:00:00 2001 From: Tim Haasdyk Date: Fri, 3 Jul 2026 06:36:18 +0200 Subject: [PATCH 43/65] New translations en.po (French) [ci skip] --- frontend/viewer/src/locales/fr.po | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/frontend/viewer/src/locales/fr.po b/frontend/viewer/src/locales/fr.po index 7af88b21a2..c39b36f0b6 100644 --- a/frontend/viewer/src/locales/fr.po +++ b/frontend/viewer/src/locales/fr.po @@ -8,7 +8,7 @@ msgstr "" "Language: fr\n" "Project-Id-Version: language-depot\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2026-07-01 04:22\n" +"PO-Revision-Date: 2026-07-03 04:36\n" "Last-Translator: \n" "Language-Team: French\n" "Plural-Forms: nplurals=2; plural=(n > 1);\n" @@ -1179,7 +1179,6 @@ msgstr "Local" #. Subtitle shown on a project card when the project has no server configured (no sync partner). #: src/home/HomeView.svelte -#: src/home/HomeView.svelte msgid "Local only" msgstr "Uniquement au niveau local" @@ -1333,10 +1332,13 @@ msgid "New Entry" msgstr "Nouvelle entrée" #: src/home/CreateProjectDialog.svelte -#: src/home/HomeView.svelte msgid "New Project" msgstr "Nouveau projet" +#: src/home/HomeView.svelte +msgid "New Project (Local only)" +msgstr "Nouveau projet (local uniquement)" + #. Relevant view: Lite #. Classic view equivalent: "New Entry" #. Dialog title for creating new word @@ -1945,6 +1947,7 @@ msgid "Syncing..." msgstr "Synchronisation en cours..." #. Theme option +#: src/lib/activity/utils.ts #: src/lib/components/ThemePicker.svelte msgid "System" msgstr "Système" @@ -2095,9 +2098,9 @@ msgstr "Impossible d'ouvrir FieldWorks" #. Fallback value shown when author name or last-change date is unavailable (e.g., in activity history or the sync panel). #: src/lib/activity/ActivityFilter.svelte #: src/lib/activity/ActivityFilter.svelte -#: src/lib/activity/ActivityFilter.svelte #: src/lib/activity/ActivityItem.svelte #: src/lib/activity/ActivityView.svelte +#: src/lib/activity/utils.ts #: src/project/sync/FwLiteToFwMergeDetails.svelte #: src/project/sync/FwLiteToFwMergeDetails.svelte msgid "Unknown" From f99e6d0b5ef89a29a3db02d505cbd68a22446dc1 Mon Sep 17 00:00:00 2001 From: Tim Haasdyk Date: Fri, 3 Jul 2026 06:36:19 +0200 Subject: [PATCH 44/65] New translations en.po (Spanish) [ci skip] --- frontend/viewer/src/locales/es.po | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/frontend/viewer/src/locales/es.po b/frontend/viewer/src/locales/es.po index 8627d57efd..afde215bb7 100644 --- a/frontend/viewer/src/locales/es.po +++ b/frontend/viewer/src/locales/es.po @@ -8,7 +8,7 @@ msgstr "" "Language: es\n" "Project-Id-Version: language-depot\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2026-07-01 04:22\n" +"PO-Revision-Date: 2026-07-03 04:36\n" "Last-Translator: \n" "Language-Team: Spanish\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" @@ -1179,7 +1179,6 @@ msgstr "Local" #. Subtitle shown on a project card when the project has no server configured (no sync partner). #: src/home/HomeView.svelte -#: src/home/HomeView.svelte msgid "Local only" msgstr "Sólo local" @@ -1333,10 +1332,13 @@ msgid "New Entry" msgstr "Nueva entrada" #: src/home/CreateProjectDialog.svelte -#: src/home/HomeView.svelte msgid "New Project" msgstr "Nuevo proyecto" +#: src/home/HomeView.svelte +msgid "New Project (Local only)" +msgstr "Nuevo proyecto (sólo local)" + #. Relevant view: Lite #. Classic view equivalent: "New Entry" #. Dialog title for creating new word @@ -1945,6 +1947,7 @@ msgid "Syncing..." msgstr "Sincronizando..." #. Theme option +#: src/lib/activity/utils.ts #: src/lib/components/ThemePicker.svelte msgid "System" msgstr "Sistema" @@ -2095,9 +2098,9 @@ msgstr "No se puede abrir en FieldWorks" #. Fallback value shown when author name or last-change date is unavailable (e.g., in activity history or the sync panel). #: src/lib/activity/ActivityFilter.svelte #: src/lib/activity/ActivityFilter.svelte -#: src/lib/activity/ActivityFilter.svelte #: src/lib/activity/ActivityItem.svelte #: src/lib/activity/ActivityView.svelte +#: src/lib/activity/utils.ts #: src/project/sync/FwLiteToFwMergeDetails.svelte #: src/project/sync/FwLiteToFwMergeDetails.svelte msgid "Unknown" From 33b98918114731678e85c665110dd6d69a2a0d58 Mon Sep 17 00:00:00 2001 From: Tim Haasdyk Date: Fri, 3 Jul 2026 06:36:21 +0200 Subject: [PATCH 45/65] New translations en.po (Korean) [ci skip] --- frontend/viewer/src/locales/ko.po | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/frontend/viewer/src/locales/ko.po b/frontend/viewer/src/locales/ko.po index ac6eea56e8..51dced089c 100644 --- a/frontend/viewer/src/locales/ko.po +++ b/frontend/viewer/src/locales/ko.po @@ -8,7 +8,7 @@ msgstr "" "Language: ko\n" "Project-Id-Version: language-depot\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2026-07-01 04:22\n" +"PO-Revision-Date: 2026-07-03 04:36\n" "Last-Translator: \n" "Language-Team: Korean\n" "Plural-Forms: nplurals=1; plural=0;\n" @@ -1179,7 +1179,6 @@ msgstr "로컬" #. Subtitle shown on a project card when the project has no server configured (no sync partner). #: src/home/HomeView.svelte -#: src/home/HomeView.svelte msgid "Local only" msgstr "로컬 전용" @@ -1333,10 +1332,13 @@ msgid "New Entry" msgstr "새 항목" #: src/home/CreateProjectDialog.svelte -#: src/home/HomeView.svelte msgid "New Project" msgstr "새로운 프로젝트" +#: src/home/HomeView.svelte +msgid "New Project (Local only)" +msgstr "새로운 프로젝트 (지역 한정)" + #. Relevant view: Lite #. Classic view equivalent: "New Entry" #. Dialog title for creating new word @@ -1945,6 +1947,7 @@ msgid "Syncing..." msgstr "동기화..." #. Theme option +#: src/lib/activity/utils.ts #: src/lib/components/ThemePicker.svelte msgid "System" msgstr "시스템" @@ -2095,9 +2098,9 @@ msgstr "FieldWorks에서 열 수 없음" #. Fallback value shown when author name or last-change date is unavailable (e.g., in activity history or the sync panel). #: src/lib/activity/ActivityFilter.svelte #: src/lib/activity/ActivityFilter.svelte -#: src/lib/activity/ActivityFilter.svelte #: src/lib/activity/ActivityItem.svelte #: src/lib/activity/ActivityView.svelte +#: src/lib/activity/utils.ts #: src/project/sync/FwLiteToFwMergeDetails.svelte #: src/project/sync/FwLiteToFwMergeDetails.svelte msgid "Unknown" From 705f3c0a17ca0797a8a6d7dee529d8c76f06d354 Mon Sep 17 00:00:00 2001 From: Tim Haasdyk Date: Fri, 3 Jul 2026 06:36:22 +0200 Subject: [PATCH 46/65] New translations en.po (Vietnamese) [ci skip] --- frontend/viewer/src/locales/vi.po | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/frontend/viewer/src/locales/vi.po b/frontend/viewer/src/locales/vi.po index 2a62268b5a..7a6f5ab45c 100644 --- a/frontend/viewer/src/locales/vi.po +++ b/frontend/viewer/src/locales/vi.po @@ -8,7 +8,7 @@ msgstr "" "Language: vi\n" "Project-Id-Version: language-depot\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2026-07-01 04:22\n" +"PO-Revision-Date: 2026-07-03 04:36\n" "Last-Translator: \n" "Language-Team: Vietnamese\n" "Plural-Forms: nplurals=1; plural=0;\n" @@ -1179,7 +1179,6 @@ msgstr "Cục bộ" #. Subtitle shown on a project card when the project has no server configured (no sync partner). #: src/home/HomeView.svelte -#: src/home/HomeView.svelte msgid "Local only" msgstr "Chỉ cục bộ" @@ -1333,10 +1332,13 @@ msgid "New Entry" msgstr "Mục mới" #: src/home/CreateProjectDialog.svelte -#: src/home/HomeView.svelte msgid "New Project" msgstr "Dự án mới" +#: src/home/HomeView.svelte +msgid "New Project (Local only)" +msgstr "Dự án mới (Chỉ dành cho người dùng trong nước)" + #. Relevant view: Lite #. Classic view equivalent: "New Entry" #. Dialog title for creating new word @@ -1945,6 +1947,7 @@ msgid "Syncing..." msgstr "Đang đồng bộ..." #. Theme option +#: src/lib/activity/utils.ts #: src/lib/components/ThemePicker.svelte msgid "System" msgstr "Hệ thống" @@ -2095,9 +2098,9 @@ msgstr "Không thể mở trong FieldWorks" #. Fallback value shown when author name or last-change date is unavailable (e.g., in activity history or the sync panel). #: src/lib/activity/ActivityFilter.svelte #: src/lib/activity/ActivityFilter.svelte -#: src/lib/activity/ActivityFilter.svelte #: src/lib/activity/ActivityItem.svelte #: src/lib/activity/ActivityView.svelte +#: src/lib/activity/utils.ts #: src/project/sync/FwLiteToFwMergeDetails.svelte #: src/project/sync/FwLiteToFwMergeDetails.svelte msgid "Unknown" From f4714241ea841ba65badcc6dfc3908cd0f1b179c Mon Sep 17 00:00:00 2001 From: Tim Haasdyk Date: Fri, 3 Jul 2026 06:36:24 +0200 Subject: [PATCH 47/65] New translations en.po (Indonesian) [ci skip] --- frontend/viewer/src/locales/id.po | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/frontend/viewer/src/locales/id.po b/frontend/viewer/src/locales/id.po index e9d39aa614..ff548f878c 100644 --- a/frontend/viewer/src/locales/id.po +++ b/frontend/viewer/src/locales/id.po @@ -8,7 +8,7 @@ msgstr "" "Language: id\n" "Project-Id-Version: language-depot\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2026-07-01 04:22\n" +"PO-Revision-Date: 2026-07-03 04:36\n" "Last-Translator: \n" "Language-Team: Indonesian\n" "Plural-Forms: nplurals=1; plural=0;\n" @@ -1179,7 +1179,6 @@ msgstr "Lokal" #. Subtitle shown on a project card when the project has no server configured (no sync partner). #: src/home/HomeView.svelte -#: src/home/HomeView.svelte msgid "Local only" msgstr "Hanya lokal" @@ -1333,10 +1332,13 @@ msgid "New Entry" msgstr "Entri Baru" #: src/home/CreateProjectDialog.svelte -#: src/home/HomeView.svelte msgid "New Project" msgstr "Proyek Baru" +#: src/home/HomeView.svelte +msgid "New Project (Local only)" +msgstr "Proyek Baru (Hanya untuk wilayah lokal)" + #. Relevant view: Lite #. Classic view equivalent: "New Entry" #. Dialog title for creating new word @@ -1945,6 +1947,7 @@ msgid "Syncing..." msgstr "Menyinkronkan..." #. Theme option +#: src/lib/activity/utils.ts #: src/lib/components/ThemePicker.svelte msgid "System" msgstr "Sistem" @@ -2095,9 +2098,9 @@ msgstr "Tidak dapat dibuka di FieldWorks" #. Fallback value shown when author name or last-change date is unavailable (e.g., in activity history or the sync panel). #: src/lib/activity/ActivityFilter.svelte #: src/lib/activity/ActivityFilter.svelte -#: src/lib/activity/ActivityFilter.svelte #: src/lib/activity/ActivityItem.svelte #: src/lib/activity/ActivityView.svelte +#: src/lib/activity/utils.ts #: src/project/sync/FwLiteToFwMergeDetails.svelte #: src/project/sync/FwLiteToFwMergeDetails.svelte msgid "Unknown" From aa085644126eb3a88e49d99b5cc5b2cdc65ba694 Mon Sep 17 00:00:00 2001 From: Tim Haasdyk Date: Fri, 3 Jul 2026 06:36:25 +0200 Subject: [PATCH 48/65] New translations en.po (Malay) [ci skip] --- frontend/viewer/src/locales/ms.po | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/frontend/viewer/src/locales/ms.po b/frontend/viewer/src/locales/ms.po index 7c1fa87bb4..6c2b9871c2 100644 --- a/frontend/viewer/src/locales/ms.po +++ b/frontend/viewer/src/locales/ms.po @@ -8,7 +8,7 @@ msgstr "" "Language: ms\n" "Project-Id-Version: language-depot\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2026-07-01 04:22\n" +"PO-Revision-Date: 2026-07-03 04:36\n" "Last-Translator: \n" "Language-Team: Malay\n" "Plural-Forms: nplurals=1; plural=0;\n" @@ -1179,7 +1179,6 @@ msgstr "Tempatan" #. Subtitle shown on a project card when the project has no server configured (no sync partner). #: src/home/HomeView.svelte -#: src/home/HomeView.svelte msgid "Local only" msgstr "Tempatan sahaja" @@ -1333,10 +1332,13 @@ msgid "New Entry" msgstr "Entri Baru" #: src/home/CreateProjectDialog.svelte -#: src/home/HomeView.svelte msgid "New Project" msgstr "Projek Baru" +#: src/home/HomeView.svelte +msgid "New Project (Local only)" +msgstr "Projek Baru (Tempatan sahaja)" + #. Relevant view: Lite #. Classic view equivalent: "New Entry" #. Dialog title for creating new word @@ -1945,6 +1947,7 @@ msgid "Syncing..." msgstr "Sedang disegerakkan..." #. Theme option +#: src/lib/activity/utils.ts #: src/lib/components/ThemePicker.svelte msgid "System" msgstr "Sistem" @@ -2095,9 +2098,9 @@ msgstr "Tidak dapat membuka dalam FieldWorks" #. Fallback value shown when author name or last-change date is unavailable (e.g., in activity history or the sync panel). #: src/lib/activity/ActivityFilter.svelte #: src/lib/activity/ActivityFilter.svelte -#: src/lib/activity/ActivityFilter.svelte #: src/lib/activity/ActivityItem.svelte #: src/lib/activity/ActivityView.svelte +#: src/lib/activity/utils.ts #: src/project/sync/FwLiteToFwMergeDetails.svelte #: src/project/sync/FwLiteToFwMergeDetails.svelte msgid "Unknown" From 1eabc2749345277f0c18d0fda3792d404216e45f Mon Sep 17 00:00:00 2001 From: Tim Haasdyk Date: Fri, 3 Jul 2026 06:36:27 +0200 Subject: [PATCH 49/65] New translations en.po (Swahili) [ci skip] --- frontend/viewer/src/locales/sw.po | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/frontend/viewer/src/locales/sw.po b/frontend/viewer/src/locales/sw.po index 46d23b3612..89c7a7f05b 100644 --- a/frontend/viewer/src/locales/sw.po +++ b/frontend/viewer/src/locales/sw.po @@ -8,7 +8,7 @@ msgstr "" "Language: sw\n" "Project-Id-Version: language-depot\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2026-07-01 04:22\n" +"PO-Revision-Date: 2026-07-03 04:36\n" "Last-Translator: \n" "Language-Team: Swahili\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" @@ -1179,7 +1179,6 @@ msgstr "Mitaa" #. Subtitle shown on a project card when the project has no server configured (no sync partner). #: src/home/HomeView.svelte -#: src/home/HomeView.svelte msgid "Local only" msgstr "Mitaa tu" @@ -1333,10 +1332,13 @@ msgid "New Entry" msgstr "Ingizo Mpya" #: src/home/CreateProjectDialog.svelte -#: src/home/HomeView.svelte msgid "New Project" msgstr "Mradi Mpya" +#: src/home/HomeView.svelte +msgid "New Project (Local only)" +msgstr "Mradi Mpya (Kwenye eneo tu)" + #. Relevant view: Lite #. Classic view equivalent: "New Entry" #. Dialog title for creating new word @@ -1945,6 +1947,7 @@ msgid "Syncing..." msgstr "Inaoanisha..." #. Theme option +#: src/lib/activity/utils.ts #: src/lib/components/ThemePicker.svelte msgid "System" msgstr "Mfumo" @@ -2095,9 +2098,9 @@ msgstr "Haiwezi kufungua katika FieldWorks" #. Fallback value shown when author name or last-change date is unavailable (e.g., in activity history or the sync panel). #: src/lib/activity/ActivityFilter.svelte #: src/lib/activity/ActivityFilter.svelte -#: src/lib/activity/ActivityFilter.svelte #: src/lib/activity/ActivityItem.svelte #: src/lib/activity/ActivityView.svelte +#: src/lib/activity/utils.ts #: src/project/sync/FwLiteToFwMergeDetails.svelte #: src/project/sync/FwLiteToFwMergeDetails.svelte msgid "Unknown" From 243c82042d9290b51c7424b9921da54e8a9b19a2 Mon Sep 17 00:00:00 2001 From: Tim Haasdyk Date: Sat, 4 Jul 2026 06:37:03 +0200 Subject: [PATCH 50/65] Update source file en.po [ci skip] --- frontend/viewer/src/locales/en.po | 67 +++++++++++++++++++++++++++++++ 1 file changed, 67 insertions(+) diff --git a/frontend/viewer/src/locales/en.po b/frontend/viewer/src/locales/en.po index 6b84bbad2d..b420b6f859 100644 --- a/frontend/viewer/src/locales/en.po +++ b/frontend/viewer/src/locales/en.po @@ -187,6 +187,10 @@ msgstr "Add to dictionary" msgid "Add Word" msgstr "Add Word" +#: src/project/dashboard/DashboardView.svelte +msgid "Add your first entry to start building your dictionary." +msgstr "Add your first entry to start building your dictionary." + #. Radio option in custom view writing system picker. #. Includes all writing systems (no filtering). #: src/lib/views/custom/CustomViewWritingSystems.svelte @@ -225,6 +229,10 @@ msgstr "Analysis" msgid "Analysis writing system code" msgstr "Analysis writing system code" +#: src/project/dashboard/DashboardView.svelte +msgid "Analysis writing systems" +msgstr "Analysis writing systems" + #. Relevant view: Classic #. Lite view equivalent: "Any part of speech" #. Filter option: clear grammatical info filter @@ -370,6 +378,7 @@ msgstr "Choose theme" #. Lite view equivalent: "Display as" #. Field label: form for citing in dictionary #: src/lib/views/entity-config.ts +#: src/project/dashboard/DashboardView.svelte msgid "Citation form" msgstr "Citation form" @@ -553,9 +562,14 @@ msgstr "Dark" #. Sidebar menu item #: src/project/ProjectSidebar.svelte +#: src/project/dashboard/DashboardView.svelte msgid "Dashboard" msgstr "Dashboard" +#: src/project/dashboard/DashboardView.svelte +msgid "Dashboard failed to load" +msgstr "Dashboard failed to load" + #. Field label #: src/lib/troubleshoot/TroubleshootDialog.svelte msgid "Data Directory" @@ -565,6 +579,7 @@ msgstr "Data Directory" #. Definition for a sense/meaning (e.g., "bank" = "financial institution") #. Appears under each Sense/Meaning in entry editor #: src/lib/views/entity-config.ts +#: src/project/dashboard/DashboardView.svelte msgid "Definition" msgstr "Definition" @@ -726,6 +741,14 @@ msgstr "Ends with" msgid "Entries missing..." msgstr "Entries missing..." +#: src/project/dashboard/DashboardView.svelte +msgid "Entries with examples" +msgstr "Entries with examples" + +#: src/project/dashboard/DashboardView.svelte +msgid "Entries with senses" +msgstr "Entries with senses" + #. EntryView label for the current dictionary object when FieldWorks Classic is shown #: src/project/browse/EntryView.svelte msgid "entry" @@ -794,6 +817,10 @@ msgstr "Example" msgid "Example sentence" msgstr "Example sentence" +#: src/project/dashboard/DashboardView.svelte +msgid "Example sentences" +msgstr "Example sentences" + #. Error message when copy fails #: src/lib/components/ui/button/copy-button.svelte msgid "Failed to copy to clipboard" @@ -1000,6 +1027,7 @@ msgstr "Get support" #. Different from "Definition" (longer explanation) #. Appears under each sense/meaning; concise translation #: src/lib/views/entity-config.ts +#: src/project/dashboard/DashboardView.svelte msgid "Gloss" msgstr "Gloss" @@ -1125,6 +1153,7 @@ msgstr "Lexbox logo" #. Lite view equivalent: "Word" #. Field label: the main headword/base form #: src/lib/views/entity-config.ts +#: src/project/dashboard/DashboardView.svelte msgid "Lexeme form" msgstr "Lexeme form" @@ -1351,6 +1380,10 @@ msgstr "Newest first" msgid "Next" msgstr "Next" +#: src/project/dashboard/DashboardView.svelte +msgid "Next milestone: {0}. {1} to go." +msgstr "Next milestone: {0}. {1} to go." + #. Empty state when activity list filters exclude every commit. #: src/lib/activity/ActivityView.svelte msgid "No activity matches these filters" @@ -1360,6 +1393,10 @@ msgstr "No activity matches these filters" msgid "No activity types" msgstr "No activity types" +#: src/project/dashboard/DashboardView.svelte +msgid "No analysis writing systems configured." +msgstr "No analysis writing systems configured." + #. Placeholder when no audio file #. Shows in audio field when empty (no file uploaded yet) #: src/lib/components/field-editors/audio-input.svelte @@ -1420,6 +1457,10 @@ msgstr "No server configured" msgid "No subject, unable to create a new {0}" msgstr "No subject, unable to create a new {0}" +#: src/project/dashboard/DashboardView.svelte +msgid "No vernacular writing systems configured." +msgstr "No vernacular writing systems configured." + #. Relevant view: Lite #. Classic view equivalent: "No entries found" #: src/lib/entry-editor/EntryOrSensePicker.svelte @@ -1971,6 +2012,10 @@ msgstr "Tasks" msgid "Tell us about a bug or issue you’ve encountered." msgstr "Tell us about a bug or issue you’ve encountered." +#: src/project/dashboard/DashboardView.svelte +msgid "Tell us how you work and what would help most. Your ideas guide what we build." +msgstr "Tell us how you work and what would help most. Your ideas guide what we build." + #. View description #: src/project/browse/ViewPicker.svelte msgid "The *FieldWorks Classic* view, on the other hand, is designed for users who are familiar with *[FieldWorks Language Explorer](https://software.sil.org/fieldworks/)*." @@ -2042,6 +2087,12 @@ msgstr "Toggle filters" msgid "Toggle pinned" msgstr "Toggle pinned" +#: src/project/dashboard/DashboardView.svelte +#: src/project/dashboard/DashboardView.svelte +#: src/project/dashboard/DashboardView.svelte +msgid "Total entries" +msgstr "Total entries" + #. Field label #: src/lib/entry-editor/object-editors/ExampleEditorPrimitive.svelte #: src/lib/views/entity-config.ts @@ -2209,6 +2260,10 @@ msgstr "Vernacular writing system code" msgid "Vernacular writing system is required" msgstr "Vernacular writing system is required" +#: src/project/dashboard/DashboardView.svelte +msgid "Vernacular writing systems" +msgstr "Vernacular writing systems" + #. Button label #: src/project/browse/ViewPicker.svelte msgid "View" @@ -2219,6 +2274,10 @@ msgstr "View" msgid "violet" msgstr "violet" +#: src/project/dashboard/DashboardView.svelte +msgid "What would you like to see here?" +msgstr "What would you like to see here?" + #. External link button text for help #: src/home/Server.svelte msgid "Where are my projects?" @@ -2315,3 +2374,11 @@ msgstr "You don't have permission to download project {0} from {1}" #: src/home/Server.svelte msgid "You have already downloaded the {0} project" msgstr "You have already downloaded the {0} project" + +#: src/project/dashboard/DashboardView.svelte +msgid "You've passed every milestone. What an achievement!" +msgstr "You've passed every milestone. What an achievement!" + +#: src/project/dashboard/DashboardView.svelte +msgid "Your dictionary starts here" +msgstr "Your dictionary starts here" From 77f0065cc1145932908b0f4214cdcef7f56d4696 Mon Sep 17 00:00:00 2001 From: Tim Haasdyk Date: Sat, 4 Jul 2026 06:37:06 +0200 Subject: [PATCH 51/65] New translations en.po (French) [ci skip] --- frontend/viewer/src/locales/fr.po | 69 ++++++++++++++++++++++++++++++- 1 file changed, 68 insertions(+), 1 deletion(-) diff --git a/frontend/viewer/src/locales/fr.po b/frontend/viewer/src/locales/fr.po index c39b36f0b6..d54ed97ece 100644 --- a/frontend/viewer/src/locales/fr.po +++ b/frontend/viewer/src/locales/fr.po @@ -8,7 +8,7 @@ msgstr "" "Language: fr\n" "Project-Id-Version: language-depot\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2026-07-03 04:36\n" +"PO-Revision-Date: 2026-07-04 04:37\n" "Last-Translator: \n" "Language-Team: French\n" "Plural-Forms: nplurals=2; plural=(n > 1);\n" @@ -192,6 +192,10 @@ msgstr "Ajouter au dictionnaire" msgid "Add Word" msgstr "Ajouter un mot" +#: src/project/dashboard/DashboardView.svelte +msgid "Add your first entry to start building your dictionary." +msgstr "Ajoutez votre première entrée pour commencer à construire votre dictionnaire." + #. Radio option in custom view writing system picker. #. Includes all writing systems (no filtering). #: src/lib/views/custom/CustomViewWritingSystems.svelte @@ -230,6 +234,10 @@ msgstr "Analyse" msgid "Analysis writing system code" msgstr "Code du système d'écriture d'analyse" +#: src/project/dashboard/DashboardView.svelte +msgid "Analysis writing systems" +msgstr "Systèmes d'écriture d'analyse" + #. Relevant view: Classic #. Lite view equivalent: "Any part of speech" #. Filter option: clear grammatical info filter @@ -375,6 +383,7 @@ msgstr "Choisir un thème" #. Lite view equivalent: "Display as" #. Field label: form for citing in dictionary #: src/lib/views/entity-config.ts +#: src/project/dashboard/DashboardView.svelte msgid "Citation form" msgstr "Autonyme" @@ -558,9 +567,14 @@ msgstr "Sombre" #. Sidebar menu item #: src/project/ProjectSidebar.svelte +#: src/project/dashboard/DashboardView.svelte msgid "Dashboard" msgstr "Tableau de bord" +#: src/project/dashboard/DashboardView.svelte +msgid "Dashboard failed to load" +msgstr "Le tableau de bord n'a pas pu être chargé" + #. Field label #: src/lib/troubleshoot/TroubleshootDialog.svelte msgid "Data Directory" @@ -570,6 +584,7 @@ msgstr "Répertoire de données" #. Definition for a sense/meaning (e.g., "bank" = "financial institution") #. Appears under each Sense/Meaning in entry editor #: src/lib/views/entity-config.ts +#: src/project/dashboard/DashboardView.svelte msgid "Definition" msgstr "Définition" @@ -731,6 +746,14 @@ msgstr "Se termine par" msgid "Entries missing..." msgstr "Entrées manquantes..." +#: src/project/dashboard/DashboardView.svelte +msgid "Entries with examples" +msgstr "Entrées avec des exemples" + +#: src/project/dashboard/DashboardView.svelte +msgid "Entries with senses" +msgstr "Entrées avec sens" + #. EntryView label for the current dictionary object when FieldWorks Classic is shown #: src/project/browse/EntryView.svelte msgid "entry" @@ -799,6 +822,10 @@ msgstr "Exemple" msgid "Example sentence" msgstr "Phrase exemplaire" +#: src/project/dashboard/DashboardView.svelte +msgid "Example sentences" +msgstr "Exemple de phrases" + #. Error message when copy fails #: src/lib/components/ui/button/copy-button.svelte msgid "Failed to copy to clipboard" @@ -1005,6 +1032,7 @@ msgstr "Obtenir de l'aide" #. Different from "Definition" (longer explanation) #. Appears under each sense/meaning; concise translation #: src/lib/views/entity-config.ts +#: src/project/dashboard/DashboardView.svelte msgid "Gloss" msgstr "Glose" @@ -1130,6 +1158,7 @@ msgstr "Logo Lexbox" #. Lite view equivalent: "Word" #. Field label: the main headword/base form #: src/lib/views/entity-config.ts +#: src/project/dashboard/DashboardView.svelte msgid "Lexeme form" msgstr "Forme de lexème" @@ -1356,6 +1385,10 @@ msgstr "Plus récent en premier" msgid "Next" msgstr "Suivant" +#: src/project/dashboard/DashboardView.svelte +msgid "Next milestone: {0}. {1} to go." +msgstr "Prochain jalon : {0}. {1} pour y aller." + #. Empty state when activity list filters exclude every commit. #: src/lib/activity/ActivityView.svelte msgid "No activity matches these filters" @@ -1365,6 +1398,10 @@ msgstr "Aucune activité ne correspond à ces filtres" msgid "No activity types" msgstr "Aucun type d'activité" +#: src/project/dashboard/DashboardView.svelte +msgid "No analysis writing systems configured." +msgstr "Aucun système d'écriture d'analyse configuré." + #. Placeholder when no audio file #. Shows in audio field when empty (no file uploaded yet) #: src/lib/components/field-editors/audio-input.svelte @@ -1425,6 +1462,10 @@ msgstr "Pas de serveur configuré" msgid "No subject, unable to create a new {0}" msgstr "Aucun sujet, impossible de créer un nouveau {0}" +#: src/project/dashboard/DashboardView.svelte +msgid "No vernacular writing systems configured." +msgstr "Aucun système d'écriture vernaculaire configuré." + #. Relevant view: Lite #. Classic view equivalent: "No entries found" #: src/lib/entry-editor/EntryOrSensePicker.svelte @@ -1976,6 +2017,10 @@ msgstr "Tâches" msgid "Tell us about a bug or issue you’ve encountered." msgstr "Parlez-nous d'un bug ou d'un problème que vous avez rencontré." +#: src/project/dashboard/DashboardView.svelte +msgid "Tell us how you work and what would help most. Your ideas guide what we build." +msgstr "Dites-nous comment vous travaillez et ce qui vous aiderait le plus." + #. View description #: src/project/browse/ViewPicker.svelte msgid "The *FieldWorks Classic* view, on the other hand, is designed for users who are familiar with *[FieldWorks Language Explorer](https://software.sil.org/fieldworks/)*." @@ -2047,6 +2092,12 @@ msgstr "Basculer les filtres" msgid "Toggle pinned" msgstr "Activer/désactiver épinglé" +#: src/project/dashboard/DashboardView.svelte +#: src/project/dashboard/DashboardView.svelte +#: src/project/dashboard/DashboardView.svelte +msgid "Total entries" +msgstr "Total des entrées" + #. Field label #: src/lib/entry-editor/object-editors/ExampleEditorPrimitive.svelte #: src/lib/views/entity-config.ts @@ -2214,6 +2265,10 @@ msgstr "Code du système d'écriture vernaculaire" msgid "Vernacular writing system is required" msgstr "Un système d'écriture vernaculaire est requis" +#: src/project/dashboard/DashboardView.svelte +msgid "Vernacular writing systems" +msgstr "Systèmes d'écriture vernaculaire" + #. Button label #: src/project/browse/ViewPicker.svelte msgid "View" @@ -2224,6 +2279,10 @@ msgstr "Voir" msgid "violet" msgstr "violet" +#: src/project/dashboard/DashboardView.svelte +msgid "What would you like to see here?" +msgstr "Que voulez-vous voir ici?" + #. External link button text for help #: src/home/Server.svelte msgid "Where are my projects?" @@ -2321,3 +2380,11 @@ msgstr "Vous n'êtes pas autorisé(e) de télécharger le projet {0} depuis {1}" msgid "You have already downloaded the {0} project" msgstr "Vous avez déjà téléchargé le projet {0}" +#: src/project/dashboard/DashboardView.svelte +msgid "You've passed every milestone. What an achievement!" +msgstr "« Vous avez franchi tous les jalons. Quelle réussite! »" + +#: src/project/dashboard/DashboardView.svelte +msgid "Your dictionary starts here" +msgstr "Votre dictionnaire commence ici" + From 15fa8eed3bdd686a222cba937c70cdc4631e8be9 Mon Sep 17 00:00:00 2001 From: Tim Haasdyk Date: Sat, 4 Jul 2026 06:37:07 +0200 Subject: [PATCH 52/65] New translations en.po (Spanish) [ci skip] --- frontend/viewer/src/locales/es.po | 69 ++++++++++++++++++++++++++++++- 1 file changed, 68 insertions(+), 1 deletion(-) diff --git a/frontend/viewer/src/locales/es.po b/frontend/viewer/src/locales/es.po index afde215bb7..7cf5bfaf22 100644 --- a/frontend/viewer/src/locales/es.po +++ b/frontend/viewer/src/locales/es.po @@ -8,7 +8,7 @@ msgstr "" "Language: es\n" "Project-Id-Version: language-depot\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2026-07-03 04:36\n" +"PO-Revision-Date: 2026-07-04 04:37\n" "Last-Translator: \n" "Language-Team: Spanish\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" @@ -192,6 +192,10 @@ msgstr "Añadir al diccionario" msgid "Add Word" msgstr "Añadir palabra" +#: src/project/dashboard/DashboardView.svelte +msgid "Add your first entry to start building your dictionary." +msgstr "Añade tu primera entrada para comenzar a construir tu diccionario." + #. Radio option in custom view writing system picker. #. Includes all writing systems (no filtering). #: src/lib/views/custom/CustomViewWritingSystems.svelte @@ -230,6 +234,10 @@ msgstr "Análisis" msgid "Analysis writing system code" msgstr "Código del sistema de análisis" +#: src/project/dashboard/DashboardView.svelte +msgid "Analysis writing systems" +msgstr "Sistemas de análisis de escritura" + #. Relevant view: Classic #. Lite view equivalent: "Any part of speech" #. Filter option: clear grammatical info filter @@ -375,6 +383,7 @@ msgstr "Elegir tema" #. Lite view equivalent: "Display as" #. Field label: form for citing in dictionary #: src/lib/views/entity-config.ts +#: src/project/dashboard/DashboardView.svelte msgid "Citation form" msgstr "Formulario de cita" @@ -558,9 +567,14 @@ msgstr "Oscuro" #. Sidebar menu item #: src/project/ProjectSidebar.svelte +#: src/project/dashboard/DashboardView.svelte msgid "Dashboard" msgstr "Cuadro de mandos" +#: src/project/dashboard/DashboardView.svelte +msgid "Dashboard failed to load" +msgstr "No se pudo cargar el panel" + #. Field label #: src/lib/troubleshoot/TroubleshootDialog.svelte msgid "Data Directory" @@ -570,6 +584,7 @@ msgstr "Directorio de datos" #. Definition for a sense/meaning (e.g., "bank" = "financial institution") #. Appears under each Sense/Meaning in entry editor #: src/lib/views/entity-config.ts +#: src/project/dashboard/DashboardView.svelte msgid "Definition" msgstr "Definición" @@ -731,6 +746,14 @@ msgstr "Termina con" msgid "Entries missing..." msgstr "Entradas faltantes..." +#: src/project/dashboard/DashboardView.svelte +msgid "Entries with examples" +msgstr "Entradas con ejemplos" + +#: src/project/dashboard/DashboardView.svelte +msgid "Entries with senses" +msgstr "Entradas con sentidos" + #. EntryView label for the current dictionary object when FieldWorks Classic is shown #: src/project/browse/EntryView.svelte msgid "entry" @@ -799,6 +822,10 @@ msgstr "Ejemplo" msgid "Example sentence" msgstr "Ejemplo de frase" +#: src/project/dashboard/DashboardView.svelte +msgid "Example sentences" +msgstr "Ejemplos de frases" + #. Error message when copy fails #: src/lib/components/ui/button/copy-button.svelte msgid "Failed to copy to clipboard" @@ -1005,6 +1032,7 @@ msgstr "Obtener soporte" #. Different from "Definition" (longer explanation) #. Appears under each sense/meaning; concise translation #: src/lib/views/entity-config.ts +#: src/project/dashboard/DashboardView.svelte msgid "Gloss" msgstr "Glosa" @@ -1130,6 +1158,7 @@ msgstr "Logotipo de Lexbox" #. Lite view equivalent: "Word" #. Field label: the main headword/base form #: src/lib/views/entity-config.ts +#: src/project/dashboard/DashboardView.svelte msgid "Lexeme form" msgstr "Forma del lexema" @@ -1356,6 +1385,10 @@ msgstr "Más nuevo primero" msgid "Next" msgstr "Siguiente" +#: src/project/dashboard/DashboardView.svelte +msgid "Next milestone: {0}. {1} to go." +msgstr "Siguiente hito: {0}. {1} para ir." + #. Empty state when activity list filters exclude every commit. #: src/lib/activity/ActivityView.svelte msgid "No activity matches these filters" @@ -1365,6 +1398,10 @@ msgstr "Ninguna actividad coincide con estos filtros" msgid "No activity types" msgstr "No hay tipos de actividad" +#: src/project/dashboard/DashboardView.svelte +msgid "No analysis writing systems configured." +msgstr "No hay sistemas de escritura de análisis configurados." + #. Placeholder when no audio file #. Shows in audio field when empty (no file uploaded yet) #: src/lib/components/field-editors/audio-input.svelte @@ -1425,6 +1462,10 @@ msgstr "Ningún servidor configurado" msgid "No subject, unable to create a new {0}" msgstr "No hay tema, no se puede crear un nuevo {0}" +#: src/project/dashboard/DashboardView.svelte +msgid "No vernacular writing systems configured." +msgstr "No hay sistemas vernáculos de escritura configurados." + #. Relevant view: Lite #. Classic view equivalent: "No entries found" #: src/lib/entry-editor/EntryOrSensePicker.svelte @@ -1976,6 +2017,10 @@ msgstr "Tareas" msgid "Tell us about a bug or issue you’ve encountered." msgstr "Cuéntanos acerca de un error o problema que hayas encontrado." +#: src/project/dashboard/DashboardView.svelte +msgid "Tell us how you work and what would help most. Your ideas guide what we build." +msgstr "Cuéntanos cómo trabajas y qué te ayudaría. Tus ideas guían lo que construimos." + #. View description #: src/project/browse/ViewPicker.svelte msgid "The *FieldWorks Classic* view, on the other hand, is designed for users who are familiar with *[FieldWorks Language Explorer](https://software.sil.org/fieldworks/)*." @@ -2047,6 +2092,12 @@ msgstr "Alternar filtros" msgid "Toggle pinned" msgstr "Alternar fijado" +#: src/project/dashboard/DashboardView.svelte +#: src/project/dashboard/DashboardView.svelte +#: src/project/dashboard/DashboardView.svelte +msgid "Total entries" +msgstr "Total de entradas" + #. Field label #: src/lib/entry-editor/object-editors/ExampleEditorPrimitive.svelte #: src/lib/views/entity-config.ts @@ -2214,6 +2265,10 @@ msgstr "Código del sistema de escritura vernacular" msgid "Vernacular writing system is required" msgstr "El sistema de escritura vernácular es requerido" +#: src/project/dashboard/DashboardView.svelte +msgid "Vernacular writing systems" +msgstr "Sistemas de escritura vernáculares" + #. Button label #: src/project/browse/ViewPicker.svelte msgid "View" @@ -2224,6 +2279,10 @@ msgstr "Ver" msgid "violet" msgstr "violeta" +#: src/project/dashboard/DashboardView.svelte +msgid "What would you like to see here?" +msgstr "¿Qué te gustaría ver aquí?" + #. External link button text for help #: src/home/Server.svelte msgid "Where are my projects?" @@ -2321,3 +2380,11 @@ msgstr "No tiene permiso para descargar el proyecto {0} desde {1}" msgid "You have already downloaded the {0} project" msgstr "Ya has descargado el proyecto {0}" +#: src/project/dashboard/DashboardView.svelte +msgid "You've passed every milestone. What an achievement!" +msgstr "Has superado cada hito. ¡Qué logro!" + +#: src/project/dashboard/DashboardView.svelte +msgid "Your dictionary starts here" +msgstr "Tu diccionario comienza aquí" + From f48c8372678188554a9b81ebf0fd1bff983ba7e8 Mon Sep 17 00:00:00 2001 From: Tim Haasdyk Date: Sat, 4 Jul 2026 06:37:09 +0200 Subject: [PATCH 53/65] New translations en.po (Korean) [ci skip] --- frontend/viewer/src/locales/ko.po | 69 ++++++++++++++++++++++++++++++- 1 file changed, 68 insertions(+), 1 deletion(-) diff --git a/frontend/viewer/src/locales/ko.po b/frontend/viewer/src/locales/ko.po index 51dced089c..e3a09e7882 100644 --- a/frontend/viewer/src/locales/ko.po +++ b/frontend/viewer/src/locales/ko.po @@ -8,7 +8,7 @@ msgstr "" "Language: ko\n" "Project-Id-Version: language-depot\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2026-07-03 04:36\n" +"PO-Revision-Date: 2026-07-04 04:37\n" "Last-Translator: \n" "Language-Team: Korean\n" "Plural-Forms: nplurals=1; plural=0;\n" @@ -192,6 +192,10 @@ msgstr "사전에 추가" msgid "Add Word" msgstr "단어 추가" +#: src/project/dashboard/DashboardView.svelte +msgid "Add your first entry to start building your dictionary." +msgstr "사전 작성을 시작하려면 첫 번째 항목을 추가하세요." + #. Radio option in custom view writing system picker. #. Includes all writing systems (no filtering). #: src/lib/views/custom/CustomViewWritingSystems.svelte @@ -230,6 +234,10 @@ msgstr "분석" msgid "Analysis writing system code" msgstr "시스템 코드 분석 작성" +#: src/project/dashboard/DashboardView.svelte +msgid "Analysis writing systems" +msgstr "분석 작성 시스템" + #. Relevant view: Classic #. Lite view equivalent: "Any part of speech" #. Filter option: clear grammatical info filter @@ -375,6 +383,7 @@ msgstr "테마 선택" #. Lite view equivalent: "Display as" #. Field label: form for citing in dictionary #: src/lib/views/entity-config.ts +#: src/project/dashboard/DashboardView.svelte msgid "Citation form" msgstr "인용 양식" @@ -558,9 +567,14 @@ msgstr "Dark" #. Sidebar menu item #: src/project/ProjectSidebar.svelte +#: src/project/dashboard/DashboardView.svelte msgid "Dashboard" msgstr "대시보드" +#: src/project/dashboard/DashboardView.svelte +msgid "Dashboard failed to load" +msgstr "대시보드가 로드되지 않았습니다." + #. Field label #: src/lib/troubleshoot/TroubleshootDialog.svelte msgid "Data Directory" @@ -570,6 +584,7 @@ msgstr "데이터 디렉토리" #. Definition for a sense/meaning (e.g., "bank" = "financial institution") #. Appears under each Sense/Meaning in entry editor #: src/lib/views/entity-config.ts +#: src/project/dashboard/DashboardView.svelte msgid "Definition" msgstr "정의" @@ -731,6 +746,14 @@ msgstr "로 끝납니다." msgid "Entries missing..." msgstr "항목이 누락되었습니다..." +#: src/project/dashboard/DashboardView.svelte +msgid "Entries with examples" +msgstr "예시가 포함된 항목" + +#: src/project/dashboard/DashboardView.svelte +msgid "Entries with senses" +msgstr "의미가 포함된 항목" + #. EntryView label for the current dictionary object when FieldWorks Classic is shown #: src/project/browse/EntryView.svelte msgid "entry" @@ -799,6 +822,10 @@ msgstr "예" msgid "Example sentence" msgstr "문장 예시" +#: src/project/dashboard/DashboardView.svelte +msgid "Example sentences" +msgstr "예문" + #. Error message when copy fails #: src/lib/components/ui/button/copy-button.svelte msgid "Failed to copy to clipboard" @@ -1005,6 +1032,7 @@ msgstr "지원 받기" #. Different from "Definition" (longer explanation) #. Appears under each sense/meaning; concise translation #: src/lib/views/entity-config.ts +#: src/project/dashboard/DashboardView.svelte msgid "Gloss" msgstr "광택" @@ -1130,6 +1158,7 @@ msgstr "렉스박스 로고" #. Lite view equivalent: "Word" #. Field label: the main headword/base form #: src/lib/views/entity-config.ts +#: src/project/dashboard/DashboardView.svelte msgid "Lexeme form" msgstr "Lexeme 양식" @@ -1356,6 +1385,10 @@ msgstr "최신순" msgid "Next" msgstr "다음" +#: src/project/dashboard/DashboardView.svelte +msgid "Next milestone: {0}. {1} to go." +msgstr "다음 이정표: {0}. {1} 남았습니다." + #. Empty state when activity list filters exclude every commit. #: src/lib/activity/ActivityView.svelte msgid "No activity matches these filters" @@ -1365,6 +1398,10 @@ msgstr "이 필터 조건에 맞는 활동이 없습니다." msgid "No activity types" msgstr "활동 유형 없음" +#: src/project/dashboard/DashboardView.svelte +msgid "No analysis writing systems configured." +msgstr "분석 작성 시스템이 구성되어 있지 않습니다." + #. Placeholder when no audio file #. Shows in audio field when empty (no file uploaded yet) #: src/lib/components/field-editors/audio-input.svelte @@ -1425,6 +1462,10 @@ msgstr "구성된 서버 없음" msgid "No subject, unable to create a new {0}" msgstr "제목이 없습니다, 새로 만들 수 없습니다 {0}" +#: src/project/dashboard/DashboardView.svelte +msgid "No vernacular writing systems configured." +msgstr "구성된 토착 문자 체계가 없습니다." + #. Relevant view: Lite #. Classic view equivalent: "No entries found" #: src/lib/entry-editor/EntryOrSensePicker.svelte @@ -1976,6 +2017,10 @@ msgstr "작업" msgid "Tell us about a bug or issue you’ve encountered." msgstr "발생한 버그나 문제에 대해 알려주세요." +#: src/project/dashboard/DashboardView.svelte +msgid "Tell us how you work and what would help most. Your ideas guide what we build." +msgstr "여러분의 업무 방식과 가장 도움이 될 만한 점이 무엇인지 알려주세요. 여러분의 아이디어가 우리가 개발할 방향을 결정합니다." + #. View description #: src/project/browse/ViewPicker.svelte msgid "The *FieldWorks Classic* view, on the other hand, is designed for users who are familiar with *[FieldWorks Language Explorer](https://software.sil.org/fieldworks/)*." @@ -2047,6 +2092,12 @@ msgstr "필터 토글" msgid "Toggle pinned" msgstr "고정 토글" +#: src/project/dashboard/DashboardView.svelte +#: src/project/dashboard/DashboardView.svelte +#: src/project/dashboard/DashboardView.svelte +msgid "Total entries" +msgstr "총 응모 건수" + #. Field label #: src/lib/entry-editor/object-editors/ExampleEditorPrimitive.svelte #: src/lib/views/entity-config.ts @@ -2214,6 +2265,10 @@ msgstr "토착 문자 체계 코드" msgid "Vernacular writing system is required" msgstr "현지 언어 문자 체계가 필요합니다" +#: src/project/dashboard/DashboardView.svelte +msgid "Vernacular writing systems" +msgstr "지역별 문자 체계" + #. Button label #: src/project/browse/ViewPicker.svelte msgid "View" @@ -2224,6 +2279,10 @@ msgstr "보기" msgid "violet" msgstr "바이올렛" +#: src/project/dashboard/DashboardView.svelte +msgid "What would you like to see here?" +msgstr "이곳에 어떤 내용을 보고 싶으신가요?" + #. External link button text for help #: src/home/Server.svelte msgid "Where are my projects?" @@ -2321,3 +2380,11 @@ msgstr "{1}에서 {0} 프로젝트를 다운로드할 수 있는 권한이 없 msgid "You have already downloaded the {0} project" msgstr "이미 {0} 프로젝트를 다운로드하셨습니다." +#: src/project/dashboard/DashboardView.svelte +msgid "You've passed every milestone. What an achievement!" +msgstr "모든 이정표를 하나하나 달성하셨군요. 정말 대단한 성과입니다!" + +#: src/project/dashboard/DashboardView.svelte +msgid "Your dictionary starts here" +msgstr "여러분의 사전은 여기서 시작됩니다" + From 96f0f5058d739e6adc6c969e1ac788d9cf8af8c8 Mon Sep 17 00:00:00 2001 From: Tim Haasdyk Date: Sat, 4 Jul 2026 06:37:10 +0200 Subject: [PATCH 54/65] New translations en.po (Vietnamese) [ci skip] --- frontend/viewer/src/locales/vi.po | 69 ++++++++++++++++++++++++++++++- 1 file changed, 68 insertions(+), 1 deletion(-) diff --git a/frontend/viewer/src/locales/vi.po b/frontend/viewer/src/locales/vi.po index 7a6f5ab45c..8f54a8bbe8 100644 --- a/frontend/viewer/src/locales/vi.po +++ b/frontend/viewer/src/locales/vi.po @@ -8,7 +8,7 @@ msgstr "" "Language: vi\n" "Project-Id-Version: language-depot\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2026-07-03 04:36\n" +"PO-Revision-Date: 2026-07-04 04:37\n" "Last-Translator: \n" "Language-Team: Vietnamese\n" "Plural-Forms: nplurals=1; plural=0;\n" @@ -192,6 +192,10 @@ msgstr "Thêm vào từ điển" msgid "Add Word" msgstr "Thêm Từ" +#: src/project/dashboard/DashboardView.svelte +msgid "Add your first entry to start building your dictionary." +msgstr "Hãy thêm mục từ đầu tiên để bắt đầu xây dựng từ điển của bạn." + #. Radio option in custom view writing system picker. #. Includes all writing systems (no filtering). #: src/lib/views/custom/CustomViewWritingSystems.svelte @@ -230,6 +234,10 @@ msgstr "Phân tích" msgid "Analysis writing system code" msgstr "Phân tích mã nguồn hệ thống" +#: src/project/dashboard/DashboardView.svelte +msgid "Analysis writing systems" +msgstr "Các hệ thống viết phân tích" + #. Relevant view: Classic #. Lite view equivalent: "Any part of speech" #. Filter option: clear grammatical info filter @@ -375,6 +383,7 @@ msgstr "Chọn chủ đề" #. Lite view equivalent: "Display as" #. Field label: form for citing in dictionary #: src/lib/views/entity-config.ts +#: src/project/dashboard/DashboardView.svelte msgid "Citation form" msgstr "Hình thức trích dẫn" @@ -558,9 +567,14 @@ msgstr "Tối" #. Sidebar menu item #: src/project/ProjectSidebar.svelte +#: src/project/dashboard/DashboardView.svelte msgid "Dashboard" msgstr "Bảng điều khiển" +#: src/project/dashboard/DashboardView.svelte +msgid "Dashboard failed to load" +msgstr "Không thể tải trang tổng quan" + #. Field label #: src/lib/troubleshoot/TroubleshootDialog.svelte msgid "Data Directory" @@ -570,6 +584,7 @@ msgstr "Thư mục dữ liệu" #. Definition for a sense/meaning (e.g., "bank" = "financial institution") #. Appears under each Sense/Meaning in entry editor #: src/lib/views/entity-config.ts +#: src/project/dashboard/DashboardView.svelte msgid "Definition" msgstr "Định nghĩa" @@ -731,6 +746,14 @@ msgstr "Kết thúc bằng" msgid "Entries missing..." msgstr "Các mục còn thiếu..." +#: src/project/dashboard/DashboardView.svelte +msgid "Entries with examples" +msgstr "Các mục có ví dụ" + +#: src/project/dashboard/DashboardView.svelte +msgid "Entries with senses" +msgstr "Các mục từ có nghĩa" + #. EntryView label for the current dictionary object when FieldWorks Classic is shown #: src/project/browse/EntryView.svelte msgid "entry" @@ -799,6 +822,10 @@ msgstr "Ví dụ" msgid "Example sentence" msgstr "Câu ví dụ" +#: src/project/dashboard/DashboardView.svelte +msgid "Example sentences" +msgstr "Các câu ví dụ" + #. Error message when copy fails #: src/lib/components/ui/button/copy-button.svelte msgid "Failed to copy to clipboard" @@ -1005,6 +1032,7 @@ msgstr "Nhận hỗ trợ" #. Different from "Definition" (longer explanation) #. Appears under each sense/meaning; concise translation #: src/lib/views/entity-config.ts +#: src/project/dashboard/DashboardView.svelte msgid "Gloss" msgstr "Ghi chú" @@ -1130,6 +1158,7 @@ msgstr "Logo Lexbox" #. Lite view equivalent: "Word" #. Field label: the main headword/base form #: src/lib/views/entity-config.ts +#: src/project/dashboard/DashboardView.svelte msgid "Lexeme form" msgstr "Hình thức lexeme" @@ -1356,6 +1385,10 @@ msgstr "Hiển thị theo thứ tự từ mới nhất" msgid "Next" msgstr "Tiếp theo" +#: src/project/dashboard/DashboardView.svelte +msgid "Next milestone: {0}. {1} to go." +msgstr "Cột mốc tiếp theo: {0}. Còn {1} nữa." + #. Empty state when activity list filters exclude every commit. #: src/lib/activity/ActivityView.svelte msgid "No activity matches these filters" @@ -1365,6 +1398,10 @@ msgstr "Không có hoạt động nào phù hợp với các tiêu chí lọc n msgid "No activity types" msgstr "Không có loại hoạt động nào" +#: src/project/dashboard/DashboardView.svelte +msgid "No analysis writing systems configured." +msgstr "Chưa có hệ thống viết phân tích nào được cấu hình." + #. Placeholder when no audio file #. Shows in audio field when empty (no file uploaded yet) #: src/lib/components/field-editors/audio-input.svelte @@ -1425,6 +1462,10 @@ msgstr "Chưa cấu hình máy chủ" msgid "No subject, unable to create a new {0}" msgstr "Không có chủ đề, không thể tạo mới {0}" +#: src/project/dashboard/DashboardView.svelte +msgid "No vernacular writing systems configured." +msgstr "Chưa có hệ thống chữ viết bản địa nào được cấu hình." + #. Relevant view: Lite #. Classic view equivalent: "No entries found" #: src/lib/entry-editor/EntryOrSensePicker.svelte @@ -1976,6 +2017,10 @@ msgstr "Nhiệm vụ" msgid "Tell us about a bug or issue you’ve encountered." msgstr "Hãy cho chúng tôi biết về lỗi hoặc vấn đề bạn gặp phải." +#: src/project/dashboard/DashboardView.svelte +msgid "Tell us how you work and what would help most. Your ideas guide what we build." +msgstr "Hãy chia sẻ với chúng tôi cách bạn làm việc và điều gì sẽ hữu ích nhất đối với bạn. Những ý tưởng của bạn sẽ định hướng cho những gì chúng tôi phát triển." + #. View description #: src/project/browse/ViewPicker.svelte msgid "The *FieldWorks Classic* view, on the other hand, is designed for users who are familiar with *[FieldWorks Language Explorer](https://software.sil.org/fieldworks/)*." @@ -2047,6 +2092,12 @@ msgstr "Chuyển đổi bộ lọc" msgid "Toggle pinned" msgstr "Chuyển trạng thái ghim" +#: src/project/dashboard/DashboardView.svelte +#: src/project/dashboard/DashboardView.svelte +#: src/project/dashboard/DashboardView.svelte +msgid "Total entries" +msgstr "Tổng số bài dự thi" + #. Field label #: src/lib/entry-editor/object-editors/ExampleEditorPrimitive.svelte #: src/lib/views/entity-config.ts @@ -2214,6 +2265,10 @@ msgstr "Mã hệ thống chữ viết bản địa" msgid "Vernacular writing system is required" msgstr "Phải có hệ thống chữ viết bản địa" +#: src/project/dashboard/DashboardView.svelte +msgid "Vernacular writing systems" +msgstr "Các hệ thống chữ viết bản địa" + #. Button label #: src/project/browse/ViewPicker.svelte msgid "View" @@ -2224,6 +2279,10 @@ msgstr "Xem" msgid "violet" msgstr "tím" +#: src/project/dashboard/DashboardView.svelte +msgid "What would you like to see here?" +msgstr "Bạn muốn xem gì ở đây?" + #. External link button text for help #: src/home/Server.svelte msgid "Where are my projects?" @@ -2321,3 +2380,11 @@ msgstr "Bạn không có quyền tải dự án {0} từ {1}" msgid "You have already downloaded the {0} project" msgstr "Bạn đã tải xuống dự án {0}" +#: src/project/dashboard/DashboardView.svelte +msgid "You've passed every milestone. What an achievement!" +msgstr "Bạn đã vượt qua mọi cột mốc. Thật là một thành tựu đáng tự hào!" + +#: src/project/dashboard/DashboardView.svelte +msgid "Your dictionary starts here" +msgstr "Từ điển của bạn bắt đầu từ đây" + From 5aa62bebe934dd6bddda9684e7d85019df97ead2 Mon Sep 17 00:00:00 2001 From: Tim Haasdyk Date: Sat, 4 Jul 2026 06:37:12 +0200 Subject: [PATCH 55/65] New translations en.po (Indonesian) [ci skip] --- frontend/viewer/src/locales/id.po | 69 ++++++++++++++++++++++++++++++- 1 file changed, 68 insertions(+), 1 deletion(-) diff --git a/frontend/viewer/src/locales/id.po b/frontend/viewer/src/locales/id.po index ff548f878c..7d4084929f 100644 --- a/frontend/viewer/src/locales/id.po +++ b/frontend/viewer/src/locales/id.po @@ -8,7 +8,7 @@ msgstr "" "Language: id\n" "Project-Id-Version: language-depot\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2026-07-03 04:36\n" +"PO-Revision-Date: 2026-07-04 04:37\n" "Last-Translator: \n" "Language-Team: Indonesian\n" "Plural-Forms: nplurals=1; plural=0;\n" @@ -192,6 +192,10 @@ msgstr "Tambahkan ke kamus" msgid "Add Word" msgstr "Tambahkan Kata" +#: src/project/dashboard/DashboardView.svelte +msgid "Add your first entry to start building your dictionary." +msgstr "Tambahkan entri pertama Anda untuk mulai menyusun kamus Anda." + #. Radio option in custom view writing system picker. #. Includes all writing systems (no filtering). #: src/lib/views/custom/CustomViewWritingSystems.svelte @@ -230,6 +234,10 @@ msgstr "Analisis" msgid "Analysis writing system code" msgstr "Analisis penulisan kode sistem" +#: src/project/dashboard/DashboardView.svelte +msgid "Analysis writing systems" +msgstr "Analisis sistem penulisan" + #. Relevant view: Classic #. Lite view equivalent: "Any part of speech" #. Filter option: clear grammatical info filter @@ -375,6 +383,7 @@ msgstr "Pilih tema" #. Lite view equivalent: "Display as" #. Field label: form for citing in dictionary #: src/lib/views/entity-config.ts +#: src/project/dashboard/DashboardView.svelte msgid "Citation form" msgstr "Formulir kutipan" @@ -558,9 +567,14 @@ msgstr "Gelap" #. Sidebar menu item #: src/project/ProjectSidebar.svelte +#: src/project/dashboard/DashboardView.svelte msgid "Dashboard" msgstr "Dasbor" +#: src/project/dashboard/DashboardView.svelte +msgid "Dashboard failed to load" +msgstr "Dashboard tidak berhasil dimuat" + #. Field label #: src/lib/troubleshoot/TroubleshootDialog.svelte msgid "Data Directory" @@ -570,6 +584,7 @@ msgstr "Direktori Data" #. Definition for a sense/meaning (e.g., "bank" = "financial institution") #. Appears under each Sense/Meaning in entry editor #: src/lib/views/entity-config.ts +#: src/project/dashboard/DashboardView.svelte msgid "Definition" msgstr "Definisi" @@ -731,6 +746,14 @@ msgstr "Diakhiri dengan" msgid "Entries missing..." msgstr "Entri yang hilang..." +#: src/project/dashboard/DashboardView.svelte +msgid "Entries with examples" +msgstr "Entri yang disertai contoh" + +#: src/project/dashboard/DashboardView.svelte +msgid "Entries with senses" +msgstr "Entri yang memiliki arti" + #. EntryView label for the current dictionary object when FieldWorks Classic is shown #: src/project/browse/EntryView.svelte msgid "entry" @@ -799,6 +822,10 @@ msgstr "Contoh" msgid "Example sentence" msgstr "Contoh kalimat" +#: src/project/dashboard/DashboardView.svelte +msgid "Example sentences" +msgstr "Contoh kalimat" + #. Error message when copy fails #: src/lib/components/ui/button/copy-button.svelte msgid "Failed to copy to clipboard" @@ -1005,6 +1032,7 @@ msgstr "Dapatkan dukungan" #. Different from "Definition" (longer explanation) #. Appears under each sense/meaning; concise translation #: src/lib/views/entity-config.ts +#: src/project/dashboard/DashboardView.svelte msgid "Gloss" msgstr "Arti Singkat" @@ -1130,6 +1158,7 @@ msgstr "Logo Lexbox" #. Lite view equivalent: "Word" #. Field label: the main headword/base form #: src/lib/views/entity-config.ts +#: src/project/dashboard/DashboardView.svelte msgid "Lexeme form" msgstr "Bentuk leksem" @@ -1356,6 +1385,10 @@ msgstr "Yang terbaru terlebih dahulu" msgid "Next" msgstr "Berikutnya" +#: src/project/dashboard/DashboardView.svelte +msgid "Next milestone: {0}. {1} to go." +msgstr "Tonggak berikutnya: {0}. Masih tersisa {1}." + #. Empty state when activity list filters exclude every commit. #: src/lib/activity/ActivityView.svelte msgid "No activity matches these filters" @@ -1365,6 +1398,10 @@ msgstr "Tidak ada aktivitas yang sesuai dengan filter ini" msgid "No activity types" msgstr "Tidak ada jenis aktivitas" +#: src/project/dashboard/DashboardView.svelte +msgid "No analysis writing systems configured." +msgstr "Belum ada sistem penulisan analisis yang dikonfigurasi." + #. Placeholder when no audio file #. Shows in audio field when empty (no file uploaded yet) #: src/lib/components/field-editors/audio-input.svelte @@ -1425,6 +1462,10 @@ msgstr "Tidak ada server yang dikonfigurasi" msgid "No subject, unable to create a new {0}" msgstr "Tidak ada subjek, tidak dapat membuat {0}baru" +#: src/project/dashboard/DashboardView.svelte +msgid "No vernacular writing systems configured." +msgstr "Tidak ada sistem penulisan bahasa daerah yang dikonfigurasi." + #. Relevant view: Lite #. Classic view equivalent: "No entries found" #: src/lib/entry-editor/EntryOrSensePicker.svelte @@ -1976,6 +2017,10 @@ msgstr "Tugas" msgid "Tell us about a bug or issue you’ve encountered." msgstr "Beritahu kami tentang bug atau masalah yang Anda temui." +#: src/project/dashboard/DashboardView.svelte +msgid "Tell us how you work and what would help most. Your ideas guide what we build." +msgstr "Ceritakan kepada kami bagaimana cara Anda bekerja dan apa yang paling membantu. Ide-ide Anda menjadi panduan bagi apa yang kami kembangkan." + #. View description #: src/project/browse/ViewPicker.svelte msgid "The *FieldWorks Classic* view, on the other hand, is designed for users who are familiar with *[FieldWorks Language Explorer](https://software.sil.org/fieldworks/)*." @@ -2047,6 +2092,12 @@ msgstr "Beralih filter" msgid "Toggle pinned" msgstr "Beralih disematkan" +#: src/project/dashboard/DashboardView.svelte +#: src/project/dashboard/DashboardView.svelte +#: src/project/dashboard/DashboardView.svelte +msgid "Total entries" +msgstr "Jumlah entri" + #. Field label #: src/lib/entry-editor/object-editors/ExampleEditorPrimitive.svelte #: src/lib/views/entity-config.ts @@ -2214,6 +2265,10 @@ msgstr "Kode sistem penulisan bahasa daerah" msgid "Vernacular writing system is required" msgstr "Diperlukan sistem penulisan dalam bahasa daerah" +#: src/project/dashboard/DashboardView.svelte +msgid "Vernacular writing systems" +msgstr "Sistem penulisan bahasa daerah" + #. Button label #: src/project/browse/ViewPicker.svelte msgid "View" @@ -2224,6 +2279,10 @@ msgstr "Melihat" msgid "violet" msgstr "violet" +#: src/project/dashboard/DashboardView.svelte +msgid "What would you like to see here?" +msgstr "Apa yang ingin Anda lihat di sini?" + #. External link button text for help #: src/home/Server.svelte msgid "Where are my projects?" @@ -2321,3 +2380,11 @@ msgstr "Anda tidak memiliki izin untuk mengunduh proyek {0} dari {1}" msgid "You have already downloaded the {0} project" msgstr "Anda telah mengunduh proyek {0}" +#: src/project/dashboard/DashboardView.svelte +msgid "You've passed every milestone. What an achievement!" +msgstr "Kamu telah melewati setiap tahap penting. Sungguh sebuah prestasi yang luar biasa!" + +#: src/project/dashboard/DashboardView.svelte +msgid "Your dictionary starts here" +msgstr "Kamus Anda dimulai di sini" + From ae413d08187848fd6d09e95f6b1ae9cea00fcd39 Mon Sep 17 00:00:00 2001 From: Tim Haasdyk Date: Sat, 4 Jul 2026 06:37:14 +0200 Subject: [PATCH 56/65] New translations en.po (Malay) [ci skip] --- frontend/viewer/src/locales/ms.po | 69 ++++++++++++++++++++++++++++++- 1 file changed, 68 insertions(+), 1 deletion(-) diff --git a/frontend/viewer/src/locales/ms.po b/frontend/viewer/src/locales/ms.po index 6c2b9871c2..fcf955138d 100644 --- a/frontend/viewer/src/locales/ms.po +++ b/frontend/viewer/src/locales/ms.po @@ -8,7 +8,7 @@ msgstr "" "Language: ms\n" "Project-Id-Version: language-depot\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2026-07-03 04:36\n" +"PO-Revision-Date: 2026-07-04 04:37\n" "Last-Translator: \n" "Language-Team: Malay\n" "Plural-Forms: nplurals=1; plural=0;\n" @@ -192,6 +192,10 @@ msgstr "Tambah ke kamus" msgid "Add Word" msgstr "Tambah Perkataan" +#: src/project/dashboard/DashboardView.svelte +msgid "Add your first entry to start building your dictionary." +msgstr "Tambah entri pertama anda untuk mula membina kamus anda." + #. Radio option in custom view writing system picker. #. Includes all writing systems (no filtering). #: src/lib/views/custom/CustomViewWritingSystems.svelte @@ -230,6 +234,10 @@ msgstr "Analisis" msgid "Analysis writing system code" msgstr "Penulisan analisis sistem kod" +#: src/project/dashboard/DashboardView.svelte +msgid "Analysis writing systems" +msgstr "Analisis sistem penulisan" + #. Relevant view: Classic #. Lite view equivalent: "Any part of speech" #. Filter option: clear grammatical info filter @@ -375,6 +383,7 @@ msgstr "Pilih tema" #. Lite view equivalent: "Display as" #. Field label: form for citing in dictionary #: src/lib/views/entity-config.ts +#: src/project/dashboard/DashboardView.svelte msgid "Citation form" msgstr "Bentuk petikan" @@ -558,9 +567,14 @@ msgstr "Gelap" #. Sidebar menu item #: src/project/ProjectSidebar.svelte +#: src/project/dashboard/DashboardView.svelte msgid "Dashboard" msgstr "Papan Pemuka" +#: src/project/dashboard/DashboardView.svelte +msgid "Dashboard failed to load" +msgstr "Paparan pemuka gagal memuatkan" + #. Field label #: src/lib/troubleshoot/TroubleshootDialog.svelte msgid "Data Directory" @@ -570,6 +584,7 @@ msgstr "Direktori Data" #. Definition for a sense/meaning (e.g., "bank" = "financial institution") #. Appears under each Sense/Meaning in entry editor #: src/lib/views/entity-config.ts +#: src/project/dashboard/DashboardView.svelte msgid "Definition" msgstr "Definisi" @@ -731,6 +746,14 @@ msgstr "Berakhir dengan" msgid "Entries missing..." msgstr "Entri yang hilang..." +#: src/project/dashboard/DashboardView.svelte +msgid "Entries with examples" +msgstr "Kandungan dengan contoh" + +#: src/project/dashboard/DashboardView.svelte +msgid "Entries with senses" +msgstr "Kandungan dengan makna" + #. EntryView label for the current dictionary object when FieldWorks Classic is shown #: src/project/browse/EntryView.svelte msgid "entry" @@ -799,6 +822,10 @@ msgstr "Contoh" msgid "Example sentence" msgstr "Ayat contoh" +#: src/project/dashboard/DashboardView.svelte +msgid "Example sentences" +msgstr "Contoh ayat" + #. Error message when copy fails #: src/lib/components/ui/button/copy-button.svelte msgid "Failed to copy to clipboard" @@ -1005,6 +1032,7 @@ msgstr "Dapatkan sokongan" #. Different from "Definition" (longer explanation) #. Appears under each sense/meaning; concise translation #: src/lib/views/entity-config.ts +#: src/project/dashboard/DashboardView.svelte msgid "Gloss" msgstr "Glos" @@ -1130,6 +1158,7 @@ msgstr "Logo Lexbox" #. Lite view equivalent: "Word" #. Field label: the main headword/base form #: src/lib/views/entity-config.ts +#: src/project/dashboard/DashboardView.svelte msgid "Lexeme form" msgstr "Bentuk leksem" @@ -1356,6 +1385,10 @@ msgstr "Yang terbaru dahulu" msgid "Next" msgstr "Seterusnya" +#: src/project/dashboard/DashboardView.svelte +msgid "Next milestone: {0}. {1} to go." +msgstr "Sasaran seterusnya: {0}. {1} tinggal." + #. Empty state when activity list filters exclude every commit. #: src/lib/activity/ActivityView.svelte msgid "No activity matches these filters" @@ -1365,6 +1398,10 @@ msgstr "Tiada aktiviti yang memenuhi penapis ini" msgid "No activity types" msgstr "Tiada jenis aktiviti" +#: src/project/dashboard/DashboardView.svelte +msgid "No analysis writing systems configured." +msgstr "Tiada sistem penulisan analisis dikonfigurasikan." + #. Placeholder when no audio file #. Shows in audio field when empty (no file uploaded yet) #: src/lib/components/field-editors/audio-input.svelte @@ -1425,6 +1462,10 @@ msgstr "Tiada pelayan dikonfigurasikan" msgid "No subject, unable to create a new {0}" msgstr "Tiada subjek, tidak dapat membuat {0} baru" +#: src/project/dashboard/DashboardView.svelte +msgid "No vernacular writing systems configured." +msgstr "Tiada sistem tulisan tempatan yang dikonfigurasikan." + #. Relevant view: Lite #. Classic view equivalent: "No entries found" #: src/lib/entry-editor/EntryOrSensePicker.svelte @@ -1976,6 +2017,10 @@ msgstr "Tugasan" msgid "Tell us about a bug or issue you’ve encountered." msgstr "Beritahu kami mengenai pepijat atau isu yang anda temui." +#: src/project/dashboard/DashboardView.svelte +msgid "Tell us how you work and what would help most. Your ideas guide what we build." +msgstr "Beritahu kami bagaimana anda bekerja dan apa yang paling membantu. Idea anda membimbing apa yang kami bina." + #. View description #: src/project/browse/ViewPicker.svelte msgid "The *FieldWorks Classic* view, on the other hand, is designed for users who are familiar with *[FieldWorks Language Explorer](https://software.sil.org/fieldworks/)*." @@ -2047,6 +2092,12 @@ msgstr "Togol penapis" msgid "Toggle pinned" msgstr "Togol disemat" +#: src/project/dashboard/DashboardView.svelte +#: src/project/dashboard/DashboardView.svelte +#: src/project/dashboard/DashboardView.svelte +msgid "Total entries" +msgstr "Jumlah penyertaan" + #. Field label #: src/lib/entry-editor/object-editors/ExampleEditorPrimitive.svelte #: src/lib/views/entity-config.ts @@ -2214,6 +2265,10 @@ msgstr "Kod sistem penulisan Vernakular" msgid "Vernacular writing system is required" msgstr "Sistem tulisan vernacular diperlukan" +#: src/project/dashboard/DashboardView.svelte +msgid "Vernacular writing systems" +msgstr "Sistem tulisan vernakular" + #. Button label #: src/project/browse/ViewPicker.svelte msgid "View" @@ -2224,6 +2279,10 @@ msgstr "Lihat" msgid "violet" msgstr "ungu" +#: src/project/dashboard/DashboardView.svelte +msgid "What would you like to see here?" +msgstr "Apa yang anda ingin lihat di sini?" + #. External link button text for help #: src/home/Server.svelte msgid "Where are my projects?" @@ -2321,3 +2380,11 @@ msgstr "Anda tidak mempunyai kebenaran untuk memuat turun projek {0} daripada {1 msgid "You have already downloaded the {0} project" msgstr "Anda telah pun memuat turun projek {0}" +#: src/project/dashboard/DashboardView.svelte +msgid "You've passed every milestone. What an achievement!" +msgstr "Anda telah mencapai setiap pencapaian penting. Betapa hebatnya pencapaian ini!" + +#: src/project/dashboard/DashboardView.svelte +msgid "Your dictionary starts here" +msgstr "Kamus anda bermula di sini" + From fd6b5e15a26462ce5e3bd2d2888b2f619e340bc3 Mon Sep 17 00:00:00 2001 From: Tim Haasdyk Date: Sat, 4 Jul 2026 06:37:15 +0200 Subject: [PATCH 57/65] New translations en.po (Swahili) [ci skip] --- frontend/viewer/src/locales/sw.po | 69 ++++++++++++++++++++++++++++++- 1 file changed, 68 insertions(+), 1 deletion(-) diff --git a/frontend/viewer/src/locales/sw.po b/frontend/viewer/src/locales/sw.po index 89c7a7f05b..e8967845ad 100644 --- a/frontend/viewer/src/locales/sw.po +++ b/frontend/viewer/src/locales/sw.po @@ -8,7 +8,7 @@ msgstr "" "Language: sw\n" "Project-Id-Version: language-depot\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2026-07-03 04:36\n" +"PO-Revision-Date: 2026-07-04 04:37\n" "Last-Translator: \n" "Language-Team: Swahili\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" @@ -192,6 +192,10 @@ msgstr "Ongeza kwenye kamusi" msgid "Add Word" msgstr "Ongeza Neno" +#: src/project/dashboard/DashboardView.svelte +msgid "Add your first entry to start building your dictionary." +msgstr "Ongeza kipengele chako cha kwanza ili kuanza kujenga kamusi yako." + #. Radio option in custom view writing system picker. #. Includes all writing systems (no filtering). #: src/lib/views/custom/CustomViewWritingSystems.svelte @@ -230,6 +234,10 @@ msgstr "Uchambuzi" msgid "Analysis writing system code" msgstr "Uchambuzi wa uandishi wa mfumo wa msimbo" +#: src/project/dashboard/DashboardView.svelte +msgid "Analysis writing systems" +msgstr "Mifumo ya uandishi wa uchambuzi" + #. Relevant view: Classic #. Lite view equivalent: "Any part of speech" #. Filter option: clear grammatical info filter @@ -375,6 +383,7 @@ msgstr "Chagua mandhari" #. Lite view equivalent: "Display as" #. Field label: form for citing in dictionary #: src/lib/views/entity-config.ts +#: src/project/dashboard/DashboardView.svelte msgid "Citation form" msgstr "Fomu ya Manukuu" @@ -558,9 +567,14 @@ msgstr "Giza" #. Sidebar menu item #: src/project/ProjectSidebar.svelte +#: src/project/dashboard/DashboardView.svelte msgid "Dashboard" msgstr "Dashibodi" +#: src/project/dashboard/DashboardView.svelte +msgid "Dashboard failed to load" +msgstr "Dashibodi ilishindwa kupakia" + #. Field label #: src/lib/troubleshoot/TroubleshootDialog.svelte msgid "Data Directory" @@ -570,6 +584,7 @@ msgstr "Faharasa ya Data" #. Definition for a sense/meaning (e.g., "bank" = "financial institution") #. Appears under each Sense/Meaning in entry editor #: src/lib/views/entity-config.ts +#: src/project/dashboard/DashboardView.svelte msgid "Definition" msgstr "Maana" @@ -731,6 +746,14 @@ msgstr "Inaishia na" msgid "Entries missing..." msgstr "Ingizo linalokosa..." +#: src/project/dashboard/DashboardView.svelte +msgid "Entries with examples" +msgstr "Maingizo yenye mifano" + +#: src/project/dashboard/DashboardView.svelte +msgid "Entries with senses" +msgstr "Maingizo yenye hisia" + #. EntryView label for the current dictionary object when FieldWorks Classic is shown #: src/project/browse/EntryView.svelte msgid "entry" @@ -799,6 +822,10 @@ msgstr "Mfano" msgid "Example sentence" msgstr "Sentensi ya mfano" +#: src/project/dashboard/DashboardView.svelte +msgid "Example sentences" +msgstr "Sentensi za mfano" + #. Error message when copy fails #: src/lib/components/ui/button/copy-button.svelte msgid "Failed to copy to clipboard" @@ -1005,6 +1032,7 @@ msgstr "Pata msaada" #. Different from "Definition" (longer explanation) #. Appears under each sense/meaning; concise translation #: src/lib/views/entity-config.ts +#: src/project/dashboard/DashboardView.svelte msgid "Gloss" msgstr "Glosi" @@ -1130,6 +1158,7 @@ msgstr "Nembo ya Lexbox" #. Lite view equivalent: "Word" #. Field label: the main headword/base form #: src/lib/views/entity-config.ts +#: src/project/dashboard/DashboardView.svelte msgid "Lexeme form" msgstr "Fomu ya Neno" @@ -1356,6 +1385,10 @@ msgstr "Zipya kwanza" msgid "Next" msgstr "Inayofuata" +#: src/project/dashboard/DashboardView.svelte +msgid "Next milestone: {0}. {1} to go." +msgstr "Kipengele kinachofuata: {0}. {1} bado." + #. Empty state when activity list filters exclude every commit. #: src/lib/activity/ActivityView.svelte msgid "No activity matches these filters" @@ -1365,6 +1398,10 @@ msgstr "Hakuna shughuli inayolingana na vichujio hivi" msgid "No activity types" msgstr "Hakuna aina za shughuli" +#: src/project/dashboard/DashboardView.svelte +msgid "No analysis writing systems configured." +msgstr "Hakuna mifumo ya uandishi wa uchambuzi iliyowekwa." + #. Placeholder when no audio file #. Shows in audio field when empty (no file uploaded yet) #: src/lib/components/field-editors/audio-input.svelte @@ -1425,6 +1462,10 @@ msgstr "Hakuna seva iliyotengwa" msgid "No subject, unable to create a new {0}" msgstr "Hakuna kigezo, haiwezi kutengeneza {0} mpya" +#: src/project/dashboard/DashboardView.svelte +msgid "No vernacular writing systems configured." +msgstr "Hakuna mifumo ya maandishi ya kienyeji iliyosanidiwa." + #. Relevant view: Lite #. Classic view equivalent: "No entries found" #: src/lib/entry-editor/EntryOrSensePicker.svelte @@ -1976,6 +2017,10 @@ msgstr "Jukumu" msgid "Tell us about a bug or issue you’ve encountered." msgstr "Tuambie kuhusu kosa au matatizo uliyokabiliwa." +#: src/project/dashboard/DashboardView.svelte +msgid "Tell us how you work and what would help most. Your ideas guide what we build." +msgstr "Tuambie jinsi unavyofanya kazi na ni nini kingesaidia zaidi. Mawazo yako yanaongoza kile tunachojenga." + #. View description #: src/project/browse/ViewPicker.svelte msgid "The *FieldWorks Classic* view, on the other hand, is designed for users who are familiar with *[FieldWorks Language Explorer](https://software.sil.org/fieldworks/)*." @@ -2047,6 +2092,12 @@ msgstr "Geuza kichujio" msgid "Toggle pinned" msgstr "Geuza iliyobandikwa" +#: src/project/dashboard/DashboardView.svelte +#: src/project/dashboard/DashboardView.svelte +#: src/project/dashboard/DashboardView.svelte +msgid "Total entries" +msgstr "Jumla ya maingizo" + #. Field label #: src/lib/entry-editor/object-editors/ExampleEditorPrimitive.svelte #: src/lib/views/entity-config.ts @@ -2214,6 +2265,10 @@ msgstr "Msimbo wa mfumo wa uandishi wa lugha ya kienyeji" msgid "Vernacular writing system is required" msgstr "Mfumo wa uandishi wa lugha ya kienyeji unahitajika" +#: src/project/dashboard/DashboardView.svelte +msgid "Vernacular writing systems" +msgstr "Mifumo ya uandishi ya lugha za kienyeji" + #. Button label #: src/project/browse/ViewPicker.svelte msgid "View" @@ -2224,6 +2279,10 @@ msgstr "Muonekano" msgid "violet" msgstr "zambarau" +#: src/project/dashboard/DashboardView.svelte +msgid "What would you like to see here?" +msgstr "Ungependa kuona nini hapa?" + #. External link button text for help #: src/home/Server.svelte msgid "Where are my projects?" @@ -2321,3 +2380,11 @@ msgstr "Huna ruhusa ya kupakua mradi {0} kutoka {1}" msgid "You have already downloaded the {0} project" msgstr "Umeshapakua mradi wa {0}" +#: src/project/dashboard/DashboardView.svelte +msgid "You've passed every milestone. What an achievement!" +msgstr "Umefikia kila hatua muhimu. Ni mafanikio makubwa!" + +#: src/project/dashboard/DashboardView.svelte +msgid "Your dictionary starts here" +msgstr "Kamusi yako inaanza hapa" + From 1509659a302719d1ab94993ec77f07846fc4c269 Mon Sep 17 00:00:00 2001 From: Tim Haasdyk Date: Mon, 6 Jul 2026 18:14:31 +0200 Subject: [PATCH 58/65] Update source file en.po [ci skip] --- frontend/viewer/src/locales/en.po | 72 ++++++++++++++++++++++++++++--- 1 file changed, 67 insertions(+), 5 deletions(-) diff --git a/frontend/viewer/src/locales/en.po b/frontend/viewer/src/locales/en.po index b420b6f859..c4b684090a 100644 --- a/frontend/viewer/src/locales/en.po +++ b/frontend/viewer/src/locales/en.po @@ -20,6 +20,10 @@ msgstr "" msgid "– ({0} changes)" msgstr "– ({0} changes)" +#: src/lib/entry-editor/CommentDialog.svelte +msgid "(unknown)" +msgstr "(unknown)" + #. Generic placeholder for dynamic content #: src/home/HomeView.svelte #: src/lib/components/audio/audio-editor.svelte @@ -348,6 +352,7 @@ msgstr "Browse view failed" #: src/lib/components/SubmitOrCancel.svelte #: src/lib/components/audio/AudioDialog.svelte #: src/lib/components/field-editors/select.svelte +#: src/lib/entry-editor/CommentDialog.svelte #: src/lib/entry-editor/EditEntryDialog.svelte #: src/lib/entry-editor/NewEntryDialog.svelte #: src/lib/views/custom/CustomViewForm.svelte @@ -398,6 +403,8 @@ msgstr "clear" #: src/lib/about/AboutDialog.svelte #: src/lib/components/field-editors/multi-select.svelte #: src/lib/components/ui/button/x-button.svelte +#: src/lib/entry-editor/CommentDialog.svelte +#: src/lib/entry-editor/CommentDialog.svelte #: src/project/tasks/SubjectPopup.svelte msgid "Close" msgstr "Close" @@ -408,6 +415,10 @@ msgstr "Close" msgid "Close Dictionary" msgstr "Close Dictionary" +#: src/lib/entry-editor/CommentDialog.svelte +msgid "Closed" +msgstr "Closed" + #. Field label in the create-project dialog. The project's short machine-readable identifier (slug), e.g. "my-dictionary". #: src/home/CreateProjectDialog.svelte msgid "Code" @@ -418,6 +429,15 @@ msgstr "Code" msgid "Color" msgstr "Color" +#: src/lib/entry-editor/CommentDialog.svelte +#: src/project/browse/EntryView.svelte +msgid "Comments" +msgstr "Comments" + +#: src/lib/entry-editor/CommentDialog.svelte +msgid "Comments for {0}" +msgstr "Comments for {0}" + #. Field label #: src/lib/entry-editor/field-editors/ComplexFormComponents.svelte #: src/lib/entry-editor/field-editors/ComplexForms.svelte @@ -717,6 +737,14 @@ msgstr "Downloading..." msgid "e.g. th, sw" msgstr "e.g. th, sw" +#: src/lib/entry-editor/CommentDialog.svelte +msgid "Edit" +msgstr "Edit" + +#: src/lib/entry-editor/CommentDialog.svelte +msgid "Edit comment" +msgstr "Edit comment" + #. Dialog title when editing an existing custom view. #: src/lib/views/custom/EditCustomViewDialog.svelte msgid "Edit Custom View" @@ -727,6 +755,10 @@ msgstr "Edit Custom View" msgid "Editor" msgstr "Editor" +#: src/lib/entry-editor/CommentDialog.svelte +msgid "Empty comment" +msgstr "Empty comment" + #. Filter operator #. Search operator: matches fields ending with the search term #. Related operators: "Starts with", "Contains", "Equals" @@ -900,7 +932,7 @@ msgstr "FieldWorks Lite version" #. Alt text for FieldWorks logo image #: src/home/HomeView.svelte -#: src/lib/activity/ActivityFilter.svelte +#: src/lib/activity/AuthorLabel.svelte #: src/lib/components/OpenInFieldWorksButton.svelte #: src/project/ProjectDropdown.svelte #: src/project/sync/FwLiteToFwMergeDetails.svelte @@ -1186,6 +1218,10 @@ msgstr "Literal meaning" msgid "Loading activity" msgstr "Loading activity" +#: src/lib/entry-editor/CommentDialog.svelte +msgid "Loading comments..." +msgstr "Loading comments..." + #. Loading state text shown in the project/dictionary dropdown while the list of dictionaries is being fetched. #: src/project/ProjectDropdown.svelte msgid "Loading Dictionaries..." @@ -1407,6 +1443,10 @@ msgstr "No audio" msgid "No authors" msgstr "No authors" +#: src/lib/entry-editor/CommentDialog.svelte +msgid "No comment threads yet." +msgstr "No comment threads yet." + #. Empty state message in the manage custom views dialog when none exist. #: src/lib/views/custom/ManageCustomViewsDialog.svelte msgid "No custom views yet." @@ -1537,6 +1577,7 @@ msgstr "One FieldWorks Classic commit may consist of changes to multiple entries #. Button to open downloaded project #: src/home/Server.svelte +#: src/lib/entry-editor/CommentDialog.svelte msgid "Open" msgstr "Open" @@ -1741,6 +1782,10 @@ msgstr "Review" msgid "rose" msgstr "rose" +#: src/lib/entry-editor/CommentDialog.svelte +msgid "Save" +msgstr "Save" + #. Dialog button to save audio with new name #: src/lib/components/field-editors/audio-input.svelte msgid "Save As" @@ -1869,6 +1914,10 @@ msgstr "Show" msgid "Show {0} more..." msgstr "Show {0} more..." +#: src/lib/entry-editor/CommentDialog.svelte +msgid "Sign in to add comments." +msgstr "Sign in to add comments." + #. View option #: src/project/browse/EntryListViewOptions.svelte msgid "Simple" @@ -1893,6 +1942,10 @@ msgstr "Something went wrong" msgid "Specific field" msgstr "Specific field" +#: src/lib/entry-editor/CommentDialog.svelte +msgid "Start a new thread" +msgstr "Start a new thread" + #. Filter operator #. Search operator: matches fields beginning with the search term #. Related operators: "Contains", "Ends with", "Equals" @@ -2077,6 +2130,10 @@ msgstr "This task is complete" msgid "This will synchronize the FieldWorks Lite and FieldWorks Classic copies of your project in Lexbox." msgstr "This will synchronize the FieldWorks Lite and FieldWorks Classic copies of your project in Lexbox." +#: src/lib/entry-editor/CommentDialog.svelte +msgid "Thread" +msgstr "Thread" + #. Button to show/hide filter panel #: src/project/browse/SearchFilter.svelte msgid "Toggle filters" @@ -2142,10 +2199,7 @@ msgid "Unable to open in FieldWorks" msgstr "Unable to open in FieldWorks" #. Fallback value shown when author name or last-change date is unavailable (e.g., in activity history or the sync panel). -#: src/lib/activity/ActivityFilter.svelte -#: src/lib/activity/ActivityFilter.svelte -#: src/lib/activity/ActivityItem.svelte -#: src/lib/activity/ActivityView.svelte +#: src/lib/activity/AuthorLabel.svelte #: src/lib/activity/utils.ts #: src/project/sync/FwLiteToFwMergeDetails.svelte #: src/project/sync/FwLiteToFwMergeDetails.svelte @@ -2328,6 +2382,14 @@ msgstr "Word or Display as is required" msgid "Word or meaning:" msgstr "Word or meaning:" +#: src/lib/entry-editor/CommentDialog.svelte +msgid "Write a reply..." +msgstr "Write a reply..." + +#: src/lib/entry-editor/CommentDialog.svelte +msgid "Write the first comment..." +msgstr "Write the first comment..." + #. Column header #: src/project/browse/filter/WsSelect.svelte msgid "Writing System" From 26dd707ab17983b78d344e3f894423094b9c352f Mon Sep 17 00:00:00 2001 From: Tim Haasdyk Date: Mon, 6 Jul 2026 18:14:34 +0200 Subject: [PATCH 59/65] New translations en.po (French) [ci skip] --- frontend/viewer/src/locales/fr.po | 74 ++++++++++++++++++++++++++++--- 1 file changed, 68 insertions(+), 6 deletions(-) diff --git a/frontend/viewer/src/locales/fr.po b/frontend/viewer/src/locales/fr.po index d54ed97ece..df1cc76166 100644 --- a/frontend/viewer/src/locales/fr.po +++ b/frontend/viewer/src/locales/fr.po @@ -8,7 +8,7 @@ msgstr "" "Language: fr\n" "Project-Id-Version: language-depot\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2026-07-04 04:37\n" +"PO-Revision-Date: 2026-07-06 16:14\n" "Last-Translator: \n" "Language-Team: French\n" "Plural-Forms: nplurals=2; plural=(n > 1);\n" @@ -25,6 +25,10 @@ msgstr "" msgid "– ({0} changes)" msgstr "– ({0} changements)" +#: src/lib/entry-editor/CommentDialog.svelte +msgid "(unknown)" +msgstr "(inconnu)" + #. Generic placeholder for dynamic content #: src/home/HomeView.svelte #: src/lib/components/audio/audio-editor.svelte @@ -353,6 +357,7 @@ msgstr "La vue de la navigation a échoué" #: src/lib/components/SubmitOrCancel.svelte #: src/lib/components/audio/AudioDialog.svelte #: src/lib/components/field-editors/select.svelte +#: src/lib/entry-editor/CommentDialog.svelte #: src/lib/entry-editor/EditEntryDialog.svelte #: src/lib/entry-editor/NewEntryDialog.svelte #: src/lib/views/custom/CustomViewForm.svelte @@ -403,6 +408,8 @@ msgstr "effacer" #: src/lib/about/AboutDialog.svelte #: src/lib/components/field-editors/multi-select.svelte #: src/lib/components/ui/button/x-button.svelte +#: src/lib/entry-editor/CommentDialog.svelte +#: src/lib/entry-editor/CommentDialog.svelte #: src/project/tasks/SubjectPopup.svelte msgid "Close" msgstr "Fermer" @@ -413,6 +420,10 @@ msgstr "Fermer" msgid "Close Dictionary" msgstr "Fermer le dictionnaire" +#: src/lib/entry-editor/CommentDialog.svelte +msgid "Closed" +msgstr "Fermé" + #. Field label in the create-project dialog. The project's short machine-readable identifier (slug), e.g. "my-dictionary". #: src/home/CreateProjectDialog.svelte msgid "Code" @@ -423,6 +434,15 @@ msgstr "Code" msgid "Color" msgstr "Couleur" +#: src/lib/entry-editor/CommentDialog.svelte +#: src/project/browse/EntryView.svelte +msgid "Comments" +msgstr "Commentaires" + +#: src/lib/entry-editor/CommentDialog.svelte +msgid "Comments for {0}" +msgstr "Commentaires pour {0}" + #. Field label #: src/lib/entry-editor/field-editors/ComplexFormComponents.svelte #: src/lib/entry-editor/field-editors/ComplexForms.svelte @@ -722,6 +742,14 @@ msgstr "Téléchargement en cours..." msgid "e.g. th, sw" msgstr "par exemple th, sw" +#: src/lib/entry-editor/CommentDialog.svelte +msgid "Edit" +msgstr "Editer" + +#: src/lib/entry-editor/CommentDialog.svelte +msgid "Edit comment" +msgstr "Modifier le commentaire" + #. Dialog title when editing an existing custom view. #: src/lib/views/custom/EditCustomViewDialog.svelte msgid "Edit Custom View" @@ -732,6 +760,10 @@ msgstr "Modifier la vue personnalisée" msgid "Editor" msgstr "Editeur" +#: src/lib/entry-editor/CommentDialog.svelte +msgid "Empty comment" +msgstr "Commentaire vide" + #. Filter operator #. Search operator: matches fields ending with the search term #. Related operators: "Starts with", "Contains", "Equals" @@ -905,7 +937,7 @@ msgstr "Version de FieldWorks Lite" #. Alt text for FieldWorks logo image #: src/home/HomeView.svelte -#: src/lib/activity/ActivityFilter.svelte +#: src/lib/activity/AuthorLabel.svelte #: src/lib/components/OpenInFieldWorksButton.svelte #: src/project/ProjectDropdown.svelte #: src/project/sync/FwLiteToFwMergeDetails.svelte @@ -1191,6 +1223,10 @@ msgstr "Sens littéral" msgid "Loading activity" msgstr "Chargement de l'activité" +#: src/lib/entry-editor/CommentDialog.svelte +msgid "Loading comments..." +msgstr "Chargement des commentaires..." + #. Loading state text shown in the project/dictionary dropdown while the list of dictionaries is being fetched. #: src/project/ProjectDropdown.svelte msgid "Loading Dictionaries..." @@ -1412,6 +1448,10 @@ msgstr "Aucun contenu audio" msgid "No authors" msgstr "Aucun auteur" +#: src/lib/entry-editor/CommentDialog.svelte +msgid "No comment threads yet." +msgstr "Aucun sujet de commentaire pour le moment." + #. Empty state message in the manage custom views dialog when none exist. #: src/lib/views/custom/ManageCustomViewsDialog.svelte msgid "No custom views yet." @@ -1542,6 +1582,7 @@ msgstr "Un commit FieldWorks Classic peut contenir des modifications à plusieur #. Button to open downloaded project #: src/home/Server.svelte +#: src/lib/entry-editor/CommentDialog.svelte msgid "Open" msgstr "Ouvert" @@ -1746,6 +1787,10 @@ msgstr "Évaluer" msgid "rose" msgstr "rose" +#: src/lib/entry-editor/CommentDialog.svelte +msgid "Save" +msgstr "Enregistrer" + #. Dialog button to save audio with new name #: src/lib/components/field-editors/audio-input.svelte msgid "Save As" @@ -1874,6 +1919,10 @@ msgstr "Afficher" msgid "Show {0} more..." msgstr "Afficher {0} plus..." +#: src/lib/entry-editor/CommentDialog.svelte +msgid "Sign in to add comments." +msgstr "Connectez-vous pour ajouter des commentaires." + #. View option #: src/project/browse/EntryListViewOptions.svelte msgid "Simple" @@ -1898,6 +1947,10 @@ msgstr "Quelque chose s'est mal passé" msgid "Specific field" msgstr "Champ spécifique" +#: src/lib/entry-editor/CommentDialog.svelte +msgid "Start a new thread" +msgstr "Démarrer un nouveau sujet" + #. Filter operator #. Search operator: matches fields beginning with the search term #. Related operators: "Contains", "Ends with", "Equals" @@ -2082,6 +2135,10 @@ msgstr "Cette tâche est terminée" msgid "This will synchronize the FieldWorks Lite and FieldWorks Classic copies of your project in Lexbox." msgstr "Cela synchronisera les copies FieldWorks Lite et FieldWorks Classic de votre projet dans Lexbox." +#: src/lib/entry-editor/CommentDialog.svelte +msgid "Thread" +msgstr "Fil de discussion" + #. Button to show/hide filter panel #: src/project/browse/SearchFilter.svelte msgid "Toggle filters" @@ -2147,10 +2204,7 @@ msgid "Unable to open in FieldWorks" msgstr "Impossible d'ouvrir FieldWorks" #. Fallback value shown when author name or last-change date is unavailable (e.g., in activity history or the sync panel). -#: src/lib/activity/ActivityFilter.svelte -#: src/lib/activity/ActivityFilter.svelte -#: src/lib/activity/ActivityItem.svelte -#: src/lib/activity/ActivityView.svelte +#: src/lib/activity/AuthorLabel.svelte #: src/lib/activity/utils.ts #: src/project/sync/FwLiteToFwMergeDetails.svelte #: src/project/sync/FwLiteToFwMergeDetails.svelte @@ -2333,6 +2387,14 @@ msgstr "Mot ou affichage tel que requis" msgid "Word or meaning:" msgstr "Mot ou sens :" +#: src/lib/entry-editor/CommentDialog.svelte +msgid "Write a reply..." +msgstr "Écrire une réponse..." + +#: src/lib/entry-editor/CommentDialog.svelte +msgid "Write the first comment..." +msgstr "Écrivez le premier commentaire..." + #. Column header #: src/project/browse/filter/WsSelect.svelte msgid "Writing System" From 88c929f4a39c53e75736e778fb7602a614c6e7dc Mon Sep 17 00:00:00 2001 From: Tim Haasdyk Date: Mon, 6 Jul 2026 18:14:36 +0200 Subject: [PATCH 60/65] New translations en.po (Spanish) [ci skip] --- frontend/viewer/src/locales/es.po | 74 ++++++++++++++++++++++++++++--- 1 file changed, 68 insertions(+), 6 deletions(-) diff --git a/frontend/viewer/src/locales/es.po b/frontend/viewer/src/locales/es.po index 7cf5bfaf22..4758f58c7c 100644 --- a/frontend/viewer/src/locales/es.po +++ b/frontend/viewer/src/locales/es.po @@ -8,7 +8,7 @@ msgstr "" "Language: es\n" "Project-Id-Version: language-depot\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2026-07-04 04:37\n" +"PO-Revision-Date: 2026-07-06 16:14\n" "Last-Translator: \n" "Language-Team: Spanish\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" @@ -25,6 +25,10 @@ msgstr "" msgid "– ({0} changes)" msgstr "– ({0} cambios)" +#: src/lib/entry-editor/CommentDialog.svelte +msgid "(unknown)" +msgstr "(desconocido)" + #. Generic placeholder for dynamic content #: src/home/HomeView.svelte #: src/lib/components/audio/audio-editor.svelte @@ -353,6 +357,7 @@ msgstr "Vista de navegación fallida" #: src/lib/components/SubmitOrCancel.svelte #: src/lib/components/audio/AudioDialog.svelte #: src/lib/components/field-editors/select.svelte +#: src/lib/entry-editor/CommentDialog.svelte #: src/lib/entry-editor/EditEntryDialog.svelte #: src/lib/entry-editor/NewEntryDialog.svelte #: src/lib/views/custom/CustomViewForm.svelte @@ -403,6 +408,8 @@ msgstr "borrar" #: src/lib/about/AboutDialog.svelte #: src/lib/components/field-editors/multi-select.svelte #: src/lib/components/ui/button/x-button.svelte +#: src/lib/entry-editor/CommentDialog.svelte +#: src/lib/entry-editor/CommentDialog.svelte #: src/project/tasks/SubjectPopup.svelte msgid "Close" msgstr "Cerrar" @@ -413,6 +420,10 @@ msgstr "Cerrar" msgid "Close Dictionary" msgstr "Cerrar Diccionario" +#: src/lib/entry-editor/CommentDialog.svelte +msgid "Closed" +msgstr "Cerrado" + #. Field label in the create-project dialog. The project's short machine-readable identifier (slug), e.g. "my-dictionary". #: src/home/CreateProjectDialog.svelte msgid "Code" @@ -423,6 +434,15 @@ msgstr "Código" msgid "Color" msgstr "Color" +#: src/lib/entry-editor/CommentDialog.svelte +#: src/project/browse/EntryView.svelte +msgid "Comments" +msgstr "Comentarios" + +#: src/lib/entry-editor/CommentDialog.svelte +msgid "Comments for {0}" +msgstr "Comentarios para {0}" + #. Field label #: src/lib/entry-editor/field-editors/ComplexFormComponents.svelte #: src/lib/entry-editor/field-editors/ComplexForms.svelte @@ -722,6 +742,14 @@ msgstr "Descargando..." msgid "e.g. th, sw" msgstr "ej. th, sw" +#: src/lib/entry-editor/CommentDialog.svelte +msgid "Edit" +msgstr "Editar" + +#: src/lib/entry-editor/CommentDialog.svelte +msgid "Edit comment" +msgstr "Editar comentario" + #. Dialog title when editing an existing custom view. #: src/lib/views/custom/EditCustomViewDialog.svelte msgid "Edit Custom View" @@ -732,6 +760,10 @@ msgstr "Editar vista personalizada" msgid "Editor" msgstr "Editor" +#: src/lib/entry-editor/CommentDialog.svelte +msgid "Empty comment" +msgstr "Vaciar comentario" + #. Filter operator #. Search operator: matches fields ending with the search term #. Related operators: "Starts with", "Contains", "Equals" @@ -905,7 +937,7 @@ msgstr "Versión de FieldWorks Lite" #. Alt text for FieldWorks logo image #: src/home/HomeView.svelte -#: src/lib/activity/ActivityFilter.svelte +#: src/lib/activity/AuthorLabel.svelte #: src/lib/components/OpenInFieldWorksButton.svelte #: src/project/ProjectDropdown.svelte #: src/project/sync/FwLiteToFwMergeDetails.svelte @@ -1191,6 +1223,10 @@ msgstr "Significado literal" msgid "Loading activity" msgstr "Cargando actividad" +#: src/lib/entry-editor/CommentDialog.svelte +msgid "Loading comments..." +msgstr "Cargando comentarios..." + #. Loading state text shown in the project/dictionary dropdown while the list of dictionaries is being fetched. #: src/project/ProjectDropdown.svelte msgid "Loading Dictionaries..." @@ -1412,6 +1448,10 @@ msgstr "Sin audio" msgid "No authors" msgstr "No hay autores" +#: src/lib/entry-editor/CommentDialog.svelte +msgid "No comment threads yet." +msgstr "Aún no hay hilos de comentarios." + #. Empty state message in the manage custom views dialog when none exist. #: src/lib/views/custom/ManageCustomViewsDialog.svelte msgid "No custom views yet." @@ -1542,6 +1582,7 @@ msgstr "Un commit de FieldWorks Classic puede consistir en cambios en múltiples #. Button to open downloaded project #: src/home/Server.svelte +#: src/lib/entry-editor/CommentDialog.svelte msgid "Open" msgstr "Abrir" @@ -1746,6 +1787,10 @@ msgstr "Revisión" msgid "rose" msgstr "rosa" +#: src/lib/entry-editor/CommentDialog.svelte +msgid "Save" +msgstr "Guardar" + #. Dialog button to save audio with new name #: src/lib/components/field-editors/audio-input.svelte msgid "Save As" @@ -1874,6 +1919,10 @@ msgstr "Mostrar" msgid "Show {0} more..." msgstr "Mostrar {0} más..." +#: src/lib/entry-editor/CommentDialog.svelte +msgid "Sign in to add comments." +msgstr "Inicia sesión para añadir comentarios." + #. View option #: src/project/browse/EntryListViewOptions.svelte msgid "Simple" @@ -1898,6 +1947,10 @@ msgstr "Algo salió mal" msgid "Specific field" msgstr "Campo específico" +#: src/lib/entry-editor/CommentDialog.svelte +msgid "Start a new thread" +msgstr "Iniciar un nuevo hilo" + #. Filter operator #. Search operator: matches fields beginning with the search term #. Related operators: "Contains", "Ends with", "Equals" @@ -2082,6 +2135,10 @@ msgstr "Esta tarea está completa" msgid "This will synchronize the FieldWorks Lite and FieldWorks Classic copies of your project in Lexbox." msgstr "Esto sincronizará las copias de FieldWorks Lite y FieldWorks Classic de su proyecto en Lexbox." +#: src/lib/entry-editor/CommentDialog.svelte +msgid "Thread" +msgstr "Hilo" + #. Button to show/hide filter panel #: src/project/browse/SearchFilter.svelte msgid "Toggle filters" @@ -2147,10 +2204,7 @@ msgid "Unable to open in FieldWorks" msgstr "No se puede abrir en FieldWorks" #. Fallback value shown when author name or last-change date is unavailable (e.g., in activity history or the sync panel). -#: src/lib/activity/ActivityFilter.svelte -#: src/lib/activity/ActivityFilter.svelte -#: src/lib/activity/ActivityItem.svelte -#: src/lib/activity/ActivityView.svelte +#: src/lib/activity/AuthorLabel.svelte #: src/lib/activity/utils.ts #: src/project/sync/FwLiteToFwMergeDetails.svelte #: src/project/sync/FwLiteToFwMergeDetails.svelte @@ -2333,6 +2387,14 @@ msgstr "Se requiere Palabra o Mostrar como" msgid "Word or meaning:" msgstr "Palabra o significado:" +#: src/lib/entry-editor/CommentDialog.svelte +msgid "Write a reply..." +msgstr "Escribe una respuesta..." + +#: src/lib/entry-editor/CommentDialog.svelte +msgid "Write the first comment..." +msgstr "Escribe el primer comentario..." + #. Column header #: src/project/browse/filter/WsSelect.svelte msgid "Writing System" From a0f58395034867be7bd2b1c7d527d666dc4143c1 Mon Sep 17 00:00:00 2001 From: Tim Haasdyk Date: Mon, 6 Jul 2026 18:14:37 +0200 Subject: [PATCH 61/65] New translations en.po (Korean) [ci skip] --- frontend/viewer/src/locales/ko.po | 74 ++++++++++++++++++++++++++++--- 1 file changed, 68 insertions(+), 6 deletions(-) diff --git a/frontend/viewer/src/locales/ko.po b/frontend/viewer/src/locales/ko.po index e3a09e7882..6998353257 100644 --- a/frontend/viewer/src/locales/ko.po +++ b/frontend/viewer/src/locales/ko.po @@ -8,7 +8,7 @@ msgstr "" "Language: ko\n" "Project-Id-Version: language-depot\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2026-07-04 04:37\n" +"PO-Revision-Date: 2026-07-06 16:14\n" "Last-Translator: \n" "Language-Team: Korean\n" "Plural-Forms: nplurals=1; plural=0;\n" @@ -25,6 +25,10 @@ msgstr "" msgid "– ({0} changes)" msgstr "- ({0}개 변경)" +#: src/lib/entry-editor/CommentDialog.svelte +msgid "(unknown)" +msgstr "(알 수 없음)" + #. Generic placeholder for dynamic content #: src/home/HomeView.svelte #: src/lib/components/audio/audio-editor.svelte @@ -353,6 +357,7 @@ msgstr "찾아보기 실패" #: src/lib/components/SubmitOrCancel.svelte #: src/lib/components/audio/AudioDialog.svelte #: src/lib/components/field-editors/select.svelte +#: src/lib/entry-editor/CommentDialog.svelte #: src/lib/entry-editor/EditEntryDialog.svelte #: src/lib/entry-editor/NewEntryDialog.svelte #: src/lib/views/custom/CustomViewForm.svelte @@ -403,6 +408,8 @@ msgstr "clear" #: src/lib/about/AboutDialog.svelte #: src/lib/components/field-editors/multi-select.svelte #: src/lib/components/ui/button/x-button.svelte +#: src/lib/entry-editor/CommentDialog.svelte +#: src/lib/entry-editor/CommentDialog.svelte #: src/project/tasks/SubjectPopup.svelte msgid "Close" msgstr "닫기" @@ -413,6 +420,10 @@ msgstr "닫기" msgid "Close Dictionary" msgstr "사전 닫기" +#: src/lib/entry-editor/CommentDialog.svelte +msgid "Closed" +msgstr "종료됨" + #. Field label in the create-project dialog. The project's short machine-readable identifier (slug), e.g. "my-dictionary". #: src/home/CreateProjectDialog.svelte msgid "Code" @@ -423,6 +434,15 @@ msgstr "코드" msgid "Color" msgstr "색상" +#: src/lib/entry-editor/CommentDialog.svelte +#: src/project/browse/EntryView.svelte +msgid "Comments" +msgstr "댓글" + +#: src/lib/entry-editor/CommentDialog.svelte +msgid "Comments for {0}" +msgstr "에 대한 댓글 {0}" + #. Field label #: src/lib/entry-editor/field-editors/ComplexFormComponents.svelte #: src/lib/entry-editor/field-editors/ComplexForms.svelte @@ -722,6 +742,14 @@ msgstr "다운로드 중..." msgid "e.g. th, sw" msgstr "예: th, sw" +#: src/lib/entry-editor/CommentDialog.svelte +msgid "Edit" +msgstr "편집" + +#: src/lib/entry-editor/CommentDialog.svelte +msgid "Edit comment" +msgstr "댓글 수정" + #. Dialog title when editing an existing custom view. #: src/lib/views/custom/EditCustomViewDialog.svelte msgid "Edit Custom View" @@ -732,6 +760,10 @@ msgstr "사용자 지정 보기 편집" msgid "Editor" msgstr "편집기" +#: src/lib/entry-editor/CommentDialog.svelte +msgid "Empty comment" +msgstr "비어 있는 댓글" + #. Filter operator #. Search operator: matches fields ending with the search term #. Related operators: "Starts with", "Contains", "Equals" @@ -905,7 +937,7 @@ msgstr "FieldWorks Lite 버전" #. Alt text for FieldWorks logo image #: src/home/HomeView.svelte -#: src/lib/activity/ActivityFilter.svelte +#: src/lib/activity/AuthorLabel.svelte #: src/lib/components/OpenInFieldWorksButton.svelte #: src/project/ProjectDropdown.svelte #: src/project/sync/FwLiteToFwMergeDetails.svelte @@ -1191,6 +1223,10 @@ msgstr "문자 그대로의 의미" msgid "Loading activity" msgstr "로딩 중" +#: src/lib/entry-editor/CommentDialog.svelte +msgid "Loading comments..." +msgstr "댓글 불러오는 중..." + #. Loading state text shown in the project/dictionary dropdown while the list of dictionaries is being fetched. #: src/project/ProjectDropdown.svelte msgid "Loading Dictionaries..." @@ -1412,6 +1448,10 @@ msgstr "오디오 없음" msgid "No authors" msgstr "저자 없음" +#: src/lib/entry-editor/CommentDialog.svelte +msgid "No comment threads yet." +msgstr "아직 댓글이 없습니다." + #. Empty state message in the manage custom views dialog when none exist. #: src/lib/views/custom/ManageCustomViewsDialog.svelte msgid "No custom views yet." @@ -1542,6 +1582,7 @@ msgstr "하나의 FieldWorks Classic 커밋은 여러 항목 또는 필드에 #. Button to open downloaded project #: src/home/Server.svelte +#: src/lib/entry-editor/CommentDialog.svelte msgid "Open" msgstr "열기" @@ -1746,6 +1787,10 @@ msgstr "검토" msgid "rose" msgstr "rose" +#: src/lib/entry-editor/CommentDialog.svelte +msgid "Save" +msgstr "저장" + #. Dialog button to save audio with new name #: src/lib/components/field-editors/audio-input.svelte msgid "Save As" @@ -1874,6 +1919,10 @@ msgstr "표시" msgid "Show {0} more..." msgstr "보기 {0} 더보기..." +#: src/lib/entry-editor/CommentDialog.svelte +msgid "Sign in to add comments." +msgstr "댓글을 달려면 로그인하세요." + #. View option #: src/project/browse/EntryListViewOptions.svelte msgid "Simple" @@ -1898,6 +1947,10 @@ msgstr "문제가 발생했습니다." msgid "Specific field" msgstr "특정 필드" +#: src/lib/entry-editor/CommentDialog.svelte +msgid "Start a new thread" +msgstr "새 게시글 작성하기" + #. Filter operator #. Search operator: matches fields beginning with the search term #. Related operators: "Contains", "Ends with", "Equals" @@ -2082,6 +2135,10 @@ msgstr "이 작업이 완료되었습니다." msgid "This will synchronize the FieldWorks Lite and FieldWorks Classic copies of your project in Lexbox." msgstr "이렇게 하면 렉스박스에서 프로젝트의 FieldWorks Lite 및 FieldWorks Classic 사본이 동기화됩니다." +#: src/lib/entry-editor/CommentDialog.svelte +msgid "Thread" +msgstr "스레드" + #. Button to show/hide filter panel #: src/project/browse/SearchFilter.svelte msgid "Toggle filters" @@ -2147,10 +2204,7 @@ msgid "Unable to open in FieldWorks" msgstr "FieldWorks에서 열 수 없음" #. Fallback value shown when author name or last-change date is unavailable (e.g., in activity history or the sync panel). -#: src/lib/activity/ActivityFilter.svelte -#: src/lib/activity/ActivityFilter.svelte -#: src/lib/activity/ActivityItem.svelte -#: src/lib/activity/ActivityView.svelte +#: src/lib/activity/AuthorLabel.svelte #: src/lib/activity/utils.ts #: src/project/sync/FwLiteToFwMergeDetails.svelte #: src/project/sync/FwLiteToFwMergeDetails.svelte @@ -2333,6 +2387,14 @@ msgstr "단어 또는 표시 이름은 필수 입력 사항입니다." msgid "Word or meaning:" msgstr "단어 또는 의미:" +#: src/lib/entry-editor/CommentDialog.svelte +msgid "Write a reply..." +msgstr "답글을 작성하세요..." + +#: src/lib/entry-editor/CommentDialog.svelte +msgid "Write the first comment..." +msgstr "첫 번째 댓글을 남겨보세요..." + #. Column header #: src/project/browse/filter/WsSelect.svelte msgid "Writing System" From 240a80d779bf8e7cd314fb841b4a23df522490dc Mon Sep 17 00:00:00 2001 From: Tim Haasdyk Date: Mon, 6 Jul 2026 18:14:39 +0200 Subject: [PATCH 62/65] New translations en.po (Vietnamese) [ci skip] --- frontend/viewer/src/locales/vi.po | 74 ++++++++++++++++++++++++++++--- 1 file changed, 68 insertions(+), 6 deletions(-) diff --git a/frontend/viewer/src/locales/vi.po b/frontend/viewer/src/locales/vi.po index 8f54a8bbe8..da20461635 100644 --- a/frontend/viewer/src/locales/vi.po +++ b/frontend/viewer/src/locales/vi.po @@ -8,7 +8,7 @@ msgstr "" "Language: vi\n" "Project-Id-Version: language-depot\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2026-07-04 04:37\n" +"PO-Revision-Date: 2026-07-06 16:14\n" "Last-Translator: \n" "Language-Team: Vietnamese\n" "Plural-Forms: nplurals=1; plural=0;\n" @@ -25,6 +25,10 @@ msgstr "" msgid "– ({0} changes)" msgstr "– ({0} các thay đổi)" +#: src/lib/entry-editor/CommentDialog.svelte +msgid "(unknown)" +msgstr "(không rõ)" + #. Generic placeholder for dynamic content #: src/home/HomeView.svelte #: src/lib/components/audio/audio-editor.svelte @@ -353,6 +357,7 @@ msgstr "Không thể hiển thị chế độ xem" #: src/lib/components/SubmitOrCancel.svelte #: src/lib/components/audio/AudioDialog.svelte #: src/lib/components/field-editors/select.svelte +#: src/lib/entry-editor/CommentDialog.svelte #: src/lib/entry-editor/EditEntryDialog.svelte #: src/lib/entry-editor/NewEntryDialog.svelte #: src/lib/views/custom/CustomViewForm.svelte @@ -403,6 +408,8 @@ msgstr "xóa" #: src/lib/about/AboutDialog.svelte #: src/lib/components/field-editors/multi-select.svelte #: src/lib/components/ui/button/x-button.svelte +#: src/lib/entry-editor/CommentDialog.svelte +#: src/lib/entry-editor/CommentDialog.svelte #: src/project/tasks/SubjectPopup.svelte msgid "Close" msgstr "Đóng" @@ -413,6 +420,10 @@ msgstr "Đóng" msgid "Close Dictionary" msgstr "Đóng Từ điển" +#: src/lib/entry-editor/CommentDialog.svelte +msgid "Closed" +msgstr "Đã đóng" + #. Field label in the create-project dialog. The project's short machine-readable identifier (slug), e.g. "my-dictionary". #: src/home/CreateProjectDialog.svelte msgid "Code" @@ -423,6 +434,15 @@ msgstr "Mã" msgid "Color" msgstr "Màu sắc" +#: src/lib/entry-editor/CommentDialog.svelte +#: src/project/browse/EntryView.svelte +msgid "Comments" +msgstr "Bình luận" + +#: src/lib/entry-editor/CommentDialog.svelte +msgid "Comments for {0}" +msgstr "Nhận xét về {0}" + #. Field label #: src/lib/entry-editor/field-editors/ComplexFormComponents.svelte #: src/lib/entry-editor/field-editors/ComplexForms.svelte @@ -722,6 +742,14 @@ msgstr "Đang tải xuống..." msgid "e.g. th, sw" msgstr "ví dụ: th, sw" +#: src/lib/entry-editor/CommentDialog.svelte +msgid "Edit" +msgstr "Chỉnh sửa" + +#: src/lib/entry-editor/CommentDialog.svelte +msgid "Edit comment" +msgstr "Chỉnh sửa bình luận" + #. Dialog title when editing an existing custom view. #: src/lib/views/custom/EditCustomViewDialog.svelte msgid "Edit Custom View" @@ -732,6 +760,10 @@ msgstr "Chỉnh sửa chế độ xem tùy chỉnh" msgid "Editor" msgstr "Biên tập viên" +#: src/lib/entry-editor/CommentDialog.svelte +msgid "Empty comment" +msgstr "Bình luận trống" + #. Filter operator #. Search operator: matches fields ending with the search term #. Related operators: "Starts with", "Contains", "Equals" @@ -905,7 +937,7 @@ msgstr "Phiên bản FieldWorks Lite" #. Alt text for FieldWorks logo image #: src/home/HomeView.svelte -#: src/lib/activity/ActivityFilter.svelte +#: src/lib/activity/AuthorLabel.svelte #: src/lib/components/OpenInFieldWorksButton.svelte #: src/project/ProjectDropdown.svelte #: src/project/sync/FwLiteToFwMergeDetails.svelte @@ -1191,6 +1223,10 @@ msgstr "Ý nghĩa đen" msgid "Loading activity" msgstr "Hoạt động đang tải" +#: src/lib/entry-editor/CommentDialog.svelte +msgid "Loading comments..." +msgstr "Đang tải bình luận..." + #. Loading state text shown in the project/dictionary dropdown while the list of dictionaries is being fetched. #: src/project/ProjectDropdown.svelte msgid "Loading Dictionaries..." @@ -1412,6 +1448,10 @@ msgstr "Không có âm thanh" msgid "No authors" msgstr "Không có tác giả" +#: src/lib/entry-editor/CommentDialog.svelte +msgid "No comment threads yet." +msgstr "Chưa có bình luận nào." + #. Empty state message in the manage custom views dialog when none exist. #: src/lib/views/custom/ManageCustomViewsDialog.svelte msgid "No custom views yet." @@ -1542,6 +1582,7 @@ msgstr "Một commit của FieldWorks Classic có thể gồm các thay đổi t #. Button to open downloaded project #: src/home/Server.svelte +#: src/lib/entry-editor/CommentDialog.svelte msgid "Open" msgstr "Mở" @@ -1746,6 +1787,10 @@ msgstr "Xem lại" msgid "rose" msgstr "hoa hồng" +#: src/lib/entry-editor/CommentDialog.svelte +msgid "Save" +msgstr "Lưu" + #. Dialog button to save audio with new name #: src/lib/components/field-editors/audio-input.svelte msgid "Save As" @@ -1874,6 +1919,10 @@ msgstr "Hiển thị" msgid "Show {0} more..." msgstr "Hiển thị thêm {0}..." +#: src/lib/entry-editor/CommentDialog.svelte +msgid "Sign in to add comments." +msgstr "Vui lòng đăng nhập để thêm bình luận." + #. View option #: src/project/browse/EntryListViewOptions.svelte msgid "Simple" @@ -1898,6 +1947,10 @@ msgstr "Đã xảy ra sự cố" msgid "Specific field" msgstr "Trường cụ thể" +#: src/lib/entry-editor/CommentDialog.svelte +msgid "Start a new thread" +msgstr "Tạo một chủ đề mới" + #. Filter operator #. Search operator: matches fields beginning with the search term #. Related operators: "Contains", "Ends with", "Equals" @@ -2082,6 +2135,10 @@ msgstr "Nhiệm vụ này đã hoàn thành" msgid "This will synchronize the FieldWorks Lite and FieldWorks Classic copies of your project in Lexbox." msgstr "Điều này sẽ đồng bộ các bản sao FieldWorks Lite và FieldWorks Classic của dự án của bạn trong Lexbox." +#: src/lib/entry-editor/CommentDialog.svelte +msgid "Thread" +msgstr "Chủ đề" + #. Button to show/hide filter panel #: src/project/browse/SearchFilter.svelte msgid "Toggle filters" @@ -2147,10 +2204,7 @@ msgid "Unable to open in FieldWorks" msgstr "Không thể mở trong FieldWorks" #. Fallback value shown when author name or last-change date is unavailable (e.g., in activity history or the sync panel). -#: src/lib/activity/ActivityFilter.svelte -#: src/lib/activity/ActivityFilter.svelte -#: src/lib/activity/ActivityItem.svelte -#: src/lib/activity/ActivityView.svelte +#: src/lib/activity/AuthorLabel.svelte #: src/lib/activity/utils.ts #: src/project/sync/FwLiteToFwMergeDetails.svelte #: src/project/sync/FwLiteToFwMergeDetails.svelte @@ -2333,6 +2387,14 @@ msgstr "Từ hoặc Hiển thị như là bắt buộc." msgid "Word or meaning:" msgstr "Từ hoặc ý nghĩa:" +#: src/lib/entry-editor/CommentDialog.svelte +msgid "Write a reply..." +msgstr "Viết lời trả lời..." + +#: src/lib/entry-editor/CommentDialog.svelte +msgid "Write the first comment..." +msgstr "Hãy viết bình luận đầu tiên..." + #. Column header #: src/project/browse/filter/WsSelect.svelte msgid "Writing System" From e153040591673c4951903ce62472da44946f4f29 Mon Sep 17 00:00:00 2001 From: Tim Haasdyk Date: Mon, 6 Jul 2026 18:14:41 +0200 Subject: [PATCH 63/65] New translations en.po (Indonesian) [ci skip] --- frontend/viewer/src/locales/id.po | 74 ++++++++++++++++++++++++++++--- 1 file changed, 68 insertions(+), 6 deletions(-) diff --git a/frontend/viewer/src/locales/id.po b/frontend/viewer/src/locales/id.po index 7d4084929f..a444901e8b 100644 --- a/frontend/viewer/src/locales/id.po +++ b/frontend/viewer/src/locales/id.po @@ -8,7 +8,7 @@ msgstr "" "Language: id\n" "Project-Id-Version: language-depot\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2026-07-04 04:37\n" +"PO-Revision-Date: 2026-07-06 16:14\n" "Last-Translator: \n" "Language-Team: Indonesian\n" "Plural-Forms: nplurals=1; plural=0;\n" @@ -25,6 +25,10 @@ msgstr "" msgid "– ({0} changes)" msgstr "- ({0} perubahan)" +#: src/lib/entry-editor/CommentDialog.svelte +msgid "(unknown)" +msgstr "(tidak diketahui)" + #. Generic placeholder for dynamic content #: src/home/HomeView.svelte #: src/lib/components/audio/audio-editor.svelte @@ -353,6 +357,7 @@ msgstr "Tampilan penelusuran gagal" #: src/lib/components/SubmitOrCancel.svelte #: src/lib/components/audio/AudioDialog.svelte #: src/lib/components/field-editors/select.svelte +#: src/lib/entry-editor/CommentDialog.svelte #: src/lib/entry-editor/EditEntryDialog.svelte #: src/lib/entry-editor/NewEntryDialog.svelte #: src/lib/views/custom/CustomViewForm.svelte @@ -403,6 +408,8 @@ msgstr "jelas" #: src/lib/about/AboutDialog.svelte #: src/lib/components/field-editors/multi-select.svelte #: src/lib/components/ui/button/x-button.svelte +#: src/lib/entry-editor/CommentDialog.svelte +#: src/lib/entry-editor/CommentDialog.svelte #: src/project/tasks/SubjectPopup.svelte msgid "Close" msgstr "Tutup" @@ -413,6 +420,10 @@ msgstr "Tutup" msgid "Close Dictionary" msgstr "Tutup Kamus" +#: src/lib/entry-editor/CommentDialog.svelte +msgid "Closed" +msgstr "Tutup" + #. Field label in the create-project dialog. The project's short machine-readable identifier (slug), e.g. "my-dictionary". #: src/home/CreateProjectDialog.svelte msgid "Code" @@ -423,6 +434,15 @@ msgstr "Kode" msgid "Color" msgstr "Warna" +#: src/lib/entry-editor/CommentDialog.svelte +#: src/project/browse/EntryView.svelte +msgid "Comments" +msgstr "Komentar" + +#: src/lib/entry-editor/CommentDialog.svelte +msgid "Comments for {0}" +msgstr "Komentar untuk {0}" + #. Field label #: src/lib/entry-editor/field-editors/ComplexFormComponents.svelte #: src/lib/entry-editor/field-editors/ComplexForms.svelte @@ -722,6 +742,14 @@ msgstr "Mengunduh..." msgid "e.g. th, sw" msgstr "misalnya: th, sw" +#: src/lib/entry-editor/CommentDialog.svelte +msgid "Edit" +msgstr "Sunting" + +#: src/lib/entry-editor/CommentDialog.svelte +msgid "Edit comment" +msgstr "Sunting komentar" + #. Dialog title when editing an existing custom view. #: src/lib/views/custom/EditCustomViewDialog.svelte msgid "Edit Custom View" @@ -732,6 +760,10 @@ msgstr "Edit Tampilan Khusus" msgid "Editor" msgstr "Editor" +#: src/lib/entry-editor/CommentDialog.svelte +msgid "Empty comment" +msgstr "Komentar kosong" + #. Filter operator #. Search operator: matches fields ending with the search term #. Related operators: "Starts with", "Contains", "Equals" @@ -905,7 +937,7 @@ msgstr "Versi FieldWorks Lite" #. Alt text for FieldWorks logo image #: src/home/HomeView.svelte -#: src/lib/activity/ActivityFilter.svelte +#: src/lib/activity/AuthorLabel.svelte #: src/lib/components/OpenInFieldWorksButton.svelte #: src/project/ProjectDropdown.svelte #: src/project/sync/FwLiteToFwMergeDetails.svelte @@ -1191,6 +1223,10 @@ msgstr "Arti harfiah" msgid "Loading activity" msgstr "Aktivitas pemuatan" +#: src/lib/entry-editor/CommentDialog.svelte +msgid "Loading comments..." +msgstr "Sedang memuat komentar..." + #. Loading state text shown in the project/dictionary dropdown while the list of dictionaries is being fetched. #: src/project/ProjectDropdown.svelte msgid "Loading Dictionaries..." @@ -1412,6 +1448,10 @@ msgstr "Tidak ada audio" msgid "No authors" msgstr "Tidak ada penulis" +#: src/lib/entry-editor/CommentDialog.svelte +msgid "No comment threads yet." +msgstr "Belum ada utas komentar." + #. Empty state message in the manage custom views dialog when none exist. #: src/lib/views/custom/ManageCustomViewsDialog.svelte msgid "No custom views yet." @@ -1542,6 +1582,7 @@ msgstr "Satu komit FieldWorks Classic dapat terdiri dari perubahan pada beberapa #. Button to open downloaded project #: src/home/Server.svelte +#: src/lib/entry-editor/CommentDialog.svelte msgid "Open" msgstr "Buka" @@ -1746,6 +1787,10 @@ msgstr "Ulasan" msgid "rose" msgstr "naik" +#: src/lib/entry-editor/CommentDialog.svelte +msgid "Save" +msgstr "Simpan" + #. Dialog button to save audio with new name #: src/lib/components/field-editors/audio-input.svelte msgid "Save As" @@ -1874,6 +1919,10 @@ msgstr "Tampilkan" msgid "Show {0} more..." msgstr "Tampilkan {0} selengkapnya..." +#: src/lib/entry-editor/CommentDialog.svelte +msgid "Sign in to add comments." +msgstr "Masuk untuk menambahkan komentar." + #. View option #: src/project/browse/EntryListViewOptions.svelte msgid "Simple" @@ -1898,6 +1947,10 @@ msgstr "Ada yang tidak beres" msgid "Specific field" msgstr "Bidang tertentu" +#: src/lib/entry-editor/CommentDialog.svelte +msgid "Start a new thread" +msgstr "Buat topik baru" + #. Filter operator #. Search operator: matches fields beginning with the search term #. Related operators: "Contains", "Ends with", "Equals" @@ -2082,6 +2135,10 @@ msgstr "Tugas ini selesai" msgid "This will synchronize the FieldWorks Lite and FieldWorks Classic copies of your project in Lexbox." msgstr "Ini akan menyinkronkan salinan FieldWorks Lite dan FieldWorks Classic dari proyek Anda di Lexbox." +#: src/lib/entry-editor/CommentDialog.svelte +msgid "Thread" +msgstr "Topik" + #. Button to show/hide filter panel #: src/project/browse/SearchFilter.svelte msgid "Toggle filters" @@ -2147,10 +2204,7 @@ msgid "Unable to open in FieldWorks" msgstr "Tidak dapat dibuka di FieldWorks" #. Fallback value shown when author name or last-change date is unavailable (e.g., in activity history or the sync panel). -#: src/lib/activity/ActivityFilter.svelte -#: src/lib/activity/ActivityFilter.svelte -#: src/lib/activity/ActivityItem.svelte -#: src/lib/activity/ActivityView.svelte +#: src/lib/activity/AuthorLabel.svelte #: src/lib/activity/utils.ts #: src/project/sync/FwLiteToFwMergeDetails.svelte #: src/project/sync/FwLiteToFwMergeDetails.svelte @@ -2333,6 +2387,14 @@ msgstr "Kata atau Tampilan sesuai kebutuhan" msgid "Word or meaning:" msgstr "Kata atau makna:" +#: src/lib/entry-editor/CommentDialog.svelte +msgid "Write a reply..." +msgstr "Tulis balasan..." + +#: src/lib/entry-editor/CommentDialog.svelte +msgid "Write the first comment..." +msgstr "Tulis komentar pertama..." + #. Column header #: src/project/browse/filter/WsSelect.svelte msgid "Writing System" From 748c146082f2b44ae5178c0c94cf4f1e1849292f Mon Sep 17 00:00:00 2001 From: Tim Haasdyk Date: Mon, 6 Jul 2026 18:14:42 +0200 Subject: [PATCH 64/65] New translations en.po (Malay) [ci skip] --- frontend/viewer/src/locales/ms.po | 74 ++++++++++++++++++++++++++++--- 1 file changed, 68 insertions(+), 6 deletions(-) diff --git a/frontend/viewer/src/locales/ms.po b/frontend/viewer/src/locales/ms.po index fcf955138d..9a3f0336bc 100644 --- a/frontend/viewer/src/locales/ms.po +++ b/frontend/viewer/src/locales/ms.po @@ -8,7 +8,7 @@ msgstr "" "Language: ms\n" "Project-Id-Version: language-depot\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2026-07-04 04:37\n" +"PO-Revision-Date: 2026-07-06 16:14\n" "Last-Translator: \n" "Language-Team: Malay\n" "Plural-Forms: nplurals=1; plural=0;\n" @@ -25,6 +25,10 @@ msgstr "" msgid "– ({0} changes)" msgstr "– ({0} perubahan)" +#: src/lib/entry-editor/CommentDialog.svelte +msgid "(unknown)" +msgstr "(tidak diketahui)" + #. Generic placeholder for dynamic content #: src/home/HomeView.svelte #: src/lib/components/audio/audio-editor.svelte @@ -353,6 +357,7 @@ msgstr "Paparan semak imbas gagal" #: src/lib/components/SubmitOrCancel.svelte #: src/lib/components/audio/AudioDialog.svelte #: src/lib/components/field-editors/select.svelte +#: src/lib/entry-editor/CommentDialog.svelte #: src/lib/entry-editor/EditEntryDialog.svelte #: src/lib/entry-editor/NewEntryDialog.svelte #: src/lib/views/custom/CustomViewForm.svelte @@ -403,6 +408,8 @@ msgstr "padam" #: src/lib/about/AboutDialog.svelte #: src/lib/components/field-editors/multi-select.svelte #: src/lib/components/ui/button/x-button.svelte +#: src/lib/entry-editor/CommentDialog.svelte +#: src/lib/entry-editor/CommentDialog.svelte #: src/project/tasks/SubjectPopup.svelte msgid "Close" msgstr "Tutup" @@ -413,6 +420,10 @@ msgstr "Tutup" msgid "Close Dictionary" msgstr "Tutup Kamus" +#: src/lib/entry-editor/CommentDialog.svelte +msgid "Closed" +msgstr "Ditutup" + #. Field label in the create-project dialog. The project's short machine-readable identifier (slug), e.g. "my-dictionary". #: src/home/CreateProjectDialog.svelte msgid "Code" @@ -423,6 +434,15 @@ msgstr "Kod" msgid "Color" msgstr "Warna" +#: src/lib/entry-editor/CommentDialog.svelte +#: src/project/browse/EntryView.svelte +msgid "Comments" +msgstr "Komen" + +#: src/lib/entry-editor/CommentDialog.svelte +msgid "Comments for {0}" +msgstr "Komen untuk {0}" + #. Field label #: src/lib/entry-editor/field-editors/ComplexFormComponents.svelte #: src/lib/entry-editor/field-editors/ComplexForms.svelte @@ -722,6 +742,14 @@ msgstr "Memuat turun..." msgid "e.g. th, sw" msgstr "contohnya th, sw" +#: src/lib/entry-editor/CommentDialog.svelte +msgid "Edit" +msgstr "Sunting" + +#: src/lib/entry-editor/CommentDialog.svelte +msgid "Edit comment" +msgstr "Sunting komen" + #. Dialog title when editing an existing custom view. #: src/lib/views/custom/EditCustomViewDialog.svelte msgid "Edit Custom View" @@ -732,6 +760,10 @@ msgstr "Sunting Tinjauan Tersuai" msgid "Editor" msgstr "Editor" +#: src/lib/entry-editor/CommentDialog.svelte +msgid "Empty comment" +msgstr "Komen kosong" + #. Filter operator #. Search operator: matches fields ending with the search term #. Related operators: "Starts with", "Contains", "Equals" @@ -905,7 +937,7 @@ msgstr "Versi FieldWorks Lite" #. Alt text for FieldWorks logo image #: src/home/HomeView.svelte -#: src/lib/activity/ActivityFilter.svelte +#: src/lib/activity/AuthorLabel.svelte #: src/lib/components/OpenInFieldWorksButton.svelte #: src/project/ProjectDropdown.svelte #: src/project/sync/FwLiteToFwMergeDetails.svelte @@ -1191,6 +1223,10 @@ msgstr "Makna harfiah" msgid "Loading activity" msgstr "Muat aktiviti" +#: src/lib/entry-editor/CommentDialog.svelte +msgid "Loading comments..." +msgstr "Memuatkan komen..." + #. Loading state text shown in the project/dictionary dropdown while the list of dictionaries is being fetched. #: src/project/ProjectDropdown.svelte msgid "Loading Dictionaries..." @@ -1412,6 +1448,10 @@ msgstr "Tiada audio" msgid "No authors" msgstr "Tiada pengarang" +#: src/lib/entry-editor/CommentDialog.svelte +msgid "No comment threads yet." +msgstr "Tiada lagi rentetan komen." + #. Empty state message in the manage custom views dialog when none exist. #: src/lib/views/custom/ManageCustomViewsDialog.svelte msgid "No custom views yet." @@ -1542,6 +1582,7 @@ msgstr "Satu komit FieldWorks Classic mungkin terdiri daripada perubahan pada be #. Button to open downloaded project #: src/home/Server.svelte +#: src/lib/entry-editor/CommentDialog.svelte msgid "Open" msgstr "Buka" @@ -1746,6 +1787,10 @@ msgstr "Semak" msgid "rose" msgstr "merah jambu" +#: src/lib/entry-editor/CommentDialog.svelte +msgid "Save" +msgstr "Simpan" + #. Dialog button to save audio with new name #: src/lib/components/field-editors/audio-input.svelte msgid "Save As" @@ -1874,6 +1919,10 @@ msgstr "Tunjukkan" msgid "Show {0} more..." msgstr "Tunjukkan {0} lagi..." +#: src/lib/entry-editor/CommentDialog.svelte +msgid "Sign in to add comments." +msgstr "Log masuk untuk menambah komen." + #. View option #: src/project/browse/EntryListViewOptions.svelte msgid "Simple" @@ -1898,6 +1947,10 @@ msgstr "Sesuatu telah berlaku dengan salah" msgid "Specific field" msgstr "Medan tertentu" +#: src/lib/entry-editor/CommentDialog.svelte +msgid "Start a new thread" +msgstr "Mulakan utas baru" + #. Filter operator #. Search operator: matches fields beginning with the search term #. Related operators: "Contains", "Ends with", "Equals" @@ -2082,6 +2135,10 @@ msgstr "Tugasan ini selesai" msgid "This will synchronize the FieldWorks Lite and FieldWorks Classic copies of your project in Lexbox." msgstr "Ini akan menyegerakkan salinan FieldWorks Lite dan FieldWorks Classic projek anda dalam Lexbox." +#: src/lib/entry-editor/CommentDialog.svelte +msgid "Thread" +msgstr "Benang" + #. Button to show/hide filter panel #: src/project/browse/SearchFilter.svelte msgid "Toggle filters" @@ -2147,10 +2204,7 @@ msgid "Unable to open in FieldWorks" msgstr "Tidak dapat membuka dalam FieldWorks" #. Fallback value shown when author name or last-change date is unavailable (e.g., in activity history or the sync panel). -#: src/lib/activity/ActivityFilter.svelte -#: src/lib/activity/ActivityFilter.svelte -#: src/lib/activity/ActivityItem.svelte -#: src/lib/activity/ActivityView.svelte +#: src/lib/activity/AuthorLabel.svelte #: src/lib/activity/utils.ts #: src/project/sync/FwLiteToFwMergeDetails.svelte #: src/project/sync/FwLiteToFwMergeDetails.svelte @@ -2333,6 +2387,14 @@ msgstr "Perkataan atau Papar Sebagai diperlukan" msgid "Word or meaning:" msgstr "Perkataan atau makna:" +#: src/lib/entry-editor/CommentDialog.svelte +msgid "Write a reply..." +msgstr "Tulis balasan..." + +#: src/lib/entry-editor/CommentDialog.svelte +msgid "Write the first comment..." +msgstr "Tulis komen pertama..." + #. Column header #: src/project/browse/filter/WsSelect.svelte msgid "Writing System" From 0d737d6d877389b8137de969b5d463ae67e7e442 Mon Sep 17 00:00:00 2001 From: Tim Haasdyk Date: Mon, 6 Jul 2026 18:14:44 +0200 Subject: [PATCH 65/65] New translations en.po (Swahili) [ci skip] --- frontend/viewer/src/locales/sw.po | 74 ++++++++++++++++++++++++++++--- 1 file changed, 68 insertions(+), 6 deletions(-) diff --git a/frontend/viewer/src/locales/sw.po b/frontend/viewer/src/locales/sw.po index e8967845ad..430ccc75ee 100644 --- a/frontend/viewer/src/locales/sw.po +++ b/frontend/viewer/src/locales/sw.po @@ -8,7 +8,7 @@ msgstr "" "Language: sw\n" "Project-Id-Version: language-depot\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2026-07-04 04:37\n" +"PO-Revision-Date: 2026-07-06 16:14\n" "Last-Translator: \n" "Language-Team: Swahili\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" @@ -25,6 +25,10 @@ msgstr "" msgid "– ({0} changes)" msgstr "– ({0} mabadiliko)" +#: src/lib/entry-editor/CommentDialog.svelte +msgid "(unknown)" +msgstr "(Haijulikani)" + #. Generic placeholder for dynamic content #: src/home/HomeView.svelte #: src/lib/components/audio/audio-editor.svelte @@ -353,6 +357,7 @@ msgstr "Uangaliaji wa kuvinjari umeshindikana" #: src/lib/components/SubmitOrCancel.svelte #: src/lib/components/audio/AudioDialog.svelte #: src/lib/components/field-editors/select.svelte +#: src/lib/entry-editor/CommentDialog.svelte #: src/lib/entry-editor/EditEntryDialog.svelte #: src/lib/entry-editor/NewEntryDialog.svelte #: src/lib/views/custom/CustomViewForm.svelte @@ -403,6 +408,8 @@ msgstr "futa" #: src/lib/about/AboutDialog.svelte #: src/lib/components/field-editors/multi-select.svelte #: src/lib/components/ui/button/x-button.svelte +#: src/lib/entry-editor/CommentDialog.svelte +#: src/lib/entry-editor/CommentDialog.svelte #: src/project/tasks/SubjectPopup.svelte msgid "Close" msgstr "Funga" @@ -413,6 +420,10 @@ msgstr "Funga" msgid "Close Dictionary" msgstr "Funga Kamusi" +#: src/lib/entry-editor/CommentDialog.svelte +msgid "Closed" +msgstr "Imefungwa" + #. Field label in the create-project dialog. The project's short machine-readable identifier (slug), e.g. "my-dictionary". #: src/home/CreateProjectDialog.svelte msgid "Code" @@ -423,6 +434,15 @@ msgstr "Msimbo" msgid "Color" msgstr "Rangi" +#: src/lib/entry-editor/CommentDialog.svelte +#: src/project/browse/EntryView.svelte +msgid "Comments" +msgstr "Maoni" + +#: src/lib/entry-editor/CommentDialog.svelte +msgid "Comments for {0}" +msgstr "Maoni kwa {0}" + #. Field label #: src/lib/entry-editor/field-editors/ComplexFormComponents.svelte #: src/lib/entry-editor/field-editors/ComplexForms.svelte @@ -722,6 +742,14 @@ msgstr "Inapakua..." msgid "e.g. th, sw" msgstr "mfano: th, sw" +#: src/lib/entry-editor/CommentDialog.svelte +msgid "Edit" +msgstr "Hariri" + +#: src/lib/entry-editor/CommentDialog.svelte +msgid "Edit comment" +msgstr "Hariri maoni" + #. Dialog title when editing an existing custom view. #: src/lib/views/custom/EditCustomViewDialog.svelte msgid "Edit Custom View" @@ -732,6 +760,10 @@ msgstr "Hariri Muonekano Binafsi" msgid "Editor" msgstr "Mhariri" +#: src/lib/entry-editor/CommentDialog.svelte +msgid "Empty comment" +msgstr "Maoni tupu" + #. Filter operator #. Search operator: matches fields ending with the search term #. Related operators: "Starts with", "Contains", "Equals" @@ -905,7 +937,7 @@ msgstr "Toleo la FieldWorks Lite" #. Alt text for FieldWorks logo image #: src/home/HomeView.svelte -#: src/lib/activity/ActivityFilter.svelte +#: src/lib/activity/AuthorLabel.svelte #: src/lib/components/OpenInFieldWorksButton.svelte #: src/project/ProjectDropdown.svelte #: src/project/sync/FwLiteToFwMergeDetails.svelte @@ -1191,6 +1223,10 @@ msgstr "Maana halisi" msgid "Loading activity" msgstr "Upakiaji unaendelea" +#: src/lib/entry-editor/CommentDialog.svelte +msgid "Loading comments..." +msgstr "Inapakia maoni..." + #. Loading state text shown in the project/dictionary dropdown while the list of dictionaries is being fetched. #: src/project/ProjectDropdown.svelte msgid "Loading Dictionaries..." @@ -1412,6 +1448,10 @@ msgstr "Hakuna sauti" msgid "No authors" msgstr "Hakuna waandishi" +#: src/lib/entry-editor/CommentDialog.svelte +msgid "No comment threads yet." +msgstr "Bado hakuna mfululizo wa maoni." + #. Empty state message in the manage custom views dialog when none exist. #: src/lib/views/custom/ManageCustomViewsDialog.svelte msgid "No custom views yet." @@ -1542,6 +1582,7 @@ msgstr "Kumbuka moja ya FieldWorks Classic inaweza kuwa na mabadiliko kwa ingizo #. Button to open downloaded project #: src/home/Server.svelte +#: src/lib/entry-editor/CommentDialog.svelte msgid "Open" msgstr "Fungua" @@ -1746,6 +1787,10 @@ msgstr "Tathmini" msgid "rose" msgstr "waridi" +#: src/lib/entry-editor/CommentDialog.svelte +msgid "Save" +msgstr "Hifadhi" + #. Dialog button to save audio with new name #: src/lib/components/field-editors/audio-input.svelte msgid "Save As" @@ -1874,6 +1919,10 @@ msgstr "Onyesha" msgid "Show {0} more..." msgstr "Onyesha {0} zaidi..." +#: src/lib/entry-editor/CommentDialog.svelte +msgid "Sign in to add comments." +msgstr "Ingia ili kuongeza maoni." + #. View option #: src/project/browse/EntryListViewOptions.svelte msgid "Simple" @@ -1898,6 +1947,10 @@ msgstr "Kuna tatizo limetokea" msgid "Specific field" msgstr "Sehemu mahsusi" +#: src/lib/entry-editor/CommentDialog.svelte +msgid "Start a new thread" +msgstr "Anza mada mpya" + #. Filter operator #. Search operator: matches fields beginning with the search term #. Related operators: "Contains", "Ends with", "Equals" @@ -2082,6 +2135,10 @@ msgstr "Jukumu hili limekamilika" msgid "This will synchronize the FieldWorks Lite and FieldWorks Classic copies of your project in Lexbox." msgstr "Hii itaoanisha kopia za FieldWorks Lite na FieldWorks Classic za mradi wako kwenye Lexbox." +#: src/lib/entry-editor/CommentDialog.svelte +msgid "Thread" +msgstr "Mada" + #. Button to show/hide filter panel #: src/project/browse/SearchFilter.svelte msgid "Toggle filters" @@ -2147,10 +2204,7 @@ msgid "Unable to open in FieldWorks" msgstr "Haiwezi kufungua katika FieldWorks" #. Fallback value shown when author name or last-change date is unavailable (e.g., in activity history or the sync panel). -#: src/lib/activity/ActivityFilter.svelte -#: src/lib/activity/ActivityFilter.svelte -#: src/lib/activity/ActivityItem.svelte -#: src/lib/activity/ActivityView.svelte +#: src/lib/activity/AuthorLabel.svelte #: src/lib/activity/utils.ts #: src/project/sync/FwLiteToFwMergeDetails.svelte #: src/project/sync/FwLiteToFwMergeDetails.svelte @@ -2333,6 +2387,14 @@ msgstr "Neno au Onyesha kulingana na inavyohitajika" msgid "Word or meaning:" msgstr "Neno au maana:" +#: src/lib/entry-editor/CommentDialog.svelte +msgid "Write a reply..." +msgstr "Andika jibu..." + +#: src/lib/entry-editor/CommentDialog.svelte +msgid "Write the first comment..." +msgstr "Andika maoni ya kwanza..." + #. Column header #: src/project/browse/filter/WsSelect.svelte msgid "Writing System"