mirror of
https://github.com/storytold/vectorcraft.git
synced 2026-11-14 05:24:44 +00:00
Data Recovery: a failed copy names the folder in use and how to change it
When a recovery copy could not be written, the status bar said only "Couldn't save recovery data: <error>", and a copy that failed on the background worker showed as "Saving recovery data for <title> failed: <error>". Neither said which folder was in use or how to pick another. The message keeps the error text (and the document's title when one copy fails), then names the folder copies go to, says whether it is the default recovery folder or the folder set in Preferences, and names the setting that picks another folder: Preferences → File Handling → Data Recovery → Folder (recoveryFolder). The recovery code writes the same line to the log. The folder is the one in use when the round started, so a preference changed while a copy runs does not change the folder the message names. A copy that fails now reports its own message, so the job's result is Ok rather than an error, and the job no longer adds "<label> failed: <error>" over it. A store the host installed (browser storage) has no folder to name: its failed copy shows "Saving recovery data for <title> failed: <error>", as a copy on the worker did before, also when the copy was written without the worker. - engine: recovery::folder returns the folder in use and whether the recoveryFolder preference names it; recovery::store uses it. - Four @msg rows in each complete-message catalog, and in the bg, bs, da and id catalogs, which translate the old message. - Control replies to a client confined to read roots show a recovery folder outside them, and the paths under it, by the folder's name, as they already show other paths outside the roots. That covers the folder in use and the last eight folders a failure message named. - docs/target-app-parity.md: a line next to the Data Recovery Folder preference.
This commit is contained in:
@@ -576,13 +576,25 @@ pub fn store(s: &Session) -> Option<Arc<dyn RecoveryStore>> {
|
||||
}
|
||||
#[cfg(not(target_arch = "wasm32"))]
|
||||
{
|
||||
let folder = Some(s.prefs.recovery_folder.trim()).filter(|f| !f.is_empty()).map(str::to_string).or_else(|| s.recovery.default_folder.clone());
|
||||
folder.map(|f| Arc::new(FolderStore::new(f)) as Arc<dyn RecoveryStore>)
|
||||
folder(s).map(|(f, _)| Arc::new(FolderStore::new(f)) as Arc<dyn RecoveryStore>)
|
||||
}
|
||||
#[cfg(target_arch = "wasm32")]
|
||||
None
|
||||
}
|
||||
|
||||
/// The folder copies go to now, and whether the `recoveryFolder` preference names it (else it is
|
||||
/// the folder the app sets). `None` when they go to a store the host installed (browser storage)
|
||||
/// or nowhere.
|
||||
pub fn folder(s: &Session) -> Option<(String, bool)> {
|
||||
if s.recovery.store.is_some() || cfg!(target_arch = "wasm32") {
|
||||
return None;
|
||||
}
|
||||
match s.prefs.recovery_folder.trim() {
|
||||
"" => s.recovery.default_folder.clone().map(|f| (f, false)),
|
||||
set => Some((set.to_string(), true)),
|
||||
}
|
||||
}
|
||||
|
||||
fn has_store(s: &Session) -> std::result::Result<(), String> {
|
||||
match store(s) {
|
||||
Some(_) => Ok(()),
|
||||
|
||||
@@ -396,6 +396,23 @@ fn an_app_that_leaves_has_its_copies_offered_at_once() {
|
||||
}
|
||||
}
|
||||
|
||||
/// The folder copies go to: the `recoveryFolder` preference, trimmed, when it names one, else the
|
||||
/// folder the app sets; none with a store the host installed. The web build has no folders.
|
||||
#[cfg(not(target_arch = "wasm32"))]
|
||||
#[test]
|
||||
fn the_folder_in_use_is_the_preference_or_the_apps() {
|
||||
let mut s = Session::new();
|
||||
assert_eq!(cmd::recovery::folder(&s), None);
|
||||
s.recovery.set_default_folder(Some("/app/recovery".into()));
|
||||
assert_eq!(cmd::recovery::folder(&s), Some(("/app/recovery".into(), false)));
|
||||
s.prefs.recovery_folder = " \t ".into();
|
||||
assert_eq!(cmd::recovery::folder(&s), Some(("/app/recovery".into(), false)));
|
||||
s.prefs.recovery_folder = " /chosen/copies ".into();
|
||||
assert_eq!(cmd::recovery::folder(&s), Some(("/chosen/copies".into(), true)));
|
||||
s.recovery.set_store(Arc::new(MemoryStore::default()));
|
||||
assert_eq!(cmd::recovery::folder(&s), None);
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn folder_areas_are_locked_by_running_apps() {
|
||||
let dir = std::env::temp_dir().join(format!("vc-recovery-locks-{}", std::process::id()));
|
||||
|
||||
@@ -1223,7 +1223,8 @@ pub fn handle(app: &mut VectorcraftApp, ctx: &egui::Context, req: &ControlReques
|
||||
}
|
||||
|
||||
/// Hides in `reply` the libraries hidden now and in `before`, and the paths outside the read root that
|
||||
/// `sent`, the request's params, holds ([`handle`]). The `path` and `files` entries of the reply's
|
||||
/// `sent`, the request's params, holds ([`handle`]), and the recovery folders outside the read root
|
||||
/// that are in use or that a failure message named. The `path` and `files` entries of the reply's
|
||||
/// `result`, at any depth, that name a file the request gave inside the write roots, the file it
|
||||
/// wrote, stay as given ([`written_paths`]).
|
||||
fn hide_in_reply(app: &VectorcraftApp, reply: &mut Value, sent: &Value, before: Hiding) {
|
||||
@@ -1237,6 +1238,11 @@ fn hide_in_reply(app: &VectorcraftApp, reply: &mut Value, sent: &Value, before:
|
||||
hiding.merge(before);
|
||||
let mut paths = Vec::new();
|
||||
sent_paths(sent, &mut paths);
|
||||
// The status text of a recovery copy that failed names the recovery folder it went to.
|
||||
let current = vectorcraft_engine::cmd::recovery::folder(&app.session).map(|(f, _)| f);
|
||||
for folder in app.recovery.named.iter().chain(current.as_ref()) {
|
||||
collect_sent_paths(&json!(folder), true, &mut paths);
|
||||
}
|
||||
hiding.set_hidden(paths, cfg!(windows));
|
||||
hide_library_ids(reply, &hiding);
|
||||
restore_written_paths(reply, kept);
|
||||
|
||||
@@ -415,6 +415,29 @@ fn a_hidden_library_at_the_top_of_the_file_system_keeps_its_shown_id() {
|
||||
assert_eq!(docking["result"]["flyout"], "library:swatches:loaded/b.svg", "{docking}");
|
||||
}
|
||||
|
||||
/// `ui.inspect` shows a recovery folder outside the read root that the status text names (a failed
|
||||
/// recovery copy) by its folder name, also in the paths under it: the folder in use, and one a
|
||||
/// failure named before the preference moved on. A readable one stays.
|
||||
#[test]
|
||||
fn a_recovery_folder_outside_the_read_root_is_hidden_in_the_status() {
|
||||
let mut app = VectorcraftApp::new(Session::new(), Services::default());
|
||||
app.session.recovery.set_default_folder(Some("/outside/recovery".into()));
|
||||
let root = crate::tests_folder::Folder::new("recovery-status");
|
||||
let roots = vectorcraft_engine::file_access::AutomationRoots::new(&[root.as_path()], &[]).unwrap();
|
||||
let inspect = |app: &mut VectorcraftApp, status: String| {
|
||||
app.ui.status = status;
|
||||
let reply = vectorcraft_engine::file_access::confine(roots.as_ref(), || input_request(app, "ui.inspect", json!({})));
|
||||
reply["result"]["ui"]["status"].clone()
|
||||
};
|
||||
let status = "Couldn't save recovery data: /outside/recovery/a-1 is not a folder. Copies go to /outside/recovery".to_string();
|
||||
assert_eq!(inspect(&mut app, status), "Couldn't save recovery data: recovery/a-1 is not a folder. Copies go to recovery");
|
||||
let inside = root.as_path().join("copies").to_string_lossy().into_owned();
|
||||
app.session.prefs.recovery_folder = inside.clone();
|
||||
app.recovery.named = vec!["/outside/earlier".into()];
|
||||
assert_eq!(inspect(&mut app, "Copies go to /outside/earlier".into()), "Copies go to earlier");
|
||||
assert_eq!(inspect(&mut app, format!("Copies go to {inside}")), json!(format!("Copies go to {inside}")));
|
||||
}
|
||||
|
||||
/// A path outside the read root that a request sent is shown by its file name in a reply that succeeded
|
||||
/// as in one that failed.
|
||||
#[test]
|
||||
|
||||
@@ -4130,6 +4130,10 @@ axis Both И двете
|
||||
@msg Couldn't place {name}: the document it was placed in was closed Неуспешно поставяне на {name}: документът, в който се поставяше, е затворен
|
||||
@msg Couldn't read {name}: {e} Неуспешно четене на {name}: {e}
|
||||
@msg Couldn't save recovery data: {e} Неуспешно запазване на данните за възстановяване: {e}
|
||||
@msg Couldn't save recovery data for {title}: {e}. Copies go to {folder}, the default recovery folder; to use another folder, set Preferences → File Handling → Data Recovery → Folder (recoveryFolder) Неуспешно запазване на данните за възстановяване на {title}: {e}. Копията се записват в {folder}, папката за възстановяване по подразбиране; за да използвате друга папка, задайте Предпочитания → Работа с файлове → Възстановяване на данни → Папка (recoveryFolder)
|
||||
@msg Couldn't save recovery data for {title}: {e}. Copies go to {folder}, the folder set in Preferences; to use another folder, set Preferences → File Handling → Data Recovery → Folder (recoveryFolder) Неуспешно запазване на данните за възстановяване на {title}: {e}. Копията се записват в {folder}, папката, зададена в Предпочитания; за да използвате друга папка, задайте Предпочитания → Работа с файлове → Възстановяване на данни → Папка (recoveryFolder)
|
||||
@msg Couldn't save recovery data: {e}. Copies go to {folder}, the default recovery folder; to use another folder, set Preferences → File Handling → Data Recovery → Folder (recoveryFolder) Неуспешно запазване на данните за възстановяване: {e}. Копията се записват в {folder}, папката за възстановяване по подразбиране; за да използвате друга папка, задайте Предпочитания → Работа с файлове → Възстановяване на данни → Папка (recoveryFolder)
|
||||
@msg Couldn't save recovery data: {e}. Copies go to {folder}, the folder set in Preferences; to use another folder, set Preferences → File Handling → Data Recovery → Folder (recoveryFolder) Неуспешно запазване на данните за възстановяване: {e}. Копията се записват в {folder}, папката, зададена в Предпочитания; за да използвате друга папка, задайте Предпочитания → Работа с файлове → Възстановяване на данни → Папка (recoveryFolder)
|
||||
@msg Create Outlines: select text objects Създаване на контури: изберете текстови обекти
|
||||
@msg Create from Guides: the document has no artboard Създаване от водачи: документът няма работна област
|
||||
@msg Create from Guides: the guides make more than {MAX_PIECES} slices Създаване от водачи: водачите правят повече от {MAX_PIECES} парчета
|
||||
|
||||
|
Can't render this file because it contains an unexpected character in line 2 and column 73.
|
@@ -4494,6 +4494,10 @@ imageTrace Outline Obris
|
||||
@msg Couldn't place {name}: the document it was placed in was closed Nije moguće postaviti {name}: dokument u koji je postavljen je zatvoren
|
||||
@msg Couldn't read {name}: {e} Nije moguće pročitati {name}: {e}
|
||||
@msg Couldn't save recovery data: {e} Nije moguće sačuvati podatke za oporavak: {e}
|
||||
@msg Couldn't save recovery data for {title}: {e}. Copies go to {folder}, the default recovery folder; to use another folder, set Preferences → File Handling → Data Recovery → Folder (recoveryFolder) Nije moguće sačuvati podatke za oporavak za {title}: {e}. Kopije se čuvaju u {folder}, zadanom folderu za oporavak; da biste koristili drugi folder, postavite Postavke → Rukovanje datotekama → Oporavak podataka → Folder (recoveryFolder)
|
||||
@msg Couldn't save recovery data for {title}: {e}. Copies go to {folder}, the folder set in Preferences; to use another folder, set Preferences → File Handling → Data Recovery → Folder (recoveryFolder) Nije moguće sačuvati podatke za oporavak za {title}: {e}. Kopije se čuvaju u {folder}, folderu postavljenom u Postavkama; da biste koristili drugi folder, postavite Postavke → Rukovanje datotekama → Oporavak podataka → Folder (recoveryFolder)
|
||||
@msg Couldn't save recovery data: {e}. Copies go to {folder}, the default recovery folder; to use another folder, set Preferences → File Handling → Data Recovery → Folder (recoveryFolder) Nije moguće sačuvati podatke za oporavak: {e}. Kopije se čuvaju u {folder}, zadanom folderu za oporavak; da biste koristili drugi folder, postavite Postavke → Rukovanje datotekama → Oporavak podataka → Folder (recoveryFolder)
|
||||
@msg Couldn't save recovery data: {e}. Copies go to {folder}, the folder set in Preferences; to use another folder, set Preferences → File Handling → Data Recovery → Folder (recoveryFolder) Nije moguće sačuvati podatke za oporavak: {e}. Kopije se čuvaju u {folder}, folderu postavljenom u Postavkama; da biste koristili drugi folder, postavite Postavke → Rukovanje datotekama → Oporavak podataka → Folder (recoveryFolder)
|
||||
@msg Create Outlines: select text objects Kreiraj obrise: odaberite tekstualne objekte
|
||||
@msg Create from Guides: the document has no artboard Kreiraj iz vodilica: dokument nema radnu ploču
|
||||
@msg Create from Guides: the guides make more than {MAX_PIECES} slices Kreiraj iz vodilica: vodilice prave više od {MAX_PIECES} isječaka
|
||||
|
||||
|
Can't render this file because it contains an unexpected character in line 2 and column 73.
|
@@ -5524,6 +5524,10 @@ digits Malayalam Malaiàlam
|
||||
@msg Couldn't place {name}: {e} No s’ha pogut col·locar {name}: {e}
|
||||
@msg Couldn't read {name}: {e} No s’ha pogut llegir {name}: {e}
|
||||
@msg Couldn't save recovery data: {e} No s’han pogut desar les dades de recuperació: {e}
|
||||
@msg Couldn't save recovery data for {title}: {e}. Copies go to {folder}, the default recovery folder; to use another folder, set Preferences → File Handling → Data Recovery → Folder (recoveryFolder) No s’han pogut desar les dades de recuperació de {title}: {e}. Les còpies es desen a {folder}, la carpeta de recuperació per defecte; per fer servir una altra carpeta, configureu Preferències → Gestió de fitxers → Recuperació de dades → Carpeta (recoveryFolder)
|
||||
@msg Couldn't save recovery data for {title}: {e}. Copies go to {folder}, the folder set in Preferences; to use another folder, set Preferences → File Handling → Data Recovery → Folder (recoveryFolder) No s’han pogut desar les dades de recuperació de {title}: {e}. Les còpies es desen a {folder}, la carpeta definida a Preferències; per fer servir una altra carpeta, configureu Preferències → Gestió de fitxers → Recuperació de dades → Carpeta (recoveryFolder)
|
||||
@msg Couldn't save recovery data: {e}. Copies go to {folder}, the default recovery folder; to use another folder, set Preferences → File Handling → Data Recovery → Folder (recoveryFolder) No s’han pogut desar les dades de recuperació: {e}. Les còpies es desen a {folder}, la carpeta de recuperació per defecte; per fer servir una altra carpeta, configureu Preferències → Gestió de fitxers → Recuperació de dades → Carpeta (recoveryFolder)
|
||||
@msg Couldn't save recovery data: {e}. Copies go to {folder}, the folder set in Preferences; to use another folder, set Preferences → File Handling → Data Recovery → Folder (recoveryFolder) No s’han pogut desar les dades de recuperació: {e}. Les còpies es desen a {folder}, la carpeta definida a Preferències; per fer servir una altra carpeta, configureu Preferències → Gestió de fitxers → Recuperació de dades → Carpeta (recoveryFolder)
|
||||
@msg Create from Guides: the document has no artboard Crea a partir de guies: el document no té cap tauler
|
||||
@msg Create from Guides: the guides make more than {MAX_PIECES} slices Crea a partir de guies: les guies fan més de {MAX_PIECES} talls
|
||||
@msg Create from Selection: the selection has no area Crea a partir de la selecció: la selecció no té àrea
|
||||
|
||||
|
Can't render this file because it contains an unexpected character in line 2 and column 73.
|
@@ -4651,6 +4651,10 @@ imageTrace Outline Obrys
|
||||
@msg Couldn't place {name}: the document it was placed in was closed {name} nelze umístit: dokument, do kterého se umísťoval, byl zavřen
|
||||
@msg Couldn't read {name}: {e} {name} nelze přečíst: {e}
|
||||
@msg Couldn't save recovery data: {e} Data pro obnovení nelze uložit: {e}
|
||||
@msg Couldn't save recovery data for {title}: {e}. Copies go to {folder}, the default recovery folder; to use another folder, set Preferences → File Handling → Data Recovery → Folder (recoveryFolder) Data pro obnovení dokumentu {title} nelze uložit: {e}. Kopie se ukládají do {folder}, výchozí složky pro obnovení; chcete-li použít jinou složku, nastavte Předvolby → Práce se soubory → Obnovení dat → Složka (recoveryFolder)
|
||||
@msg Couldn't save recovery data for {title}: {e}. Copies go to {folder}, the folder set in Preferences; to use another folder, set Preferences → File Handling → Data Recovery → Folder (recoveryFolder) Data pro obnovení dokumentu {title} nelze uložit: {e}. Kopie se ukládají do {folder}, složky nastavené v Předvolbách; chcete-li použít jinou složku, nastavte Předvolby → Práce se soubory → Obnovení dat → Složka (recoveryFolder)
|
||||
@msg Couldn't save recovery data: {e}. Copies go to {folder}, the default recovery folder; to use another folder, set Preferences → File Handling → Data Recovery → Folder (recoveryFolder) Data pro obnovení nelze uložit: {e}. Kopie se ukládají do {folder}, výchozí složky pro obnovení; chcete-li použít jinou složku, nastavte Předvolby → Práce se soubory → Obnovení dat → Složka (recoveryFolder)
|
||||
@msg Couldn't save recovery data: {e}. Copies go to {folder}, the folder set in Preferences; to use another folder, set Preferences → File Handling → Data Recovery → Folder (recoveryFolder) Data pro obnovení nelze uložit: {e}. Kopie se ukládají do {folder}, složky nastavené v Předvolbách; chcete-li použít jinou složku, nastavte Předvolby → Práce se soubory → Obnovení dat → Složka (recoveryFolder)
|
||||
@msg Create Outlines: select text objects Převést na křivky: vyberte textové objekty
|
||||
@msg Create from Guides: the document has no artboard Vytvořit z vodítek: dokument nemá žádnou pracovní plochu
|
||||
@msg Create from Guides: the guides make more than {MAX_PIECES} slices Vytvořit z vodítek: vodítka vytvářejí více než {MAX_PIECES} řezů
|
||||
|
||||
|
Can't render this file because it contains an unexpected character in line 2 and column 73.
|
@@ -4248,6 +4248,10 @@ imageTrace Outline Kontur
|
||||
@msg Couldn't place {name}: the document it was placed in was closed Kunne ikke placere {name}: dokumentet, den blev placeret i, var lukket
|
||||
@msg Couldn't read {name}: {e} Kunne ikke læse {name}: {e}
|
||||
@msg Couldn't save recovery data: {e} Kunne ikke gemme gendannelsesdata: {e}
|
||||
@msg Couldn't save recovery data for {title}: {e}. Copies go to {folder}, the default recovery folder; to use another folder, set Preferences → File Handling → Data Recovery → Folder (recoveryFolder) Kunne ikke gemme gendannelsesdata for {title}: {e}. Kopierne gemmes i {folder}, standardmappen til gendannelse; angiv Præferencer → Filhåndtering → Datagendannelse → Mappe (recoveryFolder) for at bruge en anden mappe
|
||||
@msg Couldn't save recovery data for {title}: {e}. Copies go to {folder}, the folder set in Preferences; to use another folder, set Preferences → File Handling → Data Recovery → Folder (recoveryFolder) Kunne ikke gemme gendannelsesdata for {title}: {e}. Kopierne gemmes i {folder}, mappen angivet i Præferencer; angiv Præferencer → Filhåndtering → Datagendannelse → Mappe (recoveryFolder) for at bruge en anden mappe
|
||||
@msg Couldn't save recovery data: {e}. Copies go to {folder}, the default recovery folder; to use another folder, set Preferences → File Handling → Data Recovery → Folder (recoveryFolder) Kunne ikke gemme gendannelsesdata: {e}. Kopierne gemmes i {folder}, standardmappen til gendannelse; angiv Præferencer → Filhåndtering → Datagendannelse → Mappe (recoveryFolder) for at bruge en anden mappe
|
||||
@msg Couldn't save recovery data: {e}. Copies go to {folder}, the folder set in Preferences; to use another folder, set Preferences → File Handling → Data Recovery → Folder (recoveryFolder) Kunne ikke gemme gendannelsesdata: {e}. Kopierne gemmes i {folder}, mappen angivet i Præferencer; angiv Præferencer → Filhåndtering → Datagendannelse → Mappe (recoveryFolder) for at bruge en anden mappe
|
||||
@msg Create Outlines: select text objects Opret konturer: markér tekstobjekter
|
||||
@msg Create from Guides: the document has no artboard Opret ud fra hjælpelinjer: dokumentet har ingen tegneflade
|
||||
@msg Create from Guides: the guides make more than {MAX_PIECES} slices Opret ud fra hjælpelinjer: hjælpelinjerne danner mere end {MAX_PIECES} udsnit
|
||||
|
||||
|
Can't render this file because it contains an unexpected character in line 2 and column 73.
|
@@ -4264,6 +4264,10 @@ theme Appearance Erscheinungsbild
|
||||
@msg Couldn't place {name}: the document it was placed in was closed {name} konnte nicht platziert werden: Das Dokument, in dem die Datei platziert wurde, wurde geschlossen
|
||||
@msg Couldn't read {name}: {e} {name} konnte nicht gelesen werden: {e}
|
||||
@msg Couldn't save recovery data: {e} Wiederherstellungsdaten konnten nicht gespeichert werden: {e}
|
||||
@msg Couldn't save recovery data for {title}: {e}. Copies go to {folder}, the default recovery folder; to use another folder, set Preferences → File Handling → Data Recovery → Folder (recoveryFolder) Wiederherstellungsdaten für {title} konnten nicht gespeichert werden: {e}. Kopien werden in {folder} gespeichert, dem Standardordner für die Wiederherstellung; um einen anderen Ordner zu verwenden, legen Sie Voreinstellungen → Dateihandhabung → Datenwiederherstellung → Ordner (recoveryFolder) fest
|
||||
@msg Couldn't save recovery data for {title}: {e}. Copies go to {folder}, the folder set in Preferences; to use another folder, set Preferences → File Handling → Data Recovery → Folder (recoveryFolder) Wiederherstellungsdaten für {title} konnten nicht gespeichert werden: {e}. Kopien werden in {folder} gespeichert, dem in den Voreinstellungen festgelegten Ordner; um einen anderen Ordner zu verwenden, legen Sie Voreinstellungen → Dateihandhabung → Datenwiederherstellung → Ordner (recoveryFolder) fest
|
||||
@msg Couldn't save recovery data: {e}. Copies go to {folder}, the default recovery folder; to use another folder, set Preferences → File Handling → Data Recovery → Folder (recoveryFolder) Wiederherstellungsdaten konnten nicht gespeichert werden: {e}. Kopien werden in {folder} gespeichert, dem Standardordner für die Wiederherstellung; um einen anderen Ordner zu verwenden, legen Sie Voreinstellungen → Dateihandhabung → Datenwiederherstellung → Ordner (recoveryFolder) fest
|
||||
@msg Couldn't save recovery data: {e}. Copies go to {folder}, the folder set in Preferences; to use another folder, set Preferences → File Handling → Data Recovery → Folder (recoveryFolder) Wiederherstellungsdaten konnten nicht gespeichert werden: {e}. Kopien werden in {folder} gespeichert, dem in den Voreinstellungen festgelegten Ordner; um einen anderen Ordner zu verwenden, legen Sie Voreinstellungen → Dateihandhabung → Datenwiederherstellung → Ordner (recoveryFolder) fest
|
||||
@msg Create Outlines: select text objects In Pfade umwandeln: Wählen Sie Textobjekte aus
|
||||
@msg Create from Guides: the document has no artboard Aus Hilfslinien erstellen: Das Dokument hat keine Zeichenfläche
|
||||
@msg Create from Guides: the guides make more than {MAX_PIECES} slices Aus Hilfslinien erstellen: Die Hilfslinien ergeben mehr als {MAX_PIECES} Slices
|
||||
|
||||
|
Can't render this file because it contains an unexpected character in line 2 and column 73.
|
@@ -2421,6 +2421,10 @@ axis Both Και τα δύο
|
||||
@msg Couldn't place {name}: the document it was placed in was closed Δεν ήταν δυνατή η τοποθέτηση του {name}: το έγγραφο στο οποίο τοποθετούνταν το αρχείο έκλεισε
|
||||
@msg Couldn't read {name}: {e} Δεν ήταν δυνατή η ανάγνωση του {name}: {e}
|
||||
@msg Couldn't save recovery data: {e} Δεν ήταν δυνατή η αποθήκευση δεδομένων ανάκτησης: {e}
|
||||
@msg Couldn't save recovery data for {title}: {e}. Copies go to {folder}, the default recovery folder; to use another folder, set Preferences → File Handling → Data Recovery → Folder (recoveryFolder) Δεν ήταν δυνατή η αποθήκευση δεδομένων ανάκτησης για το {title}: {e}. Τα αντίγραφα αποθηκεύονται στο {folder}, τον προεπιλεγμένο φάκελο ανάκτησης. Για να χρησιμοποιήσετε άλλο φάκελο, ορίστε Προτιμήσεις → Χειρισμός αρχείων → Ανάκτηση δεδομένων → Φάκελος (recoveryFolder)
|
||||
@msg Couldn't save recovery data for {title}: {e}. Copies go to {folder}, the folder set in Preferences; to use another folder, set Preferences → File Handling → Data Recovery → Folder (recoveryFolder) Δεν ήταν δυνατή η αποθήκευση δεδομένων ανάκτησης για το {title}: {e}. Τα αντίγραφα αποθηκεύονται στο {folder}, τον φάκελο που ορίστηκε στις Προτιμήσεις. Για να χρησιμοποιήσετε άλλο φάκελο, ορίστε Προτιμήσεις → Χειρισμός αρχείων → Ανάκτηση δεδομένων → Φάκελος (recoveryFolder)
|
||||
@msg Couldn't save recovery data: {e}. Copies go to {folder}, the default recovery folder; to use another folder, set Preferences → File Handling → Data Recovery → Folder (recoveryFolder) Δεν ήταν δυνατή η αποθήκευση δεδομένων ανάκτησης: {e}. Τα αντίγραφα αποθηκεύονται στο {folder}, τον προεπιλεγμένο φάκελο ανάκτησης. Για να χρησιμοποιήσετε άλλο φάκελο, ορίστε Προτιμήσεις → Χειρισμός αρχείων → Ανάκτηση δεδομένων → Φάκελος (recoveryFolder)
|
||||
@msg Couldn't save recovery data: {e}. Copies go to {folder}, the folder set in Preferences; to use another folder, set Preferences → File Handling → Data Recovery → Folder (recoveryFolder) Δεν ήταν δυνατή η αποθήκευση δεδομένων ανάκτησης: {e}. Τα αντίγραφα αποθηκεύονται στο {folder}, τον φάκελο που ορίστηκε στις Προτιμήσεις. Για να χρησιμοποιήσετε άλλο φάκελο, ορίστε Προτιμήσεις → Χειρισμός αρχείων → Ανάκτηση δεδομένων → Φάκελος (recoveryFolder)
|
||||
@msg Create Outlines: select text objects Δημιουργία περιγραμμάτων: επιλέξτε αντικείμενα κειμένου
|
||||
@msg Create from Guides: the document has no artboard Δημιουργία από οδηγούς: το έγγραφο δεν έχει πίνακα σχεδίασης
|
||||
@msg Create from Guides: the guides make more than {MAX_PIECES} slices Δημιουργία από οδηγούς: οι οδηγοί σχηματίζουν περισσότερες από {MAX_PIECES} τομές
|
||||
|
||||
|
Can't render this file because it is too large.
|
@@ -4341,6 +4341,10 @@ axis Both Ambos
|
||||
@msg Couldn't place {name}: the document it was placed in was closed No se pudo colocar {name}: se cerró el documento en el que se estaba colocando
|
||||
@msg Couldn't read {name}: {e} No se pudo leer {name}: {e}
|
||||
@msg Couldn't save recovery data: {e} No se pudieron guardar los datos de recuperación: {e}
|
||||
@msg Couldn't save recovery data for {title}: {e}. Copies go to {folder}, the default recovery folder; to use another folder, set Preferences → File Handling → Data Recovery → Folder (recoveryFolder) No se pudieron guardar los datos de recuperación de {title}: {e}. Las copias se guardan en {folder}, la carpeta de recuperación predeterminada; para usar otra carpeta, configura Preferencias → Manejo de archivos → Recuperación de datos → Carpeta (recoveryFolder)
|
||||
@msg Couldn't save recovery data for {title}: {e}. Copies go to {folder}, the folder set in Preferences; to use another folder, set Preferences → File Handling → Data Recovery → Folder (recoveryFolder) No se pudieron guardar los datos de recuperación de {title}: {e}. Las copias se guardan en {folder}, la carpeta definida en Preferencias; para usar otra carpeta, configura Preferencias → Manejo de archivos → Recuperación de datos → Carpeta (recoveryFolder)
|
||||
@msg Couldn't save recovery data: {e}. Copies go to {folder}, the default recovery folder; to use another folder, set Preferences → File Handling → Data Recovery → Folder (recoveryFolder) No se pudieron guardar los datos de recuperación: {e}. Las copias se guardan en {folder}, la carpeta de recuperación predeterminada; para usar otra carpeta, configura Preferencias → Manejo de archivos → Recuperación de datos → Carpeta (recoveryFolder)
|
||||
@msg Couldn't save recovery data: {e}. Copies go to {folder}, the folder set in Preferences; to use another folder, set Preferences → File Handling → Data Recovery → Folder (recoveryFolder) No se pudieron guardar los datos de recuperación: {e}. Las copias se guardan en {folder}, la carpeta definida en Preferencias; para usar otra carpeta, configura Preferencias → Manejo de archivos → Recuperación de datos → Carpeta (recoveryFolder)
|
||||
@msg Create Outlines: select text objects Crear contornos: selecciona objetos de texto
|
||||
@msg Create from Guides: the document has no artboard Crear a partir de guías: el documento no tiene mesa de trabajo
|
||||
@msg Create from Guides: the guides make more than {MAX_PIECES} slices Crear a partir de guías: las guías forman más de {MAX_PIECES} sectores
|
||||
|
||||
|
Can't render this file because it contains an unexpected character in line 2 and column 73.
|
@@ -4565,6 +4565,10 @@ imageTrace Outline Ääriviiva
|
||||
@msg Couldn't place {name}: the document it was placed in was closed Kohdetta {name} ei voitu sijoittaa: asiakirja, johon sitä sijoitettiin, on suljettu
|
||||
@msg Couldn't read {name}: {e} Tiedostoa {name} ei voitu lukea: {e}
|
||||
@msg Couldn't save recovery data: {e} Palautustietoja ei voitu tallentaa: {e}
|
||||
@msg Couldn't save recovery data for {title}: {e}. Copies go to {folder}, the default recovery folder; to use another folder, set Preferences → File Handling → Data Recovery → Folder (recoveryFolder) Kohteen {title} palautustietoja ei voitu tallentaa: {e}. Kopiot tallennetaan kansioon {folder}, joka on oletusarvoinen palautuskansio; jos haluat käyttää toista kansiota, määritä Asetukset → Tiedostojen käsittely → Tietojen palautus → Kansio (recoveryFolder)
|
||||
@msg Couldn't save recovery data for {title}: {e}. Copies go to {folder}, the folder set in Preferences; to use another folder, set Preferences → File Handling → Data Recovery → Folder (recoveryFolder) Kohteen {title} palautustietoja ei voitu tallentaa: {e}. Kopiot tallennetaan kansioon {folder}, joka on määritetty Asetuksissa; jos haluat käyttää toista kansiota, määritä Asetukset → Tiedostojen käsittely → Tietojen palautus → Kansio (recoveryFolder)
|
||||
@msg Couldn't save recovery data: {e}. Copies go to {folder}, the default recovery folder; to use another folder, set Preferences → File Handling → Data Recovery → Folder (recoveryFolder) Palautustietoja ei voitu tallentaa: {e}. Kopiot tallennetaan kansioon {folder}, joka on oletusarvoinen palautuskansio; jos haluat käyttää toista kansiota, määritä Asetukset → Tiedostojen käsittely → Tietojen palautus → Kansio (recoveryFolder)
|
||||
@msg Couldn't save recovery data: {e}. Copies go to {folder}, the folder set in Preferences; to use another folder, set Preferences → File Handling → Data Recovery → Folder (recoveryFolder) Palautustietoja ei voitu tallentaa: {e}. Kopiot tallennetaan kansioon {folder}, joka on määritetty Asetuksissa; jos haluat käyttää toista kansiota, määritä Asetukset → Tiedostojen käsittely → Tietojen palautus → Kansio (recoveryFolder)
|
||||
@msg Create Outlines: select text objects Muunna ääriviivoiksi: valitse tekstiobjekteja
|
||||
@msg Create from Guides: the document has no artboard Luo apuviivoista: asiakirjassa ei ole piirtoalustaa
|
||||
@msg Create from Guides: the guides make more than {MAX_PIECES} slices Luo apuviivoista: apuviivat muodostavat yli {MAX_PIECES} viipaletta
|
||||
|
||||
|
Can't render this file because it contains an unexpected character in line 2 and column 73.
|
@@ -4330,6 +4330,10 @@ axis Both Les deux
|
||||
@msg Couldn't place {name}: the document it was placed in was closed Impossible d’importer {name} : le document dans lequel il était importé a été fermé
|
||||
@msg Couldn't read {name}: {e} Impossible de lire {name} : {e}
|
||||
@msg Couldn't save recovery data: {e} Impossible d’enregistrer les données de récupération : {e}
|
||||
@msg Couldn't save recovery data for {title}: {e}. Copies go to {folder}, the default recovery folder; to use another folder, set Preferences → File Handling → Data Recovery → Folder (recoveryFolder) Impossible d’enregistrer les données de récupération de {title} : {e}. Les copies sont enregistrées dans {folder}, le dossier de récupération par défaut ; pour utiliser un autre dossier, définissez Préférences → Gestion des fichiers → Récupération des données → Dossier (recoveryFolder)
|
||||
@msg Couldn't save recovery data for {title}: {e}. Copies go to {folder}, the folder set in Preferences; to use another folder, set Preferences → File Handling → Data Recovery → Folder (recoveryFolder) Impossible d’enregistrer les données de récupération de {title} : {e}. Les copies sont enregistrées dans {folder}, le dossier défini dans les Préférences ; pour utiliser un autre dossier, définissez Préférences → Gestion des fichiers → Récupération des données → Dossier (recoveryFolder)
|
||||
@msg Couldn't save recovery data: {e}. Copies go to {folder}, the default recovery folder; to use another folder, set Preferences → File Handling → Data Recovery → Folder (recoveryFolder) Impossible d’enregistrer les données de récupération : {e}. Les copies sont enregistrées dans {folder}, le dossier de récupération par défaut ; pour utiliser un autre dossier, définissez Préférences → Gestion des fichiers → Récupération des données → Dossier (recoveryFolder)
|
||||
@msg Couldn't save recovery data: {e}. Copies go to {folder}, the folder set in Preferences; to use another folder, set Preferences → File Handling → Data Recovery → Folder (recoveryFolder) Impossible d’enregistrer les données de récupération : {e}. Les copies sont enregistrées dans {folder}, le dossier défini dans les Préférences ; pour utiliser un autre dossier, définissez Préférences → Gestion des fichiers → Récupération des données → Dossier (recoveryFolder)
|
||||
@msg Create Outlines: select text objects Vectoriser : sélectionnez des objets texte
|
||||
@msg Create from Guides: the document has no artboard Créer d’après les repères : le document n’a pas de plan de travail
|
||||
@msg Create from Guides: the guides make more than {MAX_PIECES} slices Créer d’après les repères : les repères forment plus de {MAX_PIECES} tranches
|
||||
|
||||
|
Can't render this file because it contains an unexpected character in line 2 and column 73.
|
@@ -6640,6 +6640,10 @@ antiAlias Sharp शार्प
|
||||
@msg Couldn't place {name}: the document it was placed in was closed नहीं था {name}: यह डॉक्यूमेंट बंद किया गया था
|
||||
@msg Couldn't read {name}: {e} नहीं पढ़ सकता {name}: {e}
|
||||
@msg Couldn't save recovery data: {e} रिकवरी डेटा सेव नहीं किया जा सका: {e}
|
||||
@msg Couldn't save recovery data for {title}: {e}. Copies go to {folder}, the default recovery folder; to use another folder, set Preferences → File Handling → Data Recovery → Folder (recoveryFolder) {title} का रिकवरी डेटा सेव नहीं किया जा सका: {e}। प्रतिलिपियाँ {folder} में जाती हैं, जो डिफ़ॉल्ट रिकवरी फ़ोल्डर है; कोई दूसरा फ़ोल्डर इस्तेमाल करने के लिए प्रेफ़रेंसेज़ → फ़ाइल हैंडलिंग → डेटा रिकवरी → फ़ोल्डर (recoveryFolder) सेट करें
|
||||
@msg Couldn't save recovery data for {title}: {e}. Copies go to {folder}, the folder set in Preferences; to use another folder, set Preferences → File Handling → Data Recovery → Folder (recoveryFolder) {title} का रिकवरी डेटा सेव नहीं किया जा सका: {e}। प्रतिलिपियाँ {folder} में जाती हैं, जो प्रेफ़रेंसेज़ में सेट किया गया फ़ोल्डर है; कोई दूसरा फ़ोल्डर इस्तेमाल करने के लिए प्रेफ़रेंसेज़ → फ़ाइल हैंडलिंग → डेटा रिकवरी → फ़ोल्डर (recoveryFolder) सेट करें
|
||||
@msg Couldn't save recovery data: {e}. Copies go to {folder}, the default recovery folder; to use another folder, set Preferences → File Handling → Data Recovery → Folder (recoveryFolder) रिकवरी डेटा सेव नहीं किया जा सका: {e}। प्रतिलिपियाँ {folder} में जाती हैं, जो डिफ़ॉल्ट रिकवरी फ़ोल्डर है; कोई दूसरा फ़ोल्डर इस्तेमाल करने के लिए प्रेफ़रेंसेज़ → फ़ाइल हैंडलिंग → डेटा रिकवरी → फ़ोल्डर (recoveryFolder) सेट करें
|
||||
@msg Couldn't save recovery data: {e}. Copies go to {folder}, the folder set in Preferences; to use another folder, set Preferences → File Handling → Data Recovery → Folder (recoveryFolder) रिकवरी डेटा सेव नहीं किया जा सका: {e}। प्रतिलिपियाँ {folder} में जाती हैं, जो प्रेफ़रेंसेज़ में सेट किया गया फ़ोल्डर है; कोई दूसरा फ़ोल्डर इस्तेमाल करने के लिए प्रेफ़रेंसेज़ → फ़ाइल हैंडलिंग → डेटा रिकवरी → फ़ोल्डर (recoveryFolder) सेट करें
|
||||
@msg counterPer `{c}`: item or file counterPer `{c}`: item या file
|
||||
@msg Create from Guides: the document has no artboard गाइड से बनाएँ: डॉक्यूमेंट में कोई आर्टबोर्ड नहीं है
|
||||
@msg Create from Guides: the guides make more than {MAX_PIECES} slices गाइड से बनाएँ: गाइड {MAX_PIECES} स्लाइस से अधिक बनाते हैं
|
||||
|
||||
|
Can't render this file because it is too large.
|
@@ -5148,6 +5148,10 @@ imageTrace Outline Körvonal
|
||||
@msg Couldn't place {name}: {e} Nem sikerült elhelyezni: {name}: {e}
|
||||
@msg Couldn't read {name}: {e} Nem sikerült beolvasni: {name}: {e}
|
||||
@msg Couldn't save recovery data: {e} Nem sikerült menteni a helyreállítási adatokat: {e}
|
||||
@msg Couldn't save recovery data for {title}: {e}. Copies go to {folder}, the default recovery folder; to use another folder, set Preferences → File Handling → Data Recovery → Folder (recoveryFolder) Nem sikerült menteni a(z) {title} helyreállítási adatait: {e}. A másolatok helye: {folder}, az alapértelmezett helyreállítási mappa; másik mappa használatához állítsd be a Beállítások → Fájlkezelés → Adat-helyreállítás → Mappa értéket (recoveryFolder)
|
||||
@msg Couldn't save recovery data for {title}: {e}. Copies go to {folder}, the folder set in Preferences; to use another folder, set Preferences → File Handling → Data Recovery → Folder (recoveryFolder) Nem sikerült menteni a(z) {title} helyreállítási adatait: {e}. A másolatok helye: {folder}, a Beállításokban megadott mappa; másik mappa használatához állítsd be a Beállítások → Fájlkezelés → Adat-helyreállítás → Mappa értéket (recoveryFolder)
|
||||
@msg Couldn't save recovery data: {e}. Copies go to {folder}, the default recovery folder; to use another folder, set Preferences → File Handling → Data Recovery → Folder (recoveryFolder) Nem sikerült menteni a helyreállítási adatokat: {e}. A másolatok helye: {folder}, az alapértelmezett helyreállítási mappa; másik mappa használatához állítsd be a Beállítások → Fájlkezelés → Adat-helyreállítás → Mappa értéket (recoveryFolder)
|
||||
@msg Couldn't save recovery data: {e}. Copies go to {folder}, the folder set in Preferences; to use another folder, set Preferences → File Handling → Data Recovery → Folder (recoveryFolder) Nem sikerült menteni a helyreállítási adatokat: {e}. A másolatok helye: {folder}, a Beállításokban megadott mappa; másik mappa használatához állítsd be a Beállítások → Fájlkezelés → Adat-helyreállítás → Mappa értéket (recoveryFolder)
|
||||
@msg Create from Guides: the document has no artboard Létrehozás segédvonalakból: a dokumentumban nincs rajztábla
|
||||
@msg Create from Guides: the guides make more than {MAX_PIECES} slices Létrehozás segédvonalakból: a segédvonalak túl sok szeletet adnak (legfeljebb {MAX_PIECES})
|
||||
@msg Create from Selection: the selection has no area Létrehozás a kijelölésből: a kijelölésnek nincs területe
|
||||
|
||||
|
Can't render this file because it contains an unexpected character in line 2 and column 73.
|
@@ -4248,6 +4248,10 @@ imageTrace Outline Kontur
|
||||
@msg Couldn't place {name}: the document it was placed in was closed Tidak dapat menempatkan {name}: dokumen tempatnya ditempatkan sudah ditutup
|
||||
@msg Couldn't read {name}: {e} Tidak dapat membaca {name}: {e}
|
||||
@msg Couldn't save recovery data: {e} Tidak dapat menyimpan data pemulihan: {e}
|
||||
@msg Couldn't save recovery data for {title}: {e}. Copies go to {folder}, the default recovery folder; to use another folder, set Preferences → File Handling → Data Recovery → Folder (recoveryFolder) Tidak dapat menyimpan data pemulihan untuk {title}: {e}. Salinan disimpan di {folder}, folder pemulihan bawaan; untuk memakai folder lain, atur Preferensi → Penanganan File → Pemulihan Data → Folder (recoveryFolder)
|
||||
@msg Couldn't save recovery data for {title}: {e}. Copies go to {folder}, the folder set in Preferences; to use another folder, set Preferences → File Handling → Data Recovery → Folder (recoveryFolder) Tidak dapat menyimpan data pemulihan untuk {title}: {e}. Salinan disimpan di {folder}, folder yang diatur di Preferensi; untuk memakai folder lain, atur Preferensi → Penanganan File → Pemulihan Data → Folder (recoveryFolder)
|
||||
@msg Couldn't save recovery data: {e}. Copies go to {folder}, the default recovery folder; to use another folder, set Preferences → File Handling → Data Recovery → Folder (recoveryFolder) Tidak dapat menyimpan data pemulihan: {e}. Salinan disimpan di {folder}, folder pemulihan bawaan; untuk memakai folder lain, atur Preferensi → Penanganan File → Pemulihan Data → Folder (recoveryFolder)
|
||||
@msg Couldn't save recovery data: {e}. Copies go to {folder}, the folder set in Preferences; to use another folder, set Preferences → File Handling → Data Recovery → Folder (recoveryFolder) Tidak dapat menyimpan data pemulihan: {e}. Salinan disimpan di {folder}, folder yang diatur di Preferensi; untuk memakai folder lain, atur Preferensi → Penanganan File → Pemulihan Data → Folder (recoveryFolder)
|
||||
@msg Create Outlines: select text objects Buat kontur: pilih objek teks
|
||||
@msg Create from Guides: the document has no artboard Buat dari panduan: dokumen tidak memiliki artboard
|
||||
@msg Create from Guides: the guides make more than {MAX_PIECES} slices Buat dari panduan: panduan menghasilkan lebih dari {MAX_PIECES} irisan
|
||||
|
||||
|
Can't render this file because it contains an unexpected character in line 2422 and column 5.
|
@@ -4393,6 +4393,10 @@ axis Both Entrambi
|
||||
@msg Couldn't place {name}: the document it was placed in was closed Impossibile inserire {name}: il documento in cui veniva inserito è stato chiuso
|
||||
@msg Couldn't read {name}: {e} Impossibile leggere {name}: {e}
|
||||
@msg Couldn't save recovery data: {e} Impossibile salvare i dati di recupero: {e}
|
||||
@msg Couldn't save recovery data for {title}: {e}. Copies go to {folder}, the default recovery folder; to use another folder, set Preferences → File Handling → Data Recovery → Folder (recoveryFolder) Impossibile salvare i dati di recupero di {title}: {e}. Le copie vanno in {folder}, la cartella di recupero predefinita; per usare un’altra cartella, imposta Preferenze → Gestione file → Recupero dati → Cartella (recoveryFolder)
|
||||
@msg Couldn't save recovery data for {title}: {e}. Copies go to {folder}, the folder set in Preferences; to use another folder, set Preferences → File Handling → Data Recovery → Folder (recoveryFolder) Impossibile salvare i dati di recupero di {title}: {e}. Le copie vanno in {folder}, la cartella impostata nelle Preferenze; per usare un’altra cartella, imposta Preferenze → Gestione file → Recupero dati → Cartella (recoveryFolder)
|
||||
@msg Couldn't save recovery data: {e}. Copies go to {folder}, the default recovery folder; to use another folder, set Preferences → File Handling → Data Recovery → Folder (recoveryFolder) Impossibile salvare i dati di recupero: {e}. Le copie vanno in {folder}, la cartella di recupero predefinita; per usare un’altra cartella, imposta Preferenze → Gestione file → Recupero dati → Cartella (recoveryFolder)
|
||||
@msg Couldn't save recovery data: {e}. Copies go to {folder}, the folder set in Preferences; to use another folder, set Preferences → File Handling → Data Recovery → Folder (recoveryFolder) Impossibile salvare i dati di recupero: {e}. Le copie vanno in {folder}, la cartella impostata nelle Preferenze; per usare un’altra cartella, imposta Preferenze → Gestione file → Recupero dati → Cartella (recoveryFolder)
|
||||
@msg Create Outlines: select text objects Crea contorni: seleziona oggetti di testo
|
||||
@msg Create from Guides: the document has no artboard Crea da guide: il documento non ha una tavola da disegno
|
||||
@msg Create from Guides: the guides make more than {MAX_PIECES} slices Crea da guide: le guide generano più di {MAX_PIECES} sezioni
|
||||
|
||||
|
Can't render this file because it contains an unexpected character in line 2 and column 73.
|
@@ -5188,6 +5188,10 @@ swatch Bright Violet ビビッドバイオレット
|
||||
@msg the print job has no data プリントジョブにデータがありません
|
||||
@msg there are no printer settings to open here この環境では開けるプリンター設定がありません
|
||||
@msg Couldn't save recovery data: {e} 復帰用データを保存できませんでした: {e}
|
||||
@msg Couldn't save recovery data for {title}: {e}. Copies go to {folder}, the default recovery folder; to use another folder, set Preferences → File Handling → Data Recovery → Folder (recoveryFolder) {title} の復帰用データを保存できませんでした: {e}。コピーの保存先は {folder} (デフォルトの復帰用フォルダー) です。別のフォルダーを使うには、「環境設定 → ファイル管理 → データ復帰 → フォルダー」 (recoveryFolder) を設定してください
|
||||
@msg Couldn't save recovery data for {title}: {e}. Copies go to {folder}, the folder set in Preferences; to use another folder, set Preferences → File Handling → Data Recovery → Folder (recoveryFolder) {title} の復帰用データを保存できませんでした: {e}。コピーの保存先は {folder} (環境設定で指定したフォルダー) です。別のフォルダーを使うには、「環境設定 → ファイル管理 → データ復帰 → フォルダー」 (recoveryFolder) を設定してください
|
||||
@msg Couldn't save recovery data: {e}. Copies go to {folder}, the default recovery folder; to use another folder, set Preferences → File Handling → Data Recovery → Folder (recoveryFolder) 復帰用データを保存できませんでした: {e}。コピーの保存先は {folder} (デフォルトの復帰用フォルダー) です。別のフォルダーを使うには、「環境設定 → ファイル管理 → データ復帰 → フォルダー」 (recoveryFolder) を設定してください
|
||||
@msg Couldn't save recovery data: {e}. Copies go to {folder}, the folder set in Preferences; to use another folder, set Preferences → File Handling → Data Recovery → Folder (recoveryFolder) 復帰用データを保存できませんでした: {e}。コピーの保存先は {folder} (環境設定で指定したフォルダー) です。別のフォルダーを使うには、「環境設定 → ファイル管理 → データ復帰 → フォルダー」 (recoveryFolder) を設定してください
|
||||
@msg Saved recovery data for {title} {title} の復帰用データを保存しました
|
||||
@msgplural Discarded {n} recovered document|Discarded {n} recovered documents 復帰用データのドキュメントを {n} 件破棄しました
|
||||
@msgplural Restored {n} recovered document: save it to keep it|Restored {n} recovered documents: save them to keep them 復帰用データからドキュメントを {n} 件復元しました: 残すには保存してください
|
||||
|
||||
|
Can't render this file because it contains an unexpected character in line 2 and column 73.
|
@@ -4047,6 +4047,10 @@ font-technology Variable ცვლადი
|
||||
@msg Couldn't place {name}: the document it was placed in was closed {name} ვერ განთავსდა: დოკუმენტი, რომელშიც ის თავსდებოდა, დაიხურა
|
||||
@msg Couldn't read {name}: {e} {name} ვერ წაიკითხა: {e}
|
||||
@msg Couldn't save recovery data: {e} აღდგენის მონაცემები ვერ შეინახა: {e}
|
||||
@msg Couldn't save recovery data for {title}: {e}. Copies go to {folder}, the default recovery folder; to use another folder, set Preferences → File Handling → Data Recovery → Folder (recoveryFolder) დოკუმენტის {title} აღდგენის მონაცემები ვერ შეინახა: {e}. ასლები ინახება საქაღალდეში {folder}, რომელიც აღდგენის ნაგულისხმევი საქაღალდეა; სხვა საქაღალდის გამოსაყენებლად მიუთითეთ პარამეტრები → ფაილების დამუშავება → მონაცემთა აღდგენა → საქაღალდე (recoveryFolder)
|
||||
@msg Couldn't save recovery data for {title}: {e}. Copies go to {folder}, the folder set in Preferences; to use another folder, set Preferences → File Handling → Data Recovery → Folder (recoveryFolder) დოკუმენტის {title} აღდგენის მონაცემები ვერ შეინახა: {e}. ასლები ინახება საქაღალდეში {folder}, რომელიც პარამეტრებშია მითითებული; სხვა საქაღალდის გამოსაყენებლად მიუთითეთ პარამეტრები → ფაილების დამუშავება → მონაცემთა აღდგენა → საქაღალდე (recoveryFolder)
|
||||
@msg Couldn't save recovery data: {e}. Copies go to {folder}, the default recovery folder; to use another folder, set Preferences → File Handling → Data Recovery → Folder (recoveryFolder) აღდგენის მონაცემები ვერ შეინახა: {e}. ასლები ინახება საქაღალდეში {folder}, რომელიც აღდგენის ნაგულისხმევი საქაღალდეა; სხვა საქაღალდის გამოსაყენებლად მიუთითეთ პარამეტრები → ფაილების დამუშავება → მონაცემთა აღდგენა → საქაღალდე (recoveryFolder)
|
||||
@msg Couldn't save recovery data: {e}. Copies go to {folder}, the folder set in Preferences; to use another folder, set Preferences → File Handling → Data Recovery → Folder (recoveryFolder) აღდგენის მონაცემები ვერ შეინახა: {e}. ასლები ინახება საქაღალდეში {folder}, რომელიც პარამეტრებშია მითითებული; სხვა საქაღალდის გამოსაყენებლად მიუთითეთ პარამეტრები → ფაილების დამუშავება → მონაცემთა აღდგენა → საქაღალდე (recoveryFolder)
|
||||
@msg Create Outlines: select text objects კონტურების შექმნა: მონიშნეთ ტექსტური ობიექტები
|
||||
@msg Create from Guides: the document has no artboard დამხმარე ხაზებიდან შექმნა: დოკუმენტს სამუშაო დაფა არ აქვს
|
||||
@msg Create from Guides: the guides make more than {MAX_PIECES} slices დამხმარე ხაზებიდან შექმნა: დამხმარე ხაზები {MAX_PIECES}-ზე მეტ ნაჭერს ქმნის
|
||||
|
||||
|
Can't render this file because it is too large.
|
@@ -5115,6 +5115,10 @@ theme Appearance 외관
|
||||
@msg the print job has no data 인쇄 작업에 데이터가 없습니다
|
||||
@msg there are no printer settings to open here 여기에는 열 수 있는 프린터 설정이 없습니다
|
||||
@msg Couldn't save recovery data: {e} 복구 데이터를 저장할 수 없습니다: {e}
|
||||
@msg Couldn't save recovery data for {title}: {e}. Copies go to {folder}, the default recovery folder; to use another folder, set Preferences → File Handling → Data Recovery → Folder (recoveryFolder) {title}의 복구 데이터를 저장할 수 없습니다: {e}. 복사본은 기본 복구 폴더인 {folder}에 저장됩니다. 다른 폴더를 사용하려면 환경 설정 → 파일 처리 → 데이터 복구 → 폴더(recoveryFolder)를 지정하세요
|
||||
@msg Couldn't save recovery data for {title}: {e}. Copies go to {folder}, the folder set in Preferences; to use another folder, set Preferences → File Handling → Data Recovery → Folder (recoveryFolder) {title}의 복구 데이터를 저장할 수 없습니다: {e}. 복사본은 환경 설정에서 지정한 폴더인 {folder}에 저장됩니다. 다른 폴더를 사용하려면 환경 설정 → 파일 처리 → 데이터 복구 → 폴더(recoveryFolder)를 지정하세요
|
||||
@msg Couldn't save recovery data: {e}. Copies go to {folder}, the default recovery folder; to use another folder, set Preferences → File Handling → Data Recovery → Folder (recoveryFolder) 복구 데이터를 저장할 수 없습니다: {e}. 복사본은 기본 복구 폴더인 {folder}에 저장됩니다. 다른 폴더를 사용하려면 환경 설정 → 파일 처리 → 데이터 복구 → 폴더(recoveryFolder)를 지정하세요
|
||||
@msg Couldn't save recovery data: {e}. Copies go to {folder}, the folder set in Preferences; to use another folder, set Preferences → File Handling → Data Recovery → Folder (recoveryFolder) 복구 데이터를 저장할 수 없습니다: {e}. 복사본은 환경 설정에서 지정한 폴더인 {folder}에 저장됩니다. 다른 폴더를 사용하려면 환경 설정 → 파일 처리 → 데이터 복구 → 폴더(recoveryFolder)를 지정하세요
|
||||
@msg Saved recovery data for {title} {title}의 복구 데이터를 저장했습니다
|
||||
@msgplural Discarded {n} recovered document|Discarded {n} recovered documents 복구된 문서 {n}개를 삭제했습니다
|
||||
@msgplural Restored {n} recovered document: save it to keep it|Restored {n} recovered documents: save them to keep them 복구된 문서 {n}개를 복원했습니다: 보관하려면 저장하세요
|
||||
|
||||
|
Can't render this file because it contains an unexpected character in line 2 and column 73.
|
@@ -4763,6 +4763,10 @@ imageTrace Outline Contour
|
||||
@msg Couldn't place {name}: the document it was placed in was closed Kon {name} niet plaatsen: het document waarin het werd geplaatst, is gesloten
|
||||
@msg Couldn't read {name}: {e} Kon {name} niet lezen: {e}
|
||||
@msg Couldn't save recovery data: {e} Kon herstelgegevens niet opslaan: {e}
|
||||
@msg Couldn't save recovery data for {title}: {e}. Copies go to {folder}, the default recovery folder; to use another folder, set Preferences → File Handling → Data Recovery → Folder (recoveryFolder) Kon herstelgegevens voor {title} niet opslaan: {e}. Kopieën gaan naar {folder}, de standaardherstelmap; stel voor een andere map Voorkeuren → Bestandsafhandeling → Gegevensherstel → Map (recoveryFolder) in
|
||||
@msg Couldn't save recovery data for {title}: {e}. Copies go to {folder}, the folder set in Preferences; to use another folder, set Preferences → File Handling → Data Recovery → Folder (recoveryFolder) Kon herstelgegevens voor {title} niet opslaan: {e}. Kopieën gaan naar {folder}, de map die in Voorkeuren is ingesteld; stel voor een andere map Voorkeuren → Bestandsafhandeling → Gegevensherstel → Map (recoveryFolder) in
|
||||
@msg Couldn't save recovery data: {e}. Copies go to {folder}, the default recovery folder; to use another folder, set Preferences → File Handling → Data Recovery → Folder (recoveryFolder) Kon herstelgegevens niet opslaan: {e}. Kopieën gaan naar {folder}, de standaardherstelmap; stel voor een andere map Voorkeuren → Bestandsafhandeling → Gegevensherstel → Map (recoveryFolder) in
|
||||
@msg Couldn't save recovery data: {e}. Copies go to {folder}, the folder set in Preferences; to use another folder, set Preferences → File Handling → Data Recovery → Folder (recoveryFolder) Kon herstelgegevens niet opslaan: {e}. Kopieën gaan naar {folder}, de map die in Voorkeuren is ingesteld; stel voor een andere map Voorkeuren → Bestandsafhandeling → Gegevensherstel → Map (recoveryFolder) in
|
||||
@msg Create Outlines: select text objects Contouren maken: selecteer tekstobjecten
|
||||
@msg Create from Guides: the document has no artboard Uit hulplijnen maken: het document heeft geen tekengebied
|
||||
@msg Create from Guides: the guides make more than {MAX_PIECES} slices Uit hulplijnen maken: de hulplijnen maken meer dan {MAX_PIECES} slices
|
||||
|
||||
|
Can't render this file because it contains an unexpected character in line 2 and column 73.
|
@@ -4475,6 +4475,10 @@ imageTrace Outline Kontur
|
||||
@msg Couldn't place {name}: the document it was placed in was closed Nie udało się umieścić {name}: dokument, w którym był umieszczany, został zamknięty
|
||||
@msg Couldn't read {name}: {e} Nie udało się odczytać {name}: {e}
|
||||
@msg Couldn't save recovery data: {e} Nie udało się zapisać danych odzyskiwania: {e}
|
||||
@msg Couldn't save recovery data for {title}: {e}. Copies go to {folder}, the default recovery folder; to use another folder, set Preferences → File Handling → Data Recovery → Folder (recoveryFolder) Nie udało się zapisać danych odzyskiwania dla {title}: {e}. Kopie trafiają do {folder}, domyślnego folderu odzyskiwania; aby użyć innego folderu, ustaw Preferencje → Obsługa plików → Odzyskiwanie danych → Folder (recoveryFolder)
|
||||
@msg Couldn't save recovery data for {title}: {e}. Copies go to {folder}, the folder set in Preferences; to use another folder, set Preferences → File Handling → Data Recovery → Folder (recoveryFolder) Nie udało się zapisać danych odzyskiwania dla {title}: {e}. Kopie trafiają do {folder}, folderu ustawionego w Preferencjach; aby użyć innego folderu, ustaw Preferencje → Obsługa plików → Odzyskiwanie danych → Folder (recoveryFolder)
|
||||
@msg Couldn't save recovery data: {e}. Copies go to {folder}, the default recovery folder; to use another folder, set Preferences → File Handling → Data Recovery → Folder (recoveryFolder) Nie udało się zapisać danych odzyskiwania: {e}. Kopie trafiają do {folder}, domyślnego folderu odzyskiwania; aby użyć innego folderu, ustaw Preferencje → Obsługa plików → Odzyskiwanie danych → Folder (recoveryFolder)
|
||||
@msg Couldn't save recovery data: {e}. Copies go to {folder}, the folder set in Preferences; to use another folder, set Preferences → File Handling → Data Recovery → Folder (recoveryFolder) Nie udało się zapisać danych odzyskiwania: {e}. Kopie trafiają do {folder}, folderu ustawionego w Preferencjach; aby użyć innego folderu, ustaw Preferencje → Obsługa plików → Odzyskiwanie danych → Folder (recoveryFolder)
|
||||
@msg Create Outlines: select text objects Utwórz kontury: zaznacz obiekty tekstowe
|
||||
@msg Create from Guides: the document has no artboard Utwórz z linii pomocniczych: dokument nie ma obszaru kompozycji
|
||||
@msg Create from Guides: the guides make more than {MAX_PIECES} slices Utwórz z linii pomocniczych: linie pomocnicze tworzą więcej niż {MAX_PIECES} plasterków
|
||||
|
||||
|
Can't render this file because it contains an unexpected character in line 2 and column 73.
|
@@ -3810,6 +3810,10 @@ axis Both Ambos
|
||||
@msg Couldn't place {name}: the document it was placed in was closed Não foi possível inserir {name}: o documento em que estava sendo inserido foi fechado
|
||||
@msg Couldn't read {name}: {e} Não foi possível ler {name}: {e}
|
||||
@msg Couldn't save recovery data: {e} Não foi possível salvar os dados de recuperação: {e}
|
||||
@msg Couldn't save recovery data for {title}: {e}. Copies go to {folder}, the default recovery folder; to use another folder, set Preferences → File Handling → Data Recovery → Folder (recoveryFolder) Não foi possível salvar os dados de recuperação de {title}: {e}. As cópias vão para {folder}, a pasta de recuperação padrão; para usar outra pasta, defina Preferências → Manipulação de arquivos → Recuperação de dados → Pasta (recoveryFolder)
|
||||
@msg Couldn't save recovery data for {title}: {e}. Copies go to {folder}, the folder set in Preferences; to use another folder, set Preferences → File Handling → Data Recovery → Folder (recoveryFolder) Não foi possível salvar os dados de recuperação de {title}: {e}. As cópias vão para {folder}, a pasta definida em Preferências; para usar outra pasta, defina Preferências → Manipulação de arquivos → Recuperação de dados → Pasta (recoveryFolder)
|
||||
@msg Couldn't save recovery data: {e}. Copies go to {folder}, the default recovery folder; to use another folder, set Preferences → File Handling → Data Recovery → Folder (recoveryFolder) Não foi possível salvar os dados de recuperação: {e}. As cópias vão para {folder}, a pasta de recuperação padrão; para usar outra pasta, defina Preferências → Manipulação de arquivos → Recuperação de dados → Pasta (recoveryFolder)
|
||||
@msg Couldn't save recovery data: {e}. Copies go to {folder}, the folder set in Preferences; to use another folder, set Preferences → File Handling → Data Recovery → Folder (recoveryFolder) Não foi possível salvar os dados de recuperação: {e}. As cópias vão para {folder}, a pasta definida em Preferências; para usar outra pasta, defina Preferências → Manipulação de arquivos → Recuperação de dados → Pasta (recoveryFolder)
|
||||
@msg Create Outlines: select text objects Criar contornos: selecione objetos de texto
|
||||
@msg Create from Guides: the document has no artboard Criar a partir de guias: o documento não tem prancheta
|
||||
@msg Create from Guides: the guides make more than {MAX_PIECES} slices Criar a partir de guias: as guias formam mais de {MAX_PIECES} fatias
|
||||
|
||||
|
Can't render this file because it contains an unexpected character in line 6 and column 47.
|
@@ -4378,6 +4378,10 @@ axis Both Оба
|
||||
@msg Couldn't place {name}: the document it was placed in was closed Не удалось поместить {name}: документ, в который его помещали, был закрыт
|
||||
@msg Couldn't read {name}: {e} Не удалось прочитать {name}: {e}
|
||||
@msg Couldn't save recovery data: {e} Не удалось сохранить данные восстановления: {e}
|
||||
@msg Couldn't save recovery data for {title}: {e}. Copies go to {folder}, the default recovery folder; to use another folder, set Preferences → File Handling → Data Recovery → Folder (recoveryFolder) Не удалось сохранить данные восстановления для {title}: {e}. Копии сохраняются в {folder}, папку восстановления по умолчанию; чтобы использовать другую папку, задайте Настройки → Работа с файлами → Восстановление данных → Папка (recoveryFolder)
|
||||
@msg Couldn't save recovery data for {title}: {e}. Copies go to {folder}, the folder set in Preferences; to use another folder, set Preferences → File Handling → Data Recovery → Folder (recoveryFolder) Не удалось сохранить данные восстановления для {title}: {e}. Копии сохраняются в {folder}, папку, заданную в настройках; чтобы использовать другую папку, задайте Настройки → Работа с файлами → Восстановление данных → Папка (recoveryFolder)
|
||||
@msg Couldn't save recovery data: {e}. Copies go to {folder}, the default recovery folder; to use another folder, set Preferences → File Handling → Data Recovery → Folder (recoveryFolder) Не удалось сохранить данные восстановления: {e}. Копии сохраняются в {folder}, папку восстановления по умолчанию; чтобы использовать другую папку, задайте Настройки → Работа с файлами → Восстановление данных → Папка (recoveryFolder)
|
||||
@msg Couldn't save recovery data: {e}. Copies go to {folder}, the folder set in Preferences; to use another folder, set Preferences → File Handling → Data Recovery → Folder (recoveryFolder) Не удалось сохранить данные восстановления: {e}. Копии сохраняются в {folder}, папку, заданную в настройках; чтобы использовать другую папку, задайте Настройки → Работа с файлами → Восстановление данных → Папка (recoveryFolder)
|
||||
@msg Create Outlines: select text objects Создание контуров: выделите текстовые объекты
|
||||
@msg Create from Guides: the document has no artboard Создание из направляющих: в документе нет монтажной области
|
||||
@msg Create from Guides: the guides make more than {MAX_PIECES} slices Создание из направляющих: направляющие образуют более {MAX_PIECES} фрагментов
|
||||
|
||||
|
Can't render this file because it is too large.
|
@@ -4251,6 +4251,10 @@ axis Both Båda
|
||||
@msg Couldn't place {name}: the document it was placed in was closed Kunde inte placera {name}: dokumentet det placerades i har stängts
|
||||
@msg Couldn't read {name}: {e} Kunde inte läsa {name}: {e}
|
||||
@msg Couldn't save recovery data: {e} Kunde inte spara återställningsdata: {e}
|
||||
@msg Couldn't save recovery data for {title}: {e}. Copies go to {folder}, the default recovery folder; to use another folder, set Preferences → File Handling → Data Recovery → Folder (recoveryFolder) Kunde inte spara återställningsdata för {title}: {e}. Kopiorna sparas i {folder}, standardmappen för återställning; om du vill använda en annan mapp anger du Inställningar → Filhantering → Dataåterställning → Mapp (recoveryFolder)
|
||||
@msg Couldn't save recovery data for {title}: {e}. Copies go to {folder}, the folder set in Preferences; to use another folder, set Preferences → File Handling → Data Recovery → Folder (recoveryFolder) Kunde inte spara återställningsdata för {title}: {e}. Kopiorna sparas i {folder}, mappen som angetts i Inställningar; om du vill använda en annan mapp anger du Inställningar → Filhantering → Dataåterställning → Mapp (recoveryFolder)
|
||||
@msg Couldn't save recovery data: {e}. Copies go to {folder}, the default recovery folder; to use another folder, set Preferences → File Handling → Data Recovery → Folder (recoveryFolder) Kunde inte spara återställningsdata: {e}. Kopiorna sparas i {folder}, standardmappen för återställning; om du vill använda en annan mapp anger du Inställningar → Filhantering → Dataåterställning → Mapp (recoveryFolder)
|
||||
@msg Couldn't save recovery data: {e}. Copies go to {folder}, the folder set in Preferences; to use another folder, set Preferences → File Handling → Data Recovery → Folder (recoveryFolder) Kunde inte spara återställningsdata: {e}. Kopiorna sparas i {folder}, mappen som angetts i Inställningar; om du vill använda en annan mapp anger du Inställningar → Filhantering → Dataåterställning → Mapp (recoveryFolder)
|
||||
@msg Create Outlines: select text objects Skapa konturer: markera textobjekt
|
||||
@msg Create from Guides: the document has no artboard Skapa från stödlinjer: dokumentet har ingen rityta
|
||||
@msg Create from Guides: the guides make more than {MAX_PIECES} slices Skapa från stödlinjer: stödlinjerna ger fler än {MAX_PIECES} skivor
|
||||
|
||||
|
Can't render this file because it is too large.
|
@@ -4131,6 +4131,10 @@ axis Both Her İkisi
|
||||
@msg Couldn't place {name}: the document it was placed in was closed {name} yerleştirilemedi: yerleştirildiği belge kapatıldı
|
||||
@msg Couldn't read {name}: {e} {name} okunamadı: {e}
|
||||
@msg Couldn't save recovery data: {e} Kurtarma verileri kaydedilemedi: {e}
|
||||
@msg Couldn't save recovery data for {title}: {e}. Copies go to {folder}, the default recovery folder; to use another folder, set Preferences → File Handling → Data Recovery → Folder (recoveryFolder) {title} için kurtarma verileri kaydedilemedi: {e}. Kopyalar varsayılan kurtarma klasörüne, {folder} konumuna kaydedilir; başka bir klasör kullanmak için Tercihler → Dosya İşleme → Veri Kurtarma → Klasör (recoveryFolder) ayarını yapın
|
||||
@msg Couldn't save recovery data for {title}: {e}. Copies go to {folder}, the folder set in Preferences; to use another folder, set Preferences → File Handling → Data Recovery → Folder (recoveryFolder) {title} için kurtarma verileri kaydedilemedi: {e}. Kopyalar Tercihler'de ayarlanan klasöre, {folder} konumuna kaydedilir; başka bir klasör kullanmak için Tercihler → Dosya İşleme → Veri Kurtarma → Klasör (recoveryFolder) ayarını yapın
|
||||
@msg Couldn't save recovery data: {e}. Copies go to {folder}, the default recovery folder; to use another folder, set Preferences → File Handling → Data Recovery → Folder (recoveryFolder) Kurtarma verileri kaydedilemedi: {e}. Kopyalar varsayılan kurtarma klasörüne, {folder} konumuna kaydedilir; başka bir klasör kullanmak için Tercihler → Dosya İşleme → Veri Kurtarma → Klasör (recoveryFolder) ayarını yapın
|
||||
@msg Couldn't save recovery data: {e}. Copies go to {folder}, the folder set in Preferences; to use another folder, set Preferences → File Handling → Data Recovery → Folder (recoveryFolder) Kurtarma verileri kaydedilemedi: {e}. Kopyalar Tercihler'de ayarlanan klasöre, {folder} konumuna kaydedilir; başka bir klasör kullanmak için Tercihler → Dosya İşleme → Veri Kurtarma → Klasör (recoveryFolder) ayarını yapın
|
||||
@msg Create Outlines: select text objects Anahatlar Oluştur: metin nesnelerini seçin
|
||||
@msg Create from Guides: the document has no artboard Kılavuzlardan Oluştur: belgede çalışma yüzeyi yok
|
||||
@msg Create from Guides: the guides make more than {MAX_PIECES} slices Kılavuzlardan Oluşturun: kılavuzlar {MAX_PIECES} dilimlerinden daha fazlasını oluşturur
|
||||
|
||||
|
Can't render this file because it contains an unexpected character in line 5 and column 25.
|
@@ -4377,6 +4377,10 @@ axis Both Обидві
|
||||
@msg Couldn't place {name}: the document it was placed in was closed Не вдалося помістити {name}: документ, у який його поміщали, було закрито
|
||||
@msg Couldn't read {name}: {e} Неможливо прочитати {name}: {e}
|
||||
@msg Couldn't save recovery data: {e} Не вдалося зберегти дані відновлення: {e}
|
||||
@msg Couldn't save recovery data for {title}: {e}. Copies go to {folder}, the default recovery folder; to use another folder, set Preferences → File Handling → Data Recovery → Folder (recoveryFolder) Не вдалося зберегти дані відновлення для {title}: {e}. Копії зберігаються в {folder}, типовій папці відновлення; щоб використати іншу папку, задайте Установки → Робота з файлами → Відновлення даних → Папка (recoveryFolder)
|
||||
@msg Couldn't save recovery data for {title}: {e}. Copies go to {folder}, the folder set in Preferences; to use another folder, set Preferences → File Handling → Data Recovery → Folder (recoveryFolder) Не вдалося зберегти дані відновлення для {title}: {e}. Копії зберігаються в {folder}, папці, заданій в установках; щоб використати іншу папку, задайте Установки → Робота з файлами → Відновлення даних → Папка (recoveryFolder)
|
||||
@msg Couldn't save recovery data: {e}. Copies go to {folder}, the default recovery folder; to use another folder, set Preferences → File Handling → Data Recovery → Folder (recoveryFolder) Не вдалося зберегти дані відновлення: {e}. Копії зберігаються в {folder}, типовій папці відновлення; щоб використати іншу папку, задайте Установки → Робота з файлами → Відновлення даних → Папка (recoveryFolder)
|
||||
@msg Couldn't save recovery data: {e}. Copies go to {folder}, the folder set in Preferences; to use another folder, set Preferences → File Handling → Data Recovery → Folder (recoveryFolder) Не вдалося зберегти дані відновлення: {e}. Копії зберігаються в {folder}, папці, заданій в установках; щоб використати іншу папку, задайте Установки → Робота з файлами → Відновлення даних → Папка (recoveryFolder)
|
||||
@msg Create Outlines: select text objects Створення контурів: виділіть текстові об’єкти
|
||||
@msg Create from Guides: the document has no artboard Створення з напрямних: у документі немає монтажної області
|
||||
@msg Create from Guides: the guides make more than {MAX_PIECES} slices Створення з напрямних: напрямні утворюють більше {MAX_PIECES} фрагментів
|
||||
|
||||
|
Can't render this file because it is too large.
|
@@ -4806,6 +4806,10 @@ theme Appearance Giao diện
|
||||
@msg Couldn't place {name}: {e} Không thể đặt {name}: {e}
|
||||
@msg Couldn't read {name}: {e} Không thể đọc {name}: {e}
|
||||
@msg Couldn't save recovery data: {e} Không thể lưu dữ liệu phục hồi: {e}
|
||||
@msg Couldn't save recovery data for {title}: {e}. Copies go to {folder}, the default recovery folder; to use another folder, set Preferences → File Handling → Data Recovery → Folder (recoveryFolder) Không thể lưu dữ liệu phục hồi cho {title}: {e}. Bản sao được lưu vào {folder}, thư mục phục hồi mặc định; để dùng thư mục khác, hãy đặt Tùy chọn → Xử lý tệp → Phục hồi dữ liệu → Thư mục (recoveryFolder)
|
||||
@msg Couldn't save recovery data for {title}: {e}. Copies go to {folder}, the folder set in Preferences; to use another folder, set Preferences → File Handling → Data Recovery → Folder (recoveryFolder) Không thể lưu dữ liệu phục hồi cho {title}: {e}. Bản sao được lưu vào {folder}, thư mục được đặt trong Tùy chọn; để dùng thư mục khác, hãy đặt Tùy chọn → Xử lý tệp → Phục hồi dữ liệu → Thư mục (recoveryFolder)
|
||||
@msg Couldn't save recovery data: {e}. Copies go to {folder}, the default recovery folder; to use another folder, set Preferences → File Handling → Data Recovery → Folder (recoveryFolder) Không thể lưu dữ liệu phục hồi: {e}. Bản sao được lưu vào {folder}, thư mục phục hồi mặc định; để dùng thư mục khác, hãy đặt Tùy chọn → Xử lý tệp → Phục hồi dữ liệu → Thư mục (recoveryFolder)
|
||||
@msg Couldn't save recovery data: {e}. Copies go to {folder}, the folder set in Preferences; to use another folder, set Preferences → File Handling → Data Recovery → Folder (recoveryFolder) Không thể lưu dữ liệu phục hồi: {e}. Bản sao được lưu vào {folder}, thư mục được đặt trong Tùy chọn; để dùng thư mục khác, hãy đặt Tùy chọn → Xử lý tệp → Phục hồi dữ liệu → Thư mục (recoveryFolder)
|
||||
@msg Create from Guides: the document has no artboard Tạo từ đường căn: tài liệu không có bảng vẽ
|
||||
@msg Create from Guides: the guides make more than {MAX_PIECES} slices Tạo từ đường căn: các đường căn tạo ra hơn {MAX_PIECES} lát cắt
|
||||
@msg Create from Selection: the selection has no area Tạo từ vùng chọn: vùng chọn không có diện tích
|
||||
|
||||
|
Can't render this file because it contains an unexpected character in line 204 and column 5.
|
@@ -4871,6 +4871,10 @@ imageTrace Outline 轮廓
|
||||
@msg the print job has no data 打印作业没有数据
|
||||
@msg there are no printer settings to open here 此处没有可打开的打印机设置
|
||||
@msg Couldn't save recovery data: {e} 无法保存恢复数据:{e}
|
||||
@msg Couldn't save recovery data for {title}: {e}. Copies go to {folder}, the default recovery folder; to use another folder, set Preferences → File Handling → Data Recovery → Folder (recoveryFolder) 无法保存 {title} 的恢复数据:{e}。副本保存在 {folder}(默认恢复文件夹);要使用其他文件夹,请设置“首选项 → 文件处理 → 数据恢复 → 文件夹” (recoveryFolder)
|
||||
@msg Couldn't save recovery data for {title}: {e}. Copies go to {folder}, the folder set in Preferences; to use another folder, set Preferences → File Handling → Data Recovery → Folder (recoveryFolder) 无法保存 {title} 的恢复数据:{e}。副本保存在 {folder}(在“首选项”中设置的文件夹);要使用其他文件夹,请设置“首选项 → 文件处理 → 数据恢复 → 文件夹” (recoveryFolder)
|
||||
@msg Couldn't save recovery data: {e}. Copies go to {folder}, the default recovery folder; to use another folder, set Preferences → File Handling → Data Recovery → Folder (recoveryFolder) 无法保存恢复数据:{e}。副本保存在 {folder}(默认恢复文件夹);要使用其他文件夹,请设置“首选项 → 文件处理 → 数据恢复 → 文件夹” (recoveryFolder)
|
||||
@msg Couldn't save recovery data: {e}. Copies go to {folder}, the folder set in Preferences; to use another folder, set Preferences → File Handling → Data Recovery → Folder (recoveryFolder) 无法保存恢复数据:{e}。副本保存在 {folder}(在“首选项”中设置的文件夹);要使用其他文件夹,请设置“首选项 → 文件处理 → 数据恢复 → 文件夹” (recoveryFolder)
|
||||
@msg Saved recovery data for {title} 已保存 {title} 的恢复数据
|
||||
@msgplural Discarded {n} recovered document|Discarded {n} recovered documents 已丢弃 {n} 个恢复的文档
|
||||
@msgplural Restored {n} recovered document: save it to keep it|Restored {n} recovered documents: save them to keep them 已还原 {n} 个恢复的文档:请保存以保留它们
|
||||
|
||||
|
Can't render this file because it contains an unexpected character in line 2 and column 73.
|
@@ -2620,6 +2620,10 @@ file-filter Templates 範本
|
||||
@msg the print job has no data 列印工作沒有資料
|
||||
@msg there are no printer settings to open here 此處沒有可開啟的印表機設定
|
||||
@msg Couldn't save recovery data: {e} 無法儲存復原資料:{e}
|
||||
@msg Couldn't save recovery data for {title}: {e}. Copies go to {folder}, the default recovery folder; to use another folder, set Preferences → File Handling → Data Recovery → Folder (recoveryFolder) 無法儲存 {title} 的復原資料:{e}。拷貝存放在 {folder}(預設的復原資料夾);若要使用其他資料夾,請設定「偏好設定 → 檔案處理 → 資料復原 → 資料夾」 (recoveryFolder)
|
||||
@msg Couldn't save recovery data for {title}: {e}. Copies go to {folder}, the folder set in Preferences; to use another folder, set Preferences → File Handling → Data Recovery → Folder (recoveryFolder) 無法儲存 {title} 的復原資料:{e}。拷貝存放在 {folder}(在「偏好設定」中設定的資料夾);若要使用其他資料夾,請設定「偏好設定 → 檔案處理 → 資料復原 → 資料夾」 (recoveryFolder)
|
||||
@msg Couldn't save recovery data: {e}. Copies go to {folder}, the default recovery folder; to use another folder, set Preferences → File Handling → Data Recovery → Folder (recoveryFolder) 無法儲存復原資料:{e}。拷貝存放在 {folder}(預設的復原資料夾);若要使用其他資料夾,請設定「偏好設定 → 檔案處理 → 資料復原 → 資料夾」 (recoveryFolder)
|
||||
@msg Couldn't save recovery data: {e}. Copies go to {folder}, the folder set in Preferences; to use another folder, set Preferences → File Handling → Data Recovery → Folder (recoveryFolder) 無法儲存復原資料:{e}。拷貝存放在 {folder}(在「偏好設定」中設定的資料夾);若要使用其他資料夾,請設定「偏好設定 → 檔案處理 → 資料復原 → 資料夾」 (recoveryFolder)
|
||||
@msg Saved recovery data for {title} 已儲存 {title} 的復原資料
|
||||
@msgplural Discarded {n} recovered document|Discarded {n} recovered documents 已捨棄 {n} 份復原的文件
|
||||
@msgplural Restored {n} recovered document: save it to keep it|Restored {n} recovered documents: save them to keep them 已還原 {n} 份復原的文件:請儲存以保留
|
||||
|
||||
|
Can't render this file because it contains an unexpected character in line 6 and column 47.
|
@@ -26,8 +26,14 @@ pub struct Timer {
|
||||
last: Option<f64>,
|
||||
/// When the heartbeat was last refreshed (app time, s).
|
||||
beat: f64,
|
||||
/// The recovery folders that failure messages named, latest last, at most [`NAMED`]: replies to
|
||||
/// automation clients hide those outside their read roots.
|
||||
pub named: Vec<String>,
|
||||
}
|
||||
|
||||
/// How many recovery folders [`Timer::named`] keeps.
|
||||
const NAMED: usize = 8;
|
||||
|
||||
/// Each frame: the startup question once no other dialog is open, the timer and the heartbeat
|
||||
/// (`now`: app time in seconds) → in how many seconds they want the next frame (none while Data Recovery is off).
|
||||
pub fn frame(app: &mut VectorcraftApp, now: f64) -> Option<f64> {
|
||||
@@ -94,34 +100,92 @@ pub fn tick(app: &mut VectorcraftApp, now: f64) -> usize {
|
||||
/// were started.
|
||||
fn write(app: &mut VectorcraftApp, store: &Arc<dyn RecoveryStore>, pick: impl Fn(u64) -> bool) -> usize {
|
||||
recovery::forget_clean(&mut app.session);
|
||||
// The folder `store` writes to, named in a failure even when the preference changes meanwhile.
|
||||
let place = recovery::folder(&app.session);
|
||||
let jobs = match recovery::jobs(&mut app.session, store) {
|
||||
// A document whose save or last copy is still being written waits for the next round.
|
||||
Ok((jobs, _)) => jobs.into_iter().filter(|j| pick(j.uid) && !app.background.busy_with(j.uid)).collect::<Vec<_>>(),
|
||||
Err(e) => {
|
||||
app.status(format!("Couldn't save recovery data: {e}"));
|
||||
failed(app, place.as_ref(), &e.to_string());
|
||||
return 0;
|
||||
}
|
||||
};
|
||||
let mut started = 0;
|
||||
for job in jobs {
|
||||
let (uid, label, title) = (job.uid, format!("Saving recovery data for {}", job.title), job.title.clone());
|
||||
let done = job.clone();
|
||||
let (done, at, saving) = (job.clone(), place.clone(), label.clone());
|
||||
let work = move |_: Writer| job.write();
|
||||
let then = move |app: &mut VectorcraftApp, r: Result<Value, String>| {
|
||||
let r = r?;
|
||||
done.finish(&mut app.session);
|
||||
app.status(format!("Saved recovery data for {title}"));
|
||||
Ok(r)
|
||||
// A failure is reported here, so the job's result is not an error: that would show as
|
||||
// "<label> failed: <error>" over this line, or as the round's message when it ran here.
|
||||
let then = move |app: &mut VectorcraftApp, r: Result<Value, String>| match (r, at) {
|
||||
(Ok(r), _) => {
|
||||
done.finish(&mut app.session);
|
||||
app.status(format!("Saved recovery data for {title}"));
|
||||
Ok(r)
|
||||
}
|
||||
(Err(e), Some(at)) => {
|
||||
copy_failed(app, &title, &at, &e);
|
||||
Ok(Value::Null)
|
||||
}
|
||||
// A store the host installed has no folder to name: the job's own line.
|
||||
(Err(e), None) => {
|
||||
app.status(format!("{saving} failed: {e}"));
|
||||
log::warn!("vectorcraft: {}", app.ui.status);
|
||||
Ok(Value::Null)
|
||||
}
|
||||
};
|
||||
// Its own store, not the file writer: this only decides whether it runs on the worker.
|
||||
if let Err(e) = background::run(app, true, label, Some(uid), work, then) {
|
||||
app.status(format!("Couldn't save recovery data: {e}"));
|
||||
failed(app, place.as_ref(), &e);
|
||||
}
|
||||
started += 1;
|
||||
}
|
||||
started
|
||||
}
|
||||
|
||||
/// Report a recovery round that couldn't start (error `e`) in the status bar and the log, with
|
||||
/// the recovery folder in use (`place`, from [`recovery::folder`]) and whether the preference or
|
||||
/// the app set it.
|
||||
fn failed(app: &mut VectorcraftApp, place: Option<&(String, bool)>, e: &str) {
|
||||
match place {
|
||||
Some((folder, true)) => app.status(format!(
|
||||
"Couldn't save recovery data: {e}. Copies go to {folder}, the folder set in Preferences; to use another folder, set Preferences → File Handling → Data Recovery → Folder (recoveryFolder)"
|
||||
)),
|
||||
Some((folder, false)) => app.status(format!(
|
||||
"Couldn't save recovery data: {e}. Copies go to {folder}, the default recovery folder; to use another folder, set Preferences → File Handling → Data Recovery → Folder (recoveryFolder)"
|
||||
)),
|
||||
None => app.status(format!("Couldn't save recovery data: {e}")),
|
||||
}
|
||||
if let Some((folder, _)) = place {
|
||||
named(app, folder);
|
||||
}
|
||||
log::warn!("vectorcraft: {}", app.ui.status);
|
||||
}
|
||||
|
||||
/// [`failed`] for the copy of document `title` that couldn't be written to folder `place`.
|
||||
fn copy_failed(app: &mut VectorcraftApp, title: &str, place: &(String, bool), e: &str) {
|
||||
match place {
|
||||
(folder, true) => app.status(format!(
|
||||
"Couldn't save recovery data for {title}: {e}. Copies go to {folder}, the folder set in Preferences; to use another folder, set Preferences → File Handling → Data Recovery → Folder (recoveryFolder)"
|
||||
)),
|
||||
(folder, false) => app.status(format!(
|
||||
"Couldn't save recovery data for {title}: {e}. Copies go to {folder}, the default recovery folder; to use another folder, set Preferences → File Handling → Data Recovery → Folder (recoveryFolder)"
|
||||
)),
|
||||
}
|
||||
named(app, &place.0);
|
||||
log::warn!("vectorcraft: {}", app.ui.status);
|
||||
}
|
||||
|
||||
/// Record that the status text named recovery folder `folder` ([`Timer::named`]).
|
||||
fn named(app: &mut VectorcraftApp, folder: &str) {
|
||||
let named = &mut app.recovery.named;
|
||||
named.retain(|f| f != folder);
|
||||
named.push(folder.to_string());
|
||||
if named.len() > NAMED {
|
||||
named.remove(0);
|
||||
}
|
||||
}
|
||||
|
||||
/// The startup dialog's OK (Restore) or Discard: every copy it lists.
|
||||
pub fn confirm(app: &mut VectorcraftApp, d: &Dialog) -> Result<Value, String> {
|
||||
app.ui.dialog = None;
|
||||
|
||||
@@ -177,6 +177,131 @@ fn the_timer_asks_for_frames_while_idle() {
|
||||
assert!(recovery::frame(&mut app, 1.0).is_none());
|
||||
}
|
||||
|
||||
/// The end of a failed recovery round's status line: how to use another folder.
|
||||
const TO_DO: &str = "; to use another folder, set Preferences → File Handling → Data Recovery → Folder (recoveryFolder)";
|
||||
|
||||
/// An app keeping its copies in `folder` (the folder the app sets) or the one the preference
|
||||
/// names, with a modified document, a recovery round every 2 minutes and the clock started.
|
||||
fn app_in_folder(folder: &str, services: Services) -> VectorcraftApp {
|
||||
let mut app = VectorcraftApp::new(Session::new(), services);
|
||||
app.session.recovery.set_default_folder(Some(folder.to_string()));
|
||||
app.run("file.new", json!({"width": 200, "height": 100})).unwrap();
|
||||
app.run("shape.rectangle", json!({"x": 10, "y": 10, "width": 50, "height": 20})).unwrap();
|
||||
app.session.prefs.autosave_interval = 2;
|
||||
recovery::tick(&mut app, 0.0);
|
||||
app
|
||||
}
|
||||
|
||||
/// A fresh empty folder for test `name`.
|
||||
fn scratch(name: &str) -> std::path::PathBuf {
|
||||
let dir = std::env::temp_dir().join(format!("vc-ui-recovery-{name}-{}", std::process::id()));
|
||||
let _ = std::fs::remove_dir_all(&dir);
|
||||
std::fs::create_dir_all(&dir).unwrap();
|
||||
dir
|
||||
}
|
||||
|
||||
/// A recovery round that can't start names the recovery folder in use, whether the preference or
|
||||
/// the app set it, the error, and what to do.
|
||||
#[test]
|
||||
fn a_round_that_fails_names_the_folder_in_use_and_what_to_do() {
|
||||
let dir = scratch("round");
|
||||
let file = dir.join("not-a-folder");
|
||||
std::fs::write(&file, b"").unwrap();
|
||||
let shown = file.to_string_lossy().into_owned();
|
||||
let mut app = app_in_folder(&shown, Services::default());
|
||||
assert_eq!(recovery::tick(&mut app, 120.0), 0);
|
||||
let start = format!("Couldn't save recovery data: {shown} is not a folder: ");
|
||||
let end = format!(". Copies go to {shown}, the default recovery folder{TO_DO}");
|
||||
assert!(app.ui.status.starts_with(&start) && app.ui.status.ends_with(&end), "{}", app.ui.status);
|
||||
// A preference of spaces is no preference.
|
||||
app.session.prefs.recovery_folder = " ".into();
|
||||
assert_eq!(recovery::tick(&mut app, 240.0), 0);
|
||||
assert!(app.ui.status.starts_with(&start) && app.ui.status.ends_with(&end), "{}", app.ui.status);
|
||||
app.session.prefs.recovery_folder = format!(" {shown} ");
|
||||
assert_eq!(recovery::tick(&mut app, 360.0), 0);
|
||||
let end = format!(". Copies go to {shown}, the folder set in Preferences{TO_DO}");
|
||||
assert!(app.ui.status.starts_with(&start) && app.ui.status.ends_with(&end), "{}", app.ui.status);
|
||||
let _ = std::fs::remove_dir_all(&dir);
|
||||
}
|
||||
|
||||
/// A copy that fails on the background worker is reported the same way, not as the job's own
|
||||
/// "Saving recovery data for … failed" line.
|
||||
#[test]
|
||||
fn a_copy_that_fails_in_the_background_names_the_folder_and_what_to_do() {
|
||||
let dir = scratch("copy");
|
||||
let folder = dir.join("recovery");
|
||||
let shown = folder.to_string_lossy().into_owned();
|
||||
let services = Services { write_shared: Some(Arc::new(|_: &str, _: &[u8]| Ok(()))), ..Default::default() };
|
||||
let mut app = app_in_folder(&shown, services);
|
||||
assert_eq!(recovery::tick(&mut app, 120.0), 1);
|
||||
assert_eq!(app.background.jobs.len(), 1, "on the worker");
|
||||
background::wait_all(&mut app);
|
||||
assert_eq!(app.ui.status, "Saved recovery data for Untitled-1");
|
||||
// A folder with a file in it takes the copy's place, so the next copy can't be written.
|
||||
let name = app.session.doc().unwrap().recovery.as_ref().unwrap().file.clone();
|
||||
let copy = folder.join(format!("{name}.vectorcraft"));
|
||||
std::fs::remove_file(©).unwrap();
|
||||
std::fs::create_dir(©).unwrap();
|
||||
std::fs::write(copy.join("in-the-way"), b"").unwrap();
|
||||
app.run("shape.ellipse", json!({"x": 100, "y": 10, "width": 20, "height": 20})).unwrap();
|
||||
assert_eq!(recovery::tick(&mut app, 240.0), 1);
|
||||
// A folder chosen while the copy runs isn't the one that failed.
|
||||
app.session.prefs.recovery_folder = dir.join("chosen-later").to_string_lossy().into_owned();
|
||||
background::wait_all(&mut app);
|
||||
let end = format!(". Copies go to {shown}, the default recovery folder{TO_DO}");
|
||||
assert!(app.ui.status.starts_with("Couldn't save recovery data for Untitled-1: ") && app.ui.status.ends_with(&end), "{}", app.ui.status);
|
||||
// Kept for replies to automation clients, which hide it outside their read roots.
|
||||
assert_eq!(app.recovery.named, std::slice::from_ref(&shown));
|
||||
drop(app);
|
||||
let _ = std::fs::remove_dir_all(&dir);
|
||||
}
|
||||
|
||||
/// A store the host installed whose document copies can't be written (other entries, such as
|
||||
/// locks, can).
|
||||
struct Refusing(MemoryStore);
|
||||
|
||||
impl RecoveryStore for Refusing {
|
||||
fn list(&self) -> Result<Vec<String>, String> {
|
||||
self.0.list()
|
||||
}
|
||||
fn read(&self, name: &str) -> Result<Vec<u8>, String> {
|
||||
self.0.read(name)
|
||||
}
|
||||
fn write(&self, name: &str, bytes: &[u8]) -> Result<(), String> {
|
||||
if name.ends_with(".vectorcraft") { Err("the store is full".into()) } else { self.0.write(name, bytes) }
|
||||
}
|
||||
fn remove(&self, name: &str) -> Result<(), String> {
|
||||
self.0.remove(name)
|
||||
}
|
||||
fn location(&self) -> String {
|
||||
self.0.location()
|
||||
}
|
||||
fn lock(&self, area: &str) -> Result<vectorcraft_engine::cmd::recovery::Lock, String> {
|
||||
self.0.lock(area)
|
||||
}
|
||||
fn now(&self) -> Option<i64> {
|
||||
self.0.now()
|
||||
}
|
||||
}
|
||||
|
||||
/// With a store the host installed there is no folder to name: a copy that fails shows the job's
|
||||
/// own line with the document's title, both on the worker and when it is written right away.
|
||||
#[test]
|
||||
fn a_copy_that_fails_in_a_host_store_names_the_document() {
|
||||
let worker = Services { write_shared: Some(Arc::new(|_: &str, _: &[u8]| Ok(()))), ..Default::default() };
|
||||
for services in [worker, Services::default()] {
|
||||
let store: Arc<dyn RecoveryStore> = Arc::new(Refusing(MemoryStore::default()));
|
||||
let mut app = VectorcraftApp::new(Session::new(), Services { recovery_store: Some(store), ..services });
|
||||
app.run("file.new", json!({"width": 200, "height": 100})).unwrap();
|
||||
app.run("shape.rectangle", json!({"x": 10, "y": 10, "width": 50, "height": 20})).unwrap();
|
||||
app.session.prefs.autosave_interval = 2;
|
||||
recovery::tick(&mut app, 0.0);
|
||||
assert_eq!(recovery::tick(&mut app, 120.0), 1);
|
||||
background::wait_all(&mut app);
|
||||
assert_eq!(app.ui.status, "Saving recovery data for Untitled-1 failed: the store is full");
|
||||
}
|
||||
}
|
||||
|
||||
/// Issue #367: a tab whose timers were paused (in the background) long enough for another tab to
|
||||
/// take it for gone and discard its copy writes the copy again on its first heartbeat after it
|
||||
/// resumes, even with the timer off (the copy was written by hand).
|
||||
|
||||
@@ -1540,6 +1540,7 @@ Moved from the ROADMAP's "Shipped so far" on 2026-10-10. Update it when a featur
|
||||
- `.vectorcraft` (lossless JSON, compressed, atomic saves, save down to v1), Save As with a format chooser, Save a Copy, Revert, templates, Data Recovery after a crash (browser tabs hold their copies with Web Locks too, so a background tab's copies are never taken for a crash's, and a tab repairs copies another removed when it resumes: #367), background save and export. The desktop app writes its warnings and errors (graphics adapter, a lost graphics device, panics the guard recovered from) to standard error and to `logs/vectorcraft.log` next to the preferences, the two previous runs kept and each file capped at 16 MiB, so a launch without a terminal still leaves something to attach to a bug report (#465). Native documents with a lot of path data (traced or generated art, in layers, symbols or patterns) are saved as compact JSON, about a fifth of the size; small documents stay pretty-printed (#1492). Saving to a network drive on macOS falls back to a plain fsync when the share refuses a full flush (#1625, part of #1620; not confirmed on a real share), and a save still succeeds when a folder refuses the temporary file, the rename over the document or copying permissions: the content is written elsewhere first and copied in, and a failed copy keeps the temporary file and names it (#1649, part of #1620). A document opened by a relative path finds its relatively linked images, and `vectorcraft-cli convert` lists what reading the input left out as `importWarnings` (#1606, fixes #1604).
|
||||
Preferences › File Handling › Data Recovery › Folder has a Choose… button on the desktop that picks the folder Data Recovery keeps its copies in ([Illustrator reference, Set Data Recovery preferences](https://web.archive.org/web/20210601162814/https://helpx.adobe.com/pdf/illustrator_reference.pdf)); a picked folder that Data Recovery cannot create its folders in or list is refused with a status message, and the field keeps its value. OK applies the same check to a folder typed into the field (VectorCraft's own rule): when it fails, the dialog stays open, the status bar says why and no preference changes; an empty field (the default folder) and the folder already saved are not checked. Preferences › Plug-ins & Scratch Disks is where additional plug-ins folders are set ([Illustrator preferences help](https://helpx.adobe.com/illustrator/desktop/get-started/preferences-and-settings/set-app-preferences.html)); its Additional Plug-ins Folder has a Choose… button on the desktop as well, VectorCraft's own, matching Data Recovery's, and VectorCraft's own rule refuses a picked or typed folder whose contents can't be listed. Additional Fonts Folder and Templates Folder stay typed only.
|
||||
`prefs.set` applies the dialog's check to `recoveryFolder` and `pluginsFolder` for every caller (VectorCraft's own rule): a folder that fails returns an error and no preference changes; an empty value and the folder already saved are not checked.
|
||||
When a Data Recovery copy can't be written, the status bar and the log show the error (with the document's title when one document's copy fails), the folder copies go to, whether that is the default recovery folder or the folder set in Preferences, and the preference that picks another folder (`recoveryFolder`; VectorCraft's own message).
|
||||
A name typed in the desktop save panel without the file type's extension gets it, and when a file of that name exists, which the panel did not ask about, Save, Save As, Save a Copy, Save as Template, the exports and every other write through a save panel ask before replacing it (dialog `replaceFile`; Cancel writes nothing).
|
||||
A name returned by the desktop save panel with the extension of a format the save does not write has it replaced with the saved format's: Save As of a new document saves `card.ait` and `card.png` as `card.vectorcraft`, and Save as Template saves `card.pdf` as `card.vctemplate`. An extension that names no format stays part of the name (`notes.v2` is saved as `notes.v2.vectorcraft`).
|
||||
Export As, Save as PDF, Save for Office Documents, Save for Web, Text Export Options, print to file, the presets' Export… and the library, swatch and Document Info saves replace a typed extension of another format than the one they write in the same way: Export As PNG writes `card.svg` as `card.png`, Save as PDF writes `card.png` as `card.pdf`, and `document.exportSelection` with a `format` suggests and adds that format's extension. An extension of the written format stays as typed in any letter case (`photo.JPEG` for JPEG), Export As SVG writes `art.svgz` compressed, and `document.exportSelection` without a `format` writes the format the typed extension names (`tests/saveext.rs`).
|
||||
|
||||
Reference in New Issue
Block a user