mirror of
https://github.com/storytold/effectcraft.git
synced 2026-10-14 19:27:05 -04:00
i18n: add Czech (cs) interface language
Czech for all 618 fixed menu entries and the 496 panel, tooltip and dialog strings of the most complete catalog; settings accept and persist `cs`, Match System recognises cs, cs-CZ and cs_CZ.UTF-8; native menu, Undo/Redo and file-manager labels. Czech may lag the Chinese catalogs like Japanese and Ukrainian (a missing row falls back to English); menu rows use "..." like the other catalogs. AI-assisted, independently reviewed, not yet proofread by a native speaker. Co-Authored-By: Claude Opus 5.5 <[email protected]>
This commit is contained in:
1 parent
67434e9038
commit
2a8ecfb822
6 files changed
+1335
-9
No files matched your search
@@ -32,6 +32,7 @@ pub const LANGUAGES: &[(&str, &str)] = &[
|
||||
("Українська", "uk"),
|
||||
("Español", "es"),
|
||||
("Português (Brasil)", "pt-br"),
|
||||
("Čeština", "cs"),
|
||||
];
|
||||
|
||||
/// Settings ▸ Appearance ▸ UI Scale: (label, `appearance.uiScale` percent).
|
||||
|
||||
@@ -615,6 +615,14 @@ fn interface_language_is_validated_persisted_and_backward_compatible() {
|
||||
let mut es = Session { config: Some(store.clone()), ..Default::default() };
|
||||
es.load_settings();
|
||||
assert_eq!(es.prefs.general.language, "es");
|
||||
// Czech uses the same validation, persistence and JSON round-trip as every catalog.
|
||||
assert!(crate::prefs::LANGUAGES.contains(&("Čeština", "cs")));
|
||||
s.execute("prefs.set", json!({"key": "general.language", "value": "cs"})).unwrap();
|
||||
assert_eq!(s.execute("prefs.get", json!({"key": "general.language"})).unwrap(), json!("cs"));
|
||||
let mut cs = Session { config: Some(store.clone()), ..Default::default() };
|
||||
cs.load_settings();
|
||||
assert_eq!(cs.prefs.general.language, "cs");
|
||||
assert_eq!(Prefs::from_json(r#"{"general":{"language":"cs"}}"#).general.language, "cs");
|
||||
s.execute("prefs.set", json!({"key": "general.language", "value": "ja"})).unwrap();
|
||||
let mut reloaded = Session { config: Some(store), ..Default::default() };
|
||||
reloaded.load_settings();
|
||||
|
||||
+741
-3
@@ -11,7 +11,7 @@ use effectcraft_engine::menus::MenuEntry;
|
||||
pub(crate) use ui::{set_current, tr, tr_args};
|
||||
|
||||
/// Every language with a catalog, in the order Settings ▸ General ▸ Language lists them.
|
||||
const CATALOG_CODES: [&str; 6] = ["ja", "zh-hans", "zh-hant", "uk", "es", "pt-br"];
|
||||
const CATALOG_CODES: [&str; 7] = ["ja", "zh-hans", "zh-hant", "uk", "es", "pt-br", "cs"];
|
||||
|
||||
/// The active interface language: the stored preference when it names a catalog, otherwise `en`
|
||||
/// (English is the source of every label and needs no lookup).
|
||||
@@ -57,6 +57,11 @@ pub(crate) fn brazilian_portuguese(app: &EffectcraftApp) -> bool {
|
||||
language(app) == "pt-br"
|
||||
}
|
||||
|
||||
/// The UI is in Czech.
|
||||
pub(crate) fn czech(app: &EffectcraftApp) -> bool {
|
||||
language(app) == "cs"
|
||||
}
|
||||
|
||||
/// Settings ▸ General ▸ Language ▸ Match System: the operating system's interface language
|
||||
/// where EffectCraft has it, else English (#229), as After Effects installs in the system's
|
||||
/// language. The browser build stays in English because it has no system-locale probe.
|
||||
@@ -72,7 +77,7 @@ fn system_language() -> &'static str {
|
||||
}
|
||||
|
||||
/// The language EffectCraft shows for a BCP 47 locale (`ja-JP` → `ja`, `zh-Hans-CN` → `zh-hans`,
|
||||
/// `zh-TW` → `zh-hant`, `uk-UA` → `uk`, `es-ES` → `es`, `pt-BR` → `pt-br`).
|
||||
/// `zh-TW` → `zh-hant`, `uk-UA` → `uk`, `es-ES` → `es`, `pt-BR` → `pt-br`, `cs-CZ` → `cs`).
|
||||
fn supported(locale: Option<&str>) -> &'static str {
|
||||
let Some(locale) = locale else { return "en" };
|
||||
let mut parts = locale.split(['-', '_']);
|
||||
@@ -82,6 +87,7 @@ fn supported(locale: Option<&str>) -> &'static str {
|
||||
"ja" => "ja",
|
||||
"uk" => "uk",
|
||||
"es" => "es",
|
||||
"cs" => "cs",
|
||||
// The only Portuguese catalog: Brazil's, also for Portugal rather than English.
|
||||
"pt" => "pt-br",
|
||||
"zh" => {
|
||||
@@ -103,6 +109,13 @@ pub(crate) fn label<'a>(app: &EffectcraftApp, command: &str, source: &'a str) ->
|
||||
_ => {}
|
||||
}
|
||||
}
|
||||
if language == "cs" && matches!(command, "file.revealInFinder" | "layer.revealInFinder") {
|
||||
match source {
|
||||
"Reveal in Explorer" => return "Zobrazit v Průzkumníku",
|
||||
"Reveal in File Manager" => return "Zobrazit ve správci souborů",
|
||||
_ => {}
|
||||
}
|
||||
}
|
||||
match language {
|
||||
"ja" => lookup(JAPANESE, command, source),
|
||||
"zh-hans" => lookup(SIMPLIFIED_CHINESE, command, source),
|
||||
@@ -110,6 +123,7 @@ pub(crate) fn label<'a>(app: &EffectcraftApp, command: &str, source: &'a str) ->
|
||||
"uk" => lookup(UKRAINIAN, command, source),
|
||||
"es" => lookup(SPANISH, command, source),
|
||||
"pt-br" => lookup(PORTUGUESE, command, source),
|
||||
"cs" => lookup(CZECH, command, source),
|
||||
_ => source,
|
||||
}
|
||||
}
|
||||
@@ -130,6 +144,7 @@ pub(crate) fn entry(app: &EffectcraftApp, e: &MenuEntry, shown: String) -> Strin
|
||||
"uk" => ("Скасувати", "Немає дій для скасування", "Повторити", "Немає дій для повторення"),
|
||||
"es" => ("Deshacer", "No se puede deshacer", "Rehacer", "No se puede rehacer"),
|
||||
"pt-br" => ("Desfazer", "Não há nada para desfazer", "Refazer", "Não há nada para refazer"),
|
||||
"cs" => ("Zpět", "Není co vrátit", "Znovu", "Není co zopakovat"),
|
||||
_ => return shown,
|
||||
};
|
||||
match e.command.as_str() {
|
||||
@@ -152,6 +167,17 @@ pub(crate) fn entry(app: &EffectcraftApp, e: &MenuEntry, shown: String) -> Strin
|
||||
|
||||
pub(crate) fn submenu(app: &EffectcraftApp, source: &str, shown: String) -> String {
|
||||
match language(app) {
|
||||
"cs" => {
|
||||
if source == "Assign Shortcut to Workspace" {
|
||||
if let Some(name) = shown.strip_prefix("Assign Shortcut to “").and_then(|s| s.strip_suffix("” Workspace")) {
|
||||
return format!("Přiřadit zkratku pracovnímu prostoru „{name}“");
|
||||
}
|
||||
} else if source == "Assign Shortcut to 3D View"
|
||||
&& let Some(name) = shown.strip_prefix("Assign Shortcut to “").and_then(|s| s.strip_suffix('”'))
|
||||
{
|
||||
return format!("Přiřadit zkratku 3D zobrazení „{name}“");
|
||||
}
|
||||
}
|
||||
"uk" => {
|
||||
if source == "Assign Shortcut to Workspace" {
|
||||
if let Some(name) = shown.strip_prefix("Assign Shortcut to “").and_then(|s| s.strip_suffix("” Workspace")) {
|
||||
@@ -3965,6 +3991,628 @@ const PORTUGUESE: &[(&str, &str, &str)] = &[
|
||||
("file.openDemoProject", "Open Demo Project", "Abrir projeto de demonstração"),
|
||||
];
|
||||
|
||||
/// Czech (cs): original phrase translations of every fixed menu entry.
|
||||
const CZECH: &[(&str, &str, &str)] = &[
|
||||
("", "EffectCraft", "EffectCraft"),
|
||||
("app.about", "About EffectCraft...", "O aplikaci EffectCraft..."),
|
||||
("", "Settings...", "Nastavení..."),
|
||||
("app.settings", "General...", "Obecné..."),
|
||||
("app.settings", "Startup & Repair...", "Spuštění a oprava..."),
|
||||
("app.settings", "Project...", "Projekt..."),
|
||||
("app.settings", "Composition...", "Kompozice..."),
|
||||
("app.settings", "Previews...", "Náhledy..."),
|
||||
("app.settings", "Appearance...", "Vzhled..."),
|
||||
("app.settings", "Grids & Guides...", "Mřížky a vodítka..."),
|
||||
("app.settings", "Labels...", "Štítky..."),
|
||||
("app.settings", "Type...", "Text..."),
|
||||
("app.settings", "Import...", "Import..."),
|
||||
("app.settings", "Export...", "Export..."),
|
||||
("app.settings", "Audio...", "Zvuk..."),
|
||||
("app.settings", "Disk...", "Disk..."),
|
||||
("app.settings", "Memory & CPU...", "Paměť a CPU..."),
|
||||
("app.settings", "Video...", "Video..."),
|
||||
("app.settings", "3D...", "3D..."),
|
||||
("app.settings", "Scripting & Expressions...", "Skripty a výrazy..."),
|
||||
("app.hide", "Hide EffectCraft", "Skrýt EffectCraft"),
|
||||
("app.hideOthers", "Hide Others", "Skrýt ostatní"),
|
||||
("app.showAll", "Show All", "Zobrazit vše"),
|
||||
("app.quit", "Quit EffectCraft", "Ukončit EffectCraft"),
|
||||
("", "File", "Soubor"),
|
||||
("", "New", "Nový"),
|
||||
("file.newProject", "New Project", "Nový projekt"),
|
||||
("file.newFromTemplate", "New Project from Template...", "Nový projekt ze šablony..."),
|
||||
("project.newFolder", "New Folder", "Nová složka"),
|
||||
("file.open", "Open Project...", "Otevřít projekt..."),
|
||||
("", "Open Recent", "Otevřít nedávné"),
|
||||
("file.clearRecent", "Clear Recent Projects", "Vymazat nedávné projekty"),
|
||||
("file.close", "Close", "Zavřít"),
|
||||
("file.closeProject", "Close Project", "Zavřít projekt"),
|
||||
("file.save", "Save", "Uložit"),
|
||||
("", "Save As", "Uložit jako"),
|
||||
("file.saveAs", "Save As...", "Uložit jako..."),
|
||||
("file.saveCopy", "Save a Copy...", "Uložit kopii..."),
|
||||
("file.saveCopyAsXml", "Save a Copy As XML...", "Uložit kopii jako XML..."),
|
||||
("templates.saveAs", "Save as Template...", "Uložit jako šablonu..."),
|
||||
("file.incrementAndSave", "Increment and Save", "Zvýšit číslo verze a uložit"),
|
||||
("file.revert", "Revert", "Vrátit k uložené verzi"),
|
||||
("", "Import", "Importovat"),
|
||||
("file.import", "File...", "Soubor..."),
|
||||
("file.importMultiple", "Multiple Files...", "Více souborů..."),
|
||||
("file.importTimeline", "Adobe Premiere Pro Project...", "Projekt Adobe Premiere Pro..."),
|
||||
("file.importPlaceholder", "Placeholder...", "Zástupný záznam..."),
|
||||
("file.importSolid", "Solid...", "Plná vrstva..."),
|
||||
("file.importLottie", "Lottie...", "Lottie..."),
|
||||
("file.importVanishingPoint", "Vanishing Point (.vpe)...", "Úběžný bod (.vpe)..."),
|
||||
("essential.importTemplate", "Essential Graphics Template...", "Šablona základní grafiky..."),
|
||||
("", "Import Recent Footage", "Importovat nedávný záznam"),
|
||||
("file.clearRecentFootage", "Clear Recent Footage", "Vymazat nedávné záznamy"),
|
||||
("", "Export", "Exportovat"),
|
||||
("renderQueue.add", "Add to Render Queue", "Přidat do fronty vykreslování"),
|
||||
("file.exportTimeline", "Adobe Premiere Pro Project...", "Projekt Adobe Premiere Pro..."),
|
||||
("file.exportLottie", "Lottie JSON...", "Lottie JSON..."),
|
||||
("essential.exportTemplate", "Essential Graphics Template...", "Šablona základní grafiky..."),
|
||||
("app.find", "Find", "Najít"),
|
||||
("layer.addItem", "Add Footage to Comp", "Přidat záznam do kompozice"),
|
||||
("file.newCompFromSelection", "New Comp from Selection...", "Nová kompozice z výběru..."),
|
||||
("", "Dependencies", "Závislosti"),
|
||||
("file.collectFiles", "Collect Files...", "Shromáždit soubory..."),
|
||||
("file.consolidateFootage", "Consolidate All Footage", "Sloučit duplicitní záznamy"),
|
||||
("file.removeUnusedFootage", "Remove Unused Footage", "Odstranit nepoužité záznamy"),
|
||||
("file.reduceProject", "Reduce Project", "Zredukovat projekt"),
|
||||
("file.findMissing", "Find Missing Effects", "Najít chybějící efekty"),
|
||||
("file.findMissing", "Find Missing Fonts", "Najít chybějící písma"),
|
||||
("file.findMissing", "Find Missing Footage", "Najít chybějící záznamy"),
|
||||
("file.relinkFootage", "Relink Missing Footage...", "Znovu připojit chybějící záznamy..."),
|
||||
("file.watchFolder", "Watch Folder...", "Sledovat složku..."),
|
||||
("", "Scripts", "Skripty"),
|
||||
("file.installScript", "Install Script File...", "Nainstalovat soubor skriptu..."),
|
||||
("file.installScriptUIPanel", "Install ScriptUI Panel...", "Nainstalovat panel ScriptUI..."),
|
||||
("file.runScript", "Run Script File...", "Spustit soubor skriptu..."),
|
||||
("", "Create Proxy", "Vytvořit zástupný soubor"),
|
||||
("file.createProxy", "Still...", "Statický snímek..."),
|
||||
("file.createProxy", "Movie...", "Video..."),
|
||||
("", "Set Proxy", "Nastavit zástupný soubor"),
|
||||
("file.setProxy", "File...", "Soubor..."),
|
||||
("file.setProxyNone", "None", "Žádný"),
|
||||
("", "Interpret Footage", "Interpretovat záznam"),
|
||||
("file.interpretFootage", "Main...", "Hlavní..."),
|
||||
("file.interpretProxy", "Proxy...", "Zástupný..."),
|
||||
("file.rememberInterpretation", "Remember Interpretation", "Zapamatovat interpretaci"),
|
||||
("file.applyInterpretation", "Apply Interpretation", "Použít interpretaci"),
|
||||
("", "Replace Footage", "Nahradit záznam"),
|
||||
("file.replaceFootage", "File...", "Soubor..."),
|
||||
("file.replaceWithPlaceholder", "Placeholder...", "Zástupný záznam..."),
|
||||
("file.replaceWithSolid", "Solid...", "Plná vrstva..."),
|
||||
("file.replaceWithLayeredComp", "With Layered Comp", "Kompozicí s vrstvami"),
|
||||
("file.reloadFootage", "Reload Footage", "Znovu načíst záznam"),
|
||||
("file.revealInFinder", "Reveal in Finder", "Zobrazit ve Finderu"),
|
||||
("file.projectSettings", "Project Settings...", "Nastavení projektu..."),
|
||||
("app.quit", "Exit", "Ukončit"),
|
||||
("", "Edit", "Úpravy"),
|
||||
("edit.undo", "Undo", "Zpět"),
|
||||
("edit.redo", "Redo", "Znovu"),
|
||||
("", "History", "Historie"),
|
||||
("app.commandPalette", "Quick Apply...", "Rychle použít..."),
|
||||
("edit.cut", "Cut", "Vyjmout"),
|
||||
("edit.copy", "Copy", "Kopírovat"),
|
||||
("edit.copyWithPropertyLinks", "Copy with Property Links", "Kopírovat s odkazy na vlastnosti"),
|
||||
("edit.copyWithRelativePropertyLinks", "Copy with Relative Property Links", "Kopírovat s relativními odkazy na vlastnosti"),
|
||||
("edit.copyExpressionOnly", "Copy Expression Only", "Kopírovat pouze výraz"),
|
||||
("edit.paste", "Paste", "Vložit"),
|
||||
("edit.pasteReversedKeyframes", "Paste Reversed Keyframes", "Vložit klíčové snímky v opačném pořadí"),
|
||||
("edit.pasteTextMatchFormatting", "Paste Text and Match Formatting", "Vložit text a přizpůsobit formátování"),
|
||||
("edit.pasteTextFormattingOnly", "Paste Text Formatting Only", "Vložit pouze formátování textu"),
|
||||
("edit.clear", "Clear", "Vymazat"),
|
||||
("edit.duplicate", "Duplicate", "Duplikovat"),
|
||||
("edit.splitLayer", "Split Layer", "Rozdělit vrstvu"),
|
||||
("edit.liftWorkArea", "Lift Work Area", "Vyjmout pracovní oblast bez posunu"),
|
||||
("edit.extractWorkArea", "Extract Work Area", "Vyjmout pracovní oblast s posunem"),
|
||||
("edit.selectAll", "Select All", "Vybrat vše"),
|
||||
("edit.deselectAll", "Deselect All", "Zrušit výběr"),
|
||||
("", "Label", "Štítek"),
|
||||
("edit.selectLabelGroup", "Select Label Group", "Vybrat skupinu podle štítku"),
|
||||
("edit.label", "None", "Žádný"),
|
||||
("edit.label", "Red", "Červený"),
|
||||
("edit.label", "Yellow", "Žlutý"),
|
||||
("edit.label", "Aqua", "Akvamarínový"),
|
||||
("edit.label", "Pink", "Růžový"),
|
||||
("edit.label", "Lavender", "Levandulový"),
|
||||
("edit.label", "Peach", "Broskvový"),
|
||||
("edit.label", "Sea Foam", "Mořská pěna"),
|
||||
("edit.label", "Blue", "Modrý"),
|
||||
("edit.label", "Green", "Zelený"),
|
||||
("edit.label", "Purple", "Fialový"),
|
||||
("edit.label", "Orange", "Oranžový"),
|
||||
("edit.label", "Brown", "Hnědý"),
|
||||
("edit.label", "Fuchsia", "Fuchsiový"),
|
||||
("edit.label", "Cyan", "Azurový"),
|
||||
("edit.label", "Sandstone", "Pískovcový"),
|
||||
("edit.label", "Dark Green", "Tmavě zelený"),
|
||||
("app.settings", "Edit Label Colors...", "Upravit barvy štítků..."),
|
||||
("", "Select Keyframe Label Group", "Vybrat skupinu podle štítku klíčových snímků"),
|
||||
("keys.selectLabelGroup", "On Selected Layers", "Na vybraných vrstvách"),
|
||||
("keys.selectLabelGroup", "On All Layers", "Na všech vrstvách"),
|
||||
("keys.selectLabelGroup", "Visible Keyframes on Selected Layers", "Viditelné klíčové snímky na vybraných vrstvách"),
|
||||
("keys.selectLabelGroup", "Visible Keyframes on All Layers", "Viditelné klíčové snímky na všech vrstvách"),
|
||||
("", "Purge", "Vyprázdnit"),
|
||||
("edit.purge", "All Cache...", "Celou mezipaměť..."),
|
||||
("edit.purge", "All Memory & Disk Cache...", "Celou paměťovou a diskovou mezipaměť..."),
|
||||
("edit.purge", "All Memory", "Veškerou paměť"),
|
||||
("edit.purge", "All Disk Cache...", "Celou diskovou mezipaměť..."),
|
||||
("edit.purge", "All 3D Cache...", "Celou 3D mezipaměť..."),
|
||||
("edit.purgeUndo", "Undo", "Historii vracení změn"),
|
||||
("edit.purge", "Image Cache Memory", "Paměť obrazové mezipaměti"),
|
||||
("edit.purge", "Snapshot", "Snímek náhledu"),
|
||||
("edit.editOriginal", "Edit Original...", "Upravit originál..."),
|
||||
("", "Templates", "Šablony"),
|
||||
("app.templates", "Render Settings...", "Nastavení vykreslování..."),
|
||||
("app.templates", "Output Module...", "Výstupní modul..."),
|
||||
("app.keyboardShortcuts", "Keyboard Shortcuts", "Klávesové zkratky"),
|
||||
("", "Preferences", "Předvolby"),
|
||||
("", "Composition", "Kompozice"),
|
||||
("comp.new", "New Composition...", "Nová kompozice..."),
|
||||
("comp.settings", "Composition Settings...", "Nastavení kompozice..."),
|
||||
("comp.setPosterTime", "Set Poster Time", "Nastavit čas reprezentativního snímku"),
|
||||
("comp.trimToWorkArea", "Trim Comp to Work Area", "Oříznout kompozici na pracovní oblast"),
|
||||
("comp.cropToRegionOfInterest", "Crop Comp to Region of Interest", "Oříznout kompozici na oblast zájmu"),
|
||||
("comp.cropToLayerBounds", "Crop Comp to Selected Layer(s) Bounds", "Oříznout kompozici na hranice vybrané vrstvy (vrstev)"),
|
||||
("render.addOutputModule", "Add Output Module", "Přidat výstupní modul"),
|
||||
("", "Preview", "Náhled"),
|
||||
("playback.toggle", "Play Current Preview", "Přehrát aktuální náhled"),
|
||||
("playback.cacheWhenIdle", "Cache Frames When Idle", "Ukládat snímky do mezipaměti při nečinnosti"),
|
||||
("playback.audio", "Audio", "Zvuk"),
|
||||
("", "Save Frame As", "Uložit snímek jako"),
|
||||
("comp.saveFrameAs", "File...", "Soubor..."),
|
||||
("comp.saveFrameAsPsd", "Photoshop Layers...", "Vrstvy Photoshopu..."),
|
||||
("comp.saveFrameAsExr", "ProEXR...", "ProEXR..."),
|
||||
("render.preRender", "Pre-render...", "Předvykreslit..."),
|
||||
("render.saveCurrentPreview", "Save Current Preview...", "Uložit aktuální náhled..."),
|
||||
("comp.openInEssentialGraphics", "Open in Essential Graphics", "Otevřít v základní grafice"),
|
||||
("", "Responsive Design — Time", "Responzivní návrh — čas"),
|
||||
("comp.responsiveTime", "Create Intro", "Vytvořit úvod"),
|
||||
("comp.responsiveTime", "Create Outro", "Vytvořit závěr"),
|
||||
("comp.responsiveTime", "Create Protected Region from Work Area", "Vytvořit chráněnou oblast z pracovní oblasti"),
|
||||
("comp.flowchart", "Composition Flowchart", "Vývojový diagram kompozice"),
|
||||
("comp.miniFlowchart", "Composition Mini-Flowchart", "Malý vývojový diagram kompozice"),
|
||||
("", "VR", "VR"),
|
||||
("comp.vr.createEnvironment", "Create VR Environment...", "Vytvořit prostředí VR..."),
|
||||
("comp.vr.extractCubemap", "Extract Cubemap...", "Extrahovat krychlovou mapu..."),
|
||||
("", "Layer", "Vrstva"),
|
||||
("layer.newText", "Text", "Text"),
|
||||
("layer.newSolid", "Solid...", "Plná vrstva..."),
|
||||
("layer.newLight", "Light...", "Světlo..."),
|
||||
("layer.newCamera", "Camera...", "Kamera..."),
|
||||
("layer.newNull", "Null Object", "Prázdný objekt"),
|
||||
("layer.newShape", "Shape Layer", "Vrstva tvaru"),
|
||||
("layer.newAdjustment", "Adjustment Layer", "Vrstva úprav"),
|
||||
("layer.newContentAwareFill", "Content-Aware Fill Layer...", "Vrstva výplně podle obsahu..."),
|
||||
("layer.new3dPrimitive", "Cube", "Krychle"),
|
||||
("layer.new3dPrimitive", "Sphere", "Koule"),
|
||||
("layer.new3dPrimitive", "Plane", "Rovina"),
|
||||
("layer.new3dPrimitive", "Torus", "Prstenec"),
|
||||
("layer.new3dPrimitive", "Cone", "Kužel"),
|
||||
("layer.new3dPrimitive", "Cylinder", "Válec"),
|
||||
("layer.settings", "Layer Settings...", "Nastavení vrstvy..."),
|
||||
("layer.openLayer", "Open Layer", "Otevřít vrstvu"),
|
||||
("layer.openSource", "Open Layer Source", "Otevřít zdroj vrstvy"),
|
||||
("layer.revealInFinder", "Reveal in Finder", "Zobrazit ve Finderu"),
|
||||
("", "Mask", "Maska"),
|
||||
("layer.addMask", "New Mask", "Nová maska"),
|
||||
("layer.mask.shape", "Mask Shape...", "Tvar masky..."),
|
||||
("layer.mask.set", "Mask Feather...", "Prolnutí okrajů masky..."),
|
||||
("layer.mask.set", "Mask Opacity...", "Krytí masky..."),
|
||||
("layer.mask.set", "Mask Expansion...", "Rozšíření masky..."),
|
||||
("layer.mask.reset", "Reset Mask", "Obnovit masku"),
|
||||
("layer.mask.remove", "Remove Mask", "Odstranit masku"),
|
||||
("layer.mask.removeAll", "Remove All Masks", "Odstranit všechny masky"),
|
||||
("track.mask", "Track Mask", "Sledovat masku"),
|
||||
("", "Mode", "Režim"),
|
||||
("layer.mask.mode", "None", "Žádný"),
|
||||
("layer.mask.mode", "Add", "Přičíst"),
|
||||
("layer.mask.mode", "Subtract", "Odečíst"),
|
||||
("layer.mask.mode", "Intersect", "Průnik"),
|
||||
("layer.mask.mode", "Lighten", "Zesvětlit"),
|
||||
("layer.mask.mode", "Darken", "Ztmavit"),
|
||||
("layer.mask.mode", "Difference", "Rozdíl"),
|
||||
("layer.mask.invert", "Inverted", "Invertovaná"),
|
||||
("layer.mask.lock", "Locked", "Zamknutá"),
|
||||
("", "Motion Blur", "Rozostření pohybem"),
|
||||
("layer.mask.motionBlur", "Same As Layer", "Stejné jako u vrstvy"),
|
||||
("layer.mask.motionBlur", "On", "Zapnuto"),
|
||||
("layer.mask.motionBlur", "Off", "Vypnuto"),
|
||||
("", "Feather Falloff", "Průběh prolnutí okrajů"),
|
||||
("layer.mask.featherFalloff", "Smooth", "Plynulý"),
|
||||
("layer.mask.featherFalloff", "Linear", "Lineární"),
|
||||
("layer.mask.unlockAll", "Unlock All Masks", "Odemknout všechny masky"),
|
||||
("layer.mask.lockOthers", "Lock Other Masks", "Zamknout ostatní masky"),
|
||||
("layer.mask.hideLocked", "Hide Locked Masks", "Skrýt zamknuté masky"),
|
||||
("", "Mask and Shape Path", "Cesta masky a tvaru"),
|
||||
("path.rotoBezier", "RotoBezier", "RotoBezier"),
|
||||
("mask.setClosed", "Closed", "Uzavřená"),
|
||||
("path.convertToBezier", "Convert To Bezier Path", "Převést na Bézierovu cestu"),
|
||||
("path.setFirstVertex", "Set First Vertex", "Nastavit první vrchol"),
|
||||
("path.freeTransform", "Free Transform Points", "Volně transformovat body"),
|
||||
("", "Quality", "Kvalita"),
|
||||
("layer.quality", "Best", "Nejlepší"),
|
||||
("layer.quality", "Draft", "Pracovní"),
|
||||
("layer.quality", "Wireframe", "Drátový model"),
|
||||
("layer.sampling", "Bilinear", "Bilineární"),
|
||||
("layer.sampling", "Bicubic", "Bikubické"),
|
||||
("", "Switches", "Přepínače"),
|
||||
("layer.hideOtherVideo", "Hide Other Video", "Skrýt ostatní video"),
|
||||
("layer.showAllVideo", "Show All Video", "Zobrazit veškeré video"),
|
||||
("layer.unlockAll", "Unlock All Layers", "Odemknout všechny vrstvy"),
|
||||
("layer.expressions", "Enable Expressions", "Povolit výrazy"),
|
||||
("layer.expressions", "Disable Expressions", "Zakázat výrazy"),
|
||||
("layer.setSwitch", "Shy", "Skrýt z časové osy"),
|
||||
("layer.setSwitch", "Lock", "Zamknout"),
|
||||
("layer.setSwitch", "Audio", "Zvuk"),
|
||||
("layer.setSwitch", "Video", "Video"),
|
||||
("layer.setSwitch", "Solo", "Sólo"),
|
||||
("layer.setSwitch", "Effect", "Efekt"),
|
||||
("layer.setSwitch", "Collapse", "Sbalit transformace"),
|
||||
("layer.setSwitch", "Motion Blur", "Rozostření pohybem"),
|
||||
("layer.setSwitch", "Adjustment Layer", "Vrstva úprav"),
|
||||
("", "Transform", "Transformace"),
|
||||
("layer.transform", "Reset", "Obnovit"),
|
||||
("layer.setTransform", "Anchor Point...", "Kotevní bod..."),
|
||||
("layer.setTransform", "Position...", "Pozice..."),
|
||||
("layer.setTransform", "Scale...", "Měřítko..."),
|
||||
("layer.setTransform", "Orientation...", "Orientace..."),
|
||||
("layer.setTransform", "Rotation...", "Otočení..."),
|
||||
("layer.setTransform", "Opacity...", "Krytí..."),
|
||||
("layer.transform", "Flip Horizontal", "Převrátit vodorovně"),
|
||||
("layer.transform", "Flip Vertical", "Převrátit svisle"),
|
||||
("layer.transform", "Center In View", "Vystředit v zobrazení"),
|
||||
("layer.centerAnchor", "Center Anchor Point in Layer Content", "Vystředit kotevní bod v obsahu vrstvy"),
|
||||
("layer.transform", "Fit to Comp", "Přizpůsobit kompozici"),
|
||||
("layer.transform", "Fit to Comp Width", "Přizpůsobit šířce kompozice"),
|
||||
("layer.transform", "Fit to Comp Height", "Přizpůsobit výšce kompozice"),
|
||||
("layer.autoOrient", "Auto-Orient...", "Automaticky orientovat..."),
|
||||
("", "Time", "Čas"),
|
||||
("layer.enableTimeRemap", "Enable Time Remapping", "Povolit přemapování času"),
|
||||
("layer.timeReverse", "Time-Reverse Layer", "Obrátit čas vrstvy"),
|
||||
("layer.timeStretch", "Time Stretch...", "Roztažení času..."),
|
||||
("layer.freezeFrame", "Freeze Frame", "Zmrazit snímek"),
|
||||
("layer.freezeOnLastFrame", "Freeze On Last Frame", "Zmrazit na posledním snímku"),
|
||||
("layer.alignVideoToData", "Align Video to Data", "Zarovnat video podle dat"),
|
||||
("", "Frame Blending", "Prolnutí snímků"),
|
||||
("layer.frameBlending", "Off", "Vypnuto"),
|
||||
("layer.frameBlending", "Frame Mix", "Smíchání snímků"),
|
||||
("layer.frameBlending", "Pixel Motion", "Pohyb pixelů"),
|
||||
("layer.setSwitch", "3D Layer", "3D vrstva"),
|
||||
("layer.setSwitch", "Guide Layer", "Pomocná vrstva"),
|
||||
("layer.environment", "Environment Layer", "Vrstva prostředí"),
|
||||
("", "Markers", "Značky"),
|
||||
("layer.addMarker", "Add Marker", "Přidat značku"),
|
||||
("layer.updateMarkersFromSource", "Update Markers From Source", "Aktualizovat značky ze zdroje"),
|
||||
("layer.markersLock", "Lock Markers", "Zamknout značky"),
|
||||
("layer.deleteAllMarkers", "Delete All Markers", "Odstranit všechny značky"),
|
||||
("layer.setSwitch", "Preserve Transparency", "Zachovat průhlednost"),
|
||||
("", "Blending Mode", "Režim prolnutí"),
|
||||
("layer.setBlendMode", "Normal", "Normální"),
|
||||
("layer.setBlendMode", "Dissolve", "Rozpustit"),
|
||||
("layer.setBlendMode", "Dancing Dissolve", "Tančící rozpuštění"),
|
||||
("layer.setBlendMode", "Darken", "Ztmavit"),
|
||||
("layer.setBlendMode", "Multiply", "Násobit"),
|
||||
("layer.setBlendMode", "Color Burn", "Ztmavit barvy"),
|
||||
("layer.setBlendMode", "Classic Color Burn", "Klasické ztmavení barev"),
|
||||
("layer.setBlendMode", "Linear Burn", "Lineárně ztmavit"),
|
||||
("layer.setBlendMode", "Darker Color", "Tmavší barva"),
|
||||
("layer.setBlendMode", "Add", "Přičíst"),
|
||||
("layer.setBlendMode", "Lighten", "Zesvětlit"),
|
||||
("layer.setBlendMode", "Screen", "Závoj"),
|
||||
("layer.setBlendMode", "Color Dodge", "Zesvětlit barvy"),
|
||||
("layer.setBlendMode", "Classic Color Dodge", "Klasické zesvětlení barev"),
|
||||
("layer.setBlendMode", "Linear Dodge", "Lineárně zesvětlit"),
|
||||
("layer.setBlendMode", "Lighter Color", "Světlejší barva"),
|
||||
("layer.setBlendMode", "Overlay", "Překrýt"),
|
||||
("layer.setBlendMode", "Soft Light", "Měkké světlo"),
|
||||
("layer.setBlendMode", "Hard Light", "Tvrdé světlo"),
|
||||
("layer.setBlendMode", "Linear Light", "Lineární světlo"),
|
||||
("layer.setBlendMode", "Vivid Light", "Jasné světlo"),
|
||||
("layer.setBlendMode", "Pin Light", "Kolíkové světlo"),
|
||||
("layer.setBlendMode", "Hard Mix", "Tvrdé míchání"),
|
||||
("layer.setBlendMode", "Difference", "Rozdíl"),
|
||||
("layer.setBlendMode", "Classic Difference", "Klasický rozdíl"),
|
||||
("layer.setBlendMode", "Exclusion", "Vyloučit"),
|
||||
("layer.setBlendMode", "Subtract", "Odečíst"),
|
||||
("layer.setBlendMode", "Divide", "Dělit"),
|
||||
("layer.setBlendMode", "Hue", "Odstín"),
|
||||
("layer.setBlendMode", "Saturation", "Sytost"),
|
||||
("layer.setBlendMode", "Color", "Barva"),
|
||||
("layer.setBlendMode", "Luminosity", "Světlost"),
|
||||
("layer.setBlendMode", "Stencil Alpha", "Šablona alfa"),
|
||||
("layer.setBlendMode", "Stencil Luma", "Šablona jasu"),
|
||||
("layer.setBlendMode", "Silhouette Alpha", "Silueta alfa"),
|
||||
("layer.setBlendMode", "Silhouette Luma", "Silueta jasu"),
|
||||
("layer.setBlendMode", "Alpha Add", "Přičíst alfu"),
|
||||
("layer.setBlendMode", "Luminescent Premul", "Luminiscenční přednásobení"),
|
||||
("layer.setBlendMode", "Next Blending Mode", "Následující režim prolnutí"),
|
||||
("layer.setBlendMode", "Previous Blending Mode", "Předchozí režim prolnutí"),
|
||||
("", "Track Matte", "Maska stopy"),
|
||||
("layer.trackMatte", "No Track Matte", "Bez masky stopy"),
|
||||
("layer.trackMatte", "Alpha Matte", "Alfa maska"),
|
||||
("layer.trackMatte", "Alpha Inverted Matte", "Invertovaná alfa maska"),
|
||||
("layer.trackMatte", "Luma Matte", "Maska jasu"),
|
||||
("layer.trackMatte", "Luma Inverted Matte", "Invertovaná maska jasu"),
|
||||
("layer.trackMatte", "Matte with Layer Above", "Maskovat vrstvou výše"),
|
||||
("layer.trackMatte", "Matte with Layer Below", "Maskovat vrstvou níže"),
|
||||
("", "Layer Styles", "Styly vrstvy"),
|
||||
("layer.style.options", "Layer Style Options...", "Možnosti stylu vrstvy..."),
|
||||
("layer.style.convertToEditable", "Convert to Editable Styles", "Převést na upravitelné styly"),
|
||||
("layer.style.showAll", "Show All", "Zobrazit vše"),
|
||||
("layer.style.removeAll", "Remove All", "Odstranit vše"),
|
||||
("layer.style.dropShadow", "Drop Shadow", "Vržený stín"),
|
||||
("layer.style.innerShadow", "Inner Shadow", "Vnitřní stín"),
|
||||
("layer.style.outerGlow", "Outer Glow", "Vnější záře"),
|
||||
("layer.style.innerGlow", "Inner Glow", "Vnitřní záře"),
|
||||
("layer.style.bevelEmboss", "Bevel and Emboss", "Úkos a reliéf"),
|
||||
("layer.style.satin", "Satin", "Satén"),
|
||||
("layer.style.colorOverlay", "Color Overlay", "Překrytí barvou"),
|
||||
("layer.style.gradientOverlay", "Gradient Overlay", "Překrytí přechodem"),
|
||||
("layer.style.stroke", "Stroke", "Tah"),
|
||||
("path.groupShapes", "Group Shapes", "Seskupit tvary"),
|
||||
("path.ungroupShapes", "Ungroup Shapes", "Zrušit seskupení tvarů"),
|
||||
("", "Arrange", "Uspořádat"),
|
||||
("layer.arrange", "Bring Layer to Front", "Přenést vrstvu do popředí"),
|
||||
("layer.arrange", "Bring Layer Forward", "Posunout vrstvu vpřed"),
|
||||
("layer.arrange", "Send Layer Backward", "Posunout vrstvu vzad"),
|
||||
("layer.arrange", "Send Layer to Back", "Přenést vrstvu do pozadí"),
|
||||
("", "Reveal", "Zobrazit"),
|
||||
("layer.revealSource", "Reveal Layer Source in Project", "Zobrazit zdroj vrstvy v projektu"),
|
||||
("comp.flowchart", "Reveal Layer in Project Flowchart", "Zobrazit vrstvu ve vývojovém diagramu projektu"),
|
||||
("comp.revealInProject", "Reveal Composition in Project", "Zobrazit kompozici v projektu"),
|
||||
("layer.revealExpressionErrors", "Reveal Expression Errors", "Zobrazit chyby výrazů"),
|
||||
("", "Create", "Vytvořit"),
|
||||
("layer.create", "Convert to Editable Text", "Převést na upravitelný text"),
|
||||
("layer.create", "Create Shapes from Text", "Vytvořit tvary z textu"),
|
||||
("layer.create", "Create Masks from Text", "Vytvořit masky z textu"),
|
||||
("layer.create", "Create Shapes from Vector Layer", "Vytvořit tvary z vektorové vrstvy"),
|
||||
("layer.create", "Create Keyframes from Data", "Vytvořit klíčové snímky z dat"),
|
||||
("layer.create", "Null Controllers for Positional Points", "Prázdné ovladače pro poziční body"),
|
||||
("layer.create", "Null Controllers for Path Points", "Prázdné ovladače pro body cesty"),
|
||||
("layer.create", "Nulls Following Path Points", "Prázdné objekty sledující body cesty"),
|
||||
("layer.create", "Null Tracing Along Path", "Prázdný objekt pohybující se po cestě"),
|
||||
("layer.create", "Create 3D Layer Instance", "Vytvořit instanci 3D vrstvy"),
|
||||
("", "Camera", "Kamera"),
|
||||
("camera.fromView", "Create Camera from 3D View", "Vytvořit kameru z 3D zobrazení"),
|
||||
("camera.stereoRig", "Create Stereo 3D Rig", "Vytvořit stereoskopickou 3D sestavu"),
|
||||
("camera.orbitNull", "Create Orbit Null", "Vytvořit prázdný objekt pro obíhání"),
|
||||
("camera.fromModel", "Create Cameras from 3D Model", "Vytvořit kamery z 3D modelu"),
|
||||
("camera.linkFocusToPoi", "Link Focus Distance to Point of Interest", "Propojit vzdálenost zaostření s bodem zájmu"),
|
||||
("camera.linkFocusToLayer", "Link Focus Distance to Layer", "Propojit vzdálenost zaostření s vrstvou"),
|
||||
("camera.setFocusToLayer", "Set Focus Distance to Layer", "Nastavit vzdálenost zaostření na vrstvu"),
|
||||
("layer.cameraSettings", "Camera Settings...", "Nastavení kamery..."),
|
||||
("view.reset3DView", "Reset 3D View", "Obnovit 3D zobrazení"),
|
||||
("", "Light", "Světlo"),
|
||||
("light.fromModel", "Create Lights from 3D Model", "Vytvořit světla z 3D modelu"),
|
||||
("light.controlWithCamera", "Control Light with Camera", "Ovládat světlo kamerou"),
|
||||
("light.environmentBackground", "Create Environment Light Background Layer", "Vytvořit vrstvu pozadí pro světlo prostředí"),
|
||||
("", "Material", "Materiál"),
|
||||
("material.revealSource", "Reveal Material Source in Project", "Zobrazit zdroj materiálu v projektu"),
|
||||
("material.reset", "Reset Material", "Obnovit materiál"),
|
||||
("material.duplicateAssign", "Duplicate and Assign Material", "Duplikovat a přiřadit materiál"),
|
||||
("layer.autoTrace", "Auto-trace...", "Automaticky obkreslit..."),
|
||||
("layer.precompose", "Pre-compose...", "Předkomponovat..."),
|
||||
("layer.sceneEditDetection", "Scene Edit Detection...", "Rozpoznat střihy scén..."),
|
||||
("", "Effect", "Efekt"),
|
||||
("window.panel", "Effect Controls", "Ovládací prvky efektu"),
|
||||
("effect.applyLast", "Last Effect", "Poslední efekt"),
|
||||
("effect.removeAll", "Remove All", "Odstranit vše"),
|
||||
("effect.manage", "Manage Effects...", "Spravovat efekty..."),
|
||||
("effect.plugins.load", "Load Effect Plug-in...", "Načíst zásuvný modul efektu..."),
|
||||
("", "Animation", "Animace"),
|
||||
("anim.savePreset", "Save Animation Preset...", "Uložit přednastavení animace..."),
|
||||
("anim.applyPreset", "Apply Animation Preset...", "Použít přednastavení animace..."),
|
||||
("", "Recent Animation Presets", "Nedávná přednastavení animace"),
|
||||
("anim.clearRecentPresets", "Clear Recent Presets", "Vymazat nedávná přednastavení"),
|
||||
("anim.browsePresets", "Browse Presets...", "Procházet přednastavení..."),
|
||||
("", "Text Animation Presets", "Přednastavení animace textu"),
|
||||
("layer.applyTextPreset", "Typewriter", "Psací stroj"),
|
||||
("layer.applyTextPreset", "Fade Up Characters", "Postupně zobrazit znaky"),
|
||||
("layer.applyTextPreset", "Bounce In Words", "Slova s odskokem"),
|
||||
("layer.applyTextPreset", "Tracking In", "Zúžit prostrkání"),
|
||||
("layer.applyTextPreset", "Scramble", "Promíchat znaky"),
|
||||
("layer.applyTextPreset", "Blur In", "Zaostřit text"),
|
||||
("layer.applyTextPreset", "Jitter", "Chvění"),
|
||||
("layer.applyTextPreset", "Drop In Lines", "Spustit řádky shora"),
|
||||
("anim.addKeyframe", "Add Keyframe", "Přidat klíčový snímek"),
|
||||
("keys.toggleHold", "Toggle Hold Keyframe", "Přepnout podržení klíčového snímku"),
|
||||
("keys.interpolation", "Keyframe Interpolation...", "Interpolace klíčových snímků..."),
|
||||
("keys.velocity", "Keyframe Velocity...", "Rychlost klíčového snímku..."),
|
||||
("", "Keyframe Assistant", "Pomocník klíčových snímků"),
|
||||
("keys.audioToKeyframes", "Convert Audio to Keyframes", "Převést zvuk na klíčové snímky"),
|
||||
("prop.convertExpressionToKeyframes", "Convert Expression to Keyframes", "Převést výraz na klíčové snímky"),
|
||||
("keys.easyEase", "Easy Ease", "Snadné zpomalení"),
|
||||
("keys.easyEaseIn", "Easy Ease In", "Snadné zpomalení na vstupu"),
|
||||
("keys.easyEaseOut", "Easy Ease Out", "Snadné zpomalení na výstupu"),
|
||||
("keys.exponentialScale", "Exponential Scale", "Exponenciální měřítko"),
|
||||
("keys.rpfCameraImport", "RPF Camera Import", "Import kamery RPF"),
|
||||
("layer.sequence", "Sequence Layers...", "Seřadit vrstvy za sebe..."),
|
||||
("keys.timeReverse", "Time-Reverse Keyframes", "Obrátit čas klíčových snímků"),
|
||||
("", "Animate Text", "Animovat text"),
|
||||
("layer.enablePerChar3D", "Enable Per-character 3D", "Povolit 3D pro jednotlivé znaky"),
|
||||
("layer.addTextAnimator", "Anchor Point", "Kotevní bod"),
|
||||
("layer.addTextAnimator", "Position", "Pozice"),
|
||||
("layer.addTextAnimator", "Scale", "Měřítko"),
|
||||
("layer.addTextAnimator", "Skew", "Zkosení"),
|
||||
("layer.addTextAnimator", "Rotation", "Otočení"),
|
||||
("layer.addTextAnimator", "Opacity", "Krytí"),
|
||||
("layer.addTextAnimator", "All Transform Properties", "Všechny vlastnosti transformace"),
|
||||
("", "Fill Color", "Barva výplně"),
|
||||
("layer.addTextAnimator", "RGB", "RGB"),
|
||||
("layer.addTextAnimator", "Hue", "Odstín"),
|
||||
("layer.addTextAnimator", "Saturation", "Sytost"),
|
||||
("layer.addTextAnimator", "Brightness", "Jas"),
|
||||
("", "Stroke Color", "Barva tahu"),
|
||||
("layer.addTextAnimator", "Stroke Width", "Šířka tahu"),
|
||||
("layer.addTextAnimator", "Tracking", "Prostrkání"),
|
||||
("layer.addTextAnimator", "Line Anchor", "Kotevní bod řádku"),
|
||||
("layer.addTextAnimator", "Line Spacing", "Řádkování"),
|
||||
("layer.addTextAnimator", "Character Offset", "Posun znaku"),
|
||||
("layer.addTextAnimator", "Character Value", "Hodnota znaku"),
|
||||
("layer.addTextAnimator", "Blur", "Rozostření"),
|
||||
("text.animatorFontAxes", "Variable Font Axes", "Osy variabilního písma"),
|
||||
("", "Add Text Selector", "Přidat selektor textu"),
|
||||
("text.addSelector", "Range", "Rozsah"),
|
||||
("text.addSelector", "Wiggly", "Chvějivý"),
|
||||
("text.addSelector", "Expression", "Výraz"),
|
||||
("text.removeAllAnimators", "Remove All Text Animators", "Odstranit všechny animátory textu"),
|
||||
("prop.setExpression", "Add Expression", "Přidat výraz"),
|
||||
("essential.addProperty", "Add Property to Essential Graphics", "Přidat vlastnost do základní grafiky"),
|
||||
("prop.separateDimensions", "Separate Dimensions", "Oddělit rozměry"),
|
||||
("track.camera", "Track Camera", "Sledovat kameru"),
|
||||
("track.warpStabilizer", "Warp Stabilizer VFX", "Stabilizátor deformací VFX"),
|
||||
("track.motion", "Track Motion", "Sledovat pohyb"),
|
||||
("track.stabilize", "Stabilize Motion", "Stabilizovat pohyb"),
|
||||
("track.property", "Track this Property", "Sledovat tuto vlastnost"),
|
||||
("anim.reveal", "Reveal Properties with Keyframes", "Zobrazit vlastnosti s klíčovými snímky"),
|
||||
("anim.reveal", "Reveal Properties with Animation", "Zobrazit vlastnosti s animací"),
|
||||
("anim.reveal", "Reveal All Modified Properties", "Zobrazit všechny změněné vlastnosti"),
|
||||
("", "View", "Zobrazení"),
|
||||
("view.newViewer", "New Viewer", "Nový prohlížeč"),
|
||||
("view.splitLockedViewer", "Split with New Locked Viewer", "Rozdělit s novým zamknutým prohlížečem"),
|
||||
("view.zoomIn", "Zoom In", "Přiblížit"),
|
||||
("view.zoomOut", "Zoom Out", "Oddálit"),
|
||||
("", "Resolution", "Rozlišení"),
|
||||
("view.res.full", "Full", "Plné"),
|
||||
("view.res.half", "Half", "Poloviční"),
|
||||
("view.res.third", "Third", "Třetinové"),
|
||||
("view.res.quarter", "Quarter", "Čtvrtinové"),
|
||||
("view.res.custom", "Custom...", "Vlastní..."),
|
||||
("view.displayColorManagement", "Use Display Color Management", "Použít správu barev monitoru"),
|
||||
("", "Simulate Output", "Simulovat výstup"),
|
||||
("view.simulateOutput", "No Output Simulation", "Bez simulace výstupu"),
|
||||
("view.simulateOutput", "HDTV (Rec. 709)", "HDTV (Rec. 709)"),
|
||||
("view.simulateOutput", "SDTV NTSC", "SDTV NTSC"),
|
||||
("view.simulateOutput", "SDTV PAL", "SDTV PAL"),
|
||||
("view.simulateOutput", "Legacy Macintosh RGB (Gamma 1.8)", "Starší Macintosh RGB (gama 1.8)"),
|
||||
("view.simulateOutput", "Internet Standard RGB (sRGB)", "Internetový standard RGB (sRGB)"),
|
||||
("view.simulateOutput", "UHDTV (Rec. 2020)", "UHDTV (Rec. 2020)"),
|
||||
("view.simulateOutput", "Display P3", "Display P3"),
|
||||
("view.simulateOutput", "Linear (1.0 Gamma)", "Lineární (gama 1.0)"),
|
||||
("view.customRgb", "My Custom RGB...", "Moje vlastní RGB..."),
|
||||
("view.simulateOutput", "Custom...", "Vlastní..."),
|
||||
("view.rulers", "Show Rulers", "Zobrazit pravítka"),
|
||||
("", "Panel Background Color", "Barva pozadí panelu"),
|
||||
("view.panelBackground", "Black", "Černá"),
|
||||
("view.panelBackground", "Dark Gray", "Tmavě šedá"),
|
||||
("view.panelBackground", "Medium Gray (Default)", "Středně šedá (výchozí)"),
|
||||
("view.panelBackground", "Light Gray", "Světle šedá"),
|
||||
("view.panelBackground", "White", "Bílá"),
|
||||
("view.panelBackground", "Custom", "Vlastní"),
|
||||
("view.panelBackground", "Select Custom Background Color...", "Vybrat vlastní barvu pozadí..."),
|
||||
("view.guides", "Show Guides", "Zobrazit vodítka"),
|
||||
("view.snapToGuides", "Snap to Guides", "Přichytávat k vodítkům"),
|
||||
("view.lockGuides", "Lock Guides", "Zamknout vodítka"),
|
||||
("view.addGuide", "Add Guide...", "Přidat vodítko..."),
|
||||
("view.clearGuides", "Clear Guides", "Vymazat vodítka"),
|
||||
("view.importGuides", "Import Guides...", "Importovat vodítka..."),
|
||||
("view.exportGuides", "Export Guides...", "Exportovat vodítka..."),
|
||||
("view.grid", "Show Grid", "Zobrazit mřížku"),
|
||||
("view.snapToGrid", "Snap to Grid", "Přichytávat k mřížce"),
|
||||
("view.snapping", "Snapping", "Přichytávání"),
|
||||
("view.options", "View Options...", "Možnosti zobrazení..."),
|
||||
("view.layerControls", "Show Layer Controls", "Zobrazit ovládací prvky vrstvy"),
|
||||
("", "Switch View Layout", "Přepnout rozložení zobrazení"),
|
||||
("view.layout", "1 View", "1 zobrazení"),
|
||||
("view.layout", "2 Views", "2 zobrazení"),
|
||||
("view.layout", "4 Views", "4 zobrazení"),
|
||||
("view.shareViewOptions", "Share View Options", "Sdílet možnosti zobrazení"),
|
||||
("", "Switch 3D View", "Přepnout 3D zobrazení"),
|
||||
("view.3d.activeCamera", "Active Camera", "Aktivní kamera"),
|
||||
("view.3d.default", "Default", "Výchozí"),
|
||||
("view.3d.front", "Front", "Zepředu"),
|
||||
("view.3d.left", "Left", "Zleva"),
|
||||
("view.3d.top", "Top", "Shora"),
|
||||
("view.3d.back", "Back", "Zezadu"),
|
||||
("view.3d.right", "Right", "Zprava"),
|
||||
("view.3d.bottom", "Bottom", "Zdola"),
|
||||
("view.3d.custom1", "Custom View 1", "Vlastní zobrazení 1"),
|
||||
("view.3d.custom2", "Custom View 2", "Vlastní zobrazení 2"),
|
||||
("view.3d.custom3", "Custom View 3", "Vlastní zobrazení 3"),
|
||||
("", "Assign Shortcut to 3D View", "Přiřadit zkratku 3D zobrazení"),
|
||||
("view.3d.last", "Switch to Last 3D View", "Přepnout na poslední 3D zobrazení"),
|
||||
("view.lookAtSelected", "Look at Selected Layers", "Zaměřit vybrané vrstvy"),
|
||||
("view.lookAtAll", "Look at All Layers", "Zaměřit všechny vrstvy"),
|
||||
("time.set", "Go to Time...", "Přejít na čas..."),
|
||||
("view.fullScreen", "Enter Full Screen", "Přejít na celou obrazovku"),
|
||||
("", "Window", "Okno"),
|
||||
("", "Workspace", "Pracovní prostor"),
|
||||
("window.workspace", "Default", "Výchozí"),
|
||||
("window.workspace", "Review", "Revize"),
|
||||
("window.workspace", "Learn", "Výuka"),
|
||||
("window.workspace", "Small Screen", "Malá obrazovka"),
|
||||
("window.workspace", "Standard", "Standardní"),
|
||||
("window.workspace", "All Panels", "Všechny panely"),
|
||||
("window.workspace", "Animation", "Animace"),
|
||||
("window.workspace", "Color", "Barva"),
|
||||
("window.workspace", "Effects", "Efekty"),
|
||||
("window.workspace", "Essential Graphics", "Základní grafika"),
|
||||
("window.workspace", "Minimal", "Minimální"),
|
||||
("window.workspace", "Motion Tracking", "Sledování pohybu"),
|
||||
("window.workspace", "Paint", "Malování"),
|
||||
("window.workspace", "Text", "Text"),
|
||||
("window.workspace", "Undocked Panels", "Odpojené panely"),
|
||||
("window.resetWorkspace", "Reset to Saved Layout", "Obnovit uložené rozložení"),
|
||||
("window.saveWorkspace", "Save Changes to this Workspace", "Uložit změny tohoto pracovního prostoru"),
|
||||
("window.saveWorkspaceAs", "Save as New Workspace...", "Uložit jako nový pracovní prostor..."),
|
||||
("window.editWorkspaces", "Edit Workspaces...", "Upravit pracovní prostory..."),
|
||||
("", "Assign Shortcut to Workspace", "Přiřadit zkratku pracovnímu prostoru"),
|
||||
("window.panel", "Align", "Zarovnání"),
|
||||
("window.panel", "Audio", "Zvuk"),
|
||||
("window.panel", "Brushes", "Štětce"),
|
||||
("window.panel", "Character", "Znak"),
|
||||
("window.panel", "Content-Aware Fill", "Výplň podle obsahu"),
|
||||
("window.panel", "Effects & Presets", "Efekty a přednastavení"),
|
||||
("window.panel", "Essential Graphics", "Základní grafika"),
|
||||
("window.panel", "Info", "Informace"),
|
||||
("help.inAppTutorials", "Learn", "Výuka"),
|
||||
("window.panel", "Lumetri Scopes", "Měřicí přístroje Lumetri"),
|
||||
("window.panel", "Mask Interpolation", "Interpolace masek"),
|
||||
("window.panel", "Media Browser", "Prohlížeč médií"),
|
||||
("window.panel", "Metadata", "Metadata"),
|
||||
("window.panel", "Motion Sketch", "Náčrt pohybu"),
|
||||
("window.panel", "Paint", "Malování"),
|
||||
("window.panel", "Paragraph", "Odstavec"),
|
||||
("window.panel", "Preview", "Náhled"),
|
||||
("window.panel", "Progress", "Průběh"),
|
||||
("window.panel", "Properties", "Vlastnosti"),
|
||||
("window.panel", "Script Console", "Konzole skriptů"),
|
||||
("window.panel", "Smoother", "Vyhlazení"),
|
||||
("window.panel", "Tools", "Nástroje"),
|
||||
("window.panel", "Tracker", "Sledování"),
|
||||
("window.panel", "Wiggler", "Generátor chvění"),
|
||||
("window.panel", "Composition", "Kompozice"),
|
||||
("window.panel", "Flowchart", "Vývojový diagram"),
|
||||
("window.panel", "Footage", "Záznam"),
|
||||
("window.panel", "Layer", "Vrstva"),
|
||||
("window.panel", "Project", "Projekt"),
|
||||
("window.panel", "Render Queue", "Fronta vykreslování"),
|
||||
("window.panel", "Timeline", "Časová osa"),
|
||||
("window.panel", "Create Nulls From Paths", "Vytvořit prázdné objekty z cest"),
|
||||
("window.panel", "VR Comp Editor", "Editor kompozice VR"),
|
||||
("", "Help", "Nápověda"),
|
||||
("help.docs", "EffectCraft Help...", "Nápověda k EffectCraft..."),
|
||||
("help.docs", "Scripting Help...", "Nápověda ke skriptování..."),
|
||||
("help.docs", "Expression Reference...", "Referenční příručka výrazů..."),
|
||||
("help.docs", "Effect Reference...", "Referenční příručka efektů..."),
|
||||
("anim.browsePresets", "Animation Presets...", "Přednastavení animace..."),
|
||||
("app.keyboardShortcuts", "Keyboard Shortcuts...", "Klávesové zkratky..."),
|
||||
("help.inAppTutorials", "In-App Tutorials...", "Výukové lekce v aplikaci..."),
|
||||
("help.onlineTutorials", "Online Tutorials...", "Výukové lekce online..."),
|
||||
("help.systemReport", "System Compatibility Report...", "Zpráva o kompatibilitě systému..."),
|
||||
("help.enableLogging", "Enable Logging", "Povolit protokolování"),
|
||||
("help.revealLogFile", "Reveal Logging File", "Zobrazit soubor protokolu"),
|
||||
("help.discord", "Join the ArtCraft Discord...", "Připojit se na Discord ArtCraft..."),
|
||||
("help.reportIssue", "Provide Feedback...", "Poskytnout zpětnou vazbu..."),
|
||||
("help.website", "ArtCraft Website", "Web ArtCraft"),
|
||||
("help.appPage", "EffectCraft Home Page", "Domovská stránka EffectCraft"),
|
||||
("help.github", "EffectCraft on GitHub", "EffectCraft na GitHubu"),
|
||||
("file.openDemoProject", "Open Demo Project", "Otevřít ukázkový projekt"),
|
||||
];
|
||||
|
||||
#[cfg(test)]
|
||||
mod tests {
|
||||
use super::*;
|
||||
@@ -3972,6 +4620,86 @@ mod tests {
|
||||
use serde_json::json;
|
||||
use std::collections::BTreeSet;
|
||||
|
||||
#[test]
|
||||
fn czech_translates_menus_without_changing_bindings_or_user_names() {
|
||||
let mut app = EffectcraftApp::new(effectcraft_engine::Session::default());
|
||||
app.session.execute("prefs.set", json!({"key": "general.language", "value": "en"})).unwrap();
|
||||
app.session.prefs.push_recent("File.ecproj");
|
||||
let en = crate::native_menu::build(&app);
|
||||
let state = crate::native_menu::state_key(&app);
|
||||
app.session.execute("prefs.set", json!({"key": "general.language", "value": "cs"})).unwrap();
|
||||
let cs = crate::native_menu::build(&app);
|
||||
assert_eq!(language(&app), "cs");
|
||||
assert!(czech(&app));
|
||||
assert_eq!(code("cs"), "cs");
|
||||
assert_ne!(state, crate::native_menu::state_key(&app));
|
||||
let bindings = |menu: &crate::native_menu::NativeMenu| {
|
||||
menu.items().into_iter().map(|i| (i.id.clone(), i.command.clone(), i.params.clone(), i.shortcut.clone(), i.enabled, i.checked)).collect::<Vec<_>>()
|
||||
};
|
||||
assert_eq!(bindings(&en), bindings(&cs));
|
||||
assert!(cs.items().iter().any(|i| i.command == "comp.new" && i.label == "Nová kompozice..."));
|
||||
assert!(cs.items().iter().any(|i| i.command == "layer.newText" && i.label == "Text"));
|
||||
assert!(cs.items().iter().any(|i| i.command == "keys.easyEase" && i.label == "Snadné zpomalení"));
|
||||
assert!(cs.items().iter().any(|i| i.command == "file.openRecent" && i.label == "File.ecproj"));
|
||||
for (source, translated) in [
|
||||
("File", "Soubor"),
|
||||
("Edit", "Úpravy"),
|
||||
("Composition", "Kompozice"),
|
||||
("Layer", "Vrstva"),
|
||||
("Effect", "Efekt"),
|
||||
("Animation", "Animace"),
|
||||
("View", "Zobrazení"),
|
||||
("Window", "Okno"),
|
||||
("Help", "Nápověda"),
|
||||
] {
|
||||
assert_eq!(label(&app, "", source), translated);
|
||||
}
|
||||
assert_eq!(label(&app, "unknown.command", "Text"), "Text");
|
||||
let panel = MenuEntry { label: "Layer".into(), command: "window.panel".into(), params: json!({"panel": "layer"}), shortcut: None };
|
||||
assert_eq!(entry(&app, &panel, "Layer: File Čeština".into()), "Vrstva: File Čeština");
|
||||
assert_eq!(
|
||||
submenu(&app, "Assign Shortcut to Workspace", "Assign Shortcut to “File Čeština” Workspace".into()),
|
||||
"Přiřadit zkratku pracovnímu prostoru „File Čeština“"
|
||||
);
|
||||
assert_eq!(submenu(&app, "Assign Shortcut to 3D View", "Assign Shortcut to “Top”".into()), "Přiřadit zkratku 3D zobrazení „Top“");
|
||||
assert_eq!(submenu(&app, "Assign Shortcut to Workspace", "Assign Shortcut to Workspace".into()), "Přiřadit zkratku pracovnímu prostoru");
|
||||
app.session.execute("prefs.set", json!({"key": "general.language", "value": "en"})).unwrap();
|
||||
assert_eq!(crate::native_menu::build(&app), en);
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn czech_undo_redo_keeps_history_labels_verbatim() {
|
||||
let mut app = EffectcraftApp::new(effectcraft_engine::Session::default());
|
||||
app.session.execute("prefs.set", json!({"key": "general.language", "value": "cs"})).unwrap();
|
||||
let undo = MenuEntry { label: "Undo".into(), command: "edit.undo".into(), params: json!({}), shortcut: None };
|
||||
let redo = MenuEntry { label: "Redo".into(), command: "edit.redo".into(), params: json!({}), shortcut: None };
|
||||
assert_eq!(entry(&app, &undo, "Can't Undo".into()), "Není co vrátit");
|
||||
assert_eq!(entry(&app, &redo, "Can't Redo".into()), "Není co zopakovat");
|
||||
app.session.history.undo.push(("File Čeština".into(), app.session.project.clone()));
|
||||
app.session.history.redo.push(("Text Čeština".into(), app.session.project.clone()));
|
||||
assert_eq!(entry(&app, &undo, "Undo File Čeština".into()), "Zpět File Čeština");
|
||||
assert_eq!(entry(&app, &redo, "Redo Text Čeština".into()), "Znovu Text Čeština");
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn czech_reveal_labels_follow_the_platform_file_manager() {
|
||||
let mut app = EffectcraftApp::new(effectcraft_engine::Session::default());
|
||||
app.session.execute("prefs.set", json!({"key": "general.language", "value": "cs"})).unwrap();
|
||||
for command in ["file.revealInFinder", "layer.revealInFinder"] {
|
||||
for (source, translated) in [
|
||||
("Reveal in Finder", "Zobrazit ve Finderu"),
|
||||
("Reveal in Explorer", "Zobrazit v Průzkumníku"),
|
||||
("Reveal in File Manager", "Zobrazit ve správci souborů"),
|
||||
] {
|
||||
let e = MenuEntry { label: source.into(), command: command.into(), params: json!({}), shortcut: None };
|
||||
assert_eq!(label(&app, command, source), translated);
|
||||
assert_eq!(entry(&app, &e, source.into()), translated);
|
||||
assert_eq!(label(&app, "file.openRecent", source), source);
|
||||
}
|
||||
assert_eq!(label(&app, command, "My file.mp4"), "My file.mp4");
|
||||
}
|
||||
}
|
||||
|
||||
fn keys(nodes: &[MenuNode], out: &mut BTreeSet<(String, String)>) {
|
||||
for node in nodes {
|
||||
match node {
|
||||
@@ -3999,6 +4727,7 @@ mod tests {
|
||||
let mut ukrainian_keys = BTreeSet::new();
|
||||
let mut spanish_keys = BTreeSet::new();
|
||||
let mut portuguese_keys = BTreeSet::new();
|
||||
let mut czech_keys = BTreeSet::new();
|
||||
for (catalog, unique) in [
|
||||
(JAPANESE, &mut japanese_keys),
|
||||
(SIMPLIFIED_CHINESE, &mut chinese_keys),
|
||||
@@ -4006,6 +4735,7 @@ mod tests {
|
||||
(UKRAINIAN, &mut ukrainian_keys),
|
||||
(SPANISH, &mut spanish_keys),
|
||||
(PORTUGUESE, &mut portuguese_keys),
|
||||
(CZECH, &mut czech_keys),
|
||||
] {
|
||||
for (command, en, translated) in catalog {
|
||||
let key = (command.to_string(), en.to_string());
|
||||
@@ -4032,6 +4762,7 @@ mod tests {
|
||||
assert_eq!(traditional_keys, spanish_keys, "the languages must translate the same entries");
|
||||
assert_eq!(spanish_keys, portuguese_keys, "the languages must translate the same entries");
|
||||
assert_eq!(japanese_keys, ukrainian_keys, "the languages must translate the same entries");
|
||||
assert_eq!(japanese_keys, czech_keys, "the languages must translate the same entries");
|
||||
}
|
||||
|
||||
/// Exercise each engine spelling on every host: a macOS-only run must still catch a
|
||||
@@ -4113,6 +4844,10 @@ mod tests {
|
||||
(Some("es-419"), "es"),
|
||||
(Some("pt-BR"), "pt-br"),
|
||||
(Some("pt_PT.UTF-8"), "pt-br"),
|
||||
(Some("cs"), "cs"),
|
||||
(Some("cs-CZ"), "cs"),
|
||||
(Some("cs_CZ.UTF-8"), "cs"),
|
||||
(Some("CS_cz.UTF-8"), "cs"),
|
||||
(Some("en-US"), "en"),
|
||||
(Some("jv-ID"), "en"),
|
||||
(Some("de-DE"), "en"),
|
||||
@@ -4126,6 +4861,7 @@ mod tests {
|
||||
assert_eq!(simplified(&app), system_language() == "zh-hans");
|
||||
assert_eq!(traditional(&app), system_language() == "zh-hant");
|
||||
assert_eq!(spanish(&app), system_language() == "es");
|
||||
assert_eq!(czech(&app), system_language() == "cs");
|
||||
app.session.execute("prefs.set", json!({"key":"general.language", "value":"ja"})).unwrap();
|
||||
assert!(japanese(&app));
|
||||
app.session.execute("prefs.set", json!({"key":"general.language", "value":"zh-hans"})).unwrap();
|
||||
@@ -4145,7 +4881,9 @@ mod tests {
|
||||
|
||||
#[test]
|
||||
fn every_translated_entry_keeps_the_english_shape() {
|
||||
for (code, catalog) in [("zh-hans", SIMPLIFIED_CHINESE), ("zh-hant", TRADITIONAL_CHINESE), ("uk", UKRAINIAN), ("es", SPANISH), ("pt-br", PORTUGUESE)] {
|
||||
for (code, catalog) in
|
||||
[("zh-hans", SIMPLIFIED_CHINESE), ("zh-hant", TRADITIONAL_CHINESE), ("uk", UKRAINIAN), ("es", SPANISH), ("pt-br", PORTUGUESE), ("cs", CZECH)]
|
||||
{
|
||||
for (command, en, translated) in catalog {
|
||||
assert_eq!(en.contains("..."), translated.contains("..."), "{code} {command} / {en}: {translated}");
|
||||
let brackets = |s: &str| s.chars().filter(|c| *c == '(' || *c == ')').count();
|
||||
|
||||
@@ -19,7 +19,7 @@ use std::fmt::Display;
|
||||
use std::sync::OnceLock;
|
||||
|
||||
thread_local! {
|
||||
/// The resolved interface language ("en", "ja", "zh-hans", "zh-hant", "uk"); "en" until the first
|
||||
/// The resolved interface language ("en", "ja", "zh-hans", "zh-hant", "uk", "cs"); "en" until the first
|
||||
/// frame sets it.
|
||||
static CURRENT: Cell<&'static str> = const { Cell::new("en") };
|
||||
}
|
||||
@@ -44,11 +44,13 @@ fn catalog(language: &str) -> Option<&'static Index> {
|
||||
static HANS: OnceLock<Index> = OnceLock::new();
|
||||
static HANT: OnceLock<Index> = OnceLock::new();
|
||||
static UK: OnceLock<Index> = OnceLock::new();
|
||||
static CS: OnceLock<Index> = OnceLock::new();
|
||||
let (index, rows) = match language {
|
||||
"ja" => (&JA, JAPANESE),
|
||||
"zh-hans" => (&HANS, SIMPLIFIED_CHINESE),
|
||||
"zh-hant" => (&HANT, TRADITIONAL_CHINESE),
|
||||
"uk" => (&UK, UKRAINIAN),
|
||||
"cs" => (&CS, CZECH),
|
||||
_ => return None,
|
||||
};
|
||||
Some(index.get_or_init(|| rows.iter().copied().collect()))
|
||||
@@ -1990,6 +1992,533 @@ const UKRAINIAN: &[(&str, &str)] = &[
|
||||
("⚠ {} is used by:", "⚠ {} використовується в:"),
|
||||
];
|
||||
|
||||
/// Czech (cs): original translations covering every row in the Chinese panel catalogs.
|
||||
const CZECH: &[(&str, &str)] = &[
|
||||
(" OK ", " OK "),
|
||||
(" Delete ", " Odstranit "),
|
||||
(" Open Auto-Save ", " Otevřít automatickou zálohu "),
|
||||
("(missing)", "(chybí)"),
|
||||
("360 View Orientation", "Orientace zobrazení 360°"),
|
||||
("3:2 Pulldown: {}", "Převod 3:2 pulldown: {}"),
|
||||
(
|
||||
"A clean-room, open-source compositor for motion graphics and visual effects: native on macOS, Windows and Linux, and in the browser. Part of the ArtCraft family of creative apps.",
|
||||
"Kompoziční nástroj s otevřeným zdrojovým kódem pro pohyblivou grafiku a vizuální efekty, vyvinutý nezávisle metodou clean-room. Běží nativně na macOS, Windows a Linuxu i v prohlížeči. Patří do rodiny kreativních aplikací ArtCraft.",
|
||||
),
|
||||
("About EffectCraft", "O aplikaci EffectCraft"),
|
||||
("About...", "O aplikaci…"),
|
||||
("Active", "Aktivní"),
|
||||
("Active Camera", "Aktivní kamera"),
|
||||
("Alpha", "Alfa"),
|
||||
("Adapt Feature On Every Frame", "Přizpůsobovat sledovaný prvek v každém snímku"),
|
||||
("Adaptive Sample Limit:", "Limit adaptivního vzorkování:"),
|
||||
("Add Animator", "Přidat animátor"),
|
||||
("Add Comment", "Přidat komentář"),
|
||||
("Add Formatting", "Přidat formátování"),
|
||||
("Add Group", "Přidat skupinu"),
|
||||
("Add Mirror", "Přidat zrcadlo"),
|
||||
("Add Selected As", "Přidat vybrané jako"),
|
||||
("Add a comment", "Přidat komentář"),
|
||||
("Add a shape, fill, stroke or path operation", "Přidat tvar, výplň, tah nebo operaci s cestou"),
|
||||
("Add to Composition", "Přidat do kompozice"),
|
||||
("Add to Favorites", "Přidat do oblíbených"),
|
||||
("Add:", "Přidat:"),
|
||||
("Adjust Exposure (stops)", "Upravit expozici (v expozičních stupních)"),
|
||||
("Adjust composition duration to the time span of the selected layers", "Přizpůsobit délku kompozice časovému rozsahu vybraných vrstev"),
|
||||
("Advanced 3D", "Pokročilé 3D"),
|
||||
("Align Layers to:", "Zarovnat vrstvy k:"),
|
||||
("All six face cameras turn together; the scene is not changed.", "Všech šest kamer snímajících stěny se otáčí společně; scéna se nemění."),
|
||||
("Anchor:", "Kotevní bod:"),
|
||||
("Aperture", "Clona"),
|
||||
("Appearance Mode", "Režim vzhledu"),
|
||||
("Appearance Mode: {}", "Režim vzhledu: {}"),
|
||||
("Apply Dimensions:", "Použít rozměry:"),
|
||||
("Apply Motion To:", "Použít pohyb na:"),
|
||||
("Arrange", "Uspořádat"),
|
||||
("Assign", "Přiřadit"),
|
||||
("Auto", "Automaticky"),
|
||||
("Auto-saves", "Automatické zálohy"),
|
||||
("Back", "Zpět"),
|
||||
("Background Color:", "Barva pozadí:"),
|
||||
("Blend Mode:", "Režim prolnutí:"),
|
||||
("Blending Mode", "Režim prolnutí"),
|
||||
("Blur", "Rozostření"),
|
||||
("Blur Level", "Úroveň rozostření"),
|
||||
("Boundary", "Hranice"),
|
||||
("Browser Storage", "Úložiště prohlížeče"),
|
||||
("Browse…", "Procházet…"),
|
||||
("Brush Dynamics", "Dynamika štětce"),
|
||||
("Caching frames…", "Ukládání snímků do mezipaměti…"),
|
||||
("Cancel", "Zrušit"),
|
||||
("Casts Shadows", "Vrhat stíny"),
|
||||
("Change Renderer…", "Změnit vykreslovací modul…"),
|
||||
(
|
||||
"Changing a shortcut creates a custom preset; the default stays as it is.",
|
||||
"Změna zkratky vytvoří vlastní přednastavení; výchozí přednastavení zůstane zachované.",
|
||||
),
|
||||
("Channel", "Kanál"),
|
||||
("Channel:", "Kanál:"),
|
||||
("Chapter:", "Kapitola:"),
|
||||
("Choose...", "Vybrat…"),
|
||||
("Classic 3D", "Klasické 3D"),
|
||||
("Clear", "Vymazat"),
|
||||
("Clear list", "Vymazat seznam"),
|
||||
("Click a key to see its commands.", "Kliknutím na klávesu zobrazíte její příkazy."),
|
||||
("Click adds a point (½ height = no change)", "Kliknutím přidáte bod (½ výšky = beze změny)"),
|
||||
("Click adds a point; drag one off to remove", "Kliknutím přidáte bod; přetažením mimo jej odstraníte"),
|
||||
("Click to make this viewer active", "Kliknutím aktivujete tento prohlížeč"),
|
||||
("Click to reveal the expression in the timeline", "Kliknutím zobrazíte výraz na časové ose"),
|
||||
("Click to show the active composition here", "Kliknutím zde zobrazíte aktivní kompozici"),
|
||||
("Click, then click in the Composition panel", "Klikněte sem a poté do panelu Kompozice"),
|
||||
("Clone Options", "Možnosti klonování"),
|
||||
("Clone Source Overlay:", "Překrytí zdroje klonování:"),
|
||||
("Close", "Zavřít"),
|
||||
("Close Panel", "Zavřít panel"),
|
||||
("Close tutorial", "Zavřít výukovou lekci"),
|
||||
("Color", "Barva"),
|
||||
("Color Depth: {}", "Barevná hloubka: {}"),
|
||||
("Color:", "Barva:"),
|
||||
("Colour map", "Barevná mapa"),
|
||||
("Columns", "Sloupce"),
|
||||
("Comment:", "Komentář:"),
|
||||
("Community", "Komunita"),
|
||||
("Composition", "Kompozice"),
|
||||
("Composition Mini-Flowchart", "Malý vývojový diagram kompozice"),
|
||||
("Composition Name:", "Název kompozice:"),
|
||||
("Composition Settings ▸ 3D Renderer", "Nastavení kompozice ▸ 3D vykreslovací modul"),
|
||||
("Composition Settings…", "Nastavení kompozice…"),
|
||||
("Composition marker bin: drag a marker to the time ruler", "Zásobník značek kompozice: přetáhněte značku na časové pravítko"),
|
||||
("Cone Angle", "Úhel kužele"),
|
||||
("Cone Feather", "Prolnutí okrajů kužele"),
|
||||
("Constrain Proportions", "Zachovat proporce"),
|
||||
("Continuous (Lock Outgoing to Incoming)", "Spojitá (svázat výstupní tečnu se vstupní)"),
|
||||
("Cue Point", "Bod události"),
|
||||
("Current Render", "Aktuální vykreslování"),
|
||||
("Dark", "Tmavý"),
|
||||
("Dark Theme", "Tmavý motiv"),
|
||||
("Darker", "Tmavší"),
|
||||
("Default Output:", "Výchozí výstup:"),
|
||||
("Default: {}", "Výchozí: {}"),
|
||||
("Defaults", "Výchozí hodnoty"),
|
||||
("Delete", "Odstranit"),
|
||||
("Delete Selected Points", "Odstranit vybrané body"),
|
||||
("Delete selected project items", "Odstranit vybrané položky projektu"),
|
||||
("Delete this template", "Odstranit tuto šablonu"),
|
||||
("Depth of Field", "Hloubka ostrosti"),
|
||||
("Discord", "Discord"),
|
||||
("Distribute Layers:", "Rozmístit vrstvy:"),
|
||||
("Don't Recover", "Neobnovovat"),
|
||||
("Don't Save", "Neukládat"),
|
||||
("Double-click a layer to open it in the Layer panel", "Dvojklikem otevřete vrstvu v panelu Vrstva"),
|
||||
("Double-click footage in the Project panel to open it here", "Dvojklikem na záznam v panelu Projekt jej otevřete zde"),
|
||||
("Double-click to edit the comment", "Dvojklikem upravíte komentář"),
|
||||
("Download", "Stáhnout"),
|
||||
(
|
||||
"Drag properties here from the timeline,\nor use Animation > Add Property to Essential Graphics.",
|
||||
"Přetáhněte sem vlastnosti z časové osy,\nnebo použijte Animace > Přidat vlastnost do základní grafiky.",
|
||||
),
|
||||
("Drag to change", "Tažením změníte hodnotu"),
|
||||
("Drag to create a guide", "Tažením vytvoříte vodítko"),
|
||||
("Drag to slip the source", "Tažením posunete zdroj v čase"),
|
||||
("Drop Frame", "Vynechávat čísla snímků"),
|
||||
("Duplicate", "Duplikovat"),
|
||||
("Duration:", "Délka trvání:"),
|
||||
("Edit Gradient…", "Upravit přechod…"),
|
||||
("Edit Target: {}", "Upravit cíl: {}"),
|
||||
("Edit in the Timeline", "Upravit na časové ose"),
|
||||
("EffectCraft didn't quit normally last time.", "EffectCraft nebyl při posledním použití ukončen běžným způsobem."),
|
||||
("Effects & Presets options", "Možnosti efektů a přednastavení"),
|
||||
("Effects: {}", "Efekty: {}"),
|
||||
("Empty folder", "Prázdná složka"),
|
||||
("Enable Depth of Field", "Povolit hloubku ostrosti"),
|
||||
("Enable Expression", "Povolit výraz"),
|
||||
("Enhance", "Vylepšit"),
|
||||
("Essential Properties — {}", "Základní vlastnosti — {}"),
|
||||
("Event", "Událost"),
|
||||
("Export Template…", "Exportovat šablonu…"),
|
||||
("Export...", "Exportovat…"),
|
||||
("Expression Language Menu", "Nabídka jazyka výrazů"),
|
||||
("Expression pick whip: drag onto a property", "Propojovací nástroj výrazů: přetáhněte na vlastnost"),
|
||||
("Expression:", "Výraz:"),
|
||||
("Eyedropper: click, then click in the Composition panel", "Kapátko: klikněte sem a poté do panelu Kompozice"),
|
||||
("Falloff", "Útlum"),
|
||||
("Falloff Distance", "Vzdálenost útlumu"),
|
||||
("Favorites", "Oblíbené"),
|
||||
("Field Render: {}", "Vykreslování půlsnímků: {}"),
|
||||
("Figures", "Číslice"),
|
||||
("Fill Target", "Cíl výplně"),
|
||||
("Finished", "Dokončeno"),
|
||||
("Flowchart: {}", "Vývojový diagram: {}"),
|
||||
("Focus Distance", "Vzdálenost zaostření"),
|
||||
("Follow Feature Rotation and Scale", "Sledovat otočení a měřítko prvku"),
|
||||
("Footage: {}", "Záznam: {}"),
|
||||
("Format: {}", "Formát: {}"),
|
||||
("Frame Aspect Ratio: {}", "Poměr stran snímku: {}"),
|
||||
("Frame Blending: {}", "Prolnutí snímků: {}"),
|
||||
("Frame Rate:", "Snímková frekvence:"),
|
||||
("Frame Render Time {}ms", "Čas vykreslení snímku {}ms"),
|
||||
("Frame Target:", "Cílový rámec:"),
|
||||
("Freeze", "Zmrazit"),
|
||||
("Grab bag", "Mozaika"),
|
||||
("Grid", "Mřížka"),
|
||||
("Guide Layers: {}", "Pomocné vrstvy: {}"),
|
||||
("Guides", "Vodítka"),
|
||||
("Height:", "Výška:"),
|
||||
("Hide This", "Skrýt toto"),
|
||||
("Histogram", "Histogram"),
|
||||
("Hold In Place", "Pevný časový bod"),
|
||||
("Home", "Domů"),
|
||||
("If Confidence is Below", "Pokud je spolehlivost nižší než"),
|
||||
("Import", "Importovat"),
|
||||
("Import and Add to Composition", "Importovat a přidat do kompozice"),
|
||||
("Import...", "Importovat…"),
|
||||
("Imported media", "Importovaná média"),
|
||||
("Influence:", "Vliv:"),
|
||||
("Install from File…", "Nainstalovat ze souboru…"),
|
||||
("Intensity", "Intenzita"),
|
||||
("Inverted", "Invertovaná"),
|
||||
("Join the ArtCraft community on Discord", "Připojit se ke komunitě ArtCraft na Discordu"),
|
||||
("Key: {}", "Klávesa: {}"),
|
||||
("LEARN", "VÝUKA"),
|
||||
("Label", "Štítek"),
|
||||
("Label Colors and Names:", "Barvy a názvy štítků:"),
|
||||
("Label:", "Štítek:"),
|
||||
("Latest auto-save: {}", "Nejnovější automatická záloha: {}"),
|
||||
("Layer", "Vrstva"),
|
||||
("Layer controls", "Ovládací prvky vrstvy"),
|
||||
("Layer {}", "Vrstva {}"),
|
||||
("Layer:", "Vrstva:"),
|
||||
("Layer: {}", "Vrstva: {}"),
|
||||
("Learn", "Výuka"),
|
||||
("Leave all attributes in \"{}\"", "Ponechat všechny atributy v „{}“"),
|
||||
("Licence: {}", "Licence: {}"),
|
||||
("Ligatures", "Ligatury"),
|
||||
("Light", "Světlý"),
|
||||
("Light Theme", "Světlý motiv"),
|
||||
("Light Type", "Typ světla"),
|
||||
("Lighter", "Světlejší"),
|
||||
("Link Selected Property", "Propojit vybranou vlastnost"),
|
||||
("Lock Aspect Ratio to {}", "Zamknout poměr stran na {}"),
|
||||
("Lock to Zoom", "Svázat s přiblížením"),
|
||||
("Locked: {} — {}", "Zamknuto: {} — {}"),
|
||||
("Log:", "Protokol:"),
|
||||
("Loop (Trace Path)", "Smyčka (sledovat cestu)"),
|
||||
("MIT OR Apache-2.0 • Fonts: Inter, JetBrains Mono (OFL)", "MIT OR Apache-2.0 • Písma: Inter, JetBrains Mono (OFL)"),
|
||||
("Magnification ratio popup", "Nabídka míry přiblížení"),
|
||||
("Make Comp Size", "Nastavit velikost kompozice"),
|
||||
("Masks", "Masky"),
|
||||
("Maximize Panel", "Maximalizovat panel"),
|
||||
("Media Replacement", "Nahrazení médií"),
|
||||
("Mesh:", "Síť:"),
|
||||
("Diameter:", "Průměr:"),
|
||||
("Method Used: {} Average Error: {} pixels", "Použitá metoda: {} Průměrná chyba: {} px"),
|
||||
("Models folder: {}", "Složka modelů: {}"),
|
||||
("Modifiers:", "Modifikátory:"),
|
||||
("More", "Další"),
|
||||
("More ArtCraft apps", "Další aplikace ArtCraft"),
|
||||
("More tutorials", "Další výukové lekce"),
|
||||
("Motion Blur", "Rozostření pohybem"),
|
||||
("Motion Blur: {}", "Rozostření pohybem: {}"),
|
||||
("Motion Sketch: drag to record", "Náčrt pohybu: tažením zaznamenáte pohyb"),
|
||||
("Move Down", "Posunout dolů"),
|
||||
("Move Up", "Posunout nahoru"),
|
||||
("Move to Project Root", "Přesunout do kořene projektu"),
|
||||
("Name", "Název"),
|
||||
("Name:", "Název:"),
|
||||
("Navigation", "Navigace"),
|
||||
("New", "Nový"),
|
||||
("New Comp from Selection", "Nová kompozice z výběru"),
|
||||
("New Duration:", "Nová délka trvání:"),
|
||||
("New composition name:", "Název nové kompozice:"),
|
||||
("New from Render Queue item:", "Nová šablona z položky fronty vykreslování:"),
|
||||
("New from Template", "Nový ze šablony"),
|
||||
("Next", "Další"),
|
||||
("Nice work. Pick another tutorial on the Home screen's Learn tab.", "Hotovo. Vyberte si další lekci na kartě Výuka na domovské obrazovce."),
|
||||
(
|
||||
"No VR environments yet. Create one with Composition ▸ VR ▸ Create VR Environment…",
|
||||
"Zatím nejsou žádná prostředí VR. Vytvořte je přes Kompozice ▸ VR ▸ Vytvořit prostředí VR…",
|
||||
),
|
||||
("No audio layer selected", "Není vybrána zvuková vrstva"),
|
||||
("No background jobs running", "Na pozadí neběží žádné úlohy"),
|
||||
("No composition markers", "Kompozice nemá žádné značky"),
|
||||
("No contributor data was built into this copy.", "Tato sestava neobsahuje údaje o přispěvatelích."),
|
||||
("No device list from this host; the system default output is used.", "Hostitel neposkytuje seznam zařízení; používá se výchozí systémový výstup."),
|
||||
("No layer selected", "Není vybrána vrstva"),
|
||||
("No matching effects or presets", "Žádné odpovídající efekty ani přednastavení"),
|
||||
("No matching fonts", "Žádná odpovídající písma"),
|
||||
("No model credits were built into this copy.", "Tato sestava neobsahuje údaje o použitých modelech."),
|
||||
("No nested compositions", "Žádné vnořené kompozice"),
|
||||
("No shortcut", "Bez zkratky"),
|
||||
("No unlocked layer selected", "Není vybrána odemknutá vrstva"),
|
||||
("No video", "Žádné video"),
|
||||
("None", "Žádné"),
|
||||
("Not applied: tick it in the list to add it.", "Nepoužito: pro přidání položku zaškrtněte v seznamu."),
|
||||
("Not assigned", "Nepřiřazeno"),
|
||||
("Note: Shadows are only cast from layers with Cast Shadows enabled.", "Poznámka: Stíny vrhají pouze vrstvy s povolenou volbou Vrhat stíny."),
|
||||
("Notify", "Upozornit"),
|
||||
("OK", "OK"),
|
||||
("Offset:", "Posun:"),
|
||||
("On ({}) stop:", "Při zastavení ({}):"),
|
||||
("One-Node Camera", "Jednouzlová kamera"),
|
||||
("Opacity:", "Krytí:"),
|
||||
("Open Composition", "Otevřít kompozici"),
|
||||
("Open Last Saved Project", "Otevřít poslední uložený projekt"),
|
||||
("Open New Composition", "Otevřít novou kompozici"),
|
||||
("Open Output", "Otevřít výstup"),
|
||||
("Open a composition to build Essential Graphics", "Otevřete kompozici pro sestavení základní grafiky"),
|
||||
("Open a composition to see its scopes", "Otevřete kompozici pro zobrazení měřicích přístrojů"),
|
||||
("Open a composition to track motion.", "Otevřete kompozici pro sledování pohybu."),
|
||||
("Opus Tuning: {}", "Ladění Opus: {}"),
|
||||
("Original Duration:", "Původní délka trvání:"),
|
||||
("Output Cycle: {}", "Cyklus výstupu: {}"),
|
||||
("Output To:", "Výstup do:"),
|
||||
("Overlay", "Překrytí"),
|
||||
("Parameter Name:", "Název parametru:"),
|
||||
("Parent pick whip: drag onto a layer", "Propojovací nástroj nadřazené vrstvy: přetáhněte na vrstvu"),
|
||||
("Pixel Aspect Ratio:", "Poměr stran pixelů:"),
|
||||
("Playing on Video Preview", "Přehrávání ve videonáhledu"),
|
||||
("Post-Render Action: {}", "Akce po vykreslení: {}"),
|
||||
("Preserve frame rate when nested or in render queue", "Zachovat snímkovou frekvenci při vnoření nebo ve frontě vykreslování"),
|
||||
("Preserve resolution when nested", "Zachovat rozlišení při vnoření"),
|
||||
("Preset", "Přednastavení"),
|
||||
("Preset:", "Přednastavení:"),
|
||||
("Presets", "Přednastavení"),
|
||||
("Previous", "Předchozí"),
|
||||
("Primary:", "Hlavní kompozice:"),
|
||||
("Process Before Match", "Předzpracování před hledáním shody"),
|
||||
("Profile: {}", "Profil: {}"),
|
||||
(
|
||||
"Project color depth: click to cycle 8/16/32 bpc, Alt-click for Project Settings",
|
||||
"Barevná hloubka projektu: kliknutím přepnete 8/16/32 bpc, kliknutím s Alt otevřete Nastavení projektu",
|
||||
),
|
||||
("Project: {}", "Projekt: {}"),
|
||||
("Projects", "Projekty"),
|
||||
("Property pick whip: drag onto a property", "Propojovací nástroj vlastností: přetáhněte na vlastnost"),
|
||||
("Protected Region", "Chráněná oblast"),
|
||||
("Proxy Use: {}", "Použití zástupných souborů: {}"),
|
||||
("Push All to Comp", "Přenést vše do kompozice"),
|
||||
("RGB", "RGB"),
|
||||
("Radius", "Poloměr"),
|
||||
("Rate Control: {}", "Řízení datového toku: {}"),
|
||||
("Recent", "Nedávné"),
|
||||
("Recording", "Záznam pohybu"),
|
||||
("Remove", "Odstranit"),
|
||||
("Rename", "Přejmenovat"),
|
||||
("Render: {} ms • UI {} fps{}", "Vykreslení: {} ms • UI {} fps{}"),
|
||||
("Renderer:", "Vykreslovací modul:"),
|
||||
("Request Persistent Storage", "Požádat o trvalé úložiště"),
|
||||
("Reset", "Obnovit"),
|
||||
("Reset Labels", "Obnovit štítky"),
|
||||
("Reset Preset", "Obnovit přednastavení"),
|
||||
("Reset to Default", "Obnovit výchozí hodnoty"),
|
||||
("Reset to Saved Layout", "Obnovit uložené rozložení"),
|
||||
("Resolution/Down Sample Factor Popup", "Nabídka rozlišení a míry podvzorkování"),
|
||||
("Restore Panel Size", "Obnovit velikost panelu"),
|
||||
("Reverse the order", "Obrátit pořadí"),
|
||||
("Revert All", "Vrátit všechny změny"),
|
||||
("Roman Hanging Punctuation", "Předsazená interpunkce latinky"),
|
||||
("Roving:", "Plovoucí v čase:"),
|
||||
("Ruler zero point (drag to move, double-click to reset)", "Nulový bod pravítka (tažením posunete, dvojklikem obnovíte)"),
|
||||
("Rulers", "Pravítka"),
|
||||
("Run", "Spustit"),
|
||||
("Sample Format: {}", "Formát vzorků: {}"),
|
||||
("Samples Per Frame:", "Vzorků na snímek:"),
|
||||
("Save from #{}", "Uložit z #{}"),
|
||||
("Saved {}", "Uloženo {}"),
|
||||
("Script… (⌘/Ctrl+Enter runs)", "Skript… (⌘/Ctrl+Enter spustí)"),
|
||||
("Search commands or shortcuts", "Hledat příkazy nebo zkratky"),
|
||||
("Select", "Vybrat"),
|
||||
("Select a command to change its shortcut.", "Vyberte příkaz pro změnu jeho zkratky."),
|
||||
("Select a layer to see its effects", "Vyberte vrstvu pro zobrazení jejích efektů"),
|
||||
("Select a layer to see its properties", "Vyberte vrstvu pro zobrazení jejích vlastností"),
|
||||
("({}) Selected Objects", "Vybrané objekty ({})"),
|
||||
(
|
||||
"Select a layer with a mask or shape path (or the path property), or Puppet pins.",
|
||||
"Vyberte vrstvu s cestou masky či tvaru (nebo vlastnost cesty), případně čepy nástroje Loutka.",
|
||||
),
|
||||
("Select a text layer", "Vyberte textovou vrstvu"),
|
||||
("Select an item in the Project panel", "Vyberte položku v panelu Projekt"),
|
||||
("Select animated properties to show them in the Graph Editor", "Vyberte animované vlastnosti pro zobrazení v editoru grafů"),
|
||||
(
|
||||
"Select the leader pin, then Shift-click the pins that should trail it (hair, cloth, tails)",
|
||||
"Vyberte řídicí čep a potom se Shiftem klikněte na čepy, které jej mají následovat (vlasy, látka, ocasy)",
|
||||
),
|
||||
("Set Ground Plane and Origin", "Nastavit základní rovinu a počátek"),
|
||||
("Set Paint Colors to Black and White (D)", "Nastavit barvy malování na černou a bílou (D)"),
|
||||
("Settings", "Nastavení"),
|
||||
("Settings Name:", "Název nastavení:"),
|
||||
("Shadow Darkness", "Tmavost stínu"),
|
||||
("Shadow Diffusion", "Rozptýlení stínu"),
|
||||
("Shadows", "Stíny"),
|
||||
("Shape…", "Tvar…"),
|
||||
("Show", "Zobrazit"),
|
||||
("Show Layer Name", "Zobrazit název vrstvy"),
|
||||
("Show Source Name", "Zobrazit název zdroje"),
|
||||
("Show me", "Ukázat postup"),
|
||||
("Show:", "Zobrazit:"),
|
||||
("Shutter Angle:", "Úhel závěrky:"),
|
||||
("Shutter Phase:", "Fáze závěrky:"),
|
||||
("Size", "Velikost"),
|
||||
("Skip", "Přeskočit"),
|
||||
("Snapping", "Přichytávání"),
|
||||
("Snapping options", "Možnosti přichytávání"),
|
||||
("Snapshot", "Snímek náhledu"),
|
||||
("Solo Supported Properties", "Zobrazit pouze podporované vlastnosti"),
|
||||
("Solo Switches: {}", "Přepínače sólo: {}"),
|
||||
("Sort", "Seřadit"),
|
||||
("Spacing:", "Rozestupy:"),
|
||||
("Spatial Interpolation:", "Prostorová interpolace:"),
|
||||
("Speed:", "Rychlost:"),
|
||||
("Start Timecode:", "Počáteční časový kód:"),
|
||||
("Start: {} Duration: {}", "Začátek: {} Délka trvání: {}"),
|
||||
("Step {} of {}: {}", "Krok {} z {}: {}"),
|
||||
("Stop", "Zastavit"),
|
||||
("Stop {} at {}°", "Bod přechodu {} na {}°"),
|
||||
("Stored in: {}", "Uloženo v: {}"),
|
||||
("Stretch", "Roztažení"),
|
||||
("Stretch Factor:", "Koeficient roztažení:"),
|
||||
("Stylistic Sets", "Stylistické sady"),
|
||||
("Subpixel Positioning", "Subpixelové umístění"),
|
||||
("Swap Paint Colors (X)", "Prohodit barvy malování (X)"),
|
||||
("Sync with System", "Synchronizovat se systémem"),
|
||||
("System Default", "Výchozí systémové"),
|
||||
("Table", "Tabulka"),
|
||||
("Template name", "Název šablony"),
|
||||
("Template: {}\n{}", "Šablona: {}\n{}"),
|
||||
("Temporal Interpolation:", "Časová interpolace:"),
|
||||
("The Media Browser is not available here (use File ▸ Import)", "Prohlížeč médií zde není k dispozici (použijte Soubor ▸ Importovat)"),
|
||||
("The OpenEXR layer shown in red, green, blue and alpha", "Vrstva OpenEXR zobrazená v červeném, zeleném, modrém a alfa kanálu"),
|
||||
("The render queue is empty.", "Fronta vykreslování je prázdná."),
|
||||
("This ScriptUI panel has closed", "Tento panel ScriptUI byl zavřen"),
|
||||
("This change will create a new solid for this layer.", "Tato změna vytvoří pro tuto vrstvu novou plnou vrstvu."),
|
||||
("Time", "Čas"),
|
||||
("Time Stretch…", "Roztažení času…"),
|
||||
("Time:", "Čas:"),
|
||||
("Time: {}", "Čas: {}"),
|
||||
("Title/Action Safe", "Bezpečné oblasti titulků a akce"),
|
||||
("Title/action safe", "Bezpečné oblasti titulků a akce"),
|
||||
("Toggle Switches / Modes", "Přepnout přepínače / režimy"),
|
||||
("Track Name:", "Název stopy:"),
|
||||
(
|
||||
"Trained models are available in the desktop app; the browser uses the classic engine.",
|
||||
"Trénované modely jsou dostupné v desktopové aplikaci; prohlížeč používá klasické zpracování.",
|
||||
),
|
||||
("Transform", "Transformace"),
|
||||
("Transparency grid", "Mřížka průhlednosti"),
|
||||
("Tutorial complete", "Výuková lekce dokončena"),
|
||||
("Two-Node Camera", "Dvouzlová kamera"),
|
||||
("Type", "Typ"),
|
||||
("Type a command or effect…", "Zadejte příkaz nebo efekt…"),
|
||||
("URL:", "URL:"),
|
||||
("Undock Panel", "Odpojit panel"),
|
||||
("Unfreeze", "Zrušit zmrazení"),
|
||||
("Unlink {}", "Odpojit {}"),
|
||||
(
|
||||
"Use this option to place the currently selected layers together into a new intermediate composition.",
|
||||
"Tato volba vloží aktuálně vybrané vrstvy společně do nové mezilehlé kompozice.",
|
||||
),
|
||||
("VR Environments", "Prostředí VR"),
|
||||
("Value:", "Hodnota:"),
|
||||
("Variable Font Axes", "Osy variabilního písma"),
|
||||
("Video Codec: {}", "Video kodek: {}"),
|
||||
("View:", "Zobrazení:"),
|
||||
("Welcome to EffectCraft", "Vítejte v EffectCraft"),
|
||||
("Width:", "Šířka:"),
|
||||
("You can undo this.", "Tuto akci lze vrátit zpět."),
|
||||
("Your changes will be lost if you don't save them.", "Pokud změny neuložíte, budou ztraceny."),
|
||||
("Zoom", "Přiblížení"),
|
||||
("built-in", "vestavěné"),
|
||||
("frames per second", "snímků za sekundu"),
|
||||
("template name", "název šablony"),
|
||||
("{} contributors · {} commits", "{} přispěvatelů · {} commitů"),
|
||||
("{} x {}, {}MB per 8bpc frame", "{} x {}, {}MB na snímek s 8bpc"),
|
||||
("{} — coming soon", "{} — již brzy"),
|
||||
("{} — double-click to open, {}-click to reveal", "{} — dvojklikem otevřete, kliknutím s {} zobrazíte umístění"),
|
||||
("⌘/Ctrl-drag a pin to record its motion", "Tažením čepu s ⌘/Ctrl zaznamenáte jeho pohyb"),
|
||||
("▣ {}", "▣ {}"),
|
||||
("⚠ {} is used by:", "⚠ {} používají:"),
|
||||
("3D Reference Axes", "Referenční osy 3D"),
|
||||
("Affect all layers that use this solid", "Ovlivnit všechny vrstvy používající tuto plnou vrstvu"),
|
||||
("Choose grid and guide options", "Vybrat možnosti mřížky a vodítek"),
|
||||
("Colorize", "Kolorovat"),
|
||||
("Custom", "Vlastní"),
|
||||
("Custom...", "Vlastní…"),
|
||||
("Fit", "Přizpůsobit"),
|
||||
("Fit up to 100%", "Přizpůsobit nejvýše do 100 %"),
|
||||
("Full", "Plné"),
|
||||
("Half", "Poloviční"),
|
||||
("Only this layer uses this solid.", "Tuto plnou vrstvu používá pouze tato vrstva."),
|
||||
("Proportional Grid", "Proporcionální mřížka"),
|
||||
("Quarter", "Čtvrtinové"),
|
||||
("Region of Interest", "Oblast zájmu"),
|
||||
("Reset Exposure", "Obnovit expozici"),
|
||||
("Show Channel and Color Management Settings", "Zobrazit nastavení kanálů a správy barev"),
|
||||
("Show Snapshot (hold)", "Zobrazit snímek náhledu (podržet)"),
|
||||
("Take Snapshot", "Pořídit snímek náhledu"),
|
||||
("Third", "Třetinové"),
|
||||
("Toggle Mask and Shape Path Visibility", "Přepnout viditelnost cest masek a tvarů"),
|
||||
("Toggle Transparency Grid", "Přepnout mřížku průhlednosti"),
|
||||
("16 bits per channel", "16 bitů na kanál"),
|
||||
("32 bits per channel (float)", "32 bitů na kanál (plovoucí čárka)"),
|
||||
("8 bits per channel", "8 bitů na kanál"),
|
||||
("Adaptive Resolution", "Adaptivní rozlišení"),
|
||||
("Adobe-style built-in", "Vestavěné ve stylu Adobe"),
|
||||
("Blue", "Modrý"),
|
||||
("Current Settings", "Aktuální nastavení"),
|
||||
("Disable Per-character 3D", "Zakázat 3D pro jednotlivé znaky"),
|
||||
("Draft", "Pracovní"),
|
||||
("Enable Per-character 3D", "Povolit 3D pro jednotlivé znaky"),
|
||||
("Fast Draft", "Rychlé pracovní"),
|
||||
("Fast Previews (Draft 3D, Faster Effects)", "Rychlé náhledy (pracovní 3D, rychlejší efekty)"),
|
||||
("Green", "Zelený"),
|
||||
("Import Image Sequence", "Importovat sekvenci obrázků"),
|
||||
("Import PDF / Illustrator File", "Importovat soubor PDF / Illustrator"),
|
||||
("Import Photoshop File", "Importovat soubor Photoshop"),
|
||||
("Interpret Unlabeled Alpha As", "Interpretovat neoznačenou alfu jako"),
|
||||
("Join the ArtCraft Discord", "Připojit se na Discord ArtCraft"),
|
||||
("Mercury GPU Acceleration ({})", "GPU akcelerace Mercury ({})"),
|
||||
("Mercury Software Only", "Pouze softwarové zpracování Mercury"),
|
||||
("OCIO (built-in ACES config)", "OCIO (vestavěná konfigurace ACES)"),
|
||||
("Off (Final Quality)", "Vypnuto (finální kvalita)"),
|
||||
("OpenGL (compatibility)", "OpenGL (kompatibilita)"),
|
||||
("Opus Bitrate: {} kbps", "Datový tok Opus: {} kbps"),
|
||||
("RGB Straight", "RGB bez přednásobení"),
|
||||
("Red", "Červený"),
|
||||
("Tone map", "Mapování tónů"),
|
||||
("Use In-Window Menu Bar on macOS", "Použít nabídku v okně na macOS"),
|
||||
("Wireframe", "Drátový model"),
|
||||
("sRGB IEC61966-2.1 (default)", "sRGB IEC61966-2.1 (výchozí)"),
|
||||
("New Project", "Nový projekt"),
|
||||
("Open Project…", "Otevřít projekt…"),
|
||||
("Templates", "Šablony"),
|
||||
("EffectCraft home page", "Domovská stránka EffectCraft"),
|
||||
("EffectCraft on GitHub", "EffectCraft na GitHubu"),
|
||||
("Motion graphics and visual effects · version {}", "Pohyblivá grafika a vizuální efekty · verze {}"),
|
||||
("New Composition", "Nová kompozice"),
|
||||
("Open Demo Project", "Otevřít ukázkový projekt"),
|
||||
("Import Footage…", "Importovat záznam…"),
|
||||
("Filter recent files", "Filtrovat nedávné soubory"),
|
||||
("NAME", "NÁZEV"),
|
||||
("OPENED", "OTEVŘENO"),
|
||||
("SIZE", "VELIKOST"),
|
||||
("KIND", "DRUH"),
|
||||
("Your recent files will show here", "Zde se zobrazí vaše nedávné soubory"),
|
||||
("Create a new project, or open the demo project to look around.", "Vytvořte nový projekt nebo otevřete ukázkový projekt a prozkoumejte aplikaci."),
|
||||
("No recent files match the filter", "Filtru neodpovídají žádné nedávné soubory"),
|
||||
("Try another name or folder.", "Zkuste jiný název nebo složku."),
|
||||
("Just now", "Právě teď"),
|
||||
("Yesterday", "Včera"),
|
||||
("{} minute ago", "Před {} minutou"),
|
||||
("{} minutes ago", "Před {} minutami"),
|
||||
("{} hour ago", "Před {} hodinou"),
|
||||
("{} hours ago", "Před {} hodinami"),
|
||||
("{} day ago", "Před {} dnem"),
|
||||
("{} days ago", "Před {} dny"),
|
||||
("EffectCraft project", "Projekt EffectCraft"),
|
||||
("After Effects project", "Projekt After Effects"),
|
||||
("Lottie animation", "Animace Lottie"),
|
||||
("Project", "Projekt"),
|
||||
];
|
||||
|
||||
#[cfg(test)]
|
||||
mod tests {
|
||||
use super::*;
|
||||
@@ -2082,7 +2611,33 @@ mod tests {
|
||||
const UNITS: &[&str] = &[" px", "%", "·", "s", "ms", "°", "fps", " bpc", " mm", " s", " %", " pixels"];
|
||||
|
||||
fn catalogs() -> Vec<(&'static str, &'static str)> {
|
||||
JAPANESE.iter().copied().chain(SIMPLIFIED_CHINESE.iter().copied()).chain(TRADITIONAL_CHINESE.iter().copied()).chain(UKRAINIAN.iter().copied()).collect()
|
||||
JAPANESE
|
||||
.iter()
|
||||
.copied()
|
||||
.chain(SIMPLIFIED_CHINESE.iter().copied())
|
||||
.chain(TRADITIONAL_CHINESE.iter().copied())
|
||||
.chain(UKRAINIAN.iter().copied())
|
||||
.chain(CZECH.iter().copied())
|
||||
.collect()
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn czech_panels_translate_and_keep_project_content_and_argument_order() {
|
||||
set_current("cs");
|
||||
assert_eq!(tr("Composition Name:"), "Název kompozice:");
|
||||
assert_eq!(tr("Cancel"), "Zrušit");
|
||||
assert_eq!(tr("my layer.mp4"), "my layer.mp4");
|
||||
assert_eq!(tr_args("Proxy Use: {}", &[&"Best"]), "Použití zástupných souborů: Best");
|
||||
assert_eq!(tr_args("Step {} of {}: {}", &[&1, &3, &"Colour"]), "Krok 1 z 3: Colour");
|
||||
assert_eq!(tr_args("Template: {}\n{}", &[&"Title", &"My description"]), "Šablona: Title\nMy description");
|
||||
assert_eq!(tr_args("Leave all attributes in \"{}\"", &[&"File Čeština"]), "Ponechat všechny atributy v „File Čeština“");
|
||||
assert_eq!(
|
||||
tr_args("{} — double-click to open, {}-click to reveal", &[&"File.ecproj", &"Alt"]),
|
||||
"File.ecproj — dvojklikem otevřete, kliknutím s Alt zobrazíte umístění"
|
||||
);
|
||||
assert_eq!(tr_args("Proxy Use: {}", &[]), "Použití zástupných souborů: ");
|
||||
set_current("en");
|
||||
assert_eq!(tr("Composition Name:"), "Composition Name:");
|
||||
}
|
||||
|
||||
/// A row that translates nothing, repeats a source string, or changes the number of values the
|
||||
@@ -2092,8 +2647,8 @@ mod tests {
|
||||
let hans: Vec<&str> = SIMPLIFIED_CHINESE.iter().map(|(en, _)| *en).collect();
|
||||
let hant: Vec<&str> = TRADITIONAL_CHINESE.iter().map(|(en, _)| *en).collect();
|
||||
assert_eq!(hans, hant, "the two Chinese catalogs list different source strings");
|
||||
// Japanese and Ukrainian may lag the Chinese catalogs: a missing row falls back to English.
|
||||
for (name, cat) in [("Japanese", JAPANESE), ("Ukrainian", UKRAINIAN)] {
|
||||
// Japanese, Ukrainian and Czech may lag the Chinese catalogs: a missing row falls back to English.
|
||||
for (name, cat) in [("Japanese", JAPANESE), ("Ukrainian", UKRAINIAN), ("Czech", CZECH)] {
|
||||
let extra: Vec<&str> = cat.iter().map(|(en, _)| *en).filter(|en| !hans.contains(en)).collect();
|
||||
assert!(extra.is_empty(), "the {name} catalog lists source strings the Chinese ones don't: {extra:?}");
|
||||
}
|
||||
|
||||
@@ -196,6 +196,8 @@ pub fn build(app: &EffectcraftApp) -> NativeMenu {
|
||||
"Servicios"
|
||||
} else if crate::i18n::brazilian_portuguese(app) {
|
||||
"Serviços"
|
||||
} else if crate::i18n::czech(app) {
|
||||
"Služby"
|
||||
} else {
|
||||
"Services"
|
||||
}
|
||||
@@ -445,6 +447,27 @@ mod tests {
|
||||
assert_eq!(translated, ["Служби", "Приховати EffectCraft", "Приховати решту", "Показати все"]);
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn czech_translates_macos_predefined_items() {
|
||||
if !cfg!(target_os = "macos") {
|
||||
return;
|
||||
}
|
||||
let mut app = EffectcraftApp::new(effectcraft_engine::Session::default());
|
||||
app.session.execute("prefs.set", json!({"key": "general.language", "value": "cs"})).unwrap();
|
||||
fn labels(nodes: &[NativeNode], out: &mut Vec<String>) {
|
||||
for node in nodes {
|
||||
match node {
|
||||
NativeNode::Predefined { label, .. } => out.push(label.clone()),
|
||||
NativeNode::Submenu { children, .. } => labels(children, out),
|
||||
_ => {}
|
||||
}
|
||||
}
|
||||
}
|
||||
let mut translated = vec![];
|
||||
labels(&build(&app).menus, &mut translated);
|
||||
assert_eq!(translated, ["Služby", "Skrýt EffectCraft", "Skrýt ostatní", "Zobrazit vše"]);
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn hide_items_are_predefined_on_macos() {
|
||||
let spec = build(&app());
|
||||
|
||||
@@ -22,7 +22,7 @@ interface; Arabic and Hebrew text *in layers* is supported through its Middle Ea
|
||||
**618** fixed entries. The generated Effect menu (effect names) is deliberately left in English.
|
||||
- **Panels, dialogs, buttons, tooltips:** `crates/ui-egui/src/i18n/ui.rs`, keyed by the English
|
||||
source string, with English fallback. Catalogs exist for Japanese, Simplified and Traditional
|
||||
Chinese and Ukrainian.
|
||||
Chinese, Ukrainian and Czech.
|
||||
- **Not translated anywhere yet:** effect names and their ≈ 1,650 parameter names
|
||||
(`crates/effects`), engine-generated text (property names, errors, undo labels), the Home
|
||||
screen's unwrapped literals (#574), Learn tutorials and documentation.
|
||||
@@ -60,12 +60,13 @@ the true percentages are slightly lower.
|
||||
| Korean | `ko` | 0 | — | No Hangul fallback probe: boxes on macOS (#599) | no | none | 9–13 h + review |
|
||||
| Vietnamese | `vi` | 0 | — | Latin with stacked diacritics; untested | no | none (After Effects: none) | 8–12 h + review |
|
||||
|
||||
Other languages EffectCraft ships (2):
|
||||
Other languages EffectCraft ships (3):
|
||||
|
||||
| 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 |
|
||||
| Czech | `cs` | 1,114 catalog entries (≈ 29%): menus 618/618, panels 496/496 (current Chinese catalog); added after the measurement above | All existing catalog entries covered; unwrapped UI, effects and engine text still in English; AI-assisted, not yet native-speaker proofread | Remaining strings + independent native review |
|
||||
|
||||
After Effects also ships Italian and Russian, which EffectCraft does not (8–12 h each).
|
||||
|
||||
|
||||
Reference in new issue
Block a user