Merge pull request #782 from MishynMykhailo/uk-panel-catalog-20261011

Translate the 95 panel rows Ukrainian was missing
This commit is contained in:
Brandon Thomas committed 2026-10-12 03:22:49 -04:00
commit 5be3b8f9b2
3 files changed
+116 -3

No files matched your search

+8 -1
View File
@@ -97,7 +97,7 @@ UI strings translated out of ≈ 3,900 (detail: [localization-parity.md](docs/lo
| Korean | none | 0% |
| Vietnamese | none | 0% |
Also shipped: Traditional Chinese (partial, 28%) and Ukrainian (partial, 26%). No language has had
Also shipped: Traditional Chinese (partial, 28%) and Ukrainian (partial, 29%). No language has had
native-speaker review.
## Upcoming
@@ -117,6 +117,13 @@ Come tell us what matters most to you on [Discord](https://discord.gg/artcraft).
## Progress log
- 2026-10-11: Ukrainian panels caught up with the Chinese catalogs. The 95 rows the panel
catalog gained since 9 October are translated: the Home screen (recent files, their Kind and
Opened columns, the empty and no-match states), the viewer's toolbar tooltips, magnification,
resolution, grid, channel and Fast Previews popups, the Appearance settings, the solid dialog
and the project, import, export and colour-management forms. `uk` now carries 495 of the 496
panel rows — `RGB` reads the same in Ukrainian, so it falls back to the English source by
design — alongside its 618/618 menus.
- 2026-10-10: Full parity re-measure against After Effects 2026 26.5 (installed bundle, 26.2–26.5
release notes, repository counts): breadth ≈ 91%, ready ≈ 45%, stage alpha. Progress docs
follow the shared standard: `docs/parity.md` became `docs/target-app-parity.md`; new
+105
View File
@@ -1588,7 +1588,9 @@ const UKRAINIAN: &[(&str, &str)] = &[
),
("About EffectCraft", "Про EffectCraft"),
("About...", "Про програму..."),
("Active", "Активна"),
("Active Camera", "Активна камера"),
("Alpha", "Альфа"),
("Adapt Feature On Every Frame", "Адаптувати ознаку в кожному кадрі"),
("Adaptive Sample Limit:", "Межа адаптивних вибірок:"),
("Add Animator", "Додати аніматор"),
@@ -1609,6 +1611,8 @@ const UKRAINIAN: &[(&str, &str)] = &[
("All six face cameras turn together; the scene is not changed.", "Усі шість камер граней повертаються разом; сцена залишається без змін."),
("Anchor:", "Опорна точка:"),
("Aperture", "Діафрагма"),
("Appearance Mode", "Режим оформлення"),
("Appearance Mode: {}", "Режим оформлення: {}"),
("Apply Dimensions:", "Застосувати виміри:"),
("Apply Motion To:", "Застосувати рух до:"),
("Arrange", "Упорядкувати"),
@@ -1621,6 +1625,7 @@ const UKRAINIAN: &[(&str, &str)] = &[
("Blending Mode", "Режим змішування"),
("Blur", "Розмиття"),
("Blur Level", "Рівень розмиття"),
("Boundary", "Межа"),
("Browser Storage", "Сховище браузера"),
("Browse…", "Огляд…"),
("Brush Dynamics", "Динаміка пензля"),
@@ -1674,6 +1679,8 @@ const UKRAINIAN: &[(&str, &str)] = &[
("Continuous (Lock Outgoing to Incoming)", "Безперервна (прирівняти вихідну швидкість до вхідної)"),
("Cue Point", "Сигнальна точка"),
("Current Render", "Поточний рендеринг"),
("Dark", "Темне"),
("Dark Theme", "Темна тема"),
("Darker", "Темніше"),
("Default Output:", "Стандартний вихід:"),
("Default: {}", "Стандартне: {}"),
@@ -1736,6 +1743,7 @@ const UKRAINIAN: &[(&str, &str)] = &[
("Frame Rate:", "Частота кадрів:"),
("Frame Render Time {}ms", "Час рендерингу кадру {} мс"),
("Frame Target:", "Цільовий фрейм:"),
("Freeze", "Заморозити"),
("Grab bag", "Список"),
("Gradient Editor", "Редактор градієнта"),
("Grid", "Сітка"),
@@ -1771,6 +1779,8 @@ const UKRAINIAN: &[(&str, &str)] = &[
("Leave all attributes in \"{}\"", "Залишити всі атрибути в «{}»"),
("Licence: {}", "Ліцензія: {}"),
("Ligatures", "Лігатури"),
("Light", "Світле"),
("Light Theme", "Світла тема"),
("Light Type", "Тип світла"),
("Lighter", "Світліше"),
("Link Selected Property", "Зв’язати виділену властивість"),
@@ -1853,6 +1863,7 @@ const UKRAINIAN: &[(&str, &str)] = &[
("Original Duration:", "Початкова тривалість:"),
("Output Cycle: {}", "Цикл виводу: {}"),
("Output To:", "Вивести до:"),
("Overlay", "Накладання"),
("Parameter Name:", "Назва параметра:"),
("Parent pick whip: drag onto a layer", "Зв’язування батьківського шару: перетягніть на шар"),
("Pixel Aspect Ratio:", "Пропорції пікселя:"),
@@ -1951,6 +1962,7 @@ const UKRAINIAN: &[(&str, &str)] = &[
("Start Timecode:", "Початковий часовий код:"),
("Start: {} Duration: {}", "Початок: {} Тривалість: {}"),
("Step {} of {}: {}", "Крок {} з {}: {}"),
("Stop", "Зупинити"),
("Stop {} at {}°", "Колірна точка {} на {}°"),
("Stored in: {}", "Збережено в: {}"),
("Stretch", "Розтягнення"),
@@ -1958,6 +1970,7 @@ const UKRAINIAN: &[(&str, &str)] = &[
("Stylistic Sets", "Стилістичні набори"),
("Subpixel Positioning", "Субпіксельне позиціювання"),
("Swap Paint Colors (X)", "Поміняти місцями кольори малювання (X)"),
("Sync with System", "Синхронізувати з системою"),
("System Default", "Стандартне системне"),
("Table", "Таблиця"),
("Template name", "Назва шаблону"),
@@ -1992,6 +2005,7 @@ const UKRAINIAN: &[(&str, &str)] = &[
("Type a command or effect…", "Введіть команду або ефект…"),
("URL:", "URL:"),
("Undock Panel", "Від’єднати панель"),
("Unfreeze", "Розморозити"),
("Unlink {}", "Від’єднати {}"),
(
"Use this option to place the currently selected layers together into a new intermediate composition.",
@@ -2017,6 +2031,97 @@ const UKRAINIAN: &[(&str, &str)] = &[
("⌘/Ctrl-drag a pin to record its motion", "Перетягніть опорну точку з ⌘/Ctrl, щоб записати її рух"),
("▣ {}", "▣ {}"),
("⚠ {} is used by:", "⚠ {} використовується в:"),
// Strings a panel used to hand to a helper as a bare literal: the helper draws them (the
// viewer's toolbar tooltips and popup items, the solid dialog's checkbox), so the lookup has
// to reach the catalog from inside the helper. Kept at the end so the catalogs stay parallel.
("3D Reference Axes", "Опорні осі 3D"),
("Affect all layers that use this solid", "Застосувати до всіх шарів, що використовують цей суцільний колір"),
("Choose grid and guide options", "Вибрати параметри сітки та напрямних"),
("Colorize", "Розфарбувати"),
("Custom", "Власна"),
("Custom...", "Власна..."),
("Fit", "Підігнати"),
("Fit up to 100%", "Підігнати (макс. 100%)"),
("Full", "Повна"),
("Half", "Половина"),
("Only this layer uses this solid.", "Цей суцільний колір використовує лише цей шар."),
("Proportional Grid", "Пропорційна сітка"),
("Quarter", "Чверть"),
("Region of Interest", "Область інтересу"),
("Reset Exposure", "Скинути експозицію"),
("Show Channel and Color Management Settings", "Показати канал і параметри керування кольором"),
("Show Snapshot (hold)", "Показати знімок (утримуйте)"),
("Take Snapshot", "Зробити знімок"),
("Third", "Третина"),
("Toggle Mask and Shape Path Visibility", "Перемкнути видимість контурів масок і фігур"),
("Toggle Transparency Grid", "Перемкнути сітку прозорості"),
// Technical terms and proper nouns: the project settings, the import and export forms, the
// viewer's channel and Fast Previews popups, the keyframe dialogs and the About window. The
// terms that read the same in Ukrainian (Display P3, HDTV (Rec. 709), RGB, H.264, ProRes…)
// need no row: a missing row falls back to the English source, which is the decision.
("16 bits per channel", "16 бітів на канал"),
("32 bits per channel (float)", "32 біти на канал (з плаваючою комою)"),
("8 bits per channel", "8 бітів на канал"),
("Adaptive Resolution", "Адаптивна роздільність"),
("Adobe-style built-in", "Вбудований у стилі Adobe"),
("Blue", "Синій"),
("Current Settings", "Поточні налаштування"),
("Disable Per-character 3D", "Вимкнути 3D для кожного символу"),
("Draft", "Чорнова"),
("Enable Per-character 3D", "Увімкнути 3D для кожного символу"),
("Fast Draft", "Швидка чорнова"),
("Fast Previews (Draft 3D, Faster Effects)", "Швидкий перегляд (чорновий 3D, швидші ефекти)"),
("Green", "Зелений"),
("Import Image Sequence", "Імпорт послідовності зображень"),
("Import PDF / Illustrator File", "Імпорт файлу PDF / Illustrator"),
("Import Photoshop File", "Імпорт файлу Photoshop"),
("Interpret Unlabeled Alpha As", "Інтерпретувати непозначену альфу як"),
("Join the ArtCraft Discord", "Приєднатися до Discord ArtCraft"),
("Mercury GPU Acceleration ({})", "Прискорення Mercury GPU ({})"),
("Mercury Software Only", "Лише програмний Mercury"),
("OCIO (built-in ACES config)", "OCIO (вбудована конфігурація ACES)"),
("Off (Final Quality)", "Вимкнено (остаточна якість)"),
("OpenGL (compatibility)", "OpenGL (сумісність)"),
("Opus Bitrate: {} kbps", "Бітрейт Opus: {} кбіт/с"),
("RGB Straight", "RGB (прямий)"),
("Red", "Червоний"),
("Tone map", "Тональне відображення"),
("Use In-Window Menu Bar on macOS", "Використовувати смугу меню у вікні на macOS"),
("Wireframe", "Каркас"),
("sRGB IEC61966-2.1 (default)", "sRGB IEC61966-2.1 (стандартний)"),
// The Home screen (#574).
("New Project", "Новий проєкт"),
("Open Project…", "Відкрити проєкт…"),
("Templates", "Шаблони"),
("EffectCraft home page", "Домашня сторінка EffectCraft"),
("EffectCraft on GitHub", "EffectCraft на GitHub"),
("Motion graphics and visual effects · version {}", "Анімована графіка та візуальні ефекти · версія {}"),
("New Composition", "Нова композиція"),
("Open Demo Project", "Відкрити демонстраційний проєкт"),
("Import Footage…", "Імпортувати матеріал…"),
("Filter recent files", "Фільтрувати нещодавні файли"),
("NAME", "НАЗВА"),
("OPENED", "ВІДКРИТО"),
("SIZE", "РОЗМІР"),
("KIND", "ТИП"),
("Your recent files will show here", "Тут з’являться ваші нещодавні файли"),
("Create a new project, or open the demo project to look around.", "Створіть новий проєкт або відкрийте демонстраційний, щоб ознайомитися з програмою."),
("No recent files match the filter", "Немає нещодавніх файлів, що відповідають фільтру"),
("Try another name or folder.", "Спробуйте іншу назву або теку."),
("Just now", "Щойно"),
("Yesterday", "Учора"),
// `format_ago` picks between one and many, while Ukrainian declines the noun for 1, for 2–4
// and for 5 and up; the invariant unit abbreviations read correctly for every count.
("{} minute ago", "{} хв тому"),
("{} minutes ago", "{} хв тому"),
("{} hour ago", "{} год тому"),
("{} hours ago", "{} год тому"),
("{} day ago", "{} дн. тому"),
("{} days ago", "{} дн. тому"),
("EffectCraft project", "Проєкт EffectCraft"),
("After Effects project", "Проєкт After Effects"),
("Lottie animation", "Анімація Lottie"),
("Project", "Проєкт"),
];
#[cfg(test)]
+3 -2
View File
@@ -1,6 +1,6 @@
# Localization parity
> **Last reviewed:** 2026-10-10 · **Last updated:** 2026-10-10 · **Change:** major (first measurement of every catalog against the After Effects 2026 26.5 language set) · **Target:** Adobe After Effects 2026
> **Last reviewed:** 2026-10-10 · **Last updated:** 2026-10-11 · **Change:** minor (Ukrainian panel catalog recounted after it caught up with the Chinese ones) · **Target:** Adobe After Effects 2026
How much of EffectCraft's interface is translated, language by language, compared with After
Effects. [gaps.md](gaps.md) gap 16 and workstream G9 hold the work;
@@ -65,7 +65,7 @@ Other languages EffectCraft ships (2):
| Language | Code | UI strings translated | Status | To `full` |
|---|---|---|---|---|
| Traditional Chinese | `zh-hant` | 1,081 (≈ 28%): menus 618/618, panels 463 | partial | 6–9 h + review |
| Ukrainian | `uk` | 1,015 (≈ 26%): menus 618/618, panels 397 | partial | 6–9 h + review |
| Ukrainian | `uk` | 1,113 (≈ 29%): menus 618/618, panels 495/496 | partial | 6–9 h + review |
After Effects also ships Italian and Russian, which EffectCraft does not (8–12 h each).
@@ -87,3 +87,4 @@ can give; none has had it.
| Date | Change | Summary |
|---|---|---|
| 2026-10-10 | major | First localization parity document: catalog rows counted for all six languages, the twelve-language table, After Effects' 11 shipped languages from its bundle |
| 2026-10-11 | minor | Ukrainian panel catalog brought level with the Chinese ones (495 of 496 rows, counted at this commit); its share rises to ≈ 29%. The other languages' panel counts are the 10 October measurement |