feat(core,fuse,cli,gui): report changes Drive refuses as sync issues

A change Drive refuses because the storage is full, access was taken away,
its folder is gone, a folder limit is reached or the change was rejected
used to look like any other failure until six attempts had passed. The
drain now sorts the refusal into an issue and stores it on the queued op
(schema 38), so it needs attention at once in the app, tray and CLI. The
change stays queued and is retried; nothing is deleted.

The queue listing carries the issue and whether the op has file content.
ExportPendingOp copies that content to a new file: the Sync page offers it
as an Export button next to each issue, and the CLI as
`pdfs sync export <id> <dest>`. `pdfs sync issues` lists what needs
attention, and `pdfs sync queue` shows the issue per change.

docs/MILESTONE-3.0.0-STATUS.md tracks what is left for 3.0.0.
This commit is contained in:
nvrl committed 2026-10-04 03:18:57 +02:00
1 parent 77d0f254fc
commit a6f36d56f3
21 files changed
+2251 -1092

No files matched your search

+100 -1
View File
@@ -14,7 +14,7 @@ use pdfs_core::cache::ContentCache;
use pdfs_core::config::AppDirs;
use pdfs_core::control::{
ConflictKeep, ErrorKind, MountKind, RefreshScope, Request as CtlRequest,
Response as CtlResponse, RestoreItem as CtlRestoreItem, ShareEntryKind, SyncPhase,
Response as CtlResponse, RestoreItem as CtlRestoreItem, ShareEntryKind, SyncIssue, SyncPhase,
pending_summary,
};
use pdfs_core::db::Db;
@@ -677,6 +677,15 @@ enum SyncCmd {
},
/// List uploads and changes not yet on Proton Drive.
Queue,
/// List queued changes Proton Drive refused or that keep failing, and what to do.
Issues,
/// Save the content of a queued upload (by id from `sync queue`) to a file.
Export {
/// Queue id.
id: i64,
/// Where to save it: a new file, or an existing folder to save it in.
dest: PathBuf,
},
/// Retry a queued operation now (by id from `sync queue`), or every failed one.
Retry {
/// Queue id; omit to retry every failed operation.
@@ -1028,6 +1037,8 @@ fn cmd_sync(action: SyncCmd) -> Result<()> {
})?)?
}
SyncCmd::Queue => return cmd_sync_queue(),
SyncCmd::Issues => return cmd_sync_issues(),
SyncCmd::Export { id, dest } => return cmd_sync_export(id, &dest),
SyncCmd::Limit { up, down } => return cmd_sync_limit(up, down),
SyncCmd::Retry { id } => ok_or_bail(control_request(CtlRequest::RetryPendingOp { id })?)?,
SyncCmd::Resume { folder: None } => {
@@ -1106,6 +1117,9 @@ fn cmd_sync_queue() -> Result<()> {
(false, _) => "due now".to_string(),
};
println!("[{}] {} {} ({state})", op.id, op.kind, op.path);
if let Some(issue) = op.issue {
println!(" needs attention: {}", issue_text(issue));
}
if let Some(error) = &op.last_error {
println!(" failed {} time(s): {error}", op.attempts);
}
@@ -1117,6 +1131,91 @@ fn cmd_sync_queue() -> Result<()> {
Ok(())
}
/// `pdfs sync issues`: the queued changes that need the user, and what to do.
fn cmd_sync_issues() -> Result<()> {
let response = control_request(CtlRequest::ListPendingOps)?;
let items = match response {
CtlResponse::PendingOps { items } => items,
CtlResponse::Error { message, kind } => bail!("{}", cli_error(kind, &message)),
other => bail!("unexpected response: {other:?}"),
};
let issues: Vec<_> = items.into_iter().filter(|op| op.failing).collect();
if json_enabled() {
println!("{}", serde_json::to_string_pretty(&issues)?);
return Ok(());
}
if issues.is_empty() {
println!("No sync issues.");
return Ok(());
}
for op in issues {
println!("[{}] {} {}", op.id, op.kind, op.path);
match op.issue {
Some(issue) => println!(" {}", issue_text(issue)),
None => println!(" keeps failing; it is retried."),
}
if let Some(error) = &op.last_error {
println!(" last error: {error}");
}
if op.exportable {
println!(
" save a copy: pdfs sync export {} <file or folder>",
op.id
);
}
}
Ok(())
}
/// What a sync issue means, and what the user can do about it.
fn issue_text(issue: SyncIssue) -> &'static str {
match issue {
SyncIssue::Quota => {
"Proton Drive storage is full. Free up space or upgrade; the change is retried."
}
SyncIssue::Access => {
"you can no longer change this on Proton Drive, for example because a share was \
revoked. Save a copy to keep the content."
}
SyncIssue::Missing => {
"the file or its folder is gone from Proton Drive. Save a copy to keep the content."
}
SyncIssue::Limit => {
"the folder holds too many items or is nested too deep. Move the file to another \
folder."
}
SyncIssue::Rejected => {
"Proton Drive rejected the change, for example the name. Rename the file."
}
SyncIssue::Unknown => "Proton Drive refused the change.",
}
}
/// `pdfs sync export`: save a queued upload's content. A folder as `dest`
/// gets the file under its own name.
fn cmd_sync_export(id: i64, dest: &Path) -> Result<()> {
let mut dest =
std::path::absolute(dest).with_context(|| format!("resolving {}", dest.display()))?;
if dest.is_dir() {
let items = match control_request(CtlRequest::ListPendingOps)? {
CtlResponse::PendingOps { items } => items,
CtlResponse::Error { message, kind } => bail!("{}", cli_error(kind, &message)),
other => bail!("unexpected response: {other:?}"),
};
let Some(op) = items.iter().find(|op| op.id == id) else {
bail!("no queued change {id}; see `pdfs sync queue`");
};
let name = Path::new(&op.path)
.file_name()
.with_context(|| format!("{} has no file name", op.path))?;
dest.push(name);
}
ok_or_bail(control_request(CtlRequest::ExportPendingOp {
id,
dest: dest.display().to_string(),
})?)
}
/// `pdfs sync restore`: list what this machine's device holds, confirm where
/// each folder should land, then hand the mapping to the daemon.
///
+83
View File
@@ -477,6 +477,10 @@ pub enum Request {
/// Retry a backed-off queued op now instead of waiting out its backoff;
/// every failed op when `id` is `None`. Replies with [`Response::Ok`].
RetryPendingOp { id: Option<i64> },
/// Copy the content of a queued upload (`id` from
/// [`Request::ListPendingOps`]) to `dest`, an absolute path that must not
/// exist yet. The op stays queued. Replies with [`Response::Ok`].
ExportPendingOp { id: i64, dest: String },
/// List the `(sync-conflict …)` copies under My Files and in synced
/// folders. Replies with
/// [`Response::Conflicts`].
@@ -880,6 +884,59 @@ pub struct PendingOpInfo {
pub parked: bool,
/// Failed often enough to count as stuck.
pub failing: bool,
/// Why Drive refused it, when it did; such an op needs attention at once.
#[serde(default)]
pub issue: Option<SyncIssue>,
/// Carries file content that [`Request::ExportPendingOp`] can save.
#[serde(default)]
pub exportable: bool,
}
/// Why Drive refused a queued change (in [`PendingOpInfo`]). The change stays
/// queued and keeps being retried; nothing is deleted.
#[derive(Serialize, Deserialize, Debug, Clone, Copy, PartialEq, Eq)]
#[serde(rename_all = "snake_case")]
pub enum SyncIssue {
/// The account's storage is full.
Quota,
/// The account may no longer change the file or its folder, for example
/// because a share was revoked.
Access,
/// The file or the folder it goes into is gone from Drive.
Missing,
/// The folder holds too many items, or is nested too deep.
Limit,
/// Drive rejected the change, for example a name it does not accept.
Rejected,
/// An issue from a newer daemon.
#[serde(other)]
Unknown,
}
impl SyncIssue {
/// The name stored in the database and sent on the wire.
pub fn as_str(self) -> &'static str {
match self {
SyncIssue::Quota => "quota",
SyncIssue::Access => "access",
SyncIssue::Missing => "missing",
SyncIssue::Limit => "limit",
SyncIssue::Rejected => "rejected",
SyncIssue::Unknown => "unknown",
}
}
/// The issue stored as `name`.
pub fn parse(name: &str) -> Self {
match name {
"quota" => SyncIssue::Quota,
"access" => SyncIssue::Access,
"missing" => SyncIssue::Missing,
"limit" => SyncIssue::Limit,
"rejected" => SyncIssue::Rejected,
_ => SyncIssue::Unknown,
}
}
}
/// One synced local folder on this machine's device (in [`Response::SyncFolders`]).
@@ -3290,6 +3347,13 @@ mod tests {
},
r#"{"SaveRevisionAsByUid":{"uid":"vol~link","revision_id":"rev-3","dest":"/tmp/out.bin"}}"#,
),
(
Request::ExportPendingOp {
id: 7,
dest: "/tmp/out.bin".into(),
},
r#"{"ExportPendingOp":{"id":7,"dest":"/tmp/out.bin"}}"#,
),
];
for (request, wire) in cases {
assert_eq!(serde_json::to_string(&request).unwrap(), wire);
@@ -3298,6 +3362,25 @@ mod tests {
}
}
/// A daemon that predates sync issues sends neither field, and a newer one
/// may send an issue this build does not know.
#[test]
fn a_queued_op_from_another_daemon_version_still_decodes() {
let old = r#"{"id":1,"kind":"create","path":"a.txt","attempts":0,"last_error":null,
"queued_at":5,"next_attempt_at":5,"parked":false,"failing":false}"#;
let op: PendingOpInfo = serde_json::from_str(old).unwrap();
assert_eq!(op.issue, None);
assert!(!op.exportable);
let newer = old.replace(r#""failing":false"#, r#""failing":true,"issue":"embargo""#);
let op: PendingOpInfo = serde_json::from_str(&newer).unwrap();
assert_eq!(op.issue, Some(SyncIssue::Unknown));
assert_eq!(
SyncIssue::parse(SyncIssue::Quota.as_str()),
SyncIssue::Quota
);
}
/// A front-end that predates the favorites filter sends no `favorites`
/// field, and must keep getting the whole timeline rather than an empty page.
#[test]
+23 -1
View File
@@ -11,7 +11,7 @@ use super::Db;
use crate::Result;
/// Current schema version. Bump on every forward migration added below.
pub(super) const SCHEMA_VERSION: i64 = 37;
pub(super) const SCHEMA_VERSION: i64 = 38;
impl Db {
pub(super) fn migrate(&self) -> Result<()> {
@@ -363,6 +363,22 @@ impl Db {
tx.execute_batch(MIGRATION_V37)?;
}
}
if current < 38 {
// Same guards as V26-V37.
let has_column: bool = tx.query_row(
"SELECT COUNT(*) FROM pragma_table_info('pending_op') WHERE name = 'issue'",
[],
|row| row.get::<_, i64>(0),
)? > 0;
let has_ops: bool = tx.query_row(
"SELECT COUNT(*) FROM sqlite_master WHERE type = 'table' AND name = 'pending_op'",
[],
|row| row.get::<_, i64>(0),
)? > 0;
if has_ops && !has_column {
tx.execute_batch(MIGRATION_V38)?;
}
}
tx.execute(
"INSERT INTO sync_state (key, value) VALUES ('schema_version', ?1)
ON CONFLICT(key) DO UPDATE SET value = excluded.value",
@@ -1164,3 +1180,9 @@ CREATE INDEX pending_op_parent ON pending_op(parent_uid);
CREATE INDEX idx_pending_op_claimed
ON pending_op(uid) WHERE claimed_at <> 0;
";
/// Schema v38: why Drive refused a queued op, when it did (a sync issue).
/// `NULL` for an op that has not been refused, which is every op migrated.
const MIGRATION_V38: &str = "
ALTER TABLE pending_op ADD COLUMN issue TEXT;
";
+27 -4
View File
@@ -2,6 +2,8 @@
//! the remote has not yet seen. Rebuilt into memory on mount and drained in row
//! order, so a child never drains before the parent that gives it a real uid.
use std::collections::HashMap;
use rusqlite::{OptionalExtension, params};
use serde::{Deserialize, Serialize};
@@ -257,7 +259,8 @@ pub struct PendingCounts {
/// never drain on their own, so counting them as "waiting to upload" would
/// have the front-end promise progress that is not coming.
pub parked: i64,
/// Ops that have failed at least [`FAILING_ATTEMPTS`] times. A permanently
/// Ops that have failed at least [`FAILING_ATTEMPTS`] times, or that Drive
/// refused ([`Db::set_op_issue`]). A permanently
/// failing op never wedges the queue — the backoff sees to that — which is
/// exactly why it needs surfacing: it retries forever, invisibly.
pub failing: i64,
@@ -1028,15 +1031,15 @@ impl Db {
|r| r.get(0),
)?;
let failing = conn.query_row(
"SELECT COUNT(*) FROM pending_op WHERE attempts >= ?1",
"SELECT COUNT(*) FROM pending_op WHERE attempts >= ?1 OR issue IS NOT NULL",
params![FAILING_ATTEMPTS],
|r| r.get(0),
)?;
let last_error = conn
.query_row(
"SELECT last_error FROM pending_op
WHERE attempts >= ?1 AND last_error IS NOT NULL
ORDER BY attempts DESC LIMIT 1",
WHERE (attempts >= ?1 OR issue IS NOT NULL) AND last_error IS NOT NULL
ORDER BY issue IS NULL, attempts DESC LIMIT 1",
params![FAILING_ATTEMPTS],
|r| r.get::<_, Option<String>>(0),
)
@@ -1132,6 +1135,26 @@ impl Db {
Ok(())
}
/// Record why Drive refused op `id`, or that the latest failure was not a
/// refusal (`None`). An op with an issue counts as failing at once.
pub fn set_op_issue(&self, id: i64, issue: Option<&str>) -> Result<()> {
self.conn.lock().execute(
"UPDATE pending_op SET issue = ?2 WHERE id = ?1",
params![id, issue],
)?;
Ok(())
}
/// The issue of every op Drive refused, by op id.
pub fn op_issues(&self) -> Result<HashMap<i64, String>> {
let conn = self.read();
let mut stmt = conn.prepare("SELECT id, issue FROM pending_op WHERE issue IS NOT NULL")?;
let rows = stmt
.query_map([], |r| Ok((r.get(0)?, r.get(1)?)))?
.collect::<rusqlite::Result<_>>()?;
Ok(rows)
}
/// Make a create due again if it was renamed or moved
/// ([`Db::rewrite_op_target`]) while the attempt that just failed was on
/// the wire, `parent_uid` and `name` being what that attempt sent. What it
+27
View File
@@ -6138,6 +6138,33 @@ fn retry_now_makes_a_backed_off_op_due_but_leaves_parked_ops_parked() {
assert_eq!(due(parked), ops::PARK_UNTIL);
}
/// A change Drive refused needs the user now, not after six more failures, and
/// its refusal is the error the status leads with.
#[test]
fn an_op_with_an_issue_counts_as_failing_at_once() {
let db = Db::open_in_memory().unwrap();
queued_op(&db, "vol~a", 1, 90_000);
let refused = queued_op(&db, "vol~b", 1, 90_000);
assert_eq!(db.pending_op_counts().unwrap().failing, 0);
db.record_op_failure(refused, "storage quota exceeded", 90_000)
.unwrap();
db.set_op_issue(refused, Some("quota")).unwrap();
let counts = db.pending_op_counts().unwrap();
assert_eq!(counts.failing, 1);
assert_eq!(counts.last_error.as_deref(), Some("storage quota exceeded"));
assert_eq!(
db.op_issues().unwrap(),
std::collections::HashMap::from([(refused, "quota".to_string())])
);
// The op stays queued with its bytes; clearing the issue is all it takes.
db.set_op_issue(refused, None).unwrap();
assert_eq!(db.pending_op_counts().unwrap().failing, 0);
assert!(db.op_issues().unwrap().is_empty());
assert_eq!(db.pending_ops().unwrap().len(), 2);
}
#[test]
fn retry_all_touches_only_ops_that_have_failed() {
let db = Db::open_in_memory().unwrap();
+8
View File
@@ -1404,6 +1404,14 @@ fn handle_control_conn(core: &Core, username: &str, mountpoint: &Path, stream: U
Ok(items) => CtlResponse::PendingOps { items },
Err(e) => CtlResponse::error(e),
},
Ok(CtlRequest::ExportPendingOp { id, dest }) => {
match core.export_pending_op(id, Path::new(&dest)) {
Ok(written) => CtlResponse::Ok {
message: format!("wrote {} to {dest}", human_bytes(written)),
},
Err(e) => CtlResponse::error(e),
}
}
Ok(CtlRequest::RetryPendingOp { id }) => match core.retry_pending_ops(id) {
Ok(0) if id.is_some() => CtlResponse::Ok {
message: "nothing to retry: the operation is already due or waiting for a rename"
+95 -1
View File
@@ -31,7 +31,7 @@ use parking_lot::Mutex;
use pdfs_core::batch;
use pdfs_core::cache::{Baseline, StagedWrite};
use pdfs_core::control::{ActivityKind, TransferDirection};
use pdfs_core::control::{ActivityKind, SyncIssue, TransferDirection};
use pdfs_core::db::{
CreateLanding, CreateRetired, OP_CREATE, OP_MKDIR, OP_RENAME, OP_REVISION, OP_TRASH,
PARK_EXPIRY_MS, PendingOp, RenameMeta,
@@ -40,6 +40,7 @@ use proton_drive_rs::proton_sdk::ids::NodeUid;
use proton_drive_rs::{Node, NodeKind};
use tracing::{debug, error, info, warn};
use super::link::is_network_error;
use super::state::{Intervals, PendingRevision};
use super::transfers::CountingReader;
use super::{
@@ -48,6 +49,8 @@ use super::{
is_already_exists, is_gone, is_local_uid_str, media_type_for, node_revision_id, node_size,
now_millis, now_secs, parse_node_uid,
};
use proton_drive_rs::proton_sdk::api::ResponseCode;
use proton_drive_rs::proton_sdk::error::ProtonError;
const DRAIN_ACCESS_RECHECK: Duration = Duration::from_secs(5);
@@ -383,6 +386,11 @@ impl Core {
self.wait_for_drain_work();
continue;
}
// A failure to reach Drive says nothing about an earlier refusal,
// so it keeps the issue that refusal recorded.
if let Some(issue) = refusal(e.as_ref()) {
self.record_issue(&op, issue);
}
match self.db.retry_if_retargeted(
op.id,
op.parent_uid.as_deref(),
@@ -464,6 +472,9 @@ impl Core {
{
error!(uid = %op.uid, %error, "recording an access-deferral failure failed");
}
if reason != AccessDeferral::RemoteUnreachable {
self.record_issue(op, Some(SyncIssue::Access));
}
} else {
debug!(
uid = %op.uid,
@@ -525,6 +536,7 @@ impl Core {
) {
error!(uid = %op.uid, %error, "recording a missing-authority failure failed");
}
self.record_issue(op, Some(SyncIssue::Missing));
self.release_claim(op);
}
Err(error) => {
@@ -535,6 +547,13 @@ impl Core {
}
}
/// Store why Drive refused `op`, or that its latest failure was no refusal.
fn record_issue(&self, op: &PendingOp, issue: Option<SyncIssue>) {
if let Err(error) = self.db.set_op_issue(op.id, issue.map(SyncIssue::as_str)) {
error!(uid = %op.uid, %error, "recording a sync issue failed");
}
}
/// Hand a claimed op back to the queue, logging rather than propagating —
/// there is no caller left to propagate to, and the drain must not stop.
fn release_claim(&self, op: &PendingOp) {
@@ -2217,6 +2236,30 @@ fn moved_elsewhere(meta: &RenameMeta, node: &Node, parent: &NodeUid, name: &str)
!at(&meta.original_parent_uid, original_name) && !at(&parent.to_string(), name)
}
/// What a failed attempt says about its op's sync issue: `None` when Drive
/// could not be reached, which says nothing; otherwise the issue Drive's answer
/// is, or `Some(None)` for a failure that is not a refusal.
fn refusal(e: &(dyn std::error::Error + 'static)) -> Option<Option<SyncIssue>> {
let proton = std::iter::successors(Some(e), |e| e.source())
.find_map(|e| e.downcast_ref::<ProtonError>())?;
if is_network_error(proton) {
return None;
}
let ProtonError::Api(api) = proton else {
return Some(None);
};
Some(match api.code {
ResponseCode::InsufficientQuota
| ResponseCode::InsufficientSpace
| ResponseCode::InsufficientVolumeQuota => Some(SyncIssue::Quota),
ResponseCode::Forbidden | ResponseCode::NotEnoughPermissions => Some(SyncIssue::Access),
ResponseCode::DoesNotExist => Some(SyncIssue::Missing),
ResponseCode::TooManyChildren | ResponseCode::NestingTooDeep => Some(SyncIssue::Limit),
ResponseCode::InvalidValue | ResponseCode::IncompatibleState => Some(SyncIssue::Rejected),
_ => None,
})
}
/// What the park sweep does with one parked create.
#[derive(Debug, PartialEq, Eq)]
enum ParkVerdict {
@@ -2348,6 +2391,57 @@ mod tests {
/// A transient create is queued a moment before its node is written. A
/// sweep in between dropped it, and the rename to the finished name then
/// failed with `EBUSY` (B145).
#[test]
fn a_refusal_from_drive_is_sorted_into_an_issue_and_the_network_is_not() {
use proton_drive_rs::proton_sdk::error::ProtonApiError;
let api = |code, http_status| {
ProtonError::Api(ProtonApiError {
code,
http_status,
message: String::new(),
details: None,
})
};
let issue = |e: ProtonError| refusal(&e);
assert_eq!(
issue(api(ResponseCode::InsufficientQuota, 422)),
Some(Some(SyncIssue::Quota))
);
assert_eq!(
issue(api(ResponseCode::NotEnoughPermissions, 403)),
Some(Some(SyncIssue::Access))
);
assert_eq!(
issue(api(ResponseCode::DoesNotExist, 404)),
Some(Some(SyncIssue::Missing))
);
assert_eq!(
issue(api(ResponseCode::TooManyChildren, 422)),
Some(Some(SyncIssue::Limit))
);
// A refusal nobody sorted clears an earlier issue; the network keeps it.
assert_eq!(issue(api(ResponseCode::AlreadyExists, 422)), Some(None));
assert_eq!(issue(api(ResponseCode::RequestTimeout, 408)), None);
// An error that is no refusal from Drive at all is no issue either.
assert_eq!(refusal(&std::io::Error::other("disk")), None);
// The drain sees Drive's error wrapped by whatever called it.
#[derive(Debug)]
struct Wrapped(ProtonError);
impl std::fmt::Display for Wrapped {
fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
f.write_str("uploading")
}
}
impl std::error::Error for Wrapped {
fn source(&self) -> Option<&(dyn std::error::Error + 'static)> {
Some(&self.0)
}
}
let wrapped = Wrapped(api(ResponseCode::InsufficientSpace, 422));
assert_eq!(refusal(&wrapped), Some(Some(SyncIssue::Quota)));
}
#[test]
fn a_parked_create_is_dropped_only_once_its_file_is_gone_and_closed() {
let now = PARK_EXPIRY_MS * 10;
+117 -5
View File
@@ -1,12 +1,14 @@
//! The user's view of the pending-op queue: what has not reached the remote
//! yet, why, and a way to stop waiting out a backoff.
//!
//! Read-only apart from "retry now", which only moves a row's next-attempt time.
//! Nothing here drops a queued op: its staged blob is the only copy of the
//! user's write (see `docs/RECOVERY.md`).
//! Read-only apart from "retry now", which only moves a row's next-attempt time,
//! and "export", which copies a staged blob out. Nothing here drops a queued op:
//! its staged blob is the only copy of the user's write (see `docs/RECOVERY.md`).
use super::*;
use pdfs_core::control::PendingOpInfo;
use std::io::Write;
use pdfs_core::control::{PendingOpInfo, SyncIssue};
use pdfs_core::db::{FAILING_ATTEMPTS, PARK_UNTIL};
impl Core {
@@ -16,10 +18,15 @@ impl Core {
.db
.pending_ops()
.map_err(|e| CoreError::internal(format!("listing the queue: {e}")))?;
let issues = self
.db
.op_issues()
.map_err(|e| CoreError::internal(format!("listing sync issues: {e}")))?;
Ok(ops
.into_iter()
.map(|op| {
let parked = op.next_attempt_at >= PARK_UNTIL;
let exportable = exportable(&op).is_some();
let path = self
.db
.node_path(&op.uid)
@@ -37,7 +44,9 @@ impl Core {
queued_at: op.created_at / 1000,
next_attempt_at: (!parked).then_some(op.next_attempt_at / 1000),
parked,
failing: op.attempts >= FAILING_ATTEMPTS,
failing: op.attempts >= FAILING_ATTEMPTS || issues.contains_key(&op.id),
issue: issues.get(&op.id).map(|issue| SyncIssue::parse(issue)),
exportable,
}
})
.collect())
@@ -57,4 +66,107 @@ impl Core {
}
Ok(moved)
}
/// Copy the content of queued op `id` to `dest`, which must not exist yet.
/// The op stays queued. Returns the bytes written.
pub(crate) fn export_pending_op(&self, id: i64, dest: &Path) -> CoreResult<u64> {
if !dest.is_absolute() {
return Err(CoreError::invalid(format!(
"destination must be an absolute path: {}",
dest.display()
)));
}
let ops = self
.db
.pending_ops()
.map_err(|e| CoreError::internal(format!("listing the queue: {e}")))?;
let op = ops
.iter()
.find(|op| op.id == id)
.ok_or_else(|| CoreError::not_found(format!("no queued change {id}")))?;
let blob = exportable(op).ok_or_else(|| {
CoreError::invalid(format!("queued change {id} carries no file content"))
})?;
let written = copy_to_new_file(blob, dest)?;
info!(id, dest = %dest.display(), written, "exported a queued change's content");
Ok(written)
}
}
/// Copy `blob` to `dest`, which must not exist: never replace something the
/// user already has.
fn copy_to_new_file(blob: &Path, dest: &Path) -> CoreResult<u64> {
let mut source = File::open(blob)
.map_err(|e| CoreError::internal(format!("open {}: {e}", blob.display())))?;
let mut out = std::fs::OpenOptions::new()
.write(true)
.create_new(true)
.open(dest)
.map_err(|e| match e.kind() {
std::io::ErrorKind::AlreadyExists => {
CoreError::invalid(format!("{} already exists", dest.display()))
}
_ => CoreError::internal(format!("create {}: {e}", dest.display())),
})?;
std::io::copy(&mut source, &mut out)
.and_then(|written| out.flush().and(out.sync_all()).map(|()| written))
.map_err(|e| CoreError::internal(format!("write {}: {e}", dest.display())))
}
/// The staged blob of an op that carries file content.
fn exportable(op: &PendingOp) -> Option<&Path> {
matches!(op.kind.as_str(), OP_CREATE | OP_REVISION)
.then_some(op.blob_path.as_deref())
.flatten()
.map(Path::new)
}
#[cfg(test)]
mod tests {
use super::*;
fn op(kind: &str, blob: Option<&str>) -> PendingOp {
PendingOp {
id: 1,
kind: kind.to_string(),
uid: "vol~a".to_string(),
parent_uid: None,
name: None,
blob_path: blob.map(str::to_string),
meta_json: None,
created_at: 0,
attempts: 0,
last_error: None,
next_attempt_at: 0,
}
}
#[test]
fn only_a_change_that_carries_file_content_can_be_exported() {
assert!(exportable(&op(OP_CREATE, Some("/staging/a"))).is_some());
assert!(exportable(&op(OP_REVISION, Some("/staging/a"))).is_some());
assert!(exportable(&op(OP_CREATE, None)).is_none());
assert!(exportable(&op(OP_RENAME, None)).is_none());
assert!(exportable(&op(OP_TRASH, None)).is_none());
}
#[test]
fn an_export_copies_the_bytes_and_never_replaces_a_file() {
let dir = std::env::temp_dir().join(format!("pdfs-export-{}", std::process::id()));
std::fs::create_dir_all(&dir).unwrap();
let blob = dir.join("blob");
std::fs::write(&blob, b"queued bytes").unwrap();
let dest = dir.join("copy.txt");
assert_eq!(copy_to_new_file(&blob, &dest).unwrap(), 12);
assert_eq!(std::fs::read(&dest).unwrap(), b"queued bytes");
std::fs::write(&dest, b"the user's own").unwrap();
assert!(copy_to_new_file(&blob, &dest).is_err());
assert_eq!(std::fs::read(&dest).unwrap(), b"the user's own");
// The staged blob is the only copy of the change: an export leaves it.
assert_eq!(std::fs::read(&blob).unwrap(), b"queued bytes");
let _ = std::fs::remove_dir_all(&dir);
}
}
+2 -2
View File
@@ -75,8 +75,8 @@ use pdfs_core::control::{
DirEntry, ErrorKind, ImportSummary, InvitationInfo, JobItem, MappingProgress, PendingOpInfo,
PhotoItem, PhotoKind, PhotoMonth, PlaceInfo, PublicLinkInfo, RefreshScope, Request, Response,
RestorableFolder, RestoreItem, RevisionInfo, SearchHit, ShareEntry, ShareEntryKind, SharedItem,
SyncFolderInfo, SyncPhase, SyncProgress, ThumbnailBuildStatus, Topic, TransferDirection,
TransferItem, send,
SyncFolderInfo, SyncIssue, SyncPhase, SyncProgress, ThumbnailBuildStatus, Topic,
TransferDirection, TransferItem, send,
};
use pdfs_core::mounts::{MountAccess, MountKind, MountMode, MountSpec};
+87 -4
View File
@@ -70,8 +70,9 @@ pub(crate) struct LocationRow {
progress: gtk4::ProgressBar,
}
/// What a queue row shows that can change: id, attempts, next attempt, parked.
pub(crate) type QueueKey = (i64, i64, Option<i64>, bool);
/// What a queue row shows that can change: id, attempts, next attempt, parked,
/// issue.
pub(crate) type QueueKey = (i64, i64, Option<i64>, bool, Option<SyncIssue>);
/// The "Waiting to Upload" list: the daemon's pending-op queue.
pub(crate) struct QueueState {
@@ -591,7 +592,7 @@ fn repaint_queue(ui: &Rc<Ui>, items: &[PendingOpInfo]) {
items.sort_by_key(|op| (!op.failing, op.attempts == 0, op.id));
let key: Vec<QueueKey> = items
.iter()
.map(|op| (op.id, op.attempts, op.next_attempt_at, op.parked))
.map(|op| (op.id, op.attempts, op.next_attempt_at, op.parked, op.issue))
.collect();
if *queue.painted.borrow() == key {
return;
@@ -648,6 +649,10 @@ fn queue_row(ui: &Rc<Ui>, op: &PendingOpInfo, now: i64) -> adw::ActionRow {
"{action} · {state}",
&[("action", &action), ("state", &state)],
);
if let Some(issue) = op.issue {
subtitle.push('\n');
subtitle.push_str(&issue_text(issue));
}
if let Some(error) = &op.last_error {
subtitle.push('\n');
// Translators: {n} is how many attempts failed, {error} the last error message.
@@ -662,7 +667,7 @@ fn queue_row(ui: &Rc<Ui>, op: &PendingOpInfo, now: i64) -> adw::ActionRow {
.title(glib::markup_escape_text(&op.path).as_str())
.subtitle(glib::markup_escape_text(&subtitle).as_str())
.title_lines(1)
.subtitle_lines(3)
.subtitle_lines(if op.issue.is_some() { 5 } else { 3 })
.tooltip_text(&op.path)
.build();
let image = gtk4::Image::from_icon_name(if op.failing {
@@ -687,9 +692,87 @@ fn queue_row(ui: &Rc<Ui>, op: &PendingOpInfo, now: i64) -> adw::ActionRow {
retry.connect_clicked(move |_| retry_queued(&ui, Some(id)));
row.add_suffix(&retry);
}
if op.failing && op.exportable {
let export = gtk4::Button::builder()
.label(gettext("Export"))
.tooltip_text(gettext("Save a copy of this file's content elsewhere"))
.valign(gtk4::Align::Center)
.build();
export.add_css_class("flat");
let ui = ui.clone();
let id = op.id;
let name = Path::new(&op.path)
.file_name()
.map(|name| name.to_string_lossy().into_owned())
.unwrap_or_default();
export.connect_clicked(move |_| prompt_export_queued(&ui, id, &name));
row.add_suffix(&export);
}
row
}
/// What a sync issue means and what the user can do about it. The change stays
/// queued either way.
fn issue_text(issue: SyncIssue) -> String {
match issue {
SyncIssue::Quota => gettext(
"Your Proton Drive storage is full. Free up space or upgrade your plan, and this change uploads on its own.",
),
SyncIssue::Access => gettext(
"You can no longer change this on Proton Drive. Ask the owner for edit access, or export the file to keep your version.",
),
SyncIssue::Missing => gettext(
"The folder this change belongs in is gone from Proton Drive. Export the file to keep your version.",
),
SyncIssue::Limit => gettext(
"Proton Drive's limit on items in a folder or on folder depth is reached. Make room in the folder, then retry.",
),
SyncIssue::Rejected | SyncIssue::Unknown => {
gettext("Proton Drive refused this change. It stays queued and is tried again.")
}
}
}
/// Ask where to save a copy of a queued file's content, then have the daemon
/// write it there. The change itself stays queued.
fn prompt_export_queued(ui: &Rc<Ui>, id: i64, name: &str) {
let window = ui_window(ui);
let dialog = gtk4::FileDialog::builder()
.title(gettext("Export File"))
.initial_name(name)
.build();
let ui = ui.clone();
dialog.save(window.as_ref(), gio::Cancellable::NONE, move |res| {
let Ok(file) = res else { return };
let Some(dest) = file.path().and_then(|p| p.to_str().map(str::to_string)) else {
toast_error(
&ui,
&gettext("Couldn't export the file"),
&gettext("That location isn't a local file."),
);
return;
};
let rx = spawn_request(
ui.dirs.control_socket(),
Request::ExportPendingOp { id, dest },
);
let ui = ui.clone();
glib::spawn_future_local(async move {
match rx.recv().await {
Ok(Ok(Response::Ok { .. })) => toast(&ui, &gettext("File exported")),
Ok(Ok(Response::Error { message, kind })) => {
toast_failure(&ui, &gettext("Couldn't export the file"), &message, kind)
}
_ => toast_error(
&ui,
&gettext("Couldn't export the file"),
&gettext("The Proton Drive service didn't respond."),
),
}
});
});
}
/// Ask the daemon to stop waiting out one op's backoff, or every failed op's.
fn retry_queued(ui: &Rc<Ui>, id: Option<i64>) {
let rx = spawn_request(ui.dirs.control_socket(), Request::RetryPendingOp { id });
+12 -2
View File
@@ -11,8 +11,18 @@ scratch (user data in `staging/` and `recovery/` is never touched by this).
## [Unreleased]
Schema: **37**. The queue table is rebuilt so an id is never given out twice; queued changes
are kept.
Schema: **38**. The queue table is rebuilt so an id is never given out twice; queued changes
are kept. Queued changes get a column for the reason Drive refused them.
### Added
- **Sync issues.** A change Drive refuses because the storage is full, access was taken away,
its folder is gone, a folder limit is reached or Drive rejected it shows up at once as needing
attention, with what it means and what to do, instead of after six failed attempts. The
change stays queued and is still retried.
- **Export a queued file.** The Sync page's Export button and `pdfs sync export <id> <dest>`
save a copy of a queued upload's content. The upload stays queued.
- **`pdfs sync issues`** lists the changes that need attention; `pdfs sync queue` shows the
issue next to each change.
### Changed
- **Making, renaming and deleting through the mount no longer waits for Drive.** A new folder,
+52
View File
@@ -0,0 +1,52 @@
# 3.0.0: what is done and what is left
Tracks `docs/MILESTONE-3.0.0.md`. Update it with every commit that moves a phase.
## Done
- **Phase 0**: fake Drive, simulation runs, CI job (2.9.0).
- **Phase 1**: queued-op preconditions and own sealed revisions in the database (2.9.0).
- **Phase 2**: local ids, inode = local id, one tree for every mount (2.10.0).
- **Phase 3, first part**: mkdir, create, rename, unlink and rmdir on the mount are recorded
locally and sent from the queue; `"local_first": false` brings back the old path (5e0f30c).
- Fixes from the simulation and account runs since then: B141 to B147.
- **Sync issues, first cut** (§6.2): refusals sorted into issues, shown at once in the app,
tray and CLI; Export button and `pdfs sync export`; `pdfs sync issues`.
## Phase 3: left for 3.0.0
1. **Sync issues (§6.2)**: first cut done.
- [x] The drain sorts a refusal from Drive into an issue kind (quota, access, missing,
limit, rejected) and stores it on the queued op (schema 38).
- [x] An op with an issue counts as "needs attention" at once, not after six failures.
- [x] The queue listing carries the issue kind and whether its content can be exported.
- [x] Export a queued file's content (control request, `pdfs sync export`).
- [x] `pdfs sync issues`, and the issue shown in `pdfs sync queue`.
- [x] The app's Sync page shows each issue with what the user can do; Export and Retry
buttons; translated in every catalog.
- [ ] Discard an issue on purpose (after export, or for a change with no content), and
undo the local change it stood for. Not in the first cut.
- [ ] Show the issue on the node itself (file browser emblem or status). Not in the first
cut.
2. **Planner and executor (§5.4, §5.5)**: ops keyed by local id; remove `mint_local_uid`,
`finish_create` and `adopt_real_uid`; a landing create sets `remote_uid` on its row.
3. **Speed (§7)**: run independent ops in parallel, batch trashes and moves; measure 1,000 files
and 100 folders on Wi-Fi against LAN (target: within 10 %).
4. **Done-when checks**:
- [ ] Simulation passes on the Wi-Fi profile.
- [ ] Known-bug list in `sim/run.rs` is empty: B125 and B130 open; B129 and B132 fixed but
unconfirmed.
- [ ] A clean account run. The last one (2026-10-04) failed on B70 (fixed as B145) and
mirror/mirror "busy syncing" (the script now retries); not confirmed yet.
5. **Release**: the 2.9.0 and 2.10.0 tags still wait for the user's go-ahead.
## After 3.0.0
- Remove the old online path in `filesystem.rs` and the `local_first` switch (the release after
3.0.0).
- **Phase 4**: one applier for remote changes.
- **Phase 5**: mirror folders on the same planner and executor.
- **Any time**: `Size` and block geometry as types; a `Deadline` on every remote call.
- Open questions in §12 of the milestone.
- `PLAN.md`: the acceptance script notices network drops and reports `interrupted` instead of
TIMEOUT.
+181 -119
View File
@@ -5,7 +5,7 @@ msgid ""
msgstr ""
"Project-Id-Version: proton-drive-linux 2.1.0\n"
"Report-Msgid-Bugs-To: https://github.com/narrrl/proton-drive-linux/issues\n"
"POT-Creation-Date: 2026-09-29 00:18+0200\n"
"POT-Creation-Date: 2026-10-04 03:16+0200\n"
"PO-Revision-Date: 2026-09-23 12:00+0200\n"
"Last-Translator: Proton Drive for Linux contributors\n"
"Language-Team: German\n"
@@ -64,7 +64,7 @@ msgstr "%A, %-d. %B %Y, %H:%M"
#: crates/pdfs-gui/src/app/pages/browser.rs:1217
#: crates/pdfs-gui/src/app/pages/browser.rs:2090
#: crates/pdfs-gui/src/app/pages/browser.rs:2167
#: crates/pdfs-gui/src/app/pages/locations.rs:1471
#: crates/pdfs-gui/src/app/pages/locations.rs:1554
#: crates/pdfs-gui/src/app/pages/shared_by_me.rs:252
#: crates/pdfs-gui/src/app/pages/trash.rs:191 crates/pdfs-gui/src/prompt.rs:171
msgid "My files"
@@ -271,9 +271,9 @@ msgstr ""
#: crates/pdfs-gui/src/app/pages/devices.rs:979
#: crates/pdfs-gui/src/app/pages/devices.rs:1031
#: crates/pdfs-gui/src/app/pages/devices.rs:1075
#: crates/pdfs-gui/src/app/pages/locations.rs:860
#: crates/pdfs-gui/src/app/pages/locations.rs:1335
#: crates/pdfs-gui/src/app/pages/locations.rs:1385
#: crates/pdfs-gui/src/app/pages/locations.rs:943
#: crates/pdfs-gui/src/app/pages/locations.rs:1418
#: crates/pdfs-gui/src/app/pages/locations.rs:1468
#: crates/pdfs-gui/src/app/pages/login.rs:312
#: crates/pdfs-gui/src/app/pages/photos.rs:2055
#: crates/pdfs-gui/src/app/pages/shared.rs:946
@@ -477,8 +477,8 @@ msgstr "Nichts im aktuellen Protokoll entspricht diesem Filter."
#: crates/pdfs-gui/src/app/pages/activity.rs:186
#: crates/pdfs-gui/src/app/pages/browser.rs:281
#: crates/pdfs-gui/src/app/pages/devices.rs:114
#: crates/pdfs-gui/src/app/pages/locations.rs:183
#: crates/pdfs-gui/src/app/pages/locations.rs:680
#: crates/pdfs-gui/src/app/pages/locations.rs:184
#: crates/pdfs-gui/src/app/pages/locations.rs:685
#: crates/pdfs-gui/src/app/pages/photos.rs:465
#: crates/pdfs-gui/src/app/pages/shared.rs:183
#: crates/pdfs-gui/src/app/pages/shared_by_me.rs:94
@@ -516,8 +516,8 @@ msgstr "Ansichtsoptionen"
#: crates/pdfs-gui/src/app/pages/browser.rs:2635
#: crates/pdfs-gui/src/app/pages/browser.rs:2639
#: crates/pdfs-gui/src/app/pages/devices.rs:325
#: crates/pdfs-gui/src/app/pages/locations.rs:191
#: crates/pdfs-gui/src/app/pages/locations.rs:970
#: crates/pdfs-gui/src/app/pages/locations.rs:192
#: crates/pdfs-gui/src/app/pages/locations.rs:1053
#: crates/pdfs-gui/src/app/pages/shared.rs:422
#: crates/pdfs-gui/src/app/pages/shared_by_me.rs:347
#: crates/pdfs-gui/src/app/pages/trash.rs:284
@@ -1020,7 +1020,7 @@ msgstr ""
#. Translators: {name} is the file the conflicting copy was made from.
#: crates/pdfs-gui/src/app/pages/activity_text.rs:346
#: crates/pdfs-gui/src/app/pages/locations.rs:795
#: crates/pdfs-gui/src/app/pages/locations.rs:878
#, rust-format
msgid "Differs from {name}"
msgstr "Unterscheidet sich von {name}"
@@ -1207,11 +1207,12 @@ msgstr "Alben konnten nicht geladen werden"
#: crates/pdfs-gui/src/app/pages/devices.rs:884
#: crates/pdfs-gui/src/app/pages/devices.rs:1120
#: crates/pdfs-gui/src/app/pages/duplicates.rs:220
#: crates/pdfs-gui/src/app/pages/locations.rs:535
#: crates/pdfs-gui/src/app/pages/locations.rs:710
#: crates/pdfs-gui/src/app/pages/locations.rs:929
#: crates/pdfs-gui/src/app/pages/locations.rs:1427
#: crates/pdfs-gui/src/app/pages/locations.rs:1447
#: crates/pdfs-gui/src/app/pages/locations.rs:536
#: crates/pdfs-gui/src/app/pages/locations.rs:769
#: crates/pdfs-gui/src/app/pages/locations.rs:793
#: crates/pdfs-gui/src/app/pages/locations.rs:1012
#: crates/pdfs-gui/src/app/pages/locations.rs:1510
#: crates/pdfs-gui/src/app/pages/locations.rs:1530
#: crates/pdfs-gui/src/app/pages/photo_viewer.rs:1425
#: crates/pdfs-gui/src/app/pages/photos.rs:1420
#: crates/pdfs-gui/src/app/pages/photos.rs:2140
@@ -2159,7 +2160,7 @@ msgid "Add Folder to Sync"
msgstr "Ordner zur Synchronisierung hinzufügen"
#: crates/pdfs-gui/src/app/pages/devices.rs:686
#: crates/pdfs-gui/src/app/pages/locations.rs:1440
#: crates/pdfs-gui/src/app/pages/locations.rs:1523
msgid "Syncing folder…"
msgstr "Ordner wird synchronisiert …"
@@ -2524,19 +2525,19 @@ msgstr[1] "{n} Fotos in den Papierkorb verschieben"
msgid "Keep"
msgstr "Behalten"
#: crates/pdfs-gui/src/app/pages/locations.rs:125
#: crates/pdfs-gui/src/app/pages/locations.rs:126
msgid "Add Folder"
msgstr "Ordner hinzufügen"
#: crates/pdfs-gui/src/app/pages/locations.rs:130
#: crates/pdfs-gui/src/app/pages/locations.rs:131
msgid "Back a local folder up to this computer's Proton Drive device"
msgstr "Einen lokalen Ordner im Proton-Drive-Gerät dieses Computers sichern"
#: crates/pdfs-gui/src/app/pages/locations.rs:140
#: crates/pdfs-gui/src/app/pages/locations.rs:141
msgid "Conflicts"
msgstr "Konflikte"
#: crates/pdfs-gui/src/app/pages/locations.rs:142
#: crates/pdfs-gui/src/app/pages/locations.rs:143
msgid ""
"Files changed in two places at once. Both versions were kept; choose which "
"one stays."
@@ -2544,7 +2545,7 @@ msgstr ""
"Dateien wurden gleichzeitig an zwei Stellen geändert. Beide Versionen wurden "
"behalten; bitte auswählen, welche bleiben soll."
#: crates/pdfs-gui/src/app/pages/locations.rs:158
#: crates/pdfs-gui/src/app/pages/locations.rs:159
msgid ""
"Synced folders keep a full copy on this computer. Online-only folders fetch "
"each file when you open it."
@@ -2552,138 +2553,138 @@ msgstr ""
"Synchronisierte Ordner behalten eine vollständige Kopie auf diesem Computer. "
"Ordner mit „Nur online“ laden jede Datei erst beim Öffnen."
#: crates/pdfs-gui/src/app/pages/locations.rs:169
#: crates/pdfs-gui/src/app/pages/locations.rs:170
msgid "About Sync Modes"
msgstr "Über Synchronisierungsarten"
#: crates/pdfs-gui/src/app/pages/locations.rs:178
#: crates/pdfs-gui/src/app/pages/locations.rs:179
#: crates/pdfs-gui/src/prompt.rs:65
msgid "Folders"
msgstr "Ordner"
#: crates/pdfs-gui/src/app/pages/locations.rs:213
#: crates/pdfs-gui/src/app/pages/locations.rs:214
msgctxt "sync view"
msgid "Overview"
msgstr "Übersicht"
#: crates/pdfs-gui/src/app/pages/locations.rs:219
#: crates/pdfs-gui/src/app/pages/locations.rs:220
msgctxt "sync view"
msgid "Folders"
msgstr "Ordner"
#: crates/pdfs-gui/src/app/pages/locations.rs:225
#: crates/pdfs-gui/src/app/pages/locations.rs:226
msgctxt "sync view"
msgid "History"
msgstr "Verlauf"
#: crates/pdfs-gui/src/app/pages/locations.rs:232
#: crates/pdfs-gui/src/app/pages/locations.rs:233
#: crates/pdfs-gui/src/app/pages/shared.rs:210
msgid "Review"
msgstr "Ansehen"
#: crates/pdfs-gui/src/app/pages/locations.rs:363
#: crates/pdfs-gui/src/app/pages/locations.rs:364
#, rust-format
msgid "{n} change couldn't be uploaded"
msgid_plural "{n} changes couldn't be uploaded"
msgstr[0] "{n} Änderung konnte nicht hochgeladen werden"
msgstr[1] "{n} Änderungen konnten nicht hochgeladen werden"
#: crates/pdfs-gui/src/app/pages/locations.rs:369
#: crates/pdfs-gui/src/app/pages/locations.rs:370
#, rust-format
msgid "{n} file was changed in two places at once"
msgid_plural "{n} files were changed in two places at once"
msgstr[0] "{n} Datei wurde an zwei Stellen gleichzeitig geändert"
msgstr[1] "{n} Dateien wurden an zwei Stellen gleichzeitig geändert"
#: crates/pdfs-gui/src/app/pages/locations.rs:374
#: crates/pdfs-gui/src/app/pages/locations.rs:375
msgid "Some files need your attention"
msgstr "Einige Dateien erfordern Aufmerksamkeit"
#: crates/pdfs-gui/src/app/pages/locations.rs:391
#: crates/pdfs-gui/src/app/pages/locations.rs:392
msgid "Checking…"
msgstr "Wird geprüft …"
#: crates/pdfs-gui/src/app/pages/locations.rs:419
#: crates/pdfs-gui/src/app/pages/locations.rs:420
msgid "Pause for 1 Hour"
msgstr "Für 1 Stunde pausieren"
#: crates/pdfs-gui/src/app/pages/locations.rs:423
#: crates/pdfs-gui/src/app/pages/locations.rs:424
msgid "Pause for 8 Hours"
msgstr "Für 8 Stunden pausieren"
#: crates/pdfs-gui/src/app/pages/locations.rs:427
#: crates/pdfs-gui/src/app/pages/locations.rs:428
msgid "Pause for 24 Hours"
msgstr "Für 24 Stunden pausieren"
#: crates/pdfs-gui/src/app/pages/locations.rs:431
#: crates/pdfs-gui/src/app/pages/locations.rs:467
#: crates/pdfs-gui/src/app/pages/locations.rs:432
#: crates/pdfs-gui/src/app/pages/locations.rs:468
msgctxt "verb"
msgid "Pause"
msgstr "Pausieren"
#: crates/pdfs-gui/src/app/pages/locations.rs:435
#: crates/pdfs-gui/src/app/pages/locations.rs:472
#: crates/pdfs-gui/src/app/pages/locations.rs:436
#: crates/pdfs-gui/src/app/pages/locations.rs:473
msgid "Stop uploading until you resume. Files still open as usual."
msgstr ""
"Hochladen bis zur Fortsetzung anhalten. Dateien lassen sich weiterhin wie "
"gewohnt öffnen."
#: crates/pdfs-gui/src/app/pages/locations.rs:437
#: crates/pdfs-gui/src/app/pages/locations.rs:438
msgid "Pause for a while"
msgstr "Eine Weile pausieren"
#: crates/pdfs-gui/src/app/pages/locations.rs:465
#: crates/pdfs-gui/src/app/pages/locations.rs:466
msgctxt "verb"
msgid "Resume"
msgstr "Fortsetzen"
#: crates/pdfs-gui/src/app/pages/locations.rs:470
#: crates/pdfs-gui/src/app/pages/locations.rs:471
msgid "Upload everything that waited while sync was paused"
msgstr ""
"Alles hochladen, was während der pausierten Synchronisierung gewartet hat"
#: crates/pdfs-gui/src/app/pages/locations.rs:518
#: crates/pdfs-gui/src/app/pages/locations.rs:519
msgid "Couldn't pause sync"
msgstr "Synchronisierung konnte nicht pausiert werden"
#: crates/pdfs-gui/src/app/pages/locations.rs:520
#: crates/pdfs-gui/src/app/pages/locations.rs:521
msgid "Couldn't resume sync"
msgstr "Synchronisierung konnte nicht fortgesetzt werden"
#: crates/pdfs-gui/src/app/pages/locations.rs:526
#: crates/pdfs-gui/src/app/pages/locations.rs:527
msgid "Sync resumed"
msgstr "Synchronisierung fortgesetzt"
#: crates/pdfs-gui/src/app/pages/locations.rs:527
#: crates/pdfs-gui/src/app/pages/locations.rs:528
msgid "Sync paused until you resume"
msgstr "Synchronisierung bis zur Fortsetzung pausiert"
#: crates/pdfs-gui/src/app/pages/locations.rs:528
#: crates/pdfs-gui/src/app/pages/locations.rs:529
#: crates/pdfs-gui/src/app/pages/status.rs:1323 crates/pdfs-gui/src/main.rs:237
msgid "Sync paused"
msgstr "Synchronisierung pausiert"
#: crates/pdfs-gui/src/app/pages/locations.rs:546
#: crates/pdfs-gui/src/app/pages/locations.rs:547
msgid "Retry All"
msgstr "Alle erneut versuchen"
#: crates/pdfs-gui/src/app/pages/locations.rs:548
#: crates/pdfs-gui/src/app/pages/locations.rs:549
msgid "Try every failed change again now"
msgstr "Alle fehlgeschlagenen Änderungen jetzt erneut versuchen"
#: crates/pdfs-gui/src/app/pages/locations.rs:553
#: crates/pdfs-gui/src/app/pages/locations.rs:554
msgid "Waiting to Upload"
msgstr "Warten auf Hochladen"
#: crates/pdfs-gui/src/app/pages/locations.rs:555
#: crates/pdfs-gui/src/app/pages/locations.rs:614
#: crates/pdfs-gui/src/app/pages/locations.rs:556
#: crates/pdfs-gui/src/app/pages/locations.rs:615
msgid "Changes made on this computer that are not on Proton Drive yet."
msgstr ""
"Auf diesem Computer vorgenommene Änderungen, die noch nicht in Proton Drive "
"sind."
#. Translators: {shown} is how many rows are listed (50), {n} the total number of queued changes.
#: crates/pdfs-gui/src/app/pages/locations.rs:612
#: crates/pdfs-gui/src/app/pages/locations.rs:613
#, rust-format
msgid ""
"Changes made on this computer that are not on Proton Drive yet. Showing the "
@@ -2698,89 +2699,154 @@ msgstr[1] ""
"Auf diesem Computer vorgenommene Änderungen, die noch nicht in Proton Drive "
"sind. Die ersten {shown} von {n} werden angezeigt."
#: crates/pdfs-gui/src/app/pages/locations.rs:629
#: crates/pdfs-gui/src/app/pages/locations.rs:630
msgid "Upload changes"
msgstr "Änderungen hochladen"
#: crates/pdfs-gui/src/app/pages/locations.rs:630
#: crates/pdfs-gui/src/app/pages/locations.rs:631
msgid "Upload new file"
msgstr "Neue Datei hochladen"
#: crates/pdfs-gui/src/app/pages/locations.rs:631
#: crates/pdfs-gui/src/app/pages/locations.rs:632
msgid "Create folder"
msgstr "Ordner erstellen"
#: crates/pdfs-gui/src/app/pages/locations.rs:632
#: crates/pdfs-gui/src/app/pages/locations.rs:633
msgid "Rename or move"
msgstr "Umbenennen oder verschieben"
#: crates/pdfs-gui/src/app/pages/locations.rs:633
#: crates/pdfs-gui/src/app/pages/locations.rs:634
msgid "Move to trash"
msgstr "In den Papierkorb verschieben"
#. Translators: a queued change of an unknown kind.
#: crates/pdfs-gui/src/app/pages/locations.rs:635
#: crates/pdfs-gui/src/app/pages/locations.rs:636
msgctxt "noun"
msgid "Change"
msgstr "Änderung"
#: crates/pdfs-gui/src/app/pages/locations.rs:638
#: crates/pdfs-gui/src/app/pages/locations.rs:639
msgid "waiting for the app writing it to finish"
msgstr "wartet, bis die schreibende Anwendung fertig ist"
#. Translators: {time} is when the next attempt happens, such as "14:30".
#: crates/pdfs-gui/src/app/pages/locations.rs:641
#: crates/pdfs-gui/src/app/pages/locations.rs:642
#, rust-format
msgid "retrying {time}"
msgstr "erneuter Versuch {time}"
#: crates/pdfs-gui/src/app/pages/locations.rs:643
#: crates/pdfs-gui/src/app/pages/locations.rs:644
msgid "waiting for sync to resume"
msgstr "wartet auf Fortsetzung der Synchronisierung"
#: crates/pdfs-gui/src/app/pages/locations.rs:644
#: crates/pdfs-gui/src/app/pages/locations.rs:645
msgid "up next"
msgstr "als Nächstes"
#: crates/pdfs-gui/src/app/pages/locations.rs:648
#: crates/pdfs-gui/src/app/pages/locations.rs:649
#, rust-format
msgid "{action} · {state}"
msgstr "{action} · {state}"
#: crates/pdfs-gui/src/app/pages/locations.rs:655
#: crates/pdfs-gui/src/app/pages/locations.rs:660
#, rust-format
msgid "Failed {n} time: {error}"
msgid_plural "Failed {n} times: {error}"
msgstr[0] "{n}-mal fehlgeschlagen: {error}"
msgstr[1] "{n}-mal fehlgeschlagen: {error}"
#: crates/pdfs-gui/src/app/pages/locations.rs:681
#: crates/pdfs-gui/src/app/pages/locations.rs:686
msgid "Retry now"
msgstr "Jetzt erneut versuchen"
#: crates/pdfs-gui/src/app/pages/locations.rs:700
#: crates/pdfs-gui/src/app/pages/locations.rs:697
msgid "Export"
msgstr "Exportieren"
#: crates/pdfs-gui/src/app/pages/locations.rs:698
msgid "Save a copy of this file's content elsewhere"
msgstr "Eine Kopie des Dateiinhalts an einem anderen Ort speichern"
#: crates/pdfs-gui/src/app/pages/locations.rs:719
msgid ""
"Your Proton Drive storage is full. Free up space or upgrade your plan, and "
"this change uploads on its own."
msgstr ""
"Dein Proton-Drive-Speicher ist voll. Gib Speicherplatz frei oder wechsle zu "
"einem größeren Tarif, dann wird diese Änderung von selbst hochgeladen."
#: crates/pdfs-gui/src/app/pages/locations.rs:722
msgid ""
"You can no longer change this on Proton Drive. Ask the owner for edit "
"access, or export the file to keep your version."
msgstr ""
"Du kannst das auf Proton Drive nicht mehr ändern. Bitte den Eigentümer um "
"Bearbeitungsrechte oder exportiere die Datei, um deine Version zu behalten."
#: crates/pdfs-gui/src/app/pages/locations.rs:725
msgid ""
"The folder this change belongs in is gone from Proton Drive. Export the file "
"to keep your version."
msgstr ""
"Der Ordner, zu dem diese Änderung gehört, ist nicht mehr auf Proton Drive. "
"Exportiere die Datei, um deine Version zu behalten."
#: crates/pdfs-gui/src/app/pages/locations.rs:728
msgid ""
"Proton Drive's limit on items in a folder or on folder depth is reached. "
"Make room in the folder, then retry."
msgstr ""
"Proton Drive erlaubt nicht mehr Elemente in einem Ordner oder keine tiefere "
"Verschachtelung. Schaffe Platz im Ordner und versuche es dann erneut."
#: crates/pdfs-gui/src/app/pages/locations.rs:731
msgid "Proton Drive refused this change. It stays queued and is tried again."
msgstr ""
"Proton Drive hat diese Änderung abgelehnt. Sie bleibt in der Warteschlange "
"und wird erneut versucht."
#: crates/pdfs-gui/src/app/pages/locations.rs:741
msgid "Export File"
msgstr "Datei exportieren"
#: crates/pdfs-gui/src/app/pages/locations.rs:750
#: crates/pdfs-gui/src/app/pages/locations.rs:764
#: crates/pdfs-gui/src/app/pages/locations.rs:768
msgid "Couldn't export the file"
msgstr "Die Datei konnte nicht exportiert werden"
#: crates/pdfs-gui/src/app/pages/locations.rs:751
#: crates/pdfs-gui/src/app/widgets/versions_dialog.rs:351
msgid "That location isn't a local file."
msgstr "Dieser Ort ist keine lokale Datei."
#: crates/pdfs-gui/src/app/pages/locations.rs:762
msgid "File exported"
msgstr "Datei exportiert"
#: crates/pdfs-gui/src/app/pages/locations.rs:783
msgid "Retrying now…"
msgstr "Wird erneut versucht …"
#: crates/pdfs-gui/src/app/pages/locations.rs:705
#: crates/pdfs-gui/src/app/pages/locations.rs:709
#: crates/pdfs-gui/src/app/pages/locations.rs:788
#: crates/pdfs-gui/src/app/pages/locations.rs:792
msgid "Couldn't retry"
msgstr "Erneuter Versuch fehlgeschlagen"
#: crates/pdfs-gui/src/app/pages/locations.rs:779
#: crates/pdfs-gui/src/app/pages/locations.rs:862
#, rust-format
msgid "{size}, changed {time}"
msgstr "{size}, geändert {time}"
#: crates/pdfs-gui/src/app/pages/locations.rs:789
#: crates/pdfs-gui/src/app/pages/locations.rs:872
msgid "The original is gone; only this copy is left"
msgstr "Das Original ist weg; nur diese Kopie ist übrig"
#: crates/pdfs-gui/src/app/pages/locations.rs:791
#: crates/pdfs-gui/src/app/pages/locations.rs:874
msgid "Same content as the original"
msgstr "Gleicher Inhalt wie das Original"
#: crates/pdfs-gui/src/app/pages/locations.rs:832
#: crates/pdfs-gui/src/app/pages/locations.rs:915
#, rust-format
msgid ""
"“{name}” was changed here and elsewhere at the same time.\n"
@@ -2798,7 +2864,7 @@ msgstr ""
"Was nicht behalten wird, kommt in den Papierkorb und kann dort "
"wiederhergestellt werden."
#: crates/pdfs-gui/src/app/pages/locations.rs:844
#: crates/pdfs-gui/src/app/pages/locations.rs:927
#, rust-format
msgid ""
"The original “{name}” no longer exists; only the copy is left ({copy}).\n"
@@ -2810,113 +2876,113 @@ msgstr ""
"\n"
"Die Kopie behalten, um ihr den ursprünglichen Namen zurückzugeben."
#: crates/pdfs-gui/src/app/pages/locations.rs:850
#: crates/pdfs-gui/src/app/pages/locations.rs:933
msgid "Resolve Conflict"
msgstr "Konflikt lösen"
#: crates/pdfs-gui/src/app/pages/locations.rs:855
#: crates/pdfs-gui/src/app/pages/locations.rs:938
msgid "Name for the copy, if keeping both"
msgstr "Name für die Kopie, falls beide behalten werden"
#: crates/pdfs-gui/src/app/pages/locations.rs:862
#: crates/pdfs-gui/src/app/pages/locations.rs:945
msgid "Keep Original"
msgstr "Original behalten"
#: crates/pdfs-gui/src/app/pages/locations.rs:863
#: crates/pdfs-gui/src/app/pages/locations.rs:946
msgid "Keep Both"
msgstr "Beide behalten"
#: crates/pdfs-gui/src/app/pages/locations.rs:865
#: crates/pdfs-gui/src/app/pages/locations.rs:948
msgid "Keep Copy"
msgstr "Kopie behalten"
#: crates/pdfs-gui/src/app/pages/locations.rs:922
#: crates/pdfs-gui/src/app/pages/locations.rs:928
#: crates/pdfs-gui/src/app/pages/locations.rs:1005
#: crates/pdfs-gui/src/app/pages/locations.rs:1011
msgid "Couldn't resolve the conflict"
msgstr "Der Konflikt konnte nicht gelöst werden"
#: crates/pdfs-gui/src/app/pages/locations.rs:971
#: crates/pdfs-gui/src/app/pages/locations.rs:1054
msgid "Reading this computer's Proton Drive locations."
msgstr "Proton-Drive-Orte dieses Computers werden gelesen."
#: crates/pdfs-gui/src/app/pages/locations.rs:992
#: crates/pdfs-gui/src/app/pages/locations.rs:1075
msgid "Unavailable"
msgstr "Nicht verfügbar"
#: crates/pdfs-gui/src/app/pages/locations.rs:1075
#: crates/pdfs-gui/src/app/pages/locations.rs:1158
msgid "No folders yet"
msgstr "Noch keine Ordner"
#: crates/pdfs-gui/src/app/pages/locations.rs:1077
#: crates/pdfs-gui/src/app/pages/locations.rs:1160
msgid "The Proton Drive service hasn't reported its folder yet."
msgstr "Der Proton-Drive-Dienst hat seinen Ordner noch nicht gemeldet."
#: crates/pdfs-gui/src/app/pages/locations.rs:1100
#: crates/pdfs-gui/src/app/pages/locations.rs:1183
#, rust-format
msgid "{path} · {state}"
msgstr "{path} · {state}"
#: crates/pdfs-gui/src/app/pages/locations.rs:1143
#: crates/pdfs-gui/src/app/pages/locations.rs:1226
msgid "Read-only"
msgstr "Schreibgeschützt"
#: crates/pdfs-gui/src/app/pages/locations.rs:1159
#: crates/pdfs-gui/src/app/pages/locations.rs:1242
msgid "Open in Files"
msgstr "In Dateien öffnen"
#: crates/pdfs-gui/src/app/pages/locations.rs:1164
#: crates/pdfs-gui/src/app/pages/locations.rs:1247
msgid "Change Location…"
msgstr "Ort ändern …"
#: crates/pdfs-gui/src/app/pages/locations.rs:1216
#: crates/pdfs-gui/src/app/pages/locations.rs:1299
msgid "Choose whether this folder keeps a full copy on this computer"
msgstr ""
"Auswählen, ob dieser Ordner eine vollständige Kopie auf diesem Computer "
"behält"
#: crates/pdfs-gui/src/app/pages/locations.rs:1232
#: crates/pdfs-gui/src/app/pages/locations.rs:1315
msgid "Keep every file on this computer and in Proton Drive."
msgstr "Jede Datei auf diesem Computer und in Proton Drive behalten."
#: crates/pdfs-gui/src/app/pages/locations.rs:1237
#: crates/pdfs-gui/src/app/pages/locations.rs:1320
msgid "Keep the files in Proton Drive and download each one when you open it."
msgstr ""
"Dateien in Proton Drive behalten und jede erst beim Öffnen herunterladen."
#. Translators: a folder mode: files are kept in Proton Drive and fetched when opened.
#: crates/pdfs-gui/src/app/pages/locations.rs:1291
#: crates/pdfs-gui/src/app/pages/locations.rs:1374
msgctxt "folder mode"
msgid "Online only"
msgstr "Nur online"
#. Translators: a folder mode: a full copy is kept on this computer.
#: crates/pdfs-gui/src/app/pages/locations.rs:1294
#: crates/pdfs-gui/src/app/pages/locations.rs:1377
msgctxt "folder mode"
msgid "Synced"
msgstr "Synchronisiert"
#: crates/pdfs-gui/src/app/pages/locations.rs:1305
#: crates/pdfs-gui/src/app/pages/locations.rs:1388
msgid "Sync Now"
msgstr "Jetzt synchronisieren"
#: crates/pdfs-gui/src/app/pages/locations.rs:1309
#: crates/pdfs-gui/src/app/pages/locations.rs:1392
msgid "Resume Syncing"
msgstr "Synchronisierung fortsetzen"
#: crates/pdfs-gui/src/app/pages/locations.rs:1311
#: crates/pdfs-gui/src/app/pages/locations.rs:1394
msgid "Pause Syncing"
msgstr "Synchronisierung pausieren"
#: crates/pdfs-gui/src/app/pages/locations.rs:1322
#: crates/pdfs-gui/src/app/pages/locations.rs:1405
msgid "Stop Syncing…"
msgstr "Synchronisierung beenden …"
#: crates/pdfs-gui/src/app/pages/locations.rs:1331
#: crates/pdfs-gui/src/app/pages/locations.rs:1414
msgid "Make Folder Online Only?"
msgstr "Ordner auf „Nur online“ umstellen?"
#. Translators: {path} is a local folder path.
#: crates/pdfs-gui/src/app/pages/locations.rs:1333
#: crates/pdfs-gui/src/app/pages/locations.rs:1416
#, rust-format
msgid ""
"Files in {path} will be removed from this computer and kept in Proton Drive "
@@ -2925,11 +2991,11 @@ msgstr ""
"Dateien in {path} werden von diesem Computer entfernt und nur in Proton "
"Drive behalten. Jede Datei wird beim Öffnen erneut heruntergeladen."
#: crates/pdfs-gui/src/app/pages/locations.rs:1336
#: crates/pdfs-gui/src/app/pages/locations.rs:1419
msgid "Make Online Only"
msgstr "Nur online verfügbar machen"
#: crates/pdfs-gui/src/app/pages/locations.rs:1372
#: crates/pdfs-gui/src/app/pages/locations.rs:1455
#, rust-format
msgid ""
"Every file in {path} will download to this computer and stay synced. {free} "
@@ -2938,61 +3004,61 @@ msgstr ""
"Jede Datei in {path} wird auf diesen Computer heruntergeladen und bleibt "
"synchronisiert. Auf diesem Datenträger sind {free} frei."
#: crates/pdfs-gui/src/app/pages/locations.rs:1377
#: crates/pdfs-gui/src/app/pages/locations.rs:1460
#, rust-format
msgid "Every file in {path} will download to this computer and stay synced."
msgstr ""
"Jede Datei in {path} wird auf diesen Computer heruntergeladen und bleibt "
"synchronisiert."
#: crates/pdfs-gui/src/app/pages/locations.rs:1382
#: crates/pdfs-gui/src/app/pages/locations.rs:1465
msgid "Download Folder?"
msgstr "Ordner herunterladen?"
#: crates/pdfs-gui/src/app/pages/locations.rs:1386
#: crates/pdfs-gui/src/app/pages/locations.rs:1469
msgid "Download"
msgstr "Herunterladen"
#: crates/pdfs-gui/src/app/pages/locations.rs:1410
#: crates/pdfs-gui/src/app/pages/locations.rs:1493
msgid "Couldn't pause the folder"
msgstr "Der Ordner konnte nicht pausiert werden"
#: crates/pdfs-gui/src/app/pages/locations.rs:1411
#: crates/pdfs-gui/src/app/pages/locations.rs:1494
msgid "Couldn't resume the folder"
msgstr "Der Ordner konnte nicht fortgesetzt werden"
#: crates/pdfs-gui/src/app/pages/locations.rs:1417
#: crates/pdfs-gui/src/app/pages/locations.rs:1500
msgid "Folder paused"
msgstr "Ordner pausiert"
#: crates/pdfs-gui/src/app/pages/locations.rs:1418
#: crates/pdfs-gui/src/app/pages/locations.rs:1501
msgid "Folder resumed"
msgstr "Ordner fortgesetzt"
#: crates/pdfs-gui/src/app/pages/locations.rs:1442
#: crates/pdfs-gui/src/app/pages/locations.rs:1446
#: crates/pdfs-gui/src/app/pages/locations.rs:1525
#: crates/pdfs-gui/src/app/pages/locations.rs:1529
msgid "Couldn't sync"
msgstr "Synchronisieren fehlgeschlagen"
#: crates/pdfs-gui/src/app/pages/locations.rs:1472
#: crates/pdfs-gui/src/app/pages/locations.rs:1555
msgid "Shared folder"
msgstr "Geteilter Ordner"
#: crates/pdfs-gui/src/app/pages/locations.rs:1474
#: crates/pdfs-gui/src/app/pages/locations.rs:1557
msgid "Going online only"
msgstr "Wird auf „Nur online“ umgestellt"
#: crates/pdfs-gui/src/app/pages/locations.rs:1475
#: crates/pdfs-gui/src/app/pages/locations.rs:1558
msgid "Switching to synced"
msgstr "Wird auf synchronisiert umgestellt"
#: crates/pdfs-gui/src/app/pages/locations.rs:1485
#: crates/pdfs-gui/src/app/pages/locations.rs:1568
msgctxt "state"
msgid "paused"
msgstr "pausiert"
#. Translators: a folder's files can't be opened right now.
#: crates/pdfs-gui/src/app/pages/locations.rs:1496
#: crates/pdfs-gui/src/app/pages/locations.rs:1579
msgid "not available"
msgstr "nicht verfügbar"
@@ -5506,10 +5572,6 @@ msgstr "Version speichern"
msgid "Couldn't save that version"
msgstr "Diese Version konnte nicht gespeichert werden"
#: crates/pdfs-gui/src/app/widgets/versions_dialog.rs:351
msgid "That location isn't a local file."
msgstr "Dieser Ort ist keine lokale Datei."
#: crates/pdfs-gui/src/app/widgets/versions_dialog.rs:358
msgid "Version saved"
msgstr "Version gespeichert"
+179 -119
View File
@@ -5,7 +5,7 @@ msgid ""
msgstr ""
"Project-Id-Version: proton-drive-linux 2.1.0\n"
"Report-Msgid-Bugs-To: https://github.com/narrrl/proton-drive-linux/issues\n"
"POT-Creation-Date: 2026-09-29 00:18+0200\n"
"POT-Creation-Date: 2026-10-04 03:16+0200\n"
"PO-Revision-Date: 2026-09-23 12:00+0200\n"
"Last-Translator: Proton Drive for Linux contributors\n"
"Language-Team: English (United Kingdom)\n"
@@ -64,7 +64,7 @@ msgstr "%A %-d %B %Y, %H:%M"
#: crates/pdfs-gui/src/app/pages/browser.rs:1217
#: crates/pdfs-gui/src/app/pages/browser.rs:2090
#: crates/pdfs-gui/src/app/pages/browser.rs:2167
#: crates/pdfs-gui/src/app/pages/locations.rs:1471
#: crates/pdfs-gui/src/app/pages/locations.rs:1554
#: crates/pdfs-gui/src/app/pages/shared_by_me.rs:252
#: crates/pdfs-gui/src/app/pages/trash.rs:191 crates/pdfs-gui/src/prompt.rs:171
msgid "My files"
@@ -267,9 +267,9 @@ msgstr ""
#: crates/pdfs-gui/src/app/pages/devices.rs:979
#: crates/pdfs-gui/src/app/pages/devices.rs:1031
#: crates/pdfs-gui/src/app/pages/devices.rs:1075
#: crates/pdfs-gui/src/app/pages/locations.rs:860
#: crates/pdfs-gui/src/app/pages/locations.rs:1335
#: crates/pdfs-gui/src/app/pages/locations.rs:1385
#: crates/pdfs-gui/src/app/pages/locations.rs:943
#: crates/pdfs-gui/src/app/pages/locations.rs:1418
#: crates/pdfs-gui/src/app/pages/locations.rs:1468
#: crates/pdfs-gui/src/app/pages/login.rs:312
#: crates/pdfs-gui/src/app/pages/photos.rs:2055
#: crates/pdfs-gui/src/app/pages/shared.rs:946
@@ -473,8 +473,8 @@ msgstr "Nothing in the recent log fits this filter."
#: crates/pdfs-gui/src/app/pages/activity.rs:186
#: crates/pdfs-gui/src/app/pages/browser.rs:281
#: crates/pdfs-gui/src/app/pages/devices.rs:114
#: crates/pdfs-gui/src/app/pages/locations.rs:183
#: crates/pdfs-gui/src/app/pages/locations.rs:680
#: crates/pdfs-gui/src/app/pages/locations.rs:184
#: crates/pdfs-gui/src/app/pages/locations.rs:685
#: crates/pdfs-gui/src/app/pages/photos.rs:465
#: crates/pdfs-gui/src/app/pages/shared.rs:183
#: crates/pdfs-gui/src/app/pages/shared_by_me.rs:94
@@ -510,8 +510,8 @@ msgstr "View Options"
#: crates/pdfs-gui/src/app/pages/browser.rs:2635
#: crates/pdfs-gui/src/app/pages/browser.rs:2639
#: crates/pdfs-gui/src/app/pages/devices.rs:325
#: crates/pdfs-gui/src/app/pages/locations.rs:191
#: crates/pdfs-gui/src/app/pages/locations.rs:970
#: crates/pdfs-gui/src/app/pages/locations.rs:192
#: crates/pdfs-gui/src/app/pages/locations.rs:1053
#: crates/pdfs-gui/src/app/pages/shared.rs:422
#: crates/pdfs-gui/src/app/pages/shared_by_me.rs:347
#: crates/pdfs-gui/src/app/pages/trash.rs:284
@@ -1013,7 +1013,7 @@ msgstr ""
#. Translators: {name} is the file the conflicting copy was made from.
#: crates/pdfs-gui/src/app/pages/activity_text.rs:346
#: crates/pdfs-gui/src/app/pages/locations.rs:795
#: crates/pdfs-gui/src/app/pages/locations.rs:878
#, rust-format
msgid "Differs from {name}"
msgstr "Differs from {name}"
@@ -1200,11 +1200,12 @@ msgstr "Couldn't load albums"
#: crates/pdfs-gui/src/app/pages/devices.rs:884
#: crates/pdfs-gui/src/app/pages/devices.rs:1120
#: crates/pdfs-gui/src/app/pages/duplicates.rs:220
#: crates/pdfs-gui/src/app/pages/locations.rs:535
#: crates/pdfs-gui/src/app/pages/locations.rs:710
#: crates/pdfs-gui/src/app/pages/locations.rs:929
#: crates/pdfs-gui/src/app/pages/locations.rs:1427
#: crates/pdfs-gui/src/app/pages/locations.rs:1447
#: crates/pdfs-gui/src/app/pages/locations.rs:536
#: crates/pdfs-gui/src/app/pages/locations.rs:769
#: crates/pdfs-gui/src/app/pages/locations.rs:793
#: crates/pdfs-gui/src/app/pages/locations.rs:1012
#: crates/pdfs-gui/src/app/pages/locations.rs:1510
#: crates/pdfs-gui/src/app/pages/locations.rs:1530
#: crates/pdfs-gui/src/app/pages/photo_viewer.rs:1425
#: crates/pdfs-gui/src/app/pages/photos.rs:1420
#: crates/pdfs-gui/src/app/pages/photos.rs:2140
@@ -2141,7 +2142,7 @@ msgid "Add Folder to Sync"
msgstr "Add Folder to Sync"
#: crates/pdfs-gui/src/app/pages/devices.rs:686
#: crates/pdfs-gui/src/app/pages/locations.rs:1440
#: crates/pdfs-gui/src/app/pages/locations.rs:1523
msgid "Syncing folder…"
msgstr "Syncing folder…"
@@ -2494,19 +2495,19 @@ msgstr[1] "Move {n} photos to Trash"
msgid "Keep"
msgstr "Keep"
#: crates/pdfs-gui/src/app/pages/locations.rs:125
#: crates/pdfs-gui/src/app/pages/locations.rs:126
msgid "Add Folder"
msgstr "Add Folder"
#: crates/pdfs-gui/src/app/pages/locations.rs:130
#: crates/pdfs-gui/src/app/pages/locations.rs:131
msgid "Back a local folder up to this computer's Proton Drive device"
msgstr "Back a local folder up to this computer's Proton Drive device"
#: crates/pdfs-gui/src/app/pages/locations.rs:140
#: crates/pdfs-gui/src/app/pages/locations.rs:141
msgid "Conflicts"
msgstr "Conflicts"
#: crates/pdfs-gui/src/app/pages/locations.rs:142
#: crates/pdfs-gui/src/app/pages/locations.rs:143
msgid ""
"Files changed in two places at once. Both versions were kept; choose which "
"one stays."
@@ -2514,7 +2515,7 @@ msgstr ""
"Files changed in two places at once. Both versions were kept; choose which "
"one stays."
#: crates/pdfs-gui/src/app/pages/locations.rs:158
#: crates/pdfs-gui/src/app/pages/locations.rs:159
msgid ""
"Synced folders keep a full copy on this computer. Online-only folders fetch "
"each file when you open it."
@@ -2522,133 +2523,133 @@ msgstr ""
"Synced folders keep a full copy on this computer. Online-only folders fetch "
"each file when you open it."
#: crates/pdfs-gui/src/app/pages/locations.rs:169
#: crates/pdfs-gui/src/app/pages/locations.rs:170
msgid "About Sync Modes"
msgstr "About Sync Modes"
#: crates/pdfs-gui/src/app/pages/locations.rs:178
#: crates/pdfs-gui/src/app/pages/locations.rs:179
#: crates/pdfs-gui/src/prompt.rs:65
msgid "Folders"
msgstr "Folders"
#: crates/pdfs-gui/src/app/pages/locations.rs:213
#: crates/pdfs-gui/src/app/pages/locations.rs:214
msgctxt "sync view"
msgid "Overview"
msgstr "Overview"
#: crates/pdfs-gui/src/app/pages/locations.rs:219
#: crates/pdfs-gui/src/app/pages/locations.rs:220
msgctxt "sync view"
msgid "Folders"
msgstr "Folders"
#: crates/pdfs-gui/src/app/pages/locations.rs:225
#: crates/pdfs-gui/src/app/pages/locations.rs:226
msgctxt "sync view"
msgid "History"
msgstr "History"
#: crates/pdfs-gui/src/app/pages/locations.rs:232
#: crates/pdfs-gui/src/app/pages/locations.rs:233
#: crates/pdfs-gui/src/app/pages/shared.rs:210
msgid "Review"
msgstr "Review"
#: crates/pdfs-gui/src/app/pages/locations.rs:363
#: crates/pdfs-gui/src/app/pages/locations.rs:364
#, rust-format
msgid "{n} change couldn't be uploaded"
msgid_plural "{n} changes couldn't be uploaded"
msgstr[0] "{n} change couldn't be uploaded"
msgstr[1] "{n} changes couldn't be uploaded"
#: crates/pdfs-gui/src/app/pages/locations.rs:369
#: crates/pdfs-gui/src/app/pages/locations.rs:370
#, rust-format
msgid "{n} file was changed in two places at once"
msgid_plural "{n} files were changed in two places at once"
msgstr[0] "{n} file was changed in two places at once"
msgstr[1] "{n} files were changed in two places at once"
#: crates/pdfs-gui/src/app/pages/locations.rs:374
#: crates/pdfs-gui/src/app/pages/locations.rs:375
msgid "Some files need your attention"
msgstr "Some files need your attention"
#: crates/pdfs-gui/src/app/pages/locations.rs:391
#: crates/pdfs-gui/src/app/pages/locations.rs:392
msgid "Checking…"
msgstr "Checking…"
#: crates/pdfs-gui/src/app/pages/locations.rs:419
#: crates/pdfs-gui/src/app/pages/locations.rs:420
msgid "Pause for 1 Hour"
msgstr "Pause for 1 Hour"
#: crates/pdfs-gui/src/app/pages/locations.rs:423
#: crates/pdfs-gui/src/app/pages/locations.rs:424
msgid "Pause for 8 Hours"
msgstr "Pause for 8 Hours"
#: crates/pdfs-gui/src/app/pages/locations.rs:427
#: crates/pdfs-gui/src/app/pages/locations.rs:428
msgid "Pause for 24 Hours"
msgstr "Pause for 24 Hours"
#: crates/pdfs-gui/src/app/pages/locations.rs:431
#: crates/pdfs-gui/src/app/pages/locations.rs:467
#: crates/pdfs-gui/src/app/pages/locations.rs:432
#: crates/pdfs-gui/src/app/pages/locations.rs:468
msgctxt "verb"
msgid "Pause"
msgstr "Pause"
#: crates/pdfs-gui/src/app/pages/locations.rs:435
#: crates/pdfs-gui/src/app/pages/locations.rs:472
#: crates/pdfs-gui/src/app/pages/locations.rs:436
#: crates/pdfs-gui/src/app/pages/locations.rs:473
msgid "Stop uploading until you resume. Files still open as usual."
msgstr "Stop uploading until you resume. Files still open as usual."
#: crates/pdfs-gui/src/app/pages/locations.rs:437
#: crates/pdfs-gui/src/app/pages/locations.rs:438
msgid "Pause for a while"
msgstr "Pause for a while"
#: crates/pdfs-gui/src/app/pages/locations.rs:465
#: crates/pdfs-gui/src/app/pages/locations.rs:466
msgctxt "verb"
msgid "Resume"
msgstr "Resume"
#: crates/pdfs-gui/src/app/pages/locations.rs:470
#: crates/pdfs-gui/src/app/pages/locations.rs:471
msgid "Upload everything that waited while sync was paused"
msgstr "Upload everything that waited while sync was paused"
#: crates/pdfs-gui/src/app/pages/locations.rs:518
#: crates/pdfs-gui/src/app/pages/locations.rs:519
msgid "Couldn't pause sync"
msgstr "Couldn't pause sync"
#: crates/pdfs-gui/src/app/pages/locations.rs:520
#: crates/pdfs-gui/src/app/pages/locations.rs:521
msgid "Couldn't resume sync"
msgstr "Couldn't resume sync"
#: crates/pdfs-gui/src/app/pages/locations.rs:526
#: crates/pdfs-gui/src/app/pages/locations.rs:527
msgid "Sync resumed"
msgstr "Sync resumed"
#: crates/pdfs-gui/src/app/pages/locations.rs:527
#: crates/pdfs-gui/src/app/pages/locations.rs:528
msgid "Sync paused until you resume"
msgstr "Sync paused until you resume"
#: crates/pdfs-gui/src/app/pages/locations.rs:528
#: crates/pdfs-gui/src/app/pages/locations.rs:529
#: crates/pdfs-gui/src/app/pages/status.rs:1323 crates/pdfs-gui/src/main.rs:237
msgid "Sync paused"
msgstr "Sync paused"
#: crates/pdfs-gui/src/app/pages/locations.rs:546
#: crates/pdfs-gui/src/app/pages/locations.rs:547
msgid "Retry All"
msgstr "Retry All"
#: crates/pdfs-gui/src/app/pages/locations.rs:548
#: crates/pdfs-gui/src/app/pages/locations.rs:549
msgid "Try every failed change again now"
msgstr "Try every failed change again now"
#: crates/pdfs-gui/src/app/pages/locations.rs:553
#: crates/pdfs-gui/src/app/pages/locations.rs:554
msgid "Waiting to Upload"
msgstr "Waiting to Upload"
#: crates/pdfs-gui/src/app/pages/locations.rs:555
#: crates/pdfs-gui/src/app/pages/locations.rs:614
#: crates/pdfs-gui/src/app/pages/locations.rs:556
#: crates/pdfs-gui/src/app/pages/locations.rs:615
msgid "Changes made on this computer that are not on Proton Drive yet."
msgstr "Changes made on this computer that are not on Proton Drive yet."
#. Translators: {shown} is how many rows are listed (50), {n} the total number of queued changes.
#: crates/pdfs-gui/src/app/pages/locations.rs:612
#: crates/pdfs-gui/src/app/pages/locations.rs:613
#, rust-format
msgid ""
"Changes made on this computer that are not on Proton Drive yet. Showing the "
@@ -2663,89 +2664,152 @@ msgstr[1] ""
"Changes made on this computer that are not on Proton Drive yet. Showing the "
"first {shown} of {n}."
#: crates/pdfs-gui/src/app/pages/locations.rs:629
#: crates/pdfs-gui/src/app/pages/locations.rs:630
msgid "Upload changes"
msgstr "Upload changes"
#: crates/pdfs-gui/src/app/pages/locations.rs:630
#: crates/pdfs-gui/src/app/pages/locations.rs:631
msgid "Upload new file"
msgstr "Upload new file"
#: crates/pdfs-gui/src/app/pages/locations.rs:631
#: crates/pdfs-gui/src/app/pages/locations.rs:632
msgid "Create folder"
msgstr "Create folder"
#: crates/pdfs-gui/src/app/pages/locations.rs:632
#: crates/pdfs-gui/src/app/pages/locations.rs:633
msgid "Rename or move"
msgstr "Rename or move"
#: crates/pdfs-gui/src/app/pages/locations.rs:633
#: crates/pdfs-gui/src/app/pages/locations.rs:634
msgid "Move to trash"
msgstr "Move to trash"
#. Translators: a queued change of an unknown kind.
#: crates/pdfs-gui/src/app/pages/locations.rs:635
#: crates/pdfs-gui/src/app/pages/locations.rs:636
msgctxt "noun"
msgid "Change"
msgstr "Change"
#: crates/pdfs-gui/src/app/pages/locations.rs:638
#: crates/pdfs-gui/src/app/pages/locations.rs:639
msgid "waiting for the app writing it to finish"
msgstr "waiting for the app writing it to finish"
#. Translators: {time} is when the next attempt happens, such as "14:30".
#: crates/pdfs-gui/src/app/pages/locations.rs:641
#: crates/pdfs-gui/src/app/pages/locations.rs:642
#, rust-format
msgid "retrying {time}"
msgstr "retrying {time}"
#: crates/pdfs-gui/src/app/pages/locations.rs:643
#: crates/pdfs-gui/src/app/pages/locations.rs:644
msgid "waiting for sync to resume"
msgstr "waiting for sync to resume"
#: crates/pdfs-gui/src/app/pages/locations.rs:644
#: crates/pdfs-gui/src/app/pages/locations.rs:645
msgid "up next"
msgstr "up next"
#: crates/pdfs-gui/src/app/pages/locations.rs:648
#: crates/pdfs-gui/src/app/pages/locations.rs:649
#, rust-format
msgid "{action} · {state}"
msgstr "{action} · {state}"
#: crates/pdfs-gui/src/app/pages/locations.rs:655
#: crates/pdfs-gui/src/app/pages/locations.rs:660
#, rust-format
msgid "Failed {n} time: {error}"
msgid_plural "Failed {n} times: {error}"
msgstr[0] "Failed {n} time: {error}"
msgstr[1] "Failed {n} times: {error}"
#: crates/pdfs-gui/src/app/pages/locations.rs:681
#: crates/pdfs-gui/src/app/pages/locations.rs:686
msgid "Retry now"
msgstr "Retry now"
#: crates/pdfs-gui/src/app/pages/locations.rs:700
#: crates/pdfs-gui/src/app/pages/locations.rs:697
msgid "Export"
msgstr "Export"
#: crates/pdfs-gui/src/app/pages/locations.rs:698
msgid "Save a copy of this file's content elsewhere"
msgstr "Save a copy of this file's content elsewhere"
#: crates/pdfs-gui/src/app/pages/locations.rs:719
msgid ""
"Your Proton Drive storage is full. Free up space or upgrade your plan, and "
"this change uploads on its own."
msgstr ""
"Your Proton Drive storage is full. Free up space or upgrade your plan, and "
"this change uploads on its own."
#: crates/pdfs-gui/src/app/pages/locations.rs:722
msgid ""
"You can no longer change this on Proton Drive. Ask the owner for edit "
"access, or export the file to keep your version."
msgstr ""
"You can no longer change this on Proton Drive. Ask the owner for edit "
"access, or export the file to keep your version."
#: crates/pdfs-gui/src/app/pages/locations.rs:725
msgid ""
"The folder this change belongs in is gone from Proton Drive. Export the file "
"to keep your version."
msgstr ""
"The folder this change belongs in is gone from Proton Drive. Export the file "
"to keep your version."
#: crates/pdfs-gui/src/app/pages/locations.rs:728
msgid ""
"Proton Drive's limit on items in a folder or on folder depth is reached. "
"Make room in the folder, then retry."
msgstr ""
"Proton Drive's limit on items in a folder or on folder depth is reached. "
"Make room in the folder, then retry."
#: crates/pdfs-gui/src/app/pages/locations.rs:731
msgid "Proton Drive refused this change. It stays queued and is tried again."
msgstr "Proton Drive refused this change. It stays queued and is tried again."
#: crates/pdfs-gui/src/app/pages/locations.rs:741
msgid "Export File"
msgstr "Export File"
#: crates/pdfs-gui/src/app/pages/locations.rs:750
#: crates/pdfs-gui/src/app/pages/locations.rs:764
#: crates/pdfs-gui/src/app/pages/locations.rs:768
msgid "Couldn't export the file"
msgstr "Couldn't export the file"
#: crates/pdfs-gui/src/app/pages/locations.rs:751
#: crates/pdfs-gui/src/app/widgets/versions_dialog.rs:351
msgid "That location isn't a local file."
msgstr "That location isn't a local file."
#: crates/pdfs-gui/src/app/pages/locations.rs:762
msgid "File exported"
msgstr "File exported"
#: crates/pdfs-gui/src/app/pages/locations.rs:783
msgid "Retrying now…"
msgstr "Retrying now…"
#: crates/pdfs-gui/src/app/pages/locations.rs:705
#: crates/pdfs-gui/src/app/pages/locations.rs:709
#: crates/pdfs-gui/src/app/pages/locations.rs:788
#: crates/pdfs-gui/src/app/pages/locations.rs:792
msgid "Couldn't retry"
msgstr "Couldn't retry"
#: crates/pdfs-gui/src/app/pages/locations.rs:779
#: crates/pdfs-gui/src/app/pages/locations.rs:862
#, rust-format
msgid "{size}, changed {time}"
msgstr "{size}, changed {time}"
#: crates/pdfs-gui/src/app/pages/locations.rs:789
#: crates/pdfs-gui/src/app/pages/locations.rs:872
msgid "The original is gone; only this copy is left"
msgstr "The original is gone; only this copy is left"
#: crates/pdfs-gui/src/app/pages/locations.rs:791
#: crates/pdfs-gui/src/app/pages/locations.rs:874
msgid "Same content as the original"
msgstr "Same content as the original"
#: crates/pdfs-gui/src/app/pages/locations.rs:832
#: crates/pdfs-gui/src/app/pages/locations.rs:915
#, rust-format
msgid ""
"“{name}” was changed here and elsewhere at the same time.\n"
@@ -2762,7 +2826,7 @@ msgstr ""
"\n"
"Whatever is not kept goes to Trash, where it can be restored."
#: crates/pdfs-gui/src/app/pages/locations.rs:844
#: crates/pdfs-gui/src/app/pages/locations.rs:927
#, rust-format
msgid ""
"The original “{name}” no longer exists; only the copy is left ({copy}).\n"
@@ -2773,110 +2837,110 @@ msgstr ""
"\n"
"Keep the copy to give it the original name back."
#: crates/pdfs-gui/src/app/pages/locations.rs:850
#: crates/pdfs-gui/src/app/pages/locations.rs:933
msgid "Resolve Conflict"
msgstr "Resolve Conflict"
#: crates/pdfs-gui/src/app/pages/locations.rs:855
#: crates/pdfs-gui/src/app/pages/locations.rs:938
msgid "Name for the copy, if keeping both"
msgstr "Name for the copy, if keeping both"
#: crates/pdfs-gui/src/app/pages/locations.rs:862
#: crates/pdfs-gui/src/app/pages/locations.rs:945
msgid "Keep Original"
msgstr "Keep Original"
#: crates/pdfs-gui/src/app/pages/locations.rs:863
#: crates/pdfs-gui/src/app/pages/locations.rs:946
msgid "Keep Both"
msgstr "Keep Both"
#: crates/pdfs-gui/src/app/pages/locations.rs:865
#: crates/pdfs-gui/src/app/pages/locations.rs:948
msgid "Keep Copy"
msgstr "Keep Copy"
#: crates/pdfs-gui/src/app/pages/locations.rs:922
#: crates/pdfs-gui/src/app/pages/locations.rs:928
#: crates/pdfs-gui/src/app/pages/locations.rs:1005
#: crates/pdfs-gui/src/app/pages/locations.rs:1011
msgid "Couldn't resolve the conflict"
msgstr "Couldn't resolve the conflict"
#: crates/pdfs-gui/src/app/pages/locations.rs:971
#: crates/pdfs-gui/src/app/pages/locations.rs:1054
msgid "Reading this computer's Proton Drive locations."
msgstr "Reading this computer's Proton Drive locations."
#: crates/pdfs-gui/src/app/pages/locations.rs:992
#: crates/pdfs-gui/src/app/pages/locations.rs:1075
msgid "Unavailable"
msgstr "Unavailable"
#: crates/pdfs-gui/src/app/pages/locations.rs:1075
#: crates/pdfs-gui/src/app/pages/locations.rs:1158
msgid "No folders yet"
msgstr "No folders yet"
#: crates/pdfs-gui/src/app/pages/locations.rs:1077
#: crates/pdfs-gui/src/app/pages/locations.rs:1160
msgid "The Proton Drive service hasn't reported its folder yet."
msgstr "The Proton Drive service hasn't reported its folder yet."
#: crates/pdfs-gui/src/app/pages/locations.rs:1100
#: crates/pdfs-gui/src/app/pages/locations.rs:1183
#, rust-format
msgid "{path} · {state}"
msgstr "{path} · {state}"
#: crates/pdfs-gui/src/app/pages/locations.rs:1143
#: crates/pdfs-gui/src/app/pages/locations.rs:1226
msgid "Read-only"
msgstr "Read-only"
#: crates/pdfs-gui/src/app/pages/locations.rs:1159
#: crates/pdfs-gui/src/app/pages/locations.rs:1242
msgid "Open in Files"
msgstr "Open in Files"
#: crates/pdfs-gui/src/app/pages/locations.rs:1164
#: crates/pdfs-gui/src/app/pages/locations.rs:1247
msgid "Change Location…"
msgstr "Change Location…"
#: crates/pdfs-gui/src/app/pages/locations.rs:1216
#: crates/pdfs-gui/src/app/pages/locations.rs:1299
msgid "Choose whether this folder keeps a full copy on this computer"
msgstr "Choose whether this folder keeps a full copy on this computer"
#: crates/pdfs-gui/src/app/pages/locations.rs:1232
#: crates/pdfs-gui/src/app/pages/locations.rs:1315
msgid "Keep every file on this computer and in Proton Drive."
msgstr "Keep every file on this computer and in Proton Drive."
#: crates/pdfs-gui/src/app/pages/locations.rs:1237
#: crates/pdfs-gui/src/app/pages/locations.rs:1320
msgid "Keep the files in Proton Drive and download each one when you open it."
msgstr "Keep the files in Proton Drive and download each one when you open it."
#. Translators: a folder mode: files are kept in Proton Drive and fetched when opened.
#: crates/pdfs-gui/src/app/pages/locations.rs:1291
#: crates/pdfs-gui/src/app/pages/locations.rs:1374
msgctxt "folder mode"
msgid "Online only"
msgstr "Online only"
#. Translators: a folder mode: a full copy is kept on this computer.
#: crates/pdfs-gui/src/app/pages/locations.rs:1294
#: crates/pdfs-gui/src/app/pages/locations.rs:1377
msgctxt "folder mode"
msgid "Synced"
msgstr "Synced"
#: crates/pdfs-gui/src/app/pages/locations.rs:1305
#: crates/pdfs-gui/src/app/pages/locations.rs:1388
msgid "Sync Now"
msgstr "Sync Now"
#: crates/pdfs-gui/src/app/pages/locations.rs:1309
#: crates/pdfs-gui/src/app/pages/locations.rs:1392
msgid "Resume Syncing"
msgstr "Resume Syncing"
#: crates/pdfs-gui/src/app/pages/locations.rs:1311
#: crates/pdfs-gui/src/app/pages/locations.rs:1394
msgid "Pause Syncing"
msgstr "Pause Syncing"
#: crates/pdfs-gui/src/app/pages/locations.rs:1322
#: crates/pdfs-gui/src/app/pages/locations.rs:1405
msgid "Stop Syncing…"
msgstr "Stop Syncing…"
#: crates/pdfs-gui/src/app/pages/locations.rs:1331
#: crates/pdfs-gui/src/app/pages/locations.rs:1414
msgid "Make Folder Online Only?"
msgstr "Make Folder Online Only?"
#. Translators: {path} is a local folder path.
#: crates/pdfs-gui/src/app/pages/locations.rs:1333
#: crates/pdfs-gui/src/app/pages/locations.rs:1416
#, rust-format
msgid ""
"Files in {path} will be removed from this computer and kept in Proton Drive "
@@ -2885,11 +2949,11 @@ msgstr ""
"Files in {path} will be removed from this computer and kept in Proton Drive "
"only. Each file downloads again when you open it."
#: crates/pdfs-gui/src/app/pages/locations.rs:1336
#: crates/pdfs-gui/src/app/pages/locations.rs:1419
msgid "Make Online Only"
msgstr "Make Online Only"
#: crates/pdfs-gui/src/app/pages/locations.rs:1372
#: crates/pdfs-gui/src/app/pages/locations.rs:1455
#, rust-format
msgid ""
"Every file in {path} will download to this computer and stay synced. {free} "
@@ -2898,59 +2962,59 @@ msgstr ""
"Every file in {path} will download to this computer and stay synced. {free} "
"is free on this disk."
#: crates/pdfs-gui/src/app/pages/locations.rs:1377
#: crates/pdfs-gui/src/app/pages/locations.rs:1460
#, rust-format
msgid "Every file in {path} will download to this computer and stay synced."
msgstr "Every file in {path} will download to this computer and stay synced."
#: crates/pdfs-gui/src/app/pages/locations.rs:1382
#: crates/pdfs-gui/src/app/pages/locations.rs:1465
msgid "Download Folder?"
msgstr "Download Folder?"
#: crates/pdfs-gui/src/app/pages/locations.rs:1386
#: crates/pdfs-gui/src/app/pages/locations.rs:1469
msgid "Download"
msgstr "Download"
#: crates/pdfs-gui/src/app/pages/locations.rs:1410
#: crates/pdfs-gui/src/app/pages/locations.rs:1493
msgid "Couldn't pause the folder"
msgstr "Couldn't pause the folder"
#: crates/pdfs-gui/src/app/pages/locations.rs:1411
#: crates/pdfs-gui/src/app/pages/locations.rs:1494
msgid "Couldn't resume the folder"
msgstr "Couldn't resume the folder"
#: crates/pdfs-gui/src/app/pages/locations.rs:1417
#: crates/pdfs-gui/src/app/pages/locations.rs:1500
msgid "Folder paused"
msgstr "Folder paused"
#: crates/pdfs-gui/src/app/pages/locations.rs:1418
#: crates/pdfs-gui/src/app/pages/locations.rs:1501
msgid "Folder resumed"
msgstr "Folder resumed"
#: crates/pdfs-gui/src/app/pages/locations.rs:1442
#: crates/pdfs-gui/src/app/pages/locations.rs:1446
#: crates/pdfs-gui/src/app/pages/locations.rs:1525
#: crates/pdfs-gui/src/app/pages/locations.rs:1529
msgid "Couldn't sync"
msgstr "Couldn't sync"
#: crates/pdfs-gui/src/app/pages/locations.rs:1472
#: crates/pdfs-gui/src/app/pages/locations.rs:1555
msgid "Shared folder"
msgstr "Shared folder"
#: crates/pdfs-gui/src/app/pages/locations.rs:1474
#: crates/pdfs-gui/src/app/pages/locations.rs:1557
msgid "Going online only"
msgstr "Going online only"
#: crates/pdfs-gui/src/app/pages/locations.rs:1475
#: crates/pdfs-gui/src/app/pages/locations.rs:1558
msgid "Switching to synced"
msgstr "Switching to synced"
#: crates/pdfs-gui/src/app/pages/locations.rs:1485
#: crates/pdfs-gui/src/app/pages/locations.rs:1568
msgctxt "state"
msgid "paused"
msgstr "paused"
#. Translators: a folder's files can't be opened right now.
#: crates/pdfs-gui/src/app/pages/locations.rs:1496
#: crates/pdfs-gui/src/app/pages/locations.rs:1579
msgid "not available"
msgstr "not available"
@@ -5408,10 +5472,6 @@ msgstr "Save version"
msgid "Couldn't save that version"
msgstr "Couldn't save that version"
#: crates/pdfs-gui/src/app/widgets/versions_dialog.rs:351
msgid "That location isn't a local file."
msgstr "That location isn't a local file."
#: crates/pdfs-gui/src/app/widgets/versions_dialog.rs:358
msgid "Version saved"
msgstr "Version saved"
+180 -119
View File
@@ -5,7 +5,7 @@ msgid ""
msgstr ""
"Project-Id-Version: proton-drive-linux 2.1.0\n"
"Report-Msgid-Bugs-To: https://github.com/narrrl/proton-drive-linux/issues\n"
"POT-Creation-Date: 2026-09-29 00:18+0200\n"
"POT-Creation-Date: 2026-10-04 03:16+0200\n"
"PO-Revision-Date: 2026-09-23 12:00+0200\n"
"Last-Translator: Proton Drive for Linux contributors\n"
"Language-Team: Spanish\n"
@@ -64,7 +64,7 @@ msgstr "%A, %-d de %B de %Y, %H:%M"
#: crates/pdfs-gui/src/app/pages/browser.rs:1217
#: crates/pdfs-gui/src/app/pages/browser.rs:2090
#: crates/pdfs-gui/src/app/pages/browser.rs:2167
#: crates/pdfs-gui/src/app/pages/locations.rs:1471
#: crates/pdfs-gui/src/app/pages/locations.rs:1554
#: crates/pdfs-gui/src/app/pages/shared_by_me.rs:252
#: crates/pdfs-gui/src/app/pages/trash.rs:191 crates/pdfs-gui/src/prompt.rs:171
msgid "My files"
@@ -269,9 +269,9 @@ msgstr ""
#: crates/pdfs-gui/src/app/pages/devices.rs:979
#: crates/pdfs-gui/src/app/pages/devices.rs:1031
#: crates/pdfs-gui/src/app/pages/devices.rs:1075
#: crates/pdfs-gui/src/app/pages/locations.rs:860
#: crates/pdfs-gui/src/app/pages/locations.rs:1335
#: crates/pdfs-gui/src/app/pages/locations.rs:1385
#: crates/pdfs-gui/src/app/pages/locations.rs:943
#: crates/pdfs-gui/src/app/pages/locations.rs:1418
#: crates/pdfs-gui/src/app/pages/locations.rs:1468
#: crates/pdfs-gui/src/app/pages/login.rs:312
#: crates/pdfs-gui/src/app/pages/photos.rs:2055
#: crates/pdfs-gui/src/app/pages/shared.rs:946
@@ -475,8 +475,8 @@ msgstr "Nada del registro reciente coincide con este filtro."
#: crates/pdfs-gui/src/app/pages/activity.rs:186
#: crates/pdfs-gui/src/app/pages/browser.rs:281
#: crates/pdfs-gui/src/app/pages/devices.rs:114
#: crates/pdfs-gui/src/app/pages/locations.rs:183
#: crates/pdfs-gui/src/app/pages/locations.rs:680
#: crates/pdfs-gui/src/app/pages/locations.rs:184
#: crates/pdfs-gui/src/app/pages/locations.rs:685
#: crates/pdfs-gui/src/app/pages/photos.rs:465
#: crates/pdfs-gui/src/app/pages/shared.rs:183
#: crates/pdfs-gui/src/app/pages/shared_by_me.rs:94
@@ -513,8 +513,8 @@ msgstr "Opciones de vista"
#: crates/pdfs-gui/src/app/pages/browser.rs:2635
#: crates/pdfs-gui/src/app/pages/browser.rs:2639
#: crates/pdfs-gui/src/app/pages/devices.rs:325
#: crates/pdfs-gui/src/app/pages/locations.rs:191
#: crates/pdfs-gui/src/app/pages/locations.rs:970
#: crates/pdfs-gui/src/app/pages/locations.rs:192
#: crates/pdfs-gui/src/app/pages/locations.rs:1053
#: crates/pdfs-gui/src/app/pages/shared.rs:422
#: crates/pdfs-gui/src/app/pages/shared_by_me.rs:347
#: crates/pdfs-gui/src/app/pages/trash.rs:284
@@ -1018,7 +1018,7 @@ msgstr ""
#. Translators: {name} is the file the conflicting copy was made from.
#: crates/pdfs-gui/src/app/pages/activity_text.rs:346
#: crates/pdfs-gui/src/app/pages/locations.rs:795
#: crates/pdfs-gui/src/app/pages/locations.rs:878
#, rust-format
msgid "Differs from {name}"
msgstr "Difiere de {name}"
@@ -1205,11 +1205,12 @@ msgstr "No se pudieron cargar los álbumes"
#: crates/pdfs-gui/src/app/pages/devices.rs:884
#: crates/pdfs-gui/src/app/pages/devices.rs:1120
#: crates/pdfs-gui/src/app/pages/duplicates.rs:220
#: crates/pdfs-gui/src/app/pages/locations.rs:535
#: crates/pdfs-gui/src/app/pages/locations.rs:710
#: crates/pdfs-gui/src/app/pages/locations.rs:929
#: crates/pdfs-gui/src/app/pages/locations.rs:1427
#: crates/pdfs-gui/src/app/pages/locations.rs:1447
#: crates/pdfs-gui/src/app/pages/locations.rs:536
#: crates/pdfs-gui/src/app/pages/locations.rs:769
#: crates/pdfs-gui/src/app/pages/locations.rs:793
#: crates/pdfs-gui/src/app/pages/locations.rs:1012
#: crates/pdfs-gui/src/app/pages/locations.rs:1510
#: crates/pdfs-gui/src/app/pages/locations.rs:1530
#: crates/pdfs-gui/src/app/pages/photo_viewer.rs:1425
#: crates/pdfs-gui/src/app/pages/photos.rs:1420
#: crates/pdfs-gui/src/app/pages/photos.rs:2140
@@ -2152,7 +2153,7 @@ msgid "Add Folder to Sync"
msgstr "Añadir carpeta para sincronizar"
#: crates/pdfs-gui/src/app/pages/devices.rs:686
#: crates/pdfs-gui/src/app/pages/locations.rs:1440
#: crates/pdfs-gui/src/app/pages/locations.rs:1523
msgid "Syncing folder…"
msgstr "Sincronizando la carpeta…"
@@ -2509,21 +2510,21 @@ msgstr[1] "Mover {n} fotos a la papelera"
msgid "Keep"
msgstr "Conservar"
#: crates/pdfs-gui/src/app/pages/locations.rs:125
#: crates/pdfs-gui/src/app/pages/locations.rs:126
msgid "Add Folder"
msgstr "Añadir carpeta"
#: crates/pdfs-gui/src/app/pages/locations.rs:130
#: crates/pdfs-gui/src/app/pages/locations.rs:131
msgid "Back a local folder up to this computer's Proton Drive device"
msgstr ""
"Hacer copia de seguridad de una carpeta local en el dispositivo de Proton "
"Drive de este equipo"
#: crates/pdfs-gui/src/app/pages/locations.rs:140
#: crates/pdfs-gui/src/app/pages/locations.rs:141
msgid "Conflicts"
msgstr "Conflictos"
#: crates/pdfs-gui/src/app/pages/locations.rs:142
#: crates/pdfs-gui/src/app/pages/locations.rs:143
msgid ""
"Files changed in two places at once. Both versions were kept; choose which "
"one stays."
@@ -2531,7 +2532,7 @@ msgstr ""
"Archivos modificados en dos lugares a la vez. Se conservaron ambas "
"versiones; elija cuál se queda."
#: crates/pdfs-gui/src/app/pages/locations.rs:158
#: crates/pdfs-gui/src/app/pages/locations.rs:159
msgid ""
"Synced folders keep a full copy on this computer. Online-only folders fetch "
"each file when you open it."
@@ -2539,136 +2540,136 @@ msgstr ""
"Las carpetas sincronizadas guardan una copia completa en este equipo. Las "
"carpetas solo en línea descargan cada archivo al abrirlo."
#: crates/pdfs-gui/src/app/pages/locations.rs:169
#: crates/pdfs-gui/src/app/pages/locations.rs:170
msgid "About Sync Modes"
msgstr "Acerca de los modos de sincronización"
#: crates/pdfs-gui/src/app/pages/locations.rs:178
#: crates/pdfs-gui/src/app/pages/locations.rs:179
#: crates/pdfs-gui/src/prompt.rs:65
msgid "Folders"
msgstr "Carpetas"
#: crates/pdfs-gui/src/app/pages/locations.rs:213
#: crates/pdfs-gui/src/app/pages/locations.rs:214
msgctxt "sync view"
msgid "Overview"
msgstr "Resumen"
#: crates/pdfs-gui/src/app/pages/locations.rs:219
#: crates/pdfs-gui/src/app/pages/locations.rs:220
msgctxt "sync view"
msgid "Folders"
msgstr "Carpetas"
#: crates/pdfs-gui/src/app/pages/locations.rs:225
#: crates/pdfs-gui/src/app/pages/locations.rs:226
msgctxt "sync view"
msgid "History"
msgstr "Historial"
#: crates/pdfs-gui/src/app/pages/locations.rs:232
#: crates/pdfs-gui/src/app/pages/locations.rs:233
#: crates/pdfs-gui/src/app/pages/shared.rs:210
msgid "Review"
msgstr "Revisar"
#: crates/pdfs-gui/src/app/pages/locations.rs:363
#: crates/pdfs-gui/src/app/pages/locations.rs:364
#, rust-format
msgid "{n} change couldn't be uploaded"
msgid_plural "{n} changes couldn't be uploaded"
msgstr[0] "No se pudo subir {n} cambio"
msgstr[1] "No se pudieron subir {n} cambios"
#: crates/pdfs-gui/src/app/pages/locations.rs:369
#: crates/pdfs-gui/src/app/pages/locations.rs:370
#, rust-format
msgid "{n} file was changed in two places at once"
msgid_plural "{n} files were changed in two places at once"
msgstr[0] "{n} archivo se modificó en dos lugares a la vez"
msgstr[1] "{n} archivos se modificaron en dos lugares a la vez"
#: crates/pdfs-gui/src/app/pages/locations.rs:374
#: crates/pdfs-gui/src/app/pages/locations.rs:375
msgid "Some files need your attention"
msgstr "Algunos archivos requieren su atención"
#: crates/pdfs-gui/src/app/pages/locations.rs:391
#: crates/pdfs-gui/src/app/pages/locations.rs:392
msgid "Checking…"
msgstr "Comprobando…"
#: crates/pdfs-gui/src/app/pages/locations.rs:419
#: crates/pdfs-gui/src/app/pages/locations.rs:420
msgid "Pause for 1 Hour"
msgstr "Pausar durante 1 hora"
#: crates/pdfs-gui/src/app/pages/locations.rs:423
#: crates/pdfs-gui/src/app/pages/locations.rs:424
msgid "Pause for 8 Hours"
msgstr "Pausar durante 8 horas"
#: crates/pdfs-gui/src/app/pages/locations.rs:427
#: crates/pdfs-gui/src/app/pages/locations.rs:428
msgid "Pause for 24 Hours"
msgstr "Pausar durante 24 horas"
#: crates/pdfs-gui/src/app/pages/locations.rs:431
#: crates/pdfs-gui/src/app/pages/locations.rs:467
#: crates/pdfs-gui/src/app/pages/locations.rs:432
#: crates/pdfs-gui/src/app/pages/locations.rs:468
msgctxt "verb"
msgid "Pause"
msgstr "Pausar"
#: crates/pdfs-gui/src/app/pages/locations.rs:435
#: crates/pdfs-gui/src/app/pages/locations.rs:472
#: crates/pdfs-gui/src/app/pages/locations.rs:436
#: crates/pdfs-gui/src/app/pages/locations.rs:473
msgid "Stop uploading until you resume. Files still open as usual."
msgstr ""
"Dejar de subir hasta que reanude. Los archivos se siguen abriendo como "
"siempre."
#: crates/pdfs-gui/src/app/pages/locations.rs:437
#: crates/pdfs-gui/src/app/pages/locations.rs:438
msgid "Pause for a while"
msgstr "Pausar durante un tiempo"
#: crates/pdfs-gui/src/app/pages/locations.rs:465
#: crates/pdfs-gui/src/app/pages/locations.rs:466
msgctxt "verb"
msgid "Resume"
msgstr "Reanudar"
#: crates/pdfs-gui/src/app/pages/locations.rs:470
#: crates/pdfs-gui/src/app/pages/locations.rs:471
msgid "Upload everything that waited while sync was paused"
msgstr ""
"Subir todo lo que quedó en espera mientras la sincronización estaba en pausa"
#: crates/pdfs-gui/src/app/pages/locations.rs:518
#: crates/pdfs-gui/src/app/pages/locations.rs:519
msgid "Couldn't pause sync"
msgstr "No se pudo pausar la sincronización"
#: crates/pdfs-gui/src/app/pages/locations.rs:520
#: crates/pdfs-gui/src/app/pages/locations.rs:521
msgid "Couldn't resume sync"
msgstr "No se pudo reanudar la sincronización"
#: crates/pdfs-gui/src/app/pages/locations.rs:526
#: crates/pdfs-gui/src/app/pages/locations.rs:527
msgid "Sync resumed"
msgstr "Sincronización reanudada"
#: crates/pdfs-gui/src/app/pages/locations.rs:527
#: crates/pdfs-gui/src/app/pages/locations.rs:528
msgid "Sync paused until you resume"
msgstr "Sincronización en pausa hasta que la reanude"
#: crates/pdfs-gui/src/app/pages/locations.rs:528
#: crates/pdfs-gui/src/app/pages/locations.rs:529
#: crates/pdfs-gui/src/app/pages/status.rs:1323 crates/pdfs-gui/src/main.rs:237
msgid "Sync paused"
msgstr "Sincronización en pausa"
#: crates/pdfs-gui/src/app/pages/locations.rs:546
#: crates/pdfs-gui/src/app/pages/locations.rs:547
msgid "Retry All"
msgstr "Reintentar todo"
#: crates/pdfs-gui/src/app/pages/locations.rs:548
#: crates/pdfs-gui/src/app/pages/locations.rs:549
msgid "Try every failed change again now"
msgstr "Volver a intentar ahora todos los cambios fallidos"
#: crates/pdfs-gui/src/app/pages/locations.rs:553
#: crates/pdfs-gui/src/app/pages/locations.rs:554
msgid "Waiting to Upload"
msgstr "En espera de subida"
#: crates/pdfs-gui/src/app/pages/locations.rs:555
#: crates/pdfs-gui/src/app/pages/locations.rs:614
#: crates/pdfs-gui/src/app/pages/locations.rs:556
#: crates/pdfs-gui/src/app/pages/locations.rs:615
msgid "Changes made on this computer that are not on Proton Drive yet."
msgstr "Cambios hechos en este equipo que todavía no están en Proton Drive."
#. Translators: {shown} is how many rows are listed (50), {n} the total number of queued changes.
#: crates/pdfs-gui/src/app/pages/locations.rs:612
#: crates/pdfs-gui/src/app/pages/locations.rs:613
#, rust-format
msgid ""
"Changes made on this computer that are not on Proton Drive yet. Showing the "
@@ -2683,89 +2684,153 @@ msgstr[1] ""
"Cambios hechos en este equipo que todavía no están en Proton Drive. Se "
"muestran los primeros {shown} de {n}."
#: crates/pdfs-gui/src/app/pages/locations.rs:629
#: crates/pdfs-gui/src/app/pages/locations.rs:630
msgid "Upload changes"
msgstr "Subir cambios"
#: crates/pdfs-gui/src/app/pages/locations.rs:630
#: crates/pdfs-gui/src/app/pages/locations.rs:631
msgid "Upload new file"
msgstr "Subir archivo nuevo"
#: crates/pdfs-gui/src/app/pages/locations.rs:631
#: crates/pdfs-gui/src/app/pages/locations.rs:632
msgid "Create folder"
msgstr "Crear carpeta"
#: crates/pdfs-gui/src/app/pages/locations.rs:632
#: crates/pdfs-gui/src/app/pages/locations.rs:633
msgid "Rename or move"
msgstr "Renombrar o mover"
#: crates/pdfs-gui/src/app/pages/locations.rs:633
#: crates/pdfs-gui/src/app/pages/locations.rs:634
msgid "Move to trash"
msgstr "Mover a la papelera"
#. Translators: a queued change of an unknown kind.
#: crates/pdfs-gui/src/app/pages/locations.rs:635
#: crates/pdfs-gui/src/app/pages/locations.rs:636
msgctxt "noun"
msgid "Change"
msgstr "Cambio"
#: crates/pdfs-gui/src/app/pages/locations.rs:638
#: crates/pdfs-gui/src/app/pages/locations.rs:639
msgid "waiting for the app writing it to finish"
msgstr "esperando a que termine la aplicación que lo escribe"
#. Translators: {time} is when the next attempt happens, such as "14:30".
#: crates/pdfs-gui/src/app/pages/locations.rs:641
#: crates/pdfs-gui/src/app/pages/locations.rs:642
#, rust-format
msgid "retrying {time}"
msgstr "reintento a las {time}"
#: crates/pdfs-gui/src/app/pages/locations.rs:643
#: crates/pdfs-gui/src/app/pages/locations.rs:644
msgid "waiting for sync to resume"
msgstr "esperando a que se reanude la sincronización"
#: crates/pdfs-gui/src/app/pages/locations.rs:644
#: crates/pdfs-gui/src/app/pages/locations.rs:645
msgid "up next"
msgstr "el siguiente"
#: crates/pdfs-gui/src/app/pages/locations.rs:648
#: crates/pdfs-gui/src/app/pages/locations.rs:649
#, rust-format
msgid "{action} · {state}"
msgstr "{action} · {state}"
#: crates/pdfs-gui/src/app/pages/locations.rs:655
#: crates/pdfs-gui/src/app/pages/locations.rs:660
#, rust-format
msgid "Failed {n} time: {error}"
msgid_plural "Failed {n} times: {error}"
msgstr[0] "Falló {n} vez: {error}"
msgstr[1] "Falló {n} veces: {error}"
#: crates/pdfs-gui/src/app/pages/locations.rs:681
#: crates/pdfs-gui/src/app/pages/locations.rs:686
msgid "Retry now"
msgstr "Reintentar ahora"
#: crates/pdfs-gui/src/app/pages/locations.rs:700
#: crates/pdfs-gui/src/app/pages/locations.rs:697
msgid "Export"
msgstr "Exportar"
#: crates/pdfs-gui/src/app/pages/locations.rs:698
msgid "Save a copy of this file's content elsewhere"
msgstr "Guardar una copia del contenido de este archivo en otro lugar"
#: crates/pdfs-gui/src/app/pages/locations.rs:719
msgid ""
"Your Proton Drive storage is full. Free up space or upgrade your plan, and "
"this change uploads on its own."
msgstr ""
"Su almacenamiento de Proton Drive está lleno. Libere espacio o mejore su "
"plan, y este cambio se subirá por sí solo."
#: crates/pdfs-gui/src/app/pages/locations.rs:722
msgid ""
"You can no longer change this on Proton Drive. Ask the owner for edit "
"access, or export the file to keep your version."
msgstr ""
"Ya no puede modificar esto en Proton Drive. Pida al propietario permiso de "
"edición o exporte el archivo para conservar su versión."
#: crates/pdfs-gui/src/app/pages/locations.rs:725
msgid ""
"The folder this change belongs in is gone from Proton Drive. Export the file "
"to keep your version."
msgstr ""
"La carpeta a la que pertenece este cambio ya no está en Proton Drive. "
"Exporte el archivo para conservar su versión."
#: crates/pdfs-gui/src/app/pages/locations.rs:728
msgid ""
"Proton Drive's limit on items in a folder or on folder depth is reached. "
"Make room in the folder, then retry."
msgstr ""
"Se alcanzó el límite de Proton Drive de elementos por carpeta o de "
"profundidad de carpetas. Haga espacio en la carpeta y vuelva a intentarlo."
#: crates/pdfs-gui/src/app/pages/locations.rs:731
msgid "Proton Drive refused this change. It stays queued and is tried again."
msgstr ""
"Proton Drive rechazó este cambio. Sigue en la cola y se volverá a intentar."
#: crates/pdfs-gui/src/app/pages/locations.rs:741
msgid "Export File"
msgstr "Exportar archivo"
#: crates/pdfs-gui/src/app/pages/locations.rs:750
#: crates/pdfs-gui/src/app/pages/locations.rs:764
#: crates/pdfs-gui/src/app/pages/locations.rs:768
msgid "Couldn't export the file"
msgstr "No se pudo exportar el archivo"
#: crates/pdfs-gui/src/app/pages/locations.rs:751
#: crates/pdfs-gui/src/app/widgets/versions_dialog.rs:351
msgid "That location isn't a local file."
msgstr "Esa ubicación no es un archivo local."
#: crates/pdfs-gui/src/app/pages/locations.rs:762
msgid "File exported"
msgstr "Archivo exportado"
#: crates/pdfs-gui/src/app/pages/locations.rs:783
msgid "Retrying now…"
msgstr "Reintentando ahora…"
#: crates/pdfs-gui/src/app/pages/locations.rs:705
#: crates/pdfs-gui/src/app/pages/locations.rs:709
#: crates/pdfs-gui/src/app/pages/locations.rs:788
#: crates/pdfs-gui/src/app/pages/locations.rs:792
msgid "Couldn't retry"
msgstr "No se pudo reintentar"
#: crates/pdfs-gui/src/app/pages/locations.rs:779
#: crates/pdfs-gui/src/app/pages/locations.rs:862
#, rust-format
msgid "{size}, changed {time}"
msgstr "{size}, modificado {time}"
#: crates/pdfs-gui/src/app/pages/locations.rs:789
#: crates/pdfs-gui/src/app/pages/locations.rs:872
msgid "The original is gone; only this copy is left"
msgstr "El original ya no existe; solo queda esta copia"
#: crates/pdfs-gui/src/app/pages/locations.rs:791
#: crates/pdfs-gui/src/app/pages/locations.rs:874
msgid "Same content as the original"
msgstr "Mismo contenido que el original"
#: crates/pdfs-gui/src/app/pages/locations.rs:832
#: crates/pdfs-gui/src/app/pages/locations.rs:915
#, rust-format
msgid ""
"“{name}” was changed here and elsewhere at the same time.\n"
@@ -2782,7 +2847,7 @@ msgstr ""
"\n"
"Lo que no se conserve va a la papelera, desde donde se puede restaurar."
#: crates/pdfs-gui/src/app/pages/locations.rs:844
#: crates/pdfs-gui/src/app/pages/locations.rs:927
#, rust-format
msgid ""
"The original “{name}” no longer exists; only the copy is left ({copy}).\n"
@@ -2793,111 +2858,111 @@ msgstr ""
"\n"
"Conserve la copia para devolverle el nombre original."
#: crates/pdfs-gui/src/app/pages/locations.rs:850
#: crates/pdfs-gui/src/app/pages/locations.rs:933
msgid "Resolve Conflict"
msgstr "Resolver conflicto"
#: crates/pdfs-gui/src/app/pages/locations.rs:855
#: crates/pdfs-gui/src/app/pages/locations.rs:938
msgid "Name for the copy, if keeping both"
msgstr "Nombre de la copia, si se conservan ambos"
#: crates/pdfs-gui/src/app/pages/locations.rs:862
#: crates/pdfs-gui/src/app/pages/locations.rs:945
msgid "Keep Original"
msgstr "Conservar original"
#: crates/pdfs-gui/src/app/pages/locations.rs:863
#: crates/pdfs-gui/src/app/pages/locations.rs:946
msgid "Keep Both"
msgstr "Conservar ambos"
#: crates/pdfs-gui/src/app/pages/locations.rs:865
#: crates/pdfs-gui/src/app/pages/locations.rs:948
msgid "Keep Copy"
msgstr "Conservar copia"
#: crates/pdfs-gui/src/app/pages/locations.rs:922
#: crates/pdfs-gui/src/app/pages/locations.rs:928
#: crates/pdfs-gui/src/app/pages/locations.rs:1005
#: crates/pdfs-gui/src/app/pages/locations.rs:1011
msgid "Couldn't resolve the conflict"
msgstr "No se pudo resolver el conflicto"
#: crates/pdfs-gui/src/app/pages/locations.rs:971
#: crates/pdfs-gui/src/app/pages/locations.rs:1054
msgid "Reading this computer's Proton Drive locations."
msgstr "Leyendo las ubicaciones de Proton Drive de este equipo."
#: crates/pdfs-gui/src/app/pages/locations.rs:992
#: crates/pdfs-gui/src/app/pages/locations.rs:1075
msgid "Unavailable"
msgstr "No disponible"
#: crates/pdfs-gui/src/app/pages/locations.rs:1075
#: crates/pdfs-gui/src/app/pages/locations.rs:1158
msgid "No folders yet"
msgstr "Todavía no hay carpetas"
#: crates/pdfs-gui/src/app/pages/locations.rs:1077
#: crates/pdfs-gui/src/app/pages/locations.rs:1160
msgid "The Proton Drive service hasn't reported its folder yet."
msgstr "El servicio de Proton Drive todavía no ha informado de su carpeta."
#: crates/pdfs-gui/src/app/pages/locations.rs:1100
#: crates/pdfs-gui/src/app/pages/locations.rs:1183
#, rust-format
msgid "{path} · {state}"
msgstr "{path} · {state}"
#: crates/pdfs-gui/src/app/pages/locations.rs:1143
#: crates/pdfs-gui/src/app/pages/locations.rs:1226
msgid "Read-only"
msgstr "Solo lectura"
#: crates/pdfs-gui/src/app/pages/locations.rs:1159
#: crates/pdfs-gui/src/app/pages/locations.rs:1242
msgid "Open in Files"
msgstr "Abrir en Archivos"
#: crates/pdfs-gui/src/app/pages/locations.rs:1164
#: crates/pdfs-gui/src/app/pages/locations.rs:1247
msgid "Change Location…"
msgstr "Cambiar ubicación…"
#: crates/pdfs-gui/src/app/pages/locations.rs:1216
#: crates/pdfs-gui/src/app/pages/locations.rs:1299
msgid "Choose whether this folder keeps a full copy on this computer"
msgstr "Elegir si esta carpeta guarda una copia completa en este equipo"
#: crates/pdfs-gui/src/app/pages/locations.rs:1232
#: crates/pdfs-gui/src/app/pages/locations.rs:1315
msgid "Keep every file on this computer and in Proton Drive."
msgstr "Conservar todos los archivos en este equipo y en Proton Drive."
#: crates/pdfs-gui/src/app/pages/locations.rs:1237
#: crates/pdfs-gui/src/app/pages/locations.rs:1320
msgid "Keep the files in Proton Drive and download each one when you open it."
msgstr ""
"Conservar los archivos en Proton Drive y descargar cada uno al abrirlo."
#. Translators: a folder mode: files are kept in Proton Drive and fetched when opened.
#: crates/pdfs-gui/src/app/pages/locations.rs:1291
#: crates/pdfs-gui/src/app/pages/locations.rs:1374
msgctxt "folder mode"
msgid "Online only"
msgstr "Solo en línea"
#. Translators: a folder mode: a full copy is kept on this computer.
#: crates/pdfs-gui/src/app/pages/locations.rs:1294
#: crates/pdfs-gui/src/app/pages/locations.rs:1377
msgctxt "folder mode"
msgid "Synced"
msgstr "Sincronizada"
#: crates/pdfs-gui/src/app/pages/locations.rs:1305
#: crates/pdfs-gui/src/app/pages/locations.rs:1388
msgid "Sync Now"
msgstr "Sincronizar ahora"
#: crates/pdfs-gui/src/app/pages/locations.rs:1309
#: crates/pdfs-gui/src/app/pages/locations.rs:1392
msgid "Resume Syncing"
msgstr "Reanudar la sincronización"
#: crates/pdfs-gui/src/app/pages/locations.rs:1311
#: crates/pdfs-gui/src/app/pages/locations.rs:1394
msgid "Pause Syncing"
msgstr "Pausar la sincronización"
#: crates/pdfs-gui/src/app/pages/locations.rs:1322
#: crates/pdfs-gui/src/app/pages/locations.rs:1405
msgid "Stop Syncing…"
msgstr "Dejar de sincronizar…"
#: crates/pdfs-gui/src/app/pages/locations.rs:1331
#: crates/pdfs-gui/src/app/pages/locations.rs:1414
msgid "Make Folder Online Only?"
msgstr "¿Hacer la carpeta solo en línea?"
#. Translators: {path} is a local folder path.
#: crates/pdfs-gui/src/app/pages/locations.rs:1333
#: crates/pdfs-gui/src/app/pages/locations.rs:1416
#, rust-format
msgid ""
"Files in {path} will be removed from this computer and kept in Proton Drive "
@@ -2906,11 +2971,11 @@ msgstr ""
"Los archivos de {path} se quitarán de este equipo y se conservarán solo en "
"Proton Drive. Cada archivo se vuelve a descargar al abrirlo."
#: crates/pdfs-gui/src/app/pages/locations.rs:1336
#: crates/pdfs-gui/src/app/pages/locations.rs:1419
msgid "Make Online Only"
msgstr "Hacer solo en línea"
#: crates/pdfs-gui/src/app/pages/locations.rs:1372
#: crates/pdfs-gui/src/app/pages/locations.rs:1455
#, rust-format
msgid ""
"Every file in {path} will download to this computer and stay synced. {free} "
@@ -2919,61 +2984,61 @@ msgstr ""
"Todos los archivos de {path} se descargarán en este equipo y se mantendrán "
"sincronizados. Hay {free} libres en este disco."
#: crates/pdfs-gui/src/app/pages/locations.rs:1377
#: crates/pdfs-gui/src/app/pages/locations.rs:1460
#, rust-format
msgid "Every file in {path} will download to this computer and stay synced."
msgstr ""
"Todos los archivos de {path} se descargarán en este equipo y se mantendrán "
"sincronizados."
#: crates/pdfs-gui/src/app/pages/locations.rs:1382
#: crates/pdfs-gui/src/app/pages/locations.rs:1465
msgid "Download Folder?"
msgstr "¿Descargar la carpeta?"
#: crates/pdfs-gui/src/app/pages/locations.rs:1386
#: crates/pdfs-gui/src/app/pages/locations.rs:1469
msgid "Download"
msgstr "Descargar"
#: crates/pdfs-gui/src/app/pages/locations.rs:1410
#: crates/pdfs-gui/src/app/pages/locations.rs:1493
msgid "Couldn't pause the folder"
msgstr "No se pudo pausar la carpeta"
#: crates/pdfs-gui/src/app/pages/locations.rs:1411
#: crates/pdfs-gui/src/app/pages/locations.rs:1494
msgid "Couldn't resume the folder"
msgstr "No se pudo reanudar la carpeta"
#: crates/pdfs-gui/src/app/pages/locations.rs:1417
#: crates/pdfs-gui/src/app/pages/locations.rs:1500
msgid "Folder paused"
msgstr "Carpeta en pausa"
#: crates/pdfs-gui/src/app/pages/locations.rs:1418
#: crates/pdfs-gui/src/app/pages/locations.rs:1501
msgid "Folder resumed"
msgstr "Carpeta reanudada"
#: crates/pdfs-gui/src/app/pages/locations.rs:1442
#: crates/pdfs-gui/src/app/pages/locations.rs:1446
#: crates/pdfs-gui/src/app/pages/locations.rs:1525
#: crates/pdfs-gui/src/app/pages/locations.rs:1529
msgid "Couldn't sync"
msgstr "No se pudo sincronizar"
#: crates/pdfs-gui/src/app/pages/locations.rs:1472
#: crates/pdfs-gui/src/app/pages/locations.rs:1555
msgid "Shared folder"
msgstr "Carpeta compartida"
#: crates/pdfs-gui/src/app/pages/locations.rs:1474
#: crates/pdfs-gui/src/app/pages/locations.rs:1557
msgid "Going online only"
msgstr "Pasando a solo en línea"
#: crates/pdfs-gui/src/app/pages/locations.rs:1475
#: crates/pdfs-gui/src/app/pages/locations.rs:1558
msgid "Switching to synced"
msgstr "Pasando a sincronizada"
#: crates/pdfs-gui/src/app/pages/locations.rs:1485
#: crates/pdfs-gui/src/app/pages/locations.rs:1568
msgctxt "state"
msgid "paused"
msgstr "en pausa"
#. Translators: a folder's files can't be opened right now.
#: crates/pdfs-gui/src/app/pages/locations.rs:1496
#: crates/pdfs-gui/src/app/pages/locations.rs:1579
msgid "not available"
msgstr "no disponible"
@@ -5472,10 +5537,6 @@ msgstr "Guardar versión"
msgid "Couldn't save that version"
msgstr "No se pudo guardar esa versión"
#: crates/pdfs-gui/src/app/widgets/versions_dialog.rs:351
msgid "That location isn't a local file."
msgstr "Esa ubicación no es un archivo local."
#: crates/pdfs-gui/src/app/widgets/versions_dialog.rs:358
msgid "Version saved"
msgstr "Versión guardada"
+183 -119
View File
@@ -5,7 +5,7 @@ msgid ""
msgstr ""
"Project-Id-Version: proton-drive-linux 2.1.0\n"
"Report-Msgid-Bugs-To: https://github.com/narrrl/proton-drive-linux/issues\n"
"POT-Creation-Date: 2026-09-29 00:18+0200\n"
"POT-Creation-Date: 2026-10-04 03:16+0200\n"
"PO-Revision-Date: 2026-09-23 12:00+0200\n"
"Last-Translator: Proton Drive for Linux contributors\n"
"Language-Team: French\n"
@@ -64,7 +64,7 @@ msgstr "%A %-d %B %Y à %H:%M"
#: crates/pdfs-gui/src/app/pages/browser.rs:1217
#: crates/pdfs-gui/src/app/pages/browser.rs:2090
#: crates/pdfs-gui/src/app/pages/browser.rs:2167
#: crates/pdfs-gui/src/app/pages/locations.rs:1471
#: crates/pdfs-gui/src/app/pages/locations.rs:1554
#: crates/pdfs-gui/src/app/pages/shared_by_me.rs:252
#: crates/pdfs-gui/src/app/pages/trash.rs:191 crates/pdfs-gui/src/prompt.rs:171
msgid "My files"
@@ -271,9 +271,9 @@ msgstr ""
#: crates/pdfs-gui/src/app/pages/devices.rs:979
#: crates/pdfs-gui/src/app/pages/devices.rs:1031
#: crates/pdfs-gui/src/app/pages/devices.rs:1075
#: crates/pdfs-gui/src/app/pages/locations.rs:860
#: crates/pdfs-gui/src/app/pages/locations.rs:1335
#: crates/pdfs-gui/src/app/pages/locations.rs:1385
#: crates/pdfs-gui/src/app/pages/locations.rs:943
#: crates/pdfs-gui/src/app/pages/locations.rs:1418
#: crates/pdfs-gui/src/app/pages/locations.rs:1468
#: crates/pdfs-gui/src/app/pages/login.rs:312
#: crates/pdfs-gui/src/app/pages/photos.rs:2055
#: crates/pdfs-gui/src/app/pages/shared.rs:946
@@ -477,8 +477,8 @@ msgstr "Rien dans le journal récent ne correspond à ce filtre."
#: crates/pdfs-gui/src/app/pages/activity.rs:186
#: crates/pdfs-gui/src/app/pages/browser.rs:281
#: crates/pdfs-gui/src/app/pages/devices.rs:114
#: crates/pdfs-gui/src/app/pages/locations.rs:183
#: crates/pdfs-gui/src/app/pages/locations.rs:680
#: crates/pdfs-gui/src/app/pages/locations.rs:184
#: crates/pdfs-gui/src/app/pages/locations.rs:685
#: crates/pdfs-gui/src/app/pages/photos.rs:465
#: crates/pdfs-gui/src/app/pages/shared.rs:183
#: crates/pdfs-gui/src/app/pages/shared_by_me.rs:94
@@ -516,8 +516,8 @@ msgstr "Options d’affichage"
#: crates/pdfs-gui/src/app/pages/browser.rs:2635
#: crates/pdfs-gui/src/app/pages/browser.rs:2639
#: crates/pdfs-gui/src/app/pages/devices.rs:325
#: crates/pdfs-gui/src/app/pages/locations.rs:191
#: crates/pdfs-gui/src/app/pages/locations.rs:970
#: crates/pdfs-gui/src/app/pages/locations.rs:192
#: crates/pdfs-gui/src/app/pages/locations.rs:1053
#: crates/pdfs-gui/src/app/pages/shared.rs:422
#: crates/pdfs-gui/src/app/pages/shared_by_me.rs:347
#: crates/pdfs-gui/src/app/pages/trash.rs:284
@@ -1025,7 +1025,7 @@ msgstr ""
#. Translators: {name} is the file the conflicting copy was made from.
#: crates/pdfs-gui/src/app/pages/activity_text.rs:346
#: crates/pdfs-gui/src/app/pages/locations.rs:795
#: crates/pdfs-gui/src/app/pages/locations.rs:878
#, rust-format
msgid "Differs from {name}"
msgstr "Diffère de {name}"
@@ -1212,11 +1212,12 @@ msgstr "Impossible de charger les albums"
#: crates/pdfs-gui/src/app/pages/devices.rs:884
#: crates/pdfs-gui/src/app/pages/devices.rs:1120
#: crates/pdfs-gui/src/app/pages/duplicates.rs:220
#: crates/pdfs-gui/src/app/pages/locations.rs:535
#: crates/pdfs-gui/src/app/pages/locations.rs:710
#: crates/pdfs-gui/src/app/pages/locations.rs:929
#: crates/pdfs-gui/src/app/pages/locations.rs:1427
#: crates/pdfs-gui/src/app/pages/locations.rs:1447
#: crates/pdfs-gui/src/app/pages/locations.rs:536
#: crates/pdfs-gui/src/app/pages/locations.rs:769
#: crates/pdfs-gui/src/app/pages/locations.rs:793
#: crates/pdfs-gui/src/app/pages/locations.rs:1012
#: crates/pdfs-gui/src/app/pages/locations.rs:1510
#: crates/pdfs-gui/src/app/pages/locations.rs:1530
#: crates/pdfs-gui/src/app/pages/photo_viewer.rs:1425
#: crates/pdfs-gui/src/app/pages/photos.rs:1420
#: crates/pdfs-gui/src/app/pages/photos.rs:2140
@@ -2161,7 +2162,7 @@ msgid "Add Folder to Sync"
msgstr "Ajouter un dossier à synchroniser"
#: crates/pdfs-gui/src/app/pages/devices.rs:686
#: crates/pdfs-gui/src/app/pages/locations.rs:1440
#: crates/pdfs-gui/src/app/pages/locations.rs:1523
msgid "Syncing folder…"
msgstr "Synchronisation du dossier…"
@@ -2523,20 +2524,20 @@ msgstr[1] "Mettre {n} photos à la corbeille"
msgid "Keep"
msgstr "Garder"
#: crates/pdfs-gui/src/app/pages/locations.rs:125
#: crates/pdfs-gui/src/app/pages/locations.rs:126
msgid "Add Folder"
msgstr "Ajouter un dossier"
#: crates/pdfs-gui/src/app/pages/locations.rs:130
#: crates/pdfs-gui/src/app/pages/locations.rs:131
msgid "Back a local folder up to this computer's Proton Drive device"
msgstr ""
"Sauvegarder un dossier local sur l’appareil Proton Drive de cet ordinateur"
#: crates/pdfs-gui/src/app/pages/locations.rs:140
#: crates/pdfs-gui/src/app/pages/locations.rs:141
msgid "Conflicts"
msgstr "Conflits"
#: crates/pdfs-gui/src/app/pages/locations.rs:142
#: crates/pdfs-gui/src/app/pages/locations.rs:143
msgid ""
"Files changed in two places at once. Both versions were kept; choose which "
"one stays."
@@ -2544,7 +2545,7 @@ msgstr ""
"Fichiers modifiés à deux endroits en même temps. Les deux versions ont été "
"conservées ; choisissez celle qui reste."
#: crates/pdfs-gui/src/app/pages/locations.rs:158
#: crates/pdfs-gui/src/app/pages/locations.rs:159
msgid ""
"Synced folders keep a full copy on this computer. Online-only folders fetch "
"each file when you open it."
@@ -2552,138 +2553,138 @@ msgstr ""
"Les dossiers synchronisés gardent une copie complète sur cet ordinateur. Les "
"dossiers en ligne uniquement récupèrent chaque fichier à son ouverture."
#: crates/pdfs-gui/src/app/pages/locations.rs:169
#: crates/pdfs-gui/src/app/pages/locations.rs:170
msgid "About Sync Modes"
msgstr "À propos des modes de synchronisation"
#: crates/pdfs-gui/src/app/pages/locations.rs:178
#: crates/pdfs-gui/src/app/pages/locations.rs:179
#: crates/pdfs-gui/src/prompt.rs:65
msgid "Folders"
msgstr "Dossiers"
#: crates/pdfs-gui/src/app/pages/locations.rs:213
#: crates/pdfs-gui/src/app/pages/locations.rs:214
msgctxt "sync view"
msgid "Overview"
msgstr "Aperçu"
#: crates/pdfs-gui/src/app/pages/locations.rs:219
#: crates/pdfs-gui/src/app/pages/locations.rs:220
msgctxt "sync view"
msgid "Folders"
msgstr "Dossiers"
#: crates/pdfs-gui/src/app/pages/locations.rs:225
#: crates/pdfs-gui/src/app/pages/locations.rs:226
msgctxt "sync view"
msgid "History"
msgstr "Historique"
#: crates/pdfs-gui/src/app/pages/locations.rs:232
#: crates/pdfs-gui/src/app/pages/locations.rs:233
#: crates/pdfs-gui/src/app/pages/shared.rs:210
msgid "Review"
msgstr "Examiner"
#: crates/pdfs-gui/src/app/pages/locations.rs:363
#: crates/pdfs-gui/src/app/pages/locations.rs:364
#, rust-format
msgid "{n} change couldn't be uploaded"
msgid_plural "{n} changes couldn't be uploaded"
msgstr[0] "{n} modification n’a pas pu être téléversée"
msgstr[1] "{n} modifications n’ont pas pu être téléversées"
#: crates/pdfs-gui/src/app/pages/locations.rs:369
#: crates/pdfs-gui/src/app/pages/locations.rs:370
#, rust-format
msgid "{n} file was changed in two places at once"
msgid_plural "{n} files were changed in two places at once"
msgstr[0] "{n} fichier a été modifié à deux endroits à la fois"
msgstr[1] "{n} fichiers ont été modifiés à deux endroits à la fois"
#: crates/pdfs-gui/src/app/pages/locations.rs:374
#: crates/pdfs-gui/src/app/pages/locations.rs:375
msgid "Some files need your attention"
msgstr "Certains fichiers nécessitent votre attention"
#: crates/pdfs-gui/src/app/pages/locations.rs:391
#: crates/pdfs-gui/src/app/pages/locations.rs:392
msgid "Checking…"
msgstr "Vérification…"
#: crates/pdfs-gui/src/app/pages/locations.rs:419
#: crates/pdfs-gui/src/app/pages/locations.rs:420
msgid "Pause for 1 Hour"
msgstr "Mettre en pause pendant 1 heure"
#: crates/pdfs-gui/src/app/pages/locations.rs:423
#: crates/pdfs-gui/src/app/pages/locations.rs:424
msgid "Pause for 8 Hours"
msgstr "Mettre en pause pendant 8 heures"
#: crates/pdfs-gui/src/app/pages/locations.rs:427
#: crates/pdfs-gui/src/app/pages/locations.rs:428
msgid "Pause for 24 Hours"
msgstr "Mettre en pause pendant 24 heures"
#: crates/pdfs-gui/src/app/pages/locations.rs:431
#: crates/pdfs-gui/src/app/pages/locations.rs:467
#: crates/pdfs-gui/src/app/pages/locations.rs:432
#: crates/pdfs-gui/src/app/pages/locations.rs:468
msgctxt "verb"
msgid "Pause"
msgstr "Mettre en pause"
#: crates/pdfs-gui/src/app/pages/locations.rs:435
#: crates/pdfs-gui/src/app/pages/locations.rs:472
#: crates/pdfs-gui/src/app/pages/locations.rs:436
#: crates/pdfs-gui/src/app/pages/locations.rs:473
msgid "Stop uploading until you resume. Files still open as usual."
msgstr ""
"Arrêter les téléversements jusqu’à la reprise. Les fichiers s’ouvrent "
"toujours normalement."
#: crates/pdfs-gui/src/app/pages/locations.rs:437
#: crates/pdfs-gui/src/app/pages/locations.rs:438
msgid "Pause for a while"
msgstr "Mettre en pause un moment"
#: crates/pdfs-gui/src/app/pages/locations.rs:465
#: crates/pdfs-gui/src/app/pages/locations.rs:466
msgctxt "verb"
msgid "Resume"
msgstr "Reprendre"
#: crates/pdfs-gui/src/app/pages/locations.rs:470
#: crates/pdfs-gui/src/app/pages/locations.rs:471
msgid "Upload everything that waited while sync was paused"
msgstr ""
"Téléverser tout ce qui attendait pendant la pause de la synchronisation"
#: crates/pdfs-gui/src/app/pages/locations.rs:518
#: crates/pdfs-gui/src/app/pages/locations.rs:519
msgid "Couldn't pause sync"
msgstr "Impossible de mettre en pause la synchronisation"
#: crates/pdfs-gui/src/app/pages/locations.rs:520
#: crates/pdfs-gui/src/app/pages/locations.rs:521
msgid "Couldn't resume sync"
msgstr "Impossible de reprendre la synchronisation"
#: crates/pdfs-gui/src/app/pages/locations.rs:526
#: crates/pdfs-gui/src/app/pages/locations.rs:527
msgid "Sync resumed"
msgstr "Synchronisation reprise"
#: crates/pdfs-gui/src/app/pages/locations.rs:527
#: crates/pdfs-gui/src/app/pages/locations.rs:528
msgid "Sync paused until you resume"
msgstr "Synchronisation en pause jusqu’à la reprise"
#: crates/pdfs-gui/src/app/pages/locations.rs:528
#: crates/pdfs-gui/src/app/pages/locations.rs:529
#: crates/pdfs-gui/src/app/pages/status.rs:1323 crates/pdfs-gui/src/main.rs:237
msgid "Sync paused"
msgstr "Synchronisation en pause"
#: crates/pdfs-gui/src/app/pages/locations.rs:546
#: crates/pdfs-gui/src/app/pages/locations.rs:547
msgid "Retry All"
msgstr "Tout réessayer"
#: crates/pdfs-gui/src/app/pages/locations.rs:548
#: crates/pdfs-gui/src/app/pages/locations.rs:549
msgid "Try every failed change again now"
msgstr "Réessayer maintenant toutes les modifications ayant échoué"
#: crates/pdfs-gui/src/app/pages/locations.rs:553
#: crates/pdfs-gui/src/app/pages/locations.rs:554
msgid "Waiting to Upload"
msgstr "En attente de téléversement"
#: crates/pdfs-gui/src/app/pages/locations.rs:555
#: crates/pdfs-gui/src/app/pages/locations.rs:614
#: crates/pdfs-gui/src/app/pages/locations.rs:556
#: crates/pdfs-gui/src/app/pages/locations.rs:615
msgid "Changes made on this computer that are not on Proton Drive yet."
msgstr ""
"Modifications effectuées sur cet ordinateur qui ne sont pas encore sur "
"Proton Drive."
#. Translators: {shown} is how many rows are listed (50), {n} the total number of queued changes.
#: crates/pdfs-gui/src/app/pages/locations.rs:612
#: crates/pdfs-gui/src/app/pages/locations.rs:613
#, rust-format
msgid ""
"Changes made on this computer that are not on Proton Drive yet. Showing the "
@@ -2698,89 +2699,156 @@ msgstr[1] ""
"Modifications effectuées sur cet ordinateur qui ne sont pas encore sur "
"Proton Drive. Affichage des {shown} premières sur {n}."
#: crates/pdfs-gui/src/app/pages/locations.rs:629
#: crates/pdfs-gui/src/app/pages/locations.rs:630
msgid "Upload changes"
msgstr "Téléverser les modifications"
#: crates/pdfs-gui/src/app/pages/locations.rs:630
#: crates/pdfs-gui/src/app/pages/locations.rs:631
msgid "Upload new file"
msgstr "Téléverser le nouveau fichier"
#: crates/pdfs-gui/src/app/pages/locations.rs:631
#: crates/pdfs-gui/src/app/pages/locations.rs:632
msgid "Create folder"
msgstr "Créer le dossier"
#: crates/pdfs-gui/src/app/pages/locations.rs:632
#: crates/pdfs-gui/src/app/pages/locations.rs:633
msgid "Rename or move"
msgstr "Renommer ou déplacer"
#: crates/pdfs-gui/src/app/pages/locations.rs:633
#: crates/pdfs-gui/src/app/pages/locations.rs:634
msgid "Move to trash"
msgstr "Mettre à la corbeille"
#. Translators: a queued change of an unknown kind.
#: crates/pdfs-gui/src/app/pages/locations.rs:635
#: crates/pdfs-gui/src/app/pages/locations.rs:636
msgctxt "noun"
msgid "Change"
msgstr "Modification"
#: crates/pdfs-gui/src/app/pages/locations.rs:638
#: crates/pdfs-gui/src/app/pages/locations.rs:639
msgid "waiting for the app writing it to finish"
msgstr "en attente de la fin de l’écriture par l’application"
#. Translators: {time} is when the next attempt happens, such as "14:30".
#: crates/pdfs-gui/src/app/pages/locations.rs:641
#: crates/pdfs-gui/src/app/pages/locations.rs:642
#, rust-format
msgid "retrying {time}"
msgstr "nouvelle tentative à {time}"
#: crates/pdfs-gui/src/app/pages/locations.rs:643
#: crates/pdfs-gui/src/app/pages/locations.rs:644
msgid "waiting for sync to resume"
msgstr "en attente de la reprise de la synchronisation"
#: crates/pdfs-gui/src/app/pages/locations.rs:644
#: crates/pdfs-gui/src/app/pages/locations.rs:645
msgid "up next"
msgstr "prochain dans la file"
#: crates/pdfs-gui/src/app/pages/locations.rs:648
#: crates/pdfs-gui/src/app/pages/locations.rs:649
#, rust-format
msgid "{action} · {state}"
msgstr "{action} · {state}"
#: crates/pdfs-gui/src/app/pages/locations.rs:655
#: crates/pdfs-gui/src/app/pages/locations.rs:660
#, rust-format
msgid "Failed {n} time: {error}"
msgid_plural "Failed {n} times: {error}"
msgstr[0] "{n} échec : {error}"
msgstr[1] "{n} échecs : {error}"
#: crates/pdfs-gui/src/app/pages/locations.rs:681
#: crates/pdfs-gui/src/app/pages/locations.rs:686
msgid "Retry now"
msgstr "Réessayer maintenant"
#: crates/pdfs-gui/src/app/pages/locations.rs:700
#: crates/pdfs-gui/src/app/pages/locations.rs:697
msgid "Export"
msgstr "Exporter"
#: crates/pdfs-gui/src/app/pages/locations.rs:698
msgid "Save a copy of this file's content elsewhere"
msgstr "Enregistrer ailleurs une copie du contenu de ce fichier"
#: crates/pdfs-gui/src/app/pages/locations.rs:719
msgid ""
"Your Proton Drive storage is full. Free up space or upgrade your plan, and "
"this change uploads on its own."
msgstr ""
"Votre stockage Proton Drive est plein. Libérez de l’espace ou passez à une "
"offre supérieure, et cette modification sera téléversée d’elle-même."
#: crates/pdfs-gui/src/app/pages/locations.rs:722
msgid ""
"You can no longer change this on Proton Drive. Ask the owner for edit "
"access, or export the file to keep your version."
msgstr ""
"Vous ne pouvez plus modifier cet élément sur Proton Drive. Demandez au "
"propriétaire l’accès en écriture, ou exportez le fichier pour garder votre "
"version."
#: crates/pdfs-gui/src/app/pages/locations.rs:725
msgid ""
"The folder this change belongs in is gone from Proton Drive. Export the file "
"to keep your version."
msgstr ""
"Le dossier auquel appartient cette modification n’existe plus sur Proton "
"Drive. Exportez le fichier pour garder votre version."
#: crates/pdfs-gui/src/app/pages/locations.rs:728
msgid ""
"Proton Drive's limit on items in a folder or on folder depth is reached. "
"Make room in the folder, then retry."
msgstr ""
"La limite de Proton Drive sur le nombre d’éléments d’un dossier ou sur la "
"profondeur des dossiers est atteinte. Faites de la place dans le dossier, "
"puis réessayez."
#: crates/pdfs-gui/src/app/pages/locations.rs:731
msgid "Proton Drive refused this change. It stays queued and is tried again."
msgstr ""
"Proton Drive a refusé cette modification. Elle reste en file d’attente et "
"sera retentée."
#: crates/pdfs-gui/src/app/pages/locations.rs:741
msgid "Export File"
msgstr "Exporter le fichier"
#: crates/pdfs-gui/src/app/pages/locations.rs:750
#: crates/pdfs-gui/src/app/pages/locations.rs:764
#: crates/pdfs-gui/src/app/pages/locations.rs:768
msgid "Couldn't export the file"
msgstr "Impossible d’exporter le fichier"
#: crates/pdfs-gui/src/app/pages/locations.rs:751
#: crates/pdfs-gui/src/app/widgets/versions_dialog.rs:351
msgid "That location isn't a local file."
msgstr "Cet emplacement n’est pas un fichier local."
#: crates/pdfs-gui/src/app/pages/locations.rs:762
msgid "File exported"
msgstr "Fichier exporté"
#: crates/pdfs-gui/src/app/pages/locations.rs:783
msgid "Retrying now…"
msgstr "Nouvelle tentative…"
#: crates/pdfs-gui/src/app/pages/locations.rs:705
#: crates/pdfs-gui/src/app/pages/locations.rs:709
#: crates/pdfs-gui/src/app/pages/locations.rs:788
#: crates/pdfs-gui/src/app/pages/locations.rs:792
msgid "Couldn't retry"
msgstr "Impossible de réessayer"
#: crates/pdfs-gui/src/app/pages/locations.rs:779
#: crates/pdfs-gui/src/app/pages/locations.rs:862
#, rust-format
msgid "{size}, changed {time}"
msgstr "{size}, modification : {time}"
#: crates/pdfs-gui/src/app/pages/locations.rs:789
#: crates/pdfs-gui/src/app/pages/locations.rs:872
msgid "The original is gone; only this copy is left"
msgstr "L’original a disparu ; seule cette copie subsiste"
#: crates/pdfs-gui/src/app/pages/locations.rs:791
#: crates/pdfs-gui/src/app/pages/locations.rs:874
msgid "Same content as the original"
msgstr "Même contenu que l’original"
#: crates/pdfs-gui/src/app/pages/locations.rs:832
#: crates/pdfs-gui/src/app/pages/locations.rs:915
#, rust-format
msgid ""
"“{name}” was changed here and elsewhere at the same time.\n"
@@ -2798,7 +2866,7 @@ msgstr ""
"Ce qui n’est pas conservé est placé dans la corbeille, d’où il peut être "
"restauré."
#: crates/pdfs-gui/src/app/pages/locations.rs:844
#: crates/pdfs-gui/src/app/pages/locations.rs:927
#, rust-format
msgid ""
"The original “{name}” no longer exists; only the copy is left ({copy}).\n"
@@ -2809,111 +2877,111 @@ msgstr ""
"\n"
"Conservez la copie pour lui redonner le nom d’origine."
#: crates/pdfs-gui/src/app/pages/locations.rs:850
#: crates/pdfs-gui/src/app/pages/locations.rs:933
msgid "Resolve Conflict"
msgstr "Résoudre le conflit"
#: crates/pdfs-gui/src/app/pages/locations.rs:855
#: crates/pdfs-gui/src/app/pages/locations.rs:938
msgid "Name for the copy, if keeping both"
msgstr "Nom de la copie, si les deux sont conservés"
#: crates/pdfs-gui/src/app/pages/locations.rs:862
#: crates/pdfs-gui/src/app/pages/locations.rs:945
msgid "Keep Original"
msgstr "Conserver l’original"
#: crates/pdfs-gui/src/app/pages/locations.rs:863
#: crates/pdfs-gui/src/app/pages/locations.rs:946
msgid "Keep Both"
msgstr "Conserver les deux"
#: crates/pdfs-gui/src/app/pages/locations.rs:865
#: crates/pdfs-gui/src/app/pages/locations.rs:948
msgid "Keep Copy"
msgstr "Conserver la copie"
#: crates/pdfs-gui/src/app/pages/locations.rs:922
#: crates/pdfs-gui/src/app/pages/locations.rs:928
#: crates/pdfs-gui/src/app/pages/locations.rs:1005
#: crates/pdfs-gui/src/app/pages/locations.rs:1011
msgid "Couldn't resolve the conflict"
msgstr "Impossible de résoudre le conflit"
#: crates/pdfs-gui/src/app/pages/locations.rs:971
#: crates/pdfs-gui/src/app/pages/locations.rs:1054
msgid "Reading this computer's Proton Drive locations."
msgstr "Lecture des emplacements Proton Drive de cet ordinateur."
#: crates/pdfs-gui/src/app/pages/locations.rs:992
#: crates/pdfs-gui/src/app/pages/locations.rs:1075
msgid "Unavailable"
msgstr "Indisponible"
#: crates/pdfs-gui/src/app/pages/locations.rs:1075
#: crates/pdfs-gui/src/app/pages/locations.rs:1158
msgid "No folders yet"
msgstr "Aucun dossier pour l’instant"
#: crates/pdfs-gui/src/app/pages/locations.rs:1077
#: crates/pdfs-gui/src/app/pages/locations.rs:1160
msgid "The Proton Drive service hasn't reported its folder yet."
msgstr "Le service Proton Drive n’a pas encore signalé son dossier."
#: crates/pdfs-gui/src/app/pages/locations.rs:1100
#: crates/pdfs-gui/src/app/pages/locations.rs:1183
#, rust-format
msgid "{path} · {state}"
msgstr "{path} · {state}"
#: crates/pdfs-gui/src/app/pages/locations.rs:1143
#: crates/pdfs-gui/src/app/pages/locations.rs:1226
msgid "Read-only"
msgstr "Lecture seule"
#: crates/pdfs-gui/src/app/pages/locations.rs:1159
#: crates/pdfs-gui/src/app/pages/locations.rs:1242
msgid "Open in Files"
msgstr "Ouvrir dans Fichiers"
#: crates/pdfs-gui/src/app/pages/locations.rs:1164
#: crates/pdfs-gui/src/app/pages/locations.rs:1247
msgid "Change Location…"
msgstr "Changer l’emplacement…"
#: crates/pdfs-gui/src/app/pages/locations.rs:1216
#: crates/pdfs-gui/src/app/pages/locations.rs:1299
msgid "Choose whether this folder keeps a full copy on this computer"
msgstr "Choisir si ce dossier garde une copie complète sur cet ordinateur"
#: crates/pdfs-gui/src/app/pages/locations.rs:1232
#: crates/pdfs-gui/src/app/pages/locations.rs:1315
msgid "Keep every file on this computer and in Proton Drive."
msgstr "Conserver chaque fichier sur cet ordinateur et dans Proton Drive."
#: crates/pdfs-gui/src/app/pages/locations.rs:1237
#: crates/pdfs-gui/src/app/pages/locations.rs:1320
msgid "Keep the files in Proton Drive and download each one when you open it."
msgstr ""
"Garder les fichiers dans Proton Drive et télécharger chacun à son ouverture."
#. Translators: a folder mode: files are kept in Proton Drive and fetched when opened.
#: crates/pdfs-gui/src/app/pages/locations.rs:1291
#: crates/pdfs-gui/src/app/pages/locations.rs:1374
msgctxt "folder mode"
msgid "Online only"
msgstr "En ligne uniquement"
#. Translators: a folder mode: a full copy is kept on this computer.
#: crates/pdfs-gui/src/app/pages/locations.rs:1294
#: crates/pdfs-gui/src/app/pages/locations.rs:1377
msgctxt "folder mode"
msgid "Synced"
msgstr "Synchronisé"
#: crates/pdfs-gui/src/app/pages/locations.rs:1305
#: crates/pdfs-gui/src/app/pages/locations.rs:1388
msgid "Sync Now"
msgstr "Synchroniser maintenant"
#: crates/pdfs-gui/src/app/pages/locations.rs:1309
#: crates/pdfs-gui/src/app/pages/locations.rs:1392
msgid "Resume Syncing"
msgstr "Reprendre la synchronisation"
#: crates/pdfs-gui/src/app/pages/locations.rs:1311
#: crates/pdfs-gui/src/app/pages/locations.rs:1394
msgid "Pause Syncing"
msgstr "Mettre en pause la synchronisation"
#: crates/pdfs-gui/src/app/pages/locations.rs:1322
#: crates/pdfs-gui/src/app/pages/locations.rs:1405
msgid "Stop Syncing…"
msgstr "Arrêter la synchronisation…"
#: crates/pdfs-gui/src/app/pages/locations.rs:1331
#: crates/pdfs-gui/src/app/pages/locations.rs:1414
msgid "Make Folder Online Only?"
msgstr "Garder le dossier en ligne uniquement ?"
#. Translators: {path} is a local folder path.
#: crates/pdfs-gui/src/app/pages/locations.rs:1333
#: crates/pdfs-gui/src/app/pages/locations.rs:1416
#, rust-format
msgid ""
"Files in {path} will be removed from this computer and kept in Proton Drive "
@@ -2923,11 +2991,11 @@ msgstr ""
"uniquement dans Proton Drive. Chaque fichier sera à nouveau téléchargé à son "
"ouverture."
#: crates/pdfs-gui/src/app/pages/locations.rs:1336
#: crates/pdfs-gui/src/app/pages/locations.rs:1419
msgid "Make Online Only"
msgstr "Garder en ligne uniquement"
#: crates/pdfs-gui/src/app/pages/locations.rs:1372
#: crates/pdfs-gui/src/app/pages/locations.rs:1455
#, rust-format
msgid ""
"Every file in {path} will download to this computer and stay synced. {free} "
@@ -2936,61 +3004,61 @@ msgstr ""
"Chaque fichier de {path} sera téléchargé sur cet ordinateur et restera "
"synchronisé. {free} sont libres sur ce disque."
#: crates/pdfs-gui/src/app/pages/locations.rs:1377
#: crates/pdfs-gui/src/app/pages/locations.rs:1460
#, rust-format
msgid "Every file in {path} will download to this computer and stay synced."
msgstr ""
"Chaque fichier de {path} sera téléchargé sur cet ordinateur et restera "
"synchronisé."
#: crates/pdfs-gui/src/app/pages/locations.rs:1382
#: crates/pdfs-gui/src/app/pages/locations.rs:1465
msgid "Download Folder?"
msgstr "Télécharger le dossier ?"
#: crates/pdfs-gui/src/app/pages/locations.rs:1386
#: crates/pdfs-gui/src/app/pages/locations.rs:1469
msgid "Download"
msgstr "Télécharger"
#: crates/pdfs-gui/src/app/pages/locations.rs:1410
#: crates/pdfs-gui/src/app/pages/locations.rs:1493
msgid "Couldn't pause the folder"
msgstr "Impossible de mettre en pause le dossier"
#: crates/pdfs-gui/src/app/pages/locations.rs:1411
#: crates/pdfs-gui/src/app/pages/locations.rs:1494
msgid "Couldn't resume the folder"
msgstr "Impossible de reprendre le dossier"
#: crates/pdfs-gui/src/app/pages/locations.rs:1417
#: crates/pdfs-gui/src/app/pages/locations.rs:1500
msgid "Folder paused"
msgstr "Dossier en pause"
#: crates/pdfs-gui/src/app/pages/locations.rs:1418
#: crates/pdfs-gui/src/app/pages/locations.rs:1501
msgid "Folder resumed"
msgstr "Dossier repris"
#: crates/pdfs-gui/src/app/pages/locations.rs:1442
#: crates/pdfs-gui/src/app/pages/locations.rs:1446
#: crates/pdfs-gui/src/app/pages/locations.rs:1525
#: crates/pdfs-gui/src/app/pages/locations.rs:1529
msgid "Couldn't sync"
msgstr "Impossible de synchroniser"
#: crates/pdfs-gui/src/app/pages/locations.rs:1472
#: crates/pdfs-gui/src/app/pages/locations.rs:1555
msgid "Shared folder"
msgstr "Dossier partagé"
#: crates/pdfs-gui/src/app/pages/locations.rs:1474
#: crates/pdfs-gui/src/app/pages/locations.rs:1557
msgid "Going online only"
msgstr "Passage en ligne uniquement"
#: crates/pdfs-gui/src/app/pages/locations.rs:1475
#: crates/pdfs-gui/src/app/pages/locations.rs:1558
msgid "Switching to synced"
msgstr "Passage en mode synchronisé"
#: crates/pdfs-gui/src/app/pages/locations.rs:1485
#: crates/pdfs-gui/src/app/pages/locations.rs:1568
msgctxt "state"
msgid "paused"
msgstr "en pause"
#. Translators: a folder's files can't be opened right now.
#: crates/pdfs-gui/src/app/pages/locations.rs:1496
#: crates/pdfs-gui/src/app/pages/locations.rs:1579
msgid "not available"
msgstr "non disponible"
@@ -5504,10 +5572,6 @@ msgstr "Enregistrer la version"
msgid "Couldn't save that version"
msgstr "Impossible d’enregistrer cette version"
#: crates/pdfs-gui/src/app/widgets/versions_dialog.rs:351
msgid "That location isn't a local file."
msgstr "Cet emplacement n’est pas un fichier local."
#: crates/pdfs-gui/src/app/widgets/versions_dialog.rs:358
msgid "Version saved"
msgstr "Version enregistrée"
+181 -119
View File
@@ -5,7 +5,7 @@ msgid ""
msgstr ""
"Project-Id-Version: proton-drive-linux 2.1.0\n"
"Report-Msgid-Bugs-To: https://github.com/narrrl/proton-drive-linux/issues\n"
"POT-Creation-Date: 2026-09-29 00:18+0200\n"
"POT-Creation-Date: 2026-10-04 03:16+0200\n"
"PO-Revision-Date: 2026-09-23 12:00+0200\n"
"Last-Translator: Proton Drive for Linux contributors\n"
"Language-Team: Italian\n"
@@ -64,7 +64,7 @@ msgstr "%A %-d %B %Y, %H:%M"
#: crates/pdfs-gui/src/app/pages/browser.rs:1217
#: crates/pdfs-gui/src/app/pages/browser.rs:2090
#: crates/pdfs-gui/src/app/pages/browser.rs:2167
#: crates/pdfs-gui/src/app/pages/locations.rs:1471
#: crates/pdfs-gui/src/app/pages/locations.rs:1554
#: crates/pdfs-gui/src/app/pages/shared_by_me.rs:252
#: crates/pdfs-gui/src/app/pages/trash.rs:191 crates/pdfs-gui/src/prompt.rs:171
msgid "My files"
@@ -267,9 +267,9 @@ msgstr ""
#: crates/pdfs-gui/src/app/pages/devices.rs:979
#: crates/pdfs-gui/src/app/pages/devices.rs:1031
#: crates/pdfs-gui/src/app/pages/devices.rs:1075
#: crates/pdfs-gui/src/app/pages/locations.rs:860
#: crates/pdfs-gui/src/app/pages/locations.rs:1335
#: crates/pdfs-gui/src/app/pages/locations.rs:1385
#: crates/pdfs-gui/src/app/pages/locations.rs:943
#: crates/pdfs-gui/src/app/pages/locations.rs:1418
#: crates/pdfs-gui/src/app/pages/locations.rs:1468
#: crates/pdfs-gui/src/app/pages/login.rs:312
#: crates/pdfs-gui/src/app/pages/photos.rs:2055
#: crates/pdfs-gui/src/app/pages/shared.rs:946
@@ -473,8 +473,8 @@ msgstr "Nessuna voce del registro recente corrisponde a questo filtro."
#: crates/pdfs-gui/src/app/pages/activity.rs:186
#: crates/pdfs-gui/src/app/pages/browser.rs:281
#: crates/pdfs-gui/src/app/pages/devices.rs:114
#: crates/pdfs-gui/src/app/pages/locations.rs:183
#: crates/pdfs-gui/src/app/pages/locations.rs:680
#: crates/pdfs-gui/src/app/pages/locations.rs:184
#: crates/pdfs-gui/src/app/pages/locations.rs:685
#: crates/pdfs-gui/src/app/pages/photos.rs:465
#: crates/pdfs-gui/src/app/pages/shared.rs:183
#: crates/pdfs-gui/src/app/pages/shared_by_me.rs:94
@@ -512,8 +512,8 @@ msgstr "Opzioni di visualizzazione"
#: crates/pdfs-gui/src/app/pages/browser.rs:2635
#: crates/pdfs-gui/src/app/pages/browser.rs:2639
#: crates/pdfs-gui/src/app/pages/devices.rs:325
#: crates/pdfs-gui/src/app/pages/locations.rs:191
#: crates/pdfs-gui/src/app/pages/locations.rs:970
#: crates/pdfs-gui/src/app/pages/locations.rs:192
#: crates/pdfs-gui/src/app/pages/locations.rs:1053
#: crates/pdfs-gui/src/app/pages/shared.rs:422
#: crates/pdfs-gui/src/app/pages/shared_by_me.rs:347
#: crates/pdfs-gui/src/app/pages/trash.rs:284
@@ -1019,7 +1019,7 @@ msgstr ""
#. Translators: {name} is the file the conflicting copy was made from.
#: crates/pdfs-gui/src/app/pages/activity_text.rs:346
#: crates/pdfs-gui/src/app/pages/locations.rs:795
#: crates/pdfs-gui/src/app/pages/locations.rs:878
#, rust-format
msgid "Differs from {name}"
msgstr "Diverso da {name}"
@@ -1206,11 +1206,12 @@ msgstr "Impossibile caricare gli album"
#: crates/pdfs-gui/src/app/pages/devices.rs:884
#: crates/pdfs-gui/src/app/pages/devices.rs:1120
#: crates/pdfs-gui/src/app/pages/duplicates.rs:220
#: crates/pdfs-gui/src/app/pages/locations.rs:535
#: crates/pdfs-gui/src/app/pages/locations.rs:710
#: crates/pdfs-gui/src/app/pages/locations.rs:929
#: crates/pdfs-gui/src/app/pages/locations.rs:1427
#: crates/pdfs-gui/src/app/pages/locations.rs:1447
#: crates/pdfs-gui/src/app/pages/locations.rs:536
#: crates/pdfs-gui/src/app/pages/locations.rs:769
#: crates/pdfs-gui/src/app/pages/locations.rs:793
#: crates/pdfs-gui/src/app/pages/locations.rs:1012
#: crates/pdfs-gui/src/app/pages/locations.rs:1510
#: crates/pdfs-gui/src/app/pages/locations.rs:1530
#: crates/pdfs-gui/src/app/pages/photo_viewer.rs:1425
#: crates/pdfs-gui/src/app/pages/photos.rs:1420
#: crates/pdfs-gui/src/app/pages/photos.rs:2140
@@ -2155,7 +2156,7 @@ msgid "Add Folder to Sync"
msgstr "Aggiungi cartella da sincronizzare"
#: crates/pdfs-gui/src/app/pages/devices.rs:686
#: crates/pdfs-gui/src/app/pages/locations.rs:1440
#: crates/pdfs-gui/src/app/pages/locations.rs:1523
msgid "Syncing folder…"
msgstr "Sincronizzazione della cartella…"
@@ -2520,21 +2521,21 @@ msgstr[1] "Sposta {n} foto nel cestino"
msgid "Keep"
msgstr "Tieni"
#: crates/pdfs-gui/src/app/pages/locations.rs:125
#: crates/pdfs-gui/src/app/pages/locations.rs:126
msgid "Add Folder"
msgstr "Aggiungi cartella"
#: crates/pdfs-gui/src/app/pages/locations.rs:130
#: crates/pdfs-gui/src/app/pages/locations.rs:131
msgid "Back a local folder up to this computer's Proton Drive device"
msgstr ""
"Esegui il backup di una cartella locale sul dispositivo Proton Drive di "
"questo computer"
#: crates/pdfs-gui/src/app/pages/locations.rs:140
#: crates/pdfs-gui/src/app/pages/locations.rs:141
msgid "Conflicts"
msgstr "Conflitti"
#: crates/pdfs-gui/src/app/pages/locations.rs:142
#: crates/pdfs-gui/src/app/pages/locations.rs:143
msgid ""
"Files changed in two places at once. Both versions were kept; choose which "
"one stays."
@@ -2542,7 +2543,7 @@ msgstr ""
"File modificati in due posti contemporaneamente. Entrambe le versioni sono "
"state conservate: scegli quale mantenere."
#: crates/pdfs-gui/src/app/pages/locations.rs:158
#: crates/pdfs-gui/src/app/pages/locations.rs:159
msgid ""
"Synced folders keep a full copy on this computer. Online-only folders fetch "
"each file when you open it."
@@ -2550,137 +2551,137 @@ msgstr ""
"Le cartelle sincronizzate conservano una copia completa su questo computer. "
"Le cartelle solo online scaricano ogni file quando lo apri."
#: crates/pdfs-gui/src/app/pages/locations.rs:169
#: crates/pdfs-gui/src/app/pages/locations.rs:170
msgid "About Sync Modes"
msgstr "Informazioni sulle modalità di sincronizzazione"
#: crates/pdfs-gui/src/app/pages/locations.rs:178
#: crates/pdfs-gui/src/app/pages/locations.rs:179
#: crates/pdfs-gui/src/prompt.rs:65
msgid "Folders"
msgstr "Cartelle"
#: crates/pdfs-gui/src/app/pages/locations.rs:213
#: crates/pdfs-gui/src/app/pages/locations.rs:214
msgctxt "sync view"
msgid "Overview"
msgstr "Panoramica"
#: crates/pdfs-gui/src/app/pages/locations.rs:219
#: crates/pdfs-gui/src/app/pages/locations.rs:220
msgctxt "sync view"
msgid "Folders"
msgstr "Cartelle"
#: crates/pdfs-gui/src/app/pages/locations.rs:225
#: crates/pdfs-gui/src/app/pages/locations.rs:226
msgctxt "sync view"
msgid "History"
msgstr "Cronologia"
#: crates/pdfs-gui/src/app/pages/locations.rs:232
#: crates/pdfs-gui/src/app/pages/locations.rs:233
#: crates/pdfs-gui/src/app/pages/shared.rs:210
msgid "Review"
msgstr "Esamina"
#: crates/pdfs-gui/src/app/pages/locations.rs:363
#: crates/pdfs-gui/src/app/pages/locations.rs:364
#, rust-format
msgid "{n} change couldn't be uploaded"
msgid_plural "{n} changes couldn't be uploaded"
msgstr[0] "Impossibile caricare {n} modifica"
msgstr[1] "Impossibile caricare {n} modifiche"
#: crates/pdfs-gui/src/app/pages/locations.rs:369
#: crates/pdfs-gui/src/app/pages/locations.rs:370
#, rust-format
msgid "{n} file was changed in two places at once"
msgid_plural "{n} files were changed in two places at once"
msgstr[0] "{n} file è stato modificato in due posti contemporaneamente"
msgstr[1] "{n} file sono stati modificati in due posti contemporaneamente"
#: crates/pdfs-gui/src/app/pages/locations.rs:374
#: crates/pdfs-gui/src/app/pages/locations.rs:375
msgid "Some files need your attention"
msgstr "Alcuni file richiedono la tua attenzione"
#: crates/pdfs-gui/src/app/pages/locations.rs:391
#: crates/pdfs-gui/src/app/pages/locations.rs:392
msgid "Checking…"
msgstr "Controllo…"
#: crates/pdfs-gui/src/app/pages/locations.rs:419
#: crates/pdfs-gui/src/app/pages/locations.rs:420
msgid "Pause for 1 Hour"
msgstr "Pausa per 1 ora"
#: crates/pdfs-gui/src/app/pages/locations.rs:423
#: crates/pdfs-gui/src/app/pages/locations.rs:424
msgid "Pause for 8 Hours"
msgstr "Pausa per 8 ore"
#: crates/pdfs-gui/src/app/pages/locations.rs:427
#: crates/pdfs-gui/src/app/pages/locations.rs:428
msgid "Pause for 24 Hours"
msgstr "Pausa per 24 ore"
#: crates/pdfs-gui/src/app/pages/locations.rs:431
#: crates/pdfs-gui/src/app/pages/locations.rs:467
#: crates/pdfs-gui/src/app/pages/locations.rs:432
#: crates/pdfs-gui/src/app/pages/locations.rs:468
msgctxt "verb"
msgid "Pause"
msgstr "Metti in pausa"
#: crates/pdfs-gui/src/app/pages/locations.rs:435
#: crates/pdfs-gui/src/app/pages/locations.rs:472
#: crates/pdfs-gui/src/app/pages/locations.rs:436
#: crates/pdfs-gui/src/app/pages/locations.rs:473
msgid "Stop uploading until you resume. Files still open as usual."
msgstr ""
"Interrompe i caricamenti finché non riprendi. I file si aprono comunque come "
"di consueto."
#: crates/pdfs-gui/src/app/pages/locations.rs:437
#: crates/pdfs-gui/src/app/pages/locations.rs:438
msgid "Pause for a while"
msgstr "Metti in pausa per un po'"
#: crates/pdfs-gui/src/app/pages/locations.rs:465
#: crates/pdfs-gui/src/app/pages/locations.rs:466
msgctxt "verb"
msgid "Resume"
msgstr "Riprendi"
#: crates/pdfs-gui/src/app/pages/locations.rs:470
#: crates/pdfs-gui/src/app/pages/locations.rs:471
msgid "Upload everything that waited while sync was paused"
msgstr ""
"Carica tutto ciò che era in attesa mentre la sincronizzazione era in pausa"
#: crates/pdfs-gui/src/app/pages/locations.rs:518
#: crates/pdfs-gui/src/app/pages/locations.rs:519
msgid "Couldn't pause sync"
msgstr "Impossibile mettere in pausa la sincronizzazione"
#: crates/pdfs-gui/src/app/pages/locations.rs:520
#: crates/pdfs-gui/src/app/pages/locations.rs:521
msgid "Couldn't resume sync"
msgstr "Impossibile riprendere la sincronizzazione"
#: crates/pdfs-gui/src/app/pages/locations.rs:526
#: crates/pdfs-gui/src/app/pages/locations.rs:527
msgid "Sync resumed"
msgstr "Sincronizzazione ripresa"
#: crates/pdfs-gui/src/app/pages/locations.rs:527
#: crates/pdfs-gui/src/app/pages/locations.rs:528
msgid "Sync paused until you resume"
msgstr "Sincronizzazione in pausa finché non riprendi"
#: crates/pdfs-gui/src/app/pages/locations.rs:528
#: crates/pdfs-gui/src/app/pages/locations.rs:529
#: crates/pdfs-gui/src/app/pages/status.rs:1323 crates/pdfs-gui/src/main.rs:237
msgid "Sync paused"
msgstr "Sincronizzazione in pausa"
#: crates/pdfs-gui/src/app/pages/locations.rs:546
#: crates/pdfs-gui/src/app/pages/locations.rs:547
msgid "Retry All"
msgstr "Riprova tutto"
#: crates/pdfs-gui/src/app/pages/locations.rs:548
#: crates/pdfs-gui/src/app/pages/locations.rs:549
msgid "Try every failed change again now"
msgstr "Riprova ora tutte le modifiche non riuscite"
#: crates/pdfs-gui/src/app/pages/locations.rs:553
#: crates/pdfs-gui/src/app/pages/locations.rs:554
msgid "Waiting to Upload"
msgstr "In attesa di caricamento"
#: crates/pdfs-gui/src/app/pages/locations.rs:555
#: crates/pdfs-gui/src/app/pages/locations.rs:614
#: crates/pdfs-gui/src/app/pages/locations.rs:556
#: crates/pdfs-gui/src/app/pages/locations.rs:615
msgid "Changes made on this computer that are not on Proton Drive yet."
msgstr ""
"Modifiche fatte su questo computer che non sono ancora su Proton Drive."
#. Translators: {shown} is how many rows are listed (50), {n} the total number of queued changes.
#: crates/pdfs-gui/src/app/pages/locations.rs:612
#: crates/pdfs-gui/src/app/pages/locations.rs:613
#, rust-format
msgid ""
"Changes made on this computer that are not on Proton Drive yet. Showing the "
@@ -2695,89 +2696,154 @@ msgstr[1] ""
"Modifiche fatte su questo computer che non sono ancora su Proton Drive. "
"Visualizzate le prime {shown} di {n}."
#: crates/pdfs-gui/src/app/pages/locations.rs:629
#: crates/pdfs-gui/src/app/pages/locations.rs:630
msgid "Upload changes"
msgstr "Carica modifiche"
#: crates/pdfs-gui/src/app/pages/locations.rs:630
#: crates/pdfs-gui/src/app/pages/locations.rs:631
msgid "Upload new file"
msgstr "Carica nuovo file"
#: crates/pdfs-gui/src/app/pages/locations.rs:631
#: crates/pdfs-gui/src/app/pages/locations.rs:632
msgid "Create folder"
msgstr "Crea cartella"
#: crates/pdfs-gui/src/app/pages/locations.rs:632
#: crates/pdfs-gui/src/app/pages/locations.rs:633
msgid "Rename or move"
msgstr "Rinomina o sposta"
#: crates/pdfs-gui/src/app/pages/locations.rs:633
#: crates/pdfs-gui/src/app/pages/locations.rs:634
msgid "Move to trash"
msgstr "Sposta nel cestino"
#. Translators: a queued change of an unknown kind.
#: crates/pdfs-gui/src/app/pages/locations.rs:635
#: crates/pdfs-gui/src/app/pages/locations.rs:636
msgctxt "noun"
msgid "Change"
msgstr "Modifica"
#: crates/pdfs-gui/src/app/pages/locations.rs:638
#: crates/pdfs-gui/src/app/pages/locations.rs:639
msgid "waiting for the app writing it to finish"
msgstr "in attesa che l'app che lo scrive finisca"
#. Translators: {time} is when the next attempt happens, such as "14:30".
#: crates/pdfs-gui/src/app/pages/locations.rs:641
#: crates/pdfs-gui/src/app/pages/locations.rs:642
#, rust-format
msgid "retrying {time}"
msgstr "nuovo tentativo alle {time}"
#: crates/pdfs-gui/src/app/pages/locations.rs:643
#: crates/pdfs-gui/src/app/pages/locations.rs:644
msgid "waiting for sync to resume"
msgstr "in attesa della ripresa della sincronizzazione"
#: crates/pdfs-gui/src/app/pages/locations.rs:644
#: crates/pdfs-gui/src/app/pages/locations.rs:645
msgid "up next"
msgstr "il prossimo"
#: crates/pdfs-gui/src/app/pages/locations.rs:648
#: crates/pdfs-gui/src/app/pages/locations.rs:649
#, rust-format
msgid "{action} · {state}"
msgstr "{action} · {state}"
#: crates/pdfs-gui/src/app/pages/locations.rs:655
#: crates/pdfs-gui/src/app/pages/locations.rs:660
#, rust-format
msgid "Failed {n} time: {error}"
msgid_plural "Failed {n} times: {error}"
msgstr[0] "Non riuscito {n} volta: {error}"
msgstr[1] "Non riuscito {n} volte: {error}"
#: crates/pdfs-gui/src/app/pages/locations.rs:681
#: crates/pdfs-gui/src/app/pages/locations.rs:686
msgid "Retry now"
msgstr "Riprova ora"
#: crates/pdfs-gui/src/app/pages/locations.rs:700
#: crates/pdfs-gui/src/app/pages/locations.rs:697
msgid "Export"
msgstr "Esporta"
#: crates/pdfs-gui/src/app/pages/locations.rs:698
msgid "Save a copy of this file's content elsewhere"
msgstr "Salva altrove una copia del contenuto di questo file"
#: crates/pdfs-gui/src/app/pages/locations.rs:719
msgid ""
"Your Proton Drive storage is full. Free up space or upgrade your plan, and "
"this change uploads on its own."
msgstr ""
"Lo spazio di Proton Drive è pieno. Libera spazio o passa a un piano "
"superiore, e questa modifica verrà caricata da sola."
#: crates/pdfs-gui/src/app/pages/locations.rs:722
msgid ""
"You can no longer change this on Proton Drive. Ask the owner for edit "
"access, or export the file to keep your version."
msgstr ""
"Non puoi più modificare questo elemento su Proton Drive. Chiedi al "
"proprietario l'accesso in modifica, o esporta il file per tenere la tua "
"versione."
#: crates/pdfs-gui/src/app/pages/locations.rs:725
msgid ""
"The folder this change belongs in is gone from Proton Drive. Export the file "
"to keep your version."
msgstr ""
"La cartella a cui appartiene questa modifica non è più su Proton Drive. "
"Esporta il file per tenere la tua versione."
#: crates/pdfs-gui/src/app/pages/locations.rs:728
msgid ""
"Proton Drive's limit on items in a folder or on folder depth is reached. "
"Make room in the folder, then retry."
msgstr ""
"È stato raggiunto il limite di Proton Drive sugli elementi in una cartella o "
"sulla profondità delle cartelle. Fai spazio nella cartella, poi riprova."
#: crates/pdfs-gui/src/app/pages/locations.rs:731
msgid "Proton Drive refused this change. It stays queued and is tried again."
msgstr ""
"Proton Drive ha rifiutato questa modifica. Resta in coda e verrà ritentata."
#: crates/pdfs-gui/src/app/pages/locations.rs:741
msgid "Export File"
msgstr "Esporta file"
#: crates/pdfs-gui/src/app/pages/locations.rs:750
#: crates/pdfs-gui/src/app/pages/locations.rs:764
#: crates/pdfs-gui/src/app/pages/locations.rs:768
msgid "Couldn't export the file"
msgstr "Impossibile esportare il file"
#: crates/pdfs-gui/src/app/pages/locations.rs:751
#: crates/pdfs-gui/src/app/widgets/versions_dialog.rs:351
msgid "That location isn't a local file."
msgstr "Quella posizione non è un file locale."
#: crates/pdfs-gui/src/app/pages/locations.rs:762
msgid "File exported"
msgstr "File esportato"
#: crates/pdfs-gui/src/app/pages/locations.rs:783
msgid "Retrying now…"
msgstr "Nuovo tentativo in corso…"
#: crates/pdfs-gui/src/app/pages/locations.rs:705
#: crates/pdfs-gui/src/app/pages/locations.rs:709
#: crates/pdfs-gui/src/app/pages/locations.rs:788
#: crates/pdfs-gui/src/app/pages/locations.rs:792
msgid "Couldn't retry"
msgstr "Impossibile riprovare"
#: crates/pdfs-gui/src/app/pages/locations.rs:779
#: crates/pdfs-gui/src/app/pages/locations.rs:862
#, rust-format
msgid "{size}, changed {time}"
msgstr "{size}, modificato {time}"
#: crates/pdfs-gui/src/app/pages/locations.rs:789
#: crates/pdfs-gui/src/app/pages/locations.rs:872
msgid "The original is gone; only this copy is left"
msgstr "L'originale non esiste più; rimane solo questa copia"
#: crates/pdfs-gui/src/app/pages/locations.rs:791
#: crates/pdfs-gui/src/app/pages/locations.rs:874
msgid "Same content as the original"
msgstr "Stesso contenuto dell'originale"
#: crates/pdfs-gui/src/app/pages/locations.rs:832
#: crates/pdfs-gui/src/app/pages/locations.rs:915
#, rust-format
msgid ""
"“{name}” was changed here and elsewhere at the same time.\n"
@@ -2794,7 +2860,7 @@ msgstr ""
"\n"
"Ciò che non viene mantenuto va nel cestino, da cui può essere ripristinato."
#: crates/pdfs-gui/src/app/pages/locations.rs:844
#: crates/pdfs-gui/src/app/pages/locations.rs:927
#, rust-format
msgid ""
"The original “{name}” no longer exists; only the copy is left ({copy}).\n"
@@ -2805,111 +2871,111 @@ msgstr ""
"\n"
"Mantieni la copia per restituirle il nome originale."
#: crates/pdfs-gui/src/app/pages/locations.rs:850
#: crates/pdfs-gui/src/app/pages/locations.rs:933
msgid "Resolve Conflict"
msgstr "Risolvi conflitto"
#: crates/pdfs-gui/src/app/pages/locations.rs:855
#: crates/pdfs-gui/src/app/pages/locations.rs:938
msgid "Name for the copy, if keeping both"
msgstr "Nome per la copia, se si mantengono entrambi"
#: crates/pdfs-gui/src/app/pages/locations.rs:862
#: crates/pdfs-gui/src/app/pages/locations.rs:945
msgid "Keep Original"
msgstr "Mantieni originale"
#: crates/pdfs-gui/src/app/pages/locations.rs:863
#: crates/pdfs-gui/src/app/pages/locations.rs:946
msgid "Keep Both"
msgstr "Mantieni entrambi"
#: crates/pdfs-gui/src/app/pages/locations.rs:865
#: crates/pdfs-gui/src/app/pages/locations.rs:948
msgid "Keep Copy"
msgstr "Mantieni copia"
#: crates/pdfs-gui/src/app/pages/locations.rs:922
#: crates/pdfs-gui/src/app/pages/locations.rs:928
#: crates/pdfs-gui/src/app/pages/locations.rs:1005
#: crates/pdfs-gui/src/app/pages/locations.rs:1011
msgid "Couldn't resolve the conflict"
msgstr "Impossibile risolvere il conflitto"
#: crates/pdfs-gui/src/app/pages/locations.rs:971
#: crates/pdfs-gui/src/app/pages/locations.rs:1054
msgid "Reading this computer's Proton Drive locations."
msgstr "Lettura delle posizioni di Proton Drive di questo computer."
#: crates/pdfs-gui/src/app/pages/locations.rs:992
#: crates/pdfs-gui/src/app/pages/locations.rs:1075
msgid "Unavailable"
msgstr "Non disponibile"
#: crates/pdfs-gui/src/app/pages/locations.rs:1075
#: crates/pdfs-gui/src/app/pages/locations.rs:1158
msgid "No folders yet"
msgstr "Ancora nessuna cartella"
#: crates/pdfs-gui/src/app/pages/locations.rs:1077
#: crates/pdfs-gui/src/app/pages/locations.rs:1160
msgid "The Proton Drive service hasn't reported its folder yet."
msgstr "Il servizio di Proton Drive non ha ancora comunicato la sua cartella."
#: crates/pdfs-gui/src/app/pages/locations.rs:1100
#: crates/pdfs-gui/src/app/pages/locations.rs:1183
#, rust-format
msgid "{path} · {state}"
msgstr "{path} · {state}"
#: crates/pdfs-gui/src/app/pages/locations.rs:1143
#: crates/pdfs-gui/src/app/pages/locations.rs:1226
msgid "Read-only"
msgstr "Sola lettura"
#: crates/pdfs-gui/src/app/pages/locations.rs:1159
#: crates/pdfs-gui/src/app/pages/locations.rs:1242
msgid "Open in Files"
msgstr "Apri in File"
#: crates/pdfs-gui/src/app/pages/locations.rs:1164
#: crates/pdfs-gui/src/app/pages/locations.rs:1247
msgid "Change Location…"
msgstr "Cambia posizione…"
#: crates/pdfs-gui/src/app/pages/locations.rs:1216
#: crates/pdfs-gui/src/app/pages/locations.rs:1299
msgid "Choose whether this folder keeps a full copy on this computer"
msgstr ""
"Scegli se questa cartella conserva una copia completa su questo computer"
#: crates/pdfs-gui/src/app/pages/locations.rs:1232
#: crates/pdfs-gui/src/app/pages/locations.rs:1315
msgid "Keep every file on this computer and in Proton Drive."
msgstr "Conserva ogni file su questo computer e in Proton Drive."
#: crates/pdfs-gui/src/app/pages/locations.rs:1237
#: crates/pdfs-gui/src/app/pages/locations.rs:1320
msgid "Keep the files in Proton Drive and download each one when you open it."
msgstr "Conserva i file in Proton Drive e scarica ciascuno quando lo apri."
#. Translators: a folder mode: files are kept in Proton Drive and fetched when opened.
#: crates/pdfs-gui/src/app/pages/locations.rs:1291
#: crates/pdfs-gui/src/app/pages/locations.rs:1374
msgctxt "folder mode"
msgid "Online only"
msgstr "Solo online"
#. Translators: a folder mode: a full copy is kept on this computer.
#: crates/pdfs-gui/src/app/pages/locations.rs:1294
#: crates/pdfs-gui/src/app/pages/locations.rs:1377
msgctxt "folder mode"
msgid "Synced"
msgstr "Sincronizzata"
#: crates/pdfs-gui/src/app/pages/locations.rs:1305
#: crates/pdfs-gui/src/app/pages/locations.rs:1388
msgid "Sync Now"
msgstr "Sincronizza ora"
#: crates/pdfs-gui/src/app/pages/locations.rs:1309
#: crates/pdfs-gui/src/app/pages/locations.rs:1392
msgid "Resume Syncing"
msgstr "Riprendi sincronizzazione"
#: crates/pdfs-gui/src/app/pages/locations.rs:1311
#: crates/pdfs-gui/src/app/pages/locations.rs:1394
msgid "Pause Syncing"
msgstr "Metti in pausa sincronizzazione"
#: crates/pdfs-gui/src/app/pages/locations.rs:1322
#: crates/pdfs-gui/src/app/pages/locations.rs:1405
msgid "Stop Syncing…"
msgstr "Interrompi sincronizzazione…"
#: crates/pdfs-gui/src/app/pages/locations.rs:1331
#: crates/pdfs-gui/src/app/pages/locations.rs:1414
msgid "Make Folder Online Only?"
msgstr "Rendere la cartella solo online?"
#. Translators: {path} is a local folder path.
#: crates/pdfs-gui/src/app/pages/locations.rs:1333
#: crates/pdfs-gui/src/app/pages/locations.rs:1416
#, rust-format
msgid ""
"Files in {path} will be removed from this computer and kept in Proton Drive "
@@ -2918,11 +2984,11 @@ msgstr ""
"I file in {path} verranno rimossi da questo computer e mantenuti solo in "
"Proton Drive. Ogni file viene scaricato di nuovo quando lo apri."
#: crates/pdfs-gui/src/app/pages/locations.rs:1336
#: crates/pdfs-gui/src/app/pages/locations.rs:1419
msgid "Make Online Only"
msgstr "Rendi solo online"
#: crates/pdfs-gui/src/app/pages/locations.rs:1372
#: crates/pdfs-gui/src/app/pages/locations.rs:1455
#, rust-format
msgid ""
"Every file in {path} will download to this computer and stay synced. {free} "
@@ -2931,61 +2997,61 @@ msgstr ""
"Ogni file in {path} verrà scaricato su questo computer e resterà "
"sincronizzato. Su questo disco sono liberi {free}."
#: crates/pdfs-gui/src/app/pages/locations.rs:1377
#: crates/pdfs-gui/src/app/pages/locations.rs:1460
#, rust-format
msgid "Every file in {path} will download to this computer and stay synced."
msgstr ""
"Ogni file in {path} verrà scaricato su questo computer e resterà "
"sincronizzato."
#: crates/pdfs-gui/src/app/pages/locations.rs:1382
#: crates/pdfs-gui/src/app/pages/locations.rs:1465
msgid "Download Folder?"
msgstr "Scaricare la cartella?"
#: crates/pdfs-gui/src/app/pages/locations.rs:1386
#: crates/pdfs-gui/src/app/pages/locations.rs:1469
msgid "Download"
msgstr "Scarica"
#: crates/pdfs-gui/src/app/pages/locations.rs:1410
#: crates/pdfs-gui/src/app/pages/locations.rs:1493
msgid "Couldn't pause the folder"
msgstr "Impossibile mettere in pausa la cartella"
#: crates/pdfs-gui/src/app/pages/locations.rs:1411
#: crates/pdfs-gui/src/app/pages/locations.rs:1494
msgid "Couldn't resume the folder"
msgstr "Impossibile riprendere la cartella"
#: crates/pdfs-gui/src/app/pages/locations.rs:1417
#: crates/pdfs-gui/src/app/pages/locations.rs:1500
msgid "Folder paused"
msgstr "Cartella in pausa"
#: crates/pdfs-gui/src/app/pages/locations.rs:1418
#: crates/pdfs-gui/src/app/pages/locations.rs:1501
msgid "Folder resumed"
msgstr "Cartella ripresa"
#: crates/pdfs-gui/src/app/pages/locations.rs:1442
#: crates/pdfs-gui/src/app/pages/locations.rs:1446
#: crates/pdfs-gui/src/app/pages/locations.rs:1525
#: crates/pdfs-gui/src/app/pages/locations.rs:1529
msgid "Couldn't sync"
msgstr "Impossibile sincronizzare"
#: crates/pdfs-gui/src/app/pages/locations.rs:1472
#: crates/pdfs-gui/src/app/pages/locations.rs:1555
msgid "Shared folder"
msgstr "Cartella condivisa"
#: crates/pdfs-gui/src/app/pages/locations.rs:1474
#: crates/pdfs-gui/src/app/pages/locations.rs:1557
msgid "Going online only"
msgstr "Passaggio a solo online"
#: crates/pdfs-gui/src/app/pages/locations.rs:1475
#: crates/pdfs-gui/src/app/pages/locations.rs:1558
msgid "Switching to synced"
msgstr "Passaggio a sincronizzata"
#: crates/pdfs-gui/src/app/pages/locations.rs:1485
#: crates/pdfs-gui/src/app/pages/locations.rs:1568
msgctxt "state"
msgid "paused"
msgstr "in pausa"
#. Translators: a folder's files can't be opened right now.
#: crates/pdfs-gui/src/app/pages/locations.rs:1496
#: crates/pdfs-gui/src/app/pages/locations.rs:1579
msgid "not available"
msgstr "non disponibile"
@@ -5485,10 +5551,6 @@ msgstr "Salva versione"
msgid "Couldn't save that version"
msgstr "Impossibile salvare la versione"
#: crates/pdfs-gui/src/app/widgets/versions_dialog.rs:351
msgid "That location isn't a local file."
msgstr "Quella posizione non è un file locale."
#: crates/pdfs-gui/src/app/widgets/versions_dialog.rs:358
msgid "Version saved"
msgstr "Versione salvata"
+181 -119
View File
@@ -5,7 +5,7 @@ msgid ""
msgstr ""
"Project-Id-Version: proton-drive-linux 2.1.0\n"
"Report-Msgid-Bugs-To: https://github.com/narrrl/proton-drive-linux/issues\n"
"POT-Creation-Date: 2026-09-29 00:18+0200\n"
"POT-Creation-Date: 2026-10-04 03:16+0200\n"
"PO-Revision-Date: 2026-09-23 12:00+0200\n"
"Last-Translator: Proton Drive for Linux contributors\n"
"Language-Team: Dutch\n"
@@ -64,7 +64,7 @@ msgstr "%A %-d %B %Y, %H:%M"
#: crates/pdfs-gui/src/app/pages/browser.rs:1217
#: crates/pdfs-gui/src/app/pages/browser.rs:2090
#: crates/pdfs-gui/src/app/pages/browser.rs:2167
#: crates/pdfs-gui/src/app/pages/locations.rs:1471
#: crates/pdfs-gui/src/app/pages/locations.rs:1554
#: crates/pdfs-gui/src/app/pages/shared_by_me.rs:252
#: crates/pdfs-gui/src/app/pages/trash.rs:191 crates/pdfs-gui/src/prompt.rs:171
msgid "My files"
@@ -268,9 +268,9 @@ msgstr ""
#: crates/pdfs-gui/src/app/pages/devices.rs:979
#: crates/pdfs-gui/src/app/pages/devices.rs:1031
#: crates/pdfs-gui/src/app/pages/devices.rs:1075
#: crates/pdfs-gui/src/app/pages/locations.rs:860
#: crates/pdfs-gui/src/app/pages/locations.rs:1335
#: crates/pdfs-gui/src/app/pages/locations.rs:1385
#: crates/pdfs-gui/src/app/pages/locations.rs:943
#: crates/pdfs-gui/src/app/pages/locations.rs:1418
#: crates/pdfs-gui/src/app/pages/locations.rs:1468
#: crates/pdfs-gui/src/app/pages/login.rs:312
#: crates/pdfs-gui/src/app/pages/photos.rs:2055
#: crates/pdfs-gui/src/app/pages/shared.rs:946
@@ -474,8 +474,8 @@ msgstr "Niets in het recente logboek past bij dit filter."
#: crates/pdfs-gui/src/app/pages/activity.rs:186
#: crates/pdfs-gui/src/app/pages/browser.rs:281
#: crates/pdfs-gui/src/app/pages/devices.rs:114
#: crates/pdfs-gui/src/app/pages/locations.rs:183
#: crates/pdfs-gui/src/app/pages/locations.rs:680
#: crates/pdfs-gui/src/app/pages/locations.rs:184
#: crates/pdfs-gui/src/app/pages/locations.rs:685
#: crates/pdfs-gui/src/app/pages/photos.rs:465
#: crates/pdfs-gui/src/app/pages/shared.rs:183
#: crates/pdfs-gui/src/app/pages/shared_by_me.rs:94
@@ -513,8 +513,8 @@ msgstr "Weergaveopties"
#: crates/pdfs-gui/src/app/pages/browser.rs:2635
#: crates/pdfs-gui/src/app/pages/browser.rs:2639
#: crates/pdfs-gui/src/app/pages/devices.rs:325
#: crates/pdfs-gui/src/app/pages/locations.rs:191
#: crates/pdfs-gui/src/app/pages/locations.rs:970
#: crates/pdfs-gui/src/app/pages/locations.rs:192
#: crates/pdfs-gui/src/app/pages/locations.rs:1053
#: crates/pdfs-gui/src/app/pages/shared.rs:422
#: crates/pdfs-gui/src/app/pages/shared_by_me.rs:347
#: crates/pdfs-gui/src/app/pages/trash.rs:284
@@ -1017,7 +1017,7 @@ msgstr ""
#. Translators: {name} is the file the conflicting copy was made from.
#: crates/pdfs-gui/src/app/pages/activity_text.rs:346
#: crates/pdfs-gui/src/app/pages/locations.rs:795
#: crates/pdfs-gui/src/app/pages/locations.rs:878
#, rust-format
msgid "Differs from {name}"
msgstr "Verschilt van {name}"
@@ -1204,11 +1204,12 @@ msgstr "Kon albums niet laden"
#: crates/pdfs-gui/src/app/pages/devices.rs:884
#: crates/pdfs-gui/src/app/pages/devices.rs:1120
#: crates/pdfs-gui/src/app/pages/duplicates.rs:220
#: crates/pdfs-gui/src/app/pages/locations.rs:535
#: crates/pdfs-gui/src/app/pages/locations.rs:710
#: crates/pdfs-gui/src/app/pages/locations.rs:929
#: crates/pdfs-gui/src/app/pages/locations.rs:1427
#: crates/pdfs-gui/src/app/pages/locations.rs:1447
#: crates/pdfs-gui/src/app/pages/locations.rs:536
#: crates/pdfs-gui/src/app/pages/locations.rs:769
#: crates/pdfs-gui/src/app/pages/locations.rs:793
#: crates/pdfs-gui/src/app/pages/locations.rs:1012
#: crates/pdfs-gui/src/app/pages/locations.rs:1510
#: crates/pdfs-gui/src/app/pages/locations.rs:1530
#: crates/pdfs-gui/src/app/pages/photo_viewer.rs:1425
#: crates/pdfs-gui/src/app/pages/photos.rs:1420
#: crates/pdfs-gui/src/app/pages/photos.rs:2140
@@ -2151,7 +2152,7 @@ msgid "Add Folder to Sync"
msgstr "Map toevoegen aan synchronisatie"
#: crates/pdfs-gui/src/app/pages/devices.rs:686
#: crates/pdfs-gui/src/app/pages/locations.rs:1440
#: crates/pdfs-gui/src/app/pages/locations.rs:1523
msgid "Syncing folder…"
msgstr "Map synchroniseren…"
@@ -2514,21 +2515,21 @@ msgstr[1] "{n} foto's naar prullenbak verplaatsen"
msgid "Keep"
msgstr "Houden"
#: crates/pdfs-gui/src/app/pages/locations.rs:125
#: crates/pdfs-gui/src/app/pages/locations.rs:126
msgid "Add Folder"
msgstr "Map toevoegen"
#: crates/pdfs-gui/src/app/pages/locations.rs:130
#: crates/pdfs-gui/src/app/pages/locations.rs:131
msgid "Back a local folder up to this computer's Proton Drive device"
msgstr ""
"Een back-up van een lokale map maken naar het Proton Drive-apparaat van deze "
"computer"
#: crates/pdfs-gui/src/app/pages/locations.rs:140
#: crates/pdfs-gui/src/app/pages/locations.rs:141
msgid "Conflicts"
msgstr "Conflicten"
#: crates/pdfs-gui/src/app/pages/locations.rs:142
#: crates/pdfs-gui/src/app/pages/locations.rs:143
msgid ""
"Files changed in two places at once. Both versions were kept; choose which "
"one stays."
@@ -2536,7 +2537,7 @@ msgstr ""
"Bestanden zijn op twee plaatsen tegelijk gewijzigd. Beide versies zijn "
"bewaard; kies welke blijft."
#: crates/pdfs-gui/src/app/pages/locations.rs:158
#: crates/pdfs-gui/src/app/pages/locations.rs:159
msgid ""
"Synced folders keep a full copy on this computer. Online-only folders fetch "
"each file when you open it."
@@ -2544,135 +2545,135 @@ msgstr ""
"Gesynchroniseerde mappen houden een volledige kopie op deze computer. Mappen "
"die alleen online zijn, halen elk bestand op zodra je het opent."
#: crates/pdfs-gui/src/app/pages/locations.rs:169
#: crates/pdfs-gui/src/app/pages/locations.rs:170
msgid "About Sync Modes"
msgstr "Over synchronisatiemodi"
#: crates/pdfs-gui/src/app/pages/locations.rs:178
#: crates/pdfs-gui/src/app/pages/locations.rs:179
#: crates/pdfs-gui/src/prompt.rs:65
msgid "Folders"
msgstr "Mappen"
#: crates/pdfs-gui/src/app/pages/locations.rs:213
#: crates/pdfs-gui/src/app/pages/locations.rs:214
msgctxt "sync view"
msgid "Overview"
msgstr "Overzicht"
#: crates/pdfs-gui/src/app/pages/locations.rs:219
#: crates/pdfs-gui/src/app/pages/locations.rs:220
msgctxt "sync view"
msgid "Folders"
msgstr "Mappen"
#: crates/pdfs-gui/src/app/pages/locations.rs:225
#: crates/pdfs-gui/src/app/pages/locations.rs:226
msgctxt "sync view"
msgid "History"
msgstr "Geschiedenis"
#: crates/pdfs-gui/src/app/pages/locations.rs:232
#: crates/pdfs-gui/src/app/pages/locations.rs:233
#: crates/pdfs-gui/src/app/pages/shared.rs:210
msgid "Review"
msgstr "Bekijken"
#: crates/pdfs-gui/src/app/pages/locations.rs:363
#: crates/pdfs-gui/src/app/pages/locations.rs:364
#, rust-format
msgid "{n} change couldn't be uploaded"
msgid_plural "{n} changes couldn't be uploaded"
msgstr[0] "{n} wijziging kon niet worden geüpload"
msgstr[1] "{n} wijzigingen konden niet worden geüpload"
#: crates/pdfs-gui/src/app/pages/locations.rs:369
#: crates/pdfs-gui/src/app/pages/locations.rs:370
#, rust-format
msgid "{n} file was changed in two places at once"
msgid_plural "{n} files were changed in two places at once"
msgstr[0] "{n} bestand is op twee plaatsen tegelijk gewijzigd"
msgstr[1] "{n} bestanden zijn op twee plaatsen tegelijk gewijzigd"
#: crates/pdfs-gui/src/app/pages/locations.rs:374
#: crates/pdfs-gui/src/app/pages/locations.rs:375
msgid "Some files need your attention"
msgstr "Sommige bestanden hebben je aandacht nodig"
#: crates/pdfs-gui/src/app/pages/locations.rs:391
#: crates/pdfs-gui/src/app/pages/locations.rs:392
msgid "Checking…"
msgstr "Controleren…"
#: crates/pdfs-gui/src/app/pages/locations.rs:419
#: crates/pdfs-gui/src/app/pages/locations.rs:420
msgid "Pause for 1 Hour"
msgstr "1 uur pauzeren"
#: crates/pdfs-gui/src/app/pages/locations.rs:423
#: crates/pdfs-gui/src/app/pages/locations.rs:424
msgid "Pause for 8 Hours"
msgstr "8 uur pauzeren"
#: crates/pdfs-gui/src/app/pages/locations.rs:427
#: crates/pdfs-gui/src/app/pages/locations.rs:428
msgid "Pause for 24 Hours"
msgstr "24 uur pauzeren"
#: crates/pdfs-gui/src/app/pages/locations.rs:431
#: crates/pdfs-gui/src/app/pages/locations.rs:467
#: crates/pdfs-gui/src/app/pages/locations.rs:432
#: crates/pdfs-gui/src/app/pages/locations.rs:468
msgctxt "verb"
msgid "Pause"
msgstr "Pauzeren"
#: crates/pdfs-gui/src/app/pages/locations.rs:435
#: crates/pdfs-gui/src/app/pages/locations.rs:472
#: crates/pdfs-gui/src/app/pages/locations.rs:436
#: crates/pdfs-gui/src/app/pages/locations.rs:473
msgid "Stop uploading until you resume. Files still open as usual."
msgstr ""
"Stop met uploaden totdat je hervat. Bestanden openen gewoon zoals altijd."
#: crates/pdfs-gui/src/app/pages/locations.rs:437
#: crates/pdfs-gui/src/app/pages/locations.rs:438
msgid "Pause for a while"
msgstr "Een tijdje pauzeren"
#: crates/pdfs-gui/src/app/pages/locations.rs:465
#: crates/pdfs-gui/src/app/pages/locations.rs:466
msgctxt "verb"
msgid "Resume"
msgstr "Hervatten"
#: crates/pdfs-gui/src/app/pages/locations.rs:470
#: crates/pdfs-gui/src/app/pages/locations.rs:471
msgid "Upload everything that waited while sync was paused"
msgstr ""
"Alles uploaden wat heeft gewacht terwijl de synchronisatie gepauzeerd was"
#: crates/pdfs-gui/src/app/pages/locations.rs:518
#: crates/pdfs-gui/src/app/pages/locations.rs:519
msgid "Couldn't pause sync"
msgstr "Kon synchronisatie niet pauzeren"
#: crates/pdfs-gui/src/app/pages/locations.rs:520
#: crates/pdfs-gui/src/app/pages/locations.rs:521
msgid "Couldn't resume sync"
msgstr "Kon synchronisatie niet hervatten"
#: crates/pdfs-gui/src/app/pages/locations.rs:526
#: crates/pdfs-gui/src/app/pages/locations.rs:527
msgid "Sync resumed"
msgstr "Synchronisatie hervat"
#: crates/pdfs-gui/src/app/pages/locations.rs:527
#: crates/pdfs-gui/src/app/pages/locations.rs:528
msgid "Sync paused until you resume"
msgstr "Synchronisatie gepauzeerd totdat je hervat"
#: crates/pdfs-gui/src/app/pages/locations.rs:528
#: crates/pdfs-gui/src/app/pages/locations.rs:529
#: crates/pdfs-gui/src/app/pages/status.rs:1323 crates/pdfs-gui/src/main.rs:237
msgid "Sync paused"
msgstr "Synchronisatie gepauzeerd"
#: crates/pdfs-gui/src/app/pages/locations.rs:546
#: crates/pdfs-gui/src/app/pages/locations.rs:547
msgid "Retry All"
msgstr "Alles opnieuw proberen"
#: crates/pdfs-gui/src/app/pages/locations.rs:548
#: crates/pdfs-gui/src/app/pages/locations.rs:549
msgid "Try every failed change again now"
msgstr "Alle mislukte wijzigingen nu opnieuw proberen"
#: crates/pdfs-gui/src/app/pages/locations.rs:553
#: crates/pdfs-gui/src/app/pages/locations.rs:554
msgid "Waiting to Upload"
msgstr "Wacht op upload"
#: crates/pdfs-gui/src/app/pages/locations.rs:555
#: crates/pdfs-gui/src/app/pages/locations.rs:614
#: crates/pdfs-gui/src/app/pages/locations.rs:556
#: crates/pdfs-gui/src/app/pages/locations.rs:615
msgid "Changes made on this computer that are not on Proton Drive yet."
msgstr "Wijzigingen op deze computer die nog niet in Proton Drive staan."
#. Translators: {shown} is how many rows are listed (50), {n} the total number of queued changes.
#: crates/pdfs-gui/src/app/pages/locations.rs:612
#: crates/pdfs-gui/src/app/pages/locations.rs:613
#, rust-format
msgid ""
"Changes made on this computer that are not on Proton Drive yet. Showing the "
@@ -2687,89 +2688,154 @@ msgstr[1] ""
"Wijzigingen op deze computer die nog niet in Proton Drive staan. De eerste "
"{shown} van {n} worden getoond."
#: crates/pdfs-gui/src/app/pages/locations.rs:629
#: crates/pdfs-gui/src/app/pages/locations.rs:630
msgid "Upload changes"
msgstr "Wijzigingen uploaden"
#: crates/pdfs-gui/src/app/pages/locations.rs:630
#: crates/pdfs-gui/src/app/pages/locations.rs:631
msgid "Upload new file"
msgstr "Nieuw bestand uploaden"
#: crates/pdfs-gui/src/app/pages/locations.rs:631
#: crates/pdfs-gui/src/app/pages/locations.rs:632
msgid "Create folder"
msgstr "Map aanmaken"
#: crates/pdfs-gui/src/app/pages/locations.rs:632
#: crates/pdfs-gui/src/app/pages/locations.rs:633
msgid "Rename or move"
msgstr "Hernoemen of verplaatsen"
#: crates/pdfs-gui/src/app/pages/locations.rs:633
#: crates/pdfs-gui/src/app/pages/locations.rs:634
msgid "Move to trash"
msgstr "Naar prullenbak verplaatsen"
#. Translators: a queued change of an unknown kind.
#: crates/pdfs-gui/src/app/pages/locations.rs:635
#: crates/pdfs-gui/src/app/pages/locations.rs:636
msgctxt "noun"
msgid "Change"
msgstr "Wijziging"
#: crates/pdfs-gui/src/app/pages/locations.rs:638
#: crates/pdfs-gui/src/app/pages/locations.rs:639
msgid "waiting for the app writing it to finish"
msgstr "wacht tot de app die het schrijft klaar is"
#. Translators: {time} is when the next attempt happens, such as "14:30".
#: crates/pdfs-gui/src/app/pages/locations.rs:641
#: crates/pdfs-gui/src/app/pages/locations.rs:642
#, rust-format
msgid "retrying {time}"
msgstr "nieuwe poging om {time}"
#: crates/pdfs-gui/src/app/pages/locations.rs:643
#: crates/pdfs-gui/src/app/pages/locations.rs:644
msgid "waiting for sync to resume"
msgstr "wacht tot de synchronisatie wordt hervat"
#: crates/pdfs-gui/src/app/pages/locations.rs:644
#: crates/pdfs-gui/src/app/pages/locations.rs:645
msgid "up next"
msgstr "volgende"
#: crates/pdfs-gui/src/app/pages/locations.rs:648
#: crates/pdfs-gui/src/app/pages/locations.rs:649
#, rust-format
msgid "{action} · {state}"
msgstr "{action} · {state}"
#: crates/pdfs-gui/src/app/pages/locations.rs:655
#: crates/pdfs-gui/src/app/pages/locations.rs:660
#, rust-format
msgid "Failed {n} time: {error}"
msgid_plural "Failed {n} times: {error}"
msgstr[0] "{n} keer mislukt: {error}"
msgstr[1] "{n} keer mislukt: {error}"
#: crates/pdfs-gui/src/app/pages/locations.rs:681
#: crates/pdfs-gui/src/app/pages/locations.rs:686
msgid "Retry now"
msgstr "Nu opnieuw proberen"
#: crates/pdfs-gui/src/app/pages/locations.rs:700
#: crates/pdfs-gui/src/app/pages/locations.rs:697
msgid "Export"
msgstr "Exporteren"
#: crates/pdfs-gui/src/app/pages/locations.rs:698
msgid "Save a copy of this file's content elsewhere"
msgstr "Een kopie van de inhoud van dit bestand ergens anders opslaan"
#: crates/pdfs-gui/src/app/pages/locations.rs:719
msgid ""
"Your Proton Drive storage is full. Free up space or upgrade your plan, and "
"this change uploads on its own."
msgstr ""
"Je Proton Drive-opslag is vol. Maak ruimte vrij of stap over op een groter "
"abonnement, dan wordt deze wijziging vanzelf geüpload."
#: crates/pdfs-gui/src/app/pages/locations.rs:722
msgid ""
"You can no longer change this on Proton Drive. Ask the owner for edit "
"access, or export the file to keep your version."
msgstr ""
"Je kunt dit op Proton Drive niet meer wijzigen. Vraag de eigenaar om "
"bewerkrechten, of exporteer het bestand om je versie te bewaren."
#: crates/pdfs-gui/src/app/pages/locations.rs:725
msgid ""
"The folder this change belongs in is gone from Proton Drive. Export the file "
"to keep your version."
msgstr ""
"De map waar deze wijziging bij hoort, staat niet meer op Proton Drive. "
"Exporteer het bestand om je versie te bewaren."
#: crates/pdfs-gui/src/app/pages/locations.rs:728
msgid ""
"Proton Drive's limit on items in a folder or on folder depth is reached. "
"Make room in the folder, then retry."
msgstr ""
"De limiet van Proton Drive voor items in een map of voor de diepte van "
"mappen is bereikt. Maak ruimte in de map en probeer het dan opnieuw."
#: crates/pdfs-gui/src/app/pages/locations.rs:731
msgid "Proton Drive refused this change. It stays queued and is tried again."
msgstr ""
"Proton Drive heeft deze wijziging geweigerd. Ze blijft in de wachtrij en "
"wordt opnieuw geprobeerd."
#: crates/pdfs-gui/src/app/pages/locations.rs:741
msgid "Export File"
msgstr "Bestand exporteren"
#: crates/pdfs-gui/src/app/pages/locations.rs:750
#: crates/pdfs-gui/src/app/pages/locations.rs:764
#: crates/pdfs-gui/src/app/pages/locations.rs:768
msgid "Couldn't export the file"
msgstr "Kon het bestand niet exporteren"
#: crates/pdfs-gui/src/app/pages/locations.rs:751
#: crates/pdfs-gui/src/app/widgets/versions_dialog.rs:351
msgid "That location isn't a local file."
msgstr "Die locatie is geen lokaal bestand."
#: crates/pdfs-gui/src/app/pages/locations.rs:762
msgid "File exported"
msgstr "Bestand geëxporteerd"
#: crates/pdfs-gui/src/app/pages/locations.rs:783
msgid "Retrying now…"
msgstr "Nu opnieuw proberen…"
#: crates/pdfs-gui/src/app/pages/locations.rs:705
#: crates/pdfs-gui/src/app/pages/locations.rs:709
#: crates/pdfs-gui/src/app/pages/locations.rs:788
#: crates/pdfs-gui/src/app/pages/locations.rs:792
msgid "Couldn't retry"
msgstr "Kon niet opnieuw proberen"
#: crates/pdfs-gui/src/app/pages/locations.rs:779
#: crates/pdfs-gui/src/app/pages/locations.rs:862
#, rust-format
msgid "{size}, changed {time}"
msgstr "{size}, gewijzigd {time}"
#: crates/pdfs-gui/src/app/pages/locations.rs:789
#: crates/pdfs-gui/src/app/pages/locations.rs:872
msgid "The original is gone; only this copy is left"
msgstr "Het origineel is weg; alleen deze kopie is over"
#: crates/pdfs-gui/src/app/pages/locations.rs:791
#: crates/pdfs-gui/src/app/pages/locations.rs:874
msgid "Same content as the original"
msgstr "Zelfde inhoud als het origineel"
#: crates/pdfs-gui/src/app/pages/locations.rs:832
#: crates/pdfs-gui/src/app/pages/locations.rs:915
#, rust-format
msgid ""
"“{name}” was changed here and elsewhere at the same time.\n"
@@ -2787,7 +2853,7 @@ msgstr ""
"Wat niet wordt behouden, gaat naar de prullenbak, waar het kan worden "
"teruggezet."
#: crates/pdfs-gui/src/app/pages/locations.rs:844
#: crates/pdfs-gui/src/app/pages/locations.rs:927
#, rust-format
msgid ""
"The original “{name}” no longer exists; only the copy is left ({copy}).\n"
@@ -2798,112 +2864,112 @@ msgstr ""
"\n"
"Behoud de kopie om haar de oorspronkelijke naam terug te geven."
#: crates/pdfs-gui/src/app/pages/locations.rs:850
#: crates/pdfs-gui/src/app/pages/locations.rs:933
msgid "Resolve Conflict"
msgstr "Conflict oplossen"
#: crates/pdfs-gui/src/app/pages/locations.rs:855
#: crates/pdfs-gui/src/app/pages/locations.rs:938
msgid "Name for the copy, if keeping both"
msgstr "Naam voor de kopie, als je beide behoudt"
#: crates/pdfs-gui/src/app/pages/locations.rs:862
#: crates/pdfs-gui/src/app/pages/locations.rs:945
msgid "Keep Original"
msgstr "Origineel behouden"
#: crates/pdfs-gui/src/app/pages/locations.rs:863
#: crates/pdfs-gui/src/app/pages/locations.rs:946
msgid "Keep Both"
msgstr "Beide behouden"
#: crates/pdfs-gui/src/app/pages/locations.rs:865
#: crates/pdfs-gui/src/app/pages/locations.rs:948
msgid "Keep Copy"
msgstr "Kopie behouden"
#: crates/pdfs-gui/src/app/pages/locations.rs:922
#: crates/pdfs-gui/src/app/pages/locations.rs:928
#: crates/pdfs-gui/src/app/pages/locations.rs:1005
#: crates/pdfs-gui/src/app/pages/locations.rs:1011
msgid "Couldn't resolve the conflict"
msgstr "Kon het conflict niet oplossen"
#: crates/pdfs-gui/src/app/pages/locations.rs:971
#: crates/pdfs-gui/src/app/pages/locations.rs:1054
msgid "Reading this computer's Proton Drive locations."
msgstr "De Proton Drive-locaties van deze computer worden gelezen."
#: crates/pdfs-gui/src/app/pages/locations.rs:992
#: crates/pdfs-gui/src/app/pages/locations.rs:1075
msgid "Unavailable"
msgstr "Niet beschikbaar"
#: crates/pdfs-gui/src/app/pages/locations.rs:1075
#: crates/pdfs-gui/src/app/pages/locations.rs:1158
msgid "No folders yet"
msgstr "Nog geen mappen"
#: crates/pdfs-gui/src/app/pages/locations.rs:1077
#: crates/pdfs-gui/src/app/pages/locations.rs:1160
msgid "The Proton Drive service hasn't reported its folder yet."
msgstr "De Proton Drive-service heeft zijn map nog niet gemeld."
#: crates/pdfs-gui/src/app/pages/locations.rs:1100
#: crates/pdfs-gui/src/app/pages/locations.rs:1183
#, rust-format
msgid "{path} · {state}"
msgstr "{path} · {state}"
#: crates/pdfs-gui/src/app/pages/locations.rs:1143
#: crates/pdfs-gui/src/app/pages/locations.rs:1226
msgid "Read-only"
msgstr "Alleen-lezen"
#: crates/pdfs-gui/src/app/pages/locations.rs:1159
#: crates/pdfs-gui/src/app/pages/locations.rs:1242
msgid "Open in Files"
msgstr "Openen in Bestanden"
#: crates/pdfs-gui/src/app/pages/locations.rs:1164
#: crates/pdfs-gui/src/app/pages/locations.rs:1247
msgid "Change Location…"
msgstr "Locatie wijzigen…"
#: crates/pdfs-gui/src/app/pages/locations.rs:1216
#: crates/pdfs-gui/src/app/pages/locations.rs:1299
msgid "Choose whether this folder keeps a full copy on this computer"
msgstr "Kiezen of deze map een volledige kopie op deze computer houdt"
#: crates/pdfs-gui/src/app/pages/locations.rs:1232
#: crates/pdfs-gui/src/app/pages/locations.rs:1315
msgid "Keep every file on this computer and in Proton Drive."
msgstr "Elk bestand op deze computer en in Proton Drive bewaren."
#: crates/pdfs-gui/src/app/pages/locations.rs:1237
#: crates/pdfs-gui/src/app/pages/locations.rs:1320
msgid "Keep the files in Proton Drive and download each one when you open it."
msgstr ""
"De bestanden in Proton Drive bewaren en elk bestand downloaden zodra je het "
"opent."
#. Translators: a folder mode: files are kept in Proton Drive and fetched when opened.
#: crates/pdfs-gui/src/app/pages/locations.rs:1291
#: crates/pdfs-gui/src/app/pages/locations.rs:1374
msgctxt "folder mode"
msgid "Online only"
msgstr "Alleen online"
#. Translators: a folder mode: a full copy is kept on this computer.
#: crates/pdfs-gui/src/app/pages/locations.rs:1294
#: crates/pdfs-gui/src/app/pages/locations.rs:1377
msgctxt "folder mode"
msgid "Synced"
msgstr "Gesynchroniseerd"
#: crates/pdfs-gui/src/app/pages/locations.rs:1305
#: crates/pdfs-gui/src/app/pages/locations.rs:1388
msgid "Sync Now"
msgstr "Nu synchroniseren"
#: crates/pdfs-gui/src/app/pages/locations.rs:1309
#: crates/pdfs-gui/src/app/pages/locations.rs:1392
msgid "Resume Syncing"
msgstr "Synchronisatie hervatten"
#: crates/pdfs-gui/src/app/pages/locations.rs:1311
#: crates/pdfs-gui/src/app/pages/locations.rs:1394
msgid "Pause Syncing"
msgstr "Synchronisatie pauzeren"
#: crates/pdfs-gui/src/app/pages/locations.rs:1322
#: crates/pdfs-gui/src/app/pages/locations.rs:1405
msgid "Stop Syncing…"
msgstr "Synchroniseren stoppen…"
#: crates/pdfs-gui/src/app/pages/locations.rs:1331
#: crates/pdfs-gui/src/app/pages/locations.rs:1414
msgid "Make Folder Online Only?"
msgstr "Map alleen online maken?"
#. Translators: {path} is a local folder path.
#: crates/pdfs-gui/src/app/pages/locations.rs:1333
#: crates/pdfs-gui/src/app/pages/locations.rs:1416
#, rust-format
msgid ""
"Files in {path} will be removed from this computer and kept in Proton Drive "
@@ -2912,11 +2978,11 @@ msgstr ""
"Bestanden in {path} worden van deze computer verwijderd en alleen in Proton "
"Drive bewaard. Elk bestand wordt opnieuw gedownload wanneer je het opent."
#: crates/pdfs-gui/src/app/pages/locations.rs:1336
#: crates/pdfs-gui/src/app/pages/locations.rs:1419
msgid "Make Online Only"
msgstr "Alleen online maken"
#: crates/pdfs-gui/src/app/pages/locations.rs:1372
#: crates/pdfs-gui/src/app/pages/locations.rs:1455
#, rust-format
msgid ""
"Every file in {path} will download to this computer and stay synced. {free} "
@@ -2925,61 +2991,61 @@ msgstr ""
"Elk bestand in {path} wordt naar deze computer gedownload en blijft "
"gesynchroniseerd. Er is {free} vrij op deze schijf."
#: crates/pdfs-gui/src/app/pages/locations.rs:1377
#: crates/pdfs-gui/src/app/pages/locations.rs:1460
#, rust-format
msgid "Every file in {path} will download to this computer and stay synced."
msgstr ""
"Elk bestand in {path} wordt naar deze computer gedownload en blijft "
"gesynchroniseerd."
#: crates/pdfs-gui/src/app/pages/locations.rs:1382
#: crates/pdfs-gui/src/app/pages/locations.rs:1465
msgid "Download Folder?"
msgstr "Map downloaden?"
#: crates/pdfs-gui/src/app/pages/locations.rs:1386
#: crates/pdfs-gui/src/app/pages/locations.rs:1469
msgid "Download"
msgstr "Downloaden"
#: crates/pdfs-gui/src/app/pages/locations.rs:1410
#: crates/pdfs-gui/src/app/pages/locations.rs:1493
msgid "Couldn't pause the folder"
msgstr "Kon de map niet pauzeren"
#: crates/pdfs-gui/src/app/pages/locations.rs:1411
#: crates/pdfs-gui/src/app/pages/locations.rs:1494
msgid "Couldn't resume the folder"
msgstr "Kon de map niet hervatten"
#: crates/pdfs-gui/src/app/pages/locations.rs:1417
#: crates/pdfs-gui/src/app/pages/locations.rs:1500
msgid "Folder paused"
msgstr "Map gepauzeerd"
#: crates/pdfs-gui/src/app/pages/locations.rs:1418
#: crates/pdfs-gui/src/app/pages/locations.rs:1501
msgid "Folder resumed"
msgstr "Map hervat"
#: crates/pdfs-gui/src/app/pages/locations.rs:1442
#: crates/pdfs-gui/src/app/pages/locations.rs:1446
#: crates/pdfs-gui/src/app/pages/locations.rs:1525
#: crates/pdfs-gui/src/app/pages/locations.rs:1529
msgid "Couldn't sync"
msgstr "Kon niet synchroniseren"
#: crates/pdfs-gui/src/app/pages/locations.rs:1472
#: crates/pdfs-gui/src/app/pages/locations.rs:1555
msgid "Shared folder"
msgstr "Gedeelde map"
#: crates/pdfs-gui/src/app/pages/locations.rs:1474
#: crates/pdfs-gui/src/app/pages/locations.rs:1557
msgid "Going online only"
msgstr "Wordt alleen online"
#: crates/pdfs-gui/src/app/pages/locations.rs:1475
#: crates/pdfs-gui/src/app/pages/locations.rs:1558
msgid "Switching to synced"
msgstr "Overschakelen naar gesynchroniseerd"
#: crates/pdfs-gui/src/app/pages/locations.rs:1485
#: crates/pdfs-gui/src/app/pages/locations.rs:1568
msgctxt "state"
msgid "paused"
msgstr "gepauzeerd"
#. Translators: a folder's files can't be opened right now.
#: crates/pdfs-gui/src/app/pages/locations.rs:1496
#: crates/pdfs-gui/src/app/pages/locations.rs:1579
msgid "not available"
msgstr "niet beschikbaar"
@@ -5478,10 +5544,6 @@ msgstr "Versie opslaan"
msgid "Couldn't save that version"
msgstr "Kon die versie niet opslaan"
#: crates/pdfs-gui/src/app/widgets/versions_dialog.rs:351
msgid "That location isn't a local file."
msgstr "Die locatie is geen lokaal bestand."
#: crates/pdfs-gui/src/app/widgets/versions_dialog.rs:358
msgid "Version saved"
msgstr "Versie opgeslagen"
+172 -120
View File
@@ -6,9 +6,9 @@
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: proton-drive-linux 2.6.2\n"
"Project-Id-Version: proton-drive-linux 2.10.0\n"
"Report-Msgid-Bugs-To: https://github.com/narrrl/proton-drive-linux/issues\n"
"POT-Creation-Date: 2026-09-29 00:18+0200\n"
"POT-Creation-Date: 2026-10-04 03:16+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@@ -67,7 +67,7 @@ msgstr ""
#: crates/pdfs-gui/src/app/pages/browser.rs:1217
#: crates/pdfs-gui/src/app/pages/browser.rs:2090
#: crates/pdfs-gui/src/app/pages/browser.rs:2167
#: crates/pdfs-gui/src/app/pages/locations.rs:1471
#: crates/pdfs-gui/src/app/pages/locations.rs:1554
#: crates/pdfs-gui/src/app/pages/shared_by_me.rs:252
#: crates/pdfs-gui/src/app/pages/trash.rs:191 crates/pdfs-gui/src/prompt.rs:171
msgid "My files"
@@ -244,9 +244,9 @@ msgstr ""
#: crates/pdfs-gui/src/app/pages/devices.rs:979
#: crates/pdfs-gui/src/app/pages/devices.rs:1031
#: crates/pdfs-gui/src/app/pages/devices.rs:1075
#: crates/pdfs-gui/src/app/pages/locations.rs:860
#: crates/pdfs-gui/src/app/pages/locations.rs:1335
#: crates/pdfs-gui/src/app/pages/locations.rs:1385
#: crates/pdfs-gui/src/app/pages/locations.rs:943
#: crates/pdfs-gui/src/app/pages/locations.rs:1418
#: crates/pdfs-gui/src/app/pages/locations.rs:1468
#: crates/pdfs-gui/src/app/pages/login.rs:312
#: crates/pdfs-gui/src/app/pages/photos.rs:2055
#: crates/pdfs-gui/src/app/pages/shared.rs:946
@@ -450,8 +450,8 @@ msgstr ""
#: crates/pdfs-gui/src/app/pages/activity.rs:186
#: crates/pdfs-gui/src/app/pages/browser.rs:281
#: crates/pdfs-gui/src/app/pages/devices.rs:114
#: crates/pdfs-gui/src/app/pages/locations.rs:183
#: crates/pdfs-gui/src/app/pages/locations.rs:680
#: crates/pdfs-gui/src/app/pages/locations.rs:184
#: crates/pdfs-gui/src/app/pages/locations.rs:685
#: crates/pdfs-gui/src/app/pages/photos.rs:465
#: crates/pdfs-gui/src/app/pages/shared.rs:183
#: crates/pdfs-gui/src/app/pages/shared_by_me.rs:94
@@ -485,8 +485,8 @@ msgstr ""
#: crates/pdfs-gui/src/app/pages/browser.rs:2635
#: crates/pdfs-gui/src/app/pages/browser.rs:2639
#: crates/pdfs-gui/src/app/pages/devices.rs:325
#: crates/pdfs-gui/src/app/pages/locations.rs:191
#: crates/pdfs-gui/src/app/pages/locations.rs:970
#: crates/pdfs-gui/src/app/pages/locations.rs:192
#: crates/pdfs-gui/src/app/pages/locations.rs:1053
#: crates/pdfs-gui/src/app/pages/shared.rs:422
#: crates/pdfs-gui/src/app/pages/shared_by_me.rs:347
#: crates/pdfs-gui/src/app/pages/trash.rs:284
@@ -985,7 +985,7 @@ msgstr ""
#. Translators: {name} is the file the conflicting copy was made from.
#: crates/pdfs-gui/src/app/pages/activity_text.rs:346
#: crates/pdfs-gui/src/app/pages/locations.rs:795
#: crates/pdfs-gui/src/app/pages/locations.rs:878
#, rust-format
msgid "Differs from {name}"
msgstr ""
@@ -1172,11 +1172,12 @@ msgstr ""
#: crates/pdfs-gui/src/app/pages/devices.rs:884
#: crates/pdfs-gui/src/app/pages/devices.rs:1120
#: crates/pdfs-gui/src/app/pages/duplicates.rs:220
#: crates/pdfs-gui/src/app/pages/locations.rs:535
#: crates/pdfs-gui/src/app/pages/locations.rs:710
#: crates/pdfs-gui/src/app/pages/locations.rs:929
#: crates/pdfs-gui/src/app/pages/locations.rs:1427
#: crates/pdfs-gui/src/app/pages/locations.rs:1447
#: crates/pdfs-gui/src/app/pages/locations.rs:536
#: crates/pdfs-gui/src/app/pages/locations.rs:769
#: crates/pdfs-gui/src/app/pages/locations.rs:793
#: crates/pdfs-gui/src/app/pages/locations.rs:1012
#: crates/pdfs-gui/src/app/pages/locations.rs:1510
#: crates/pdfs-gui/src/app/pages/locations.rs:1530
#: crates/pdfs-gui/src/app/pages/photo_viewer.rs:1425
#: crates/pdfs-gui/src/app/pages/photos.rs:1420
#: crates/pdfs-gui/src/app/pages/photos.rs:2140
@@ -2113,7 +2114,7 @@ msgid "Add Folder to Sync"
msgstr ""
#: crates/pdfs-gui/src/app/pages/devices.rs:686
#: crates/pdfs-gui/src/app/pages/locations.rs:1440
#: crates/pdfs-gui/src/app/pages/locations.rs:1523
msgid "Syncing folder…"
msgstr ""
@@ -2435,157 +2436,157 @@ msgstr[1] ""
msgid "Keep"
msgstr ""
#: crates/pdfs-gui/src/app/pages/locations.rs:125
#: crates/pdfs-gui/src/app/pages/locations.rs:126
msgid "Add Folder"
msgstr ""
#: crates/pdfs-gui/src/app/pages/locations.rs:130
#: crates/pdfs-gui/src/app/pages/locations.rs:131
msgid "Back a local folder up to this computer's Proton Drive device"
msgstr ""
#: crates/pdfs-gui/src/app/pages/locations.rs:140
#: crates/pdfs-gui/src/app/pages/locations.rs:141
msgid "Conflicts"
msgstr ""
#: crates/pdfs-gui/src/app/pages/locations.rs:142
#: crates/pdfs-gui/src/app/pages/locations.rs:143
msgid ""
"Files changed in two places at once. Both versions were kept; choose which "
"one stays."
msgstr ""
#: crates/pdfs-gui/src/app/pages/locations.rs:158
#: crates/pdfs-gui/src/app/pages/locations.rs:159
msgid ""
"Synced folders keep a full copy on this computer. Online-only folders fetch "
"each file when you open it."
msgstr ""
#: crates/pdfs-gui/src/app/pages/locations.rs:169
#: crates/pdfs-gui/src/app/pages/locations.rs:170
msgid "About Sync Modes"
msgstr ""
#: crates/pdfs-gui/src/app/pages/locations.rs:178
#: crates/pdfs-gui/src/app/pages/locations.rs:179
#: crates/pdfs-gui/src/prompt.rs:65
msgid "Folders"
msgstr ""
#: crates/pdfs-gui/src/app/pages/locations.rs:213
#: crates/pdfs-gui/src/app/pages/locations.rs:214
msgctxt "sync view"
msgid "Overview"
msgstr ""
#: crates/pdfs-gui/src/app/pages/locations.rs:219
#: crates/pdfs-gui/src/app/pages/locations.rs:220
msgctxt "sync view"
msgid "Folders"
msgstr ""
#: crates/pdfs-gui/src/app/pages/locations.rs:225
#: crates/pdfs-gui/src/app/pages/locations.rs:226
msgctxt "sync view"
msgid "History"
msgstr ""
#: crates/pdfs-gui/src/app/pages/locations.rs:232
#: crates/pdfs-gui/src/app/pages/locations.rs:233
#: crates/pdfs-gui/src/app/pages/shared.rs:210
msgid "Review"
msgstr ""
#: crates/pdfs-gui/src/app/pages/locations.rs:363
#: crates/pdfs-gui/src/app/pages/locations.rs:364
#, rust-format
msgid "{n} change couldn't be uploaded"
msgid_plural "{n} changes couldn't be uploaded"
msgstr[0] ""
msgstr[1] ""
#: crates/pdfs-gui/src/app/pages/locations.rs:369
#: crates/pdfs-gui/src/app/pages/locations.rs:370
#, rust-format
msgid "{n} file was changed in two places at once"
msgid_plural "{n} files were changed in two places at once"
msgstr[0] ""
msgstr[1] ""
#: crates/pdfs-gui/src/app/pages/locations.rs:374
#: crates/pdfs-gui/src/app/pages/locations.rs:375
msgid "Some files need your attention"
msgstr ""
#: crates/pdfs-gui/src/app/pages/locations.rs:391
#: crates/pdfs-gui/src/app/pages/locations.rs:392
msgid "Checking…"
msgstr ""
#: crates/pdfs-gui/src/app/pages/locations.rs:419
#: crates/pdfs-gui/src/app/pages/locations.rs:420
msgid "Pause for 1 Hour"
msgstr ""
#: crates/pdfs-gui/src/app/pages/locations.rs:423
#: crates/pdfs-gui/src/app/pages/locations.rs:424
msgid "Pause for 8 Hours"
msgstr ""
#: crates/pdfs-gui/src/app/pages/locations.rs:427
#: crates/pdfs-gui/src/app/pages/locations.rs:428
msgid "Pause for 24 Hours"
msgstr ""
#: crates/pdfs-gui/src/app/pages/locations.rs:431
#: crates/pdfs-gui/src/app/pages/locations.rs:467
#: crates/pdfs-gui/src/app/pages/locations.rs:432
#: crates/pdfs-gui/src/app/pages/locations.rs:468
msgctxt "verb"
msgid "Pause"
msgstr ""
#: crates/pdfs-gui/src/app/pages/locations.rs:435
#: crates/pdfs-gui/src/app/pages/locations.rs:472
#: crates/pdfs-gui/src/app/pages/locations.rs:436
#: crates/pdfs-gui/src/app/pages/locations.rs:473
msgid "Stop uploading until you resume. Files still open as usual."
msgstr ""
#: crates/pdfs-gui/src/app/pages/locations.rs:437
#: crates/pdfs-gui/src/app/pages/locations.rs:438
msgid "Pause for a while"
msgstr ""
#: crates/pdfs-gui/src/app/pages/locations.rs:465
#: crates/pdfs-gui/src/app/pages/locations.rs:466
msgctxt "verb"
msgid "Resume"
msgstr ""
#: crates/pdfs-gui/src/app/pages/locations.rs:470
#: crates/pdfs-gui/src/app/pages/locations.rs:471
msgid "Upload everything that waited while sync was paused"
msgstr ""
#: crates/pdfs-gui/src/app/pages/locations.rs:518
#: crates/pdfs-gui/src/app/pages/locations.rs:519
msgid "Couldn't pause sync"
msgstr ""
#: crates/pdfs-gui/src/app/pages/locations.rs:520
#: crates/pdfs-gui/src/app/pages/locations.rs:521
msgid "Couldn't resume sync"
msgstr ""
#: crates/pdfs-gui/src/app/pages/locations.rs:526
#: crates/pdfs-gui/src/app/pages/locations.rs:527
msgid "Sync resumed"
msgstr ""
#: crates/pdfs-gui/src/app/pages/locations.rs:527
#: crates/pdfs-gui/src/app/pages/locations.rs:528
msgid "Sync paused until you resume"
msgstr ""
#: crates/pdfs-gui/src/app/pages/locations.rs:528
#: crates/pdfs-gui/src/app/pages/locations.rs:529
#: crates/pdfs-gui/src/app/pages/status.rs:1323 crates/pdfs-gui/src/main.rs:237
msgid "Sync paused"
msgstr ""
#: crates/pdfs-gui/src/app/pages/locations.rs:546
#: crates/pdfs-gui/src/app/pages/locations.rs:547
msgid "Retry All"
msgstr ""
#: crates/pdfs-gui/src/app/pages/locations.rs:548
#: crates/pdfs-gui/src/app/pages/locations.rs:549
msgid "Try every failed change again now"
msgstr ""
#: crates/pdfs-gui/src/app/pages/locations.rs:553
#: crates/pdfs-gui/src/app/pages/locations.rs:554
msgid "Waiting to Upload"
msgstr ""
#: crates/pdfs-gui/src/app/pages/locations.rs:555
#: crates/pdfs-gui/src/app/pages/locations.rs:614
#: crates/pdfs-gui/src/app/pages/locations.rs:556
#: crates/pdfs-gui/src/app/pages/locations.rs:615
msgid "Changes made on this computer that are not on Proton Drive yet."
msgstr ""
#. Translators: {shown} is how many rows are listed (50), {n} the total number of queued changes.
#: crates/pdfs-gui/src/app/pages/locations.rs:612
#: crates/pdfs-gui/src/app/pages/locations.rs:613
#, rust-format
msgid ""
"Changes made on this computer that are not on Proton Drive yet. Showing the "
@@ -2596,89 +2597,144 @@ msgid_plural ""
msgstr[0] ""
msgstr[1] ""
#: crates/pdfs-gui/src/app/pages/locations.rs:629
#: crates/pdfs-gui/src/app/pages/locations.rs:630
msgid "Upload changes"
msgstr ""
#: crates/pdfs-gui/src/app/pages/locations.rs:630
#: crates/pdfs-gui/src/app/pages/locations.rs:631
msgid "Upload new file"
msgstr ""
#: crates/pdfs-gui/src/app/pages/locations.rs:631
#: crates/pdfs-gui/src/app/pages/locations.rs:632
msgid "Create folder"
msgstr ""
#: crates/pdfs-gui/src/app/pages/locations.rs:632
#: crates/pdfs-gui/src/app/pages/locations.rs:633
msgid "Rename or move"
msgstr ""
#: crates/pdfs-gui/src/app/pages/locations.rs:633
#: crates/pdfs-gui/src/app/pages/locations.rs:634
msgid "Move to trash"
msgstr ""
#. Translators: a queued change of an unknown kind.
#: crates/pdfs-gui/src/app/pages/locations.rs:635
#: crates/pdfs-gui/src/app/pages/locations.rs:636
msgctxt "noun"
msgid "Change"
msgstr ""
#: crates/pdfs-gui/src/app/pages/locations.rs:638
#: crates/pdfs-gui/src/app/pages/locations.rs:639
msgid "waiting for the app writing it to finish"
msgstr ""
#. Translators: {time} is when the next attempt happens, such as "14:30".
#: crates/pdfs-gui/src/app/pages/locations.rs:641
#: crates/pdfs-gui/src/app/pages/locations.rs:642
#, rust-format
msgid "retrying {time}"
msgstr ""
#: crates/pdfs-gui/src/app/pages/locations.rs:643
#: crates/pdfs-gui/src/app/pages/locations.rs:644
msgid "waiting for sync to resume"
msgstr ""
#: crates/pdfs-gui/src/app/pages/locations.rs:644
#: crates/pdfs-gui/src/app/pages/locations.rs:645
msgid "up next"
msgstr ""
#: crates/pdfs-gui/src/app/pages/locations.rs:648
#: crates/pdfs-gui/src/app/pages/locations.rs:649
#, rust-format
msgid "{action} · {state}"
msgstr ""
#: crates/pdfs-gui/src/app/pages/locations.rs:655
#: crates/pdfs-gui/src/app/pages/locations.rs:660
#, rust-format
msgid "Failed {n} time: {error}"
msgid_plural "Failed {n} times: {error}"
msgstr[0] ""
msgstr[1] ""
#: crates/pdfs-gui/src/app/pages/locations.rs:681
#: crates/pdfs-gui/src/app/pages/locations.rs:686
msgid "Retry now"
msgstr ""
#: crates/pdfs-gui/src/app/pages/locations.rs:700
#: crates/pdfs-gui/src/app/pages/locations.rs:697
msgid "Export"
msgstr ""
#: crates/pdfs-gui/src/app/pages/locations.rs:698
msgid "Save a copy of this file's content elsewhere"
msgstr ""
#: crates/pdfs-gui/src/app/pages/locations.rs:719
msgid ""
"Your Proton Drive storage is full. Free up space or upgrade your plan, and "
"this change uploads on its own."
msgstr ""
#: crates/pdfs-gui/src/app/pages/locations.rs:722
msgid ""
"You can no longer change this on Proton Drive. Ask the owner for edit "
"access, or export the file to keep your version."
msgstr ""
#: crates/pdfs-gui/src/app/pages/locations.rs:725
msgid ""
"The folder this change belongs in is gone from Proton Drive. Export the file "
"to keep your version."
msgstr ""
#: crates/pdfs-gui/src/app/pages/locations.rs:728
msgid ""
"Proton Drive's limit on items in a folder or on folder depth is reached. "
"Make room in the folder, then retry."
msgstr ""
#: crates/pdfs-gui/src/app/pages/locations.rs:731
msgid "Proton Drive refused this change. It stays queued and is tried again."
msgstr ""
#: crates/pdfs-gui/src/app/pages/locations.rs:741
msgid "Export File"
msgstr ""
#: crates/pdfs-gui/src/app/pages/locations.rs:750
#: crates/pdfs-gui/src/app/pages/locations.rs:764
#: crates/pdfs-gui/src/app/pages/locations.rs:768
msgid "Couldn't export the file"
msgstr ""
#: crates/pdfs-gui/src/app/pages/locations.rs:751
#: crates/pdfs-gui/src/app/widgets/versions_dialog.rs:351
msgid "That location isn't a local file."
msgstr ""
#: crates/pdfs-gui/src/app/pages/locations.rs:762
msgid "File exported"
msgstr ""
#: crates/pdfs-gui/src/app/pages/locations.rs:783
msgid "Retrying now…"
msgstr ""
#: crates/pdfs-gui/src/app/pages/locations.rs:705
#: crates/pdfs-gui/src/app/pages/locations.rs:709
#: crates/pdfs-gui/src/app/pages/locations.rs:788
#: crates/pdfs-gui/src/app/pages/locations.rs:792
msgid "Couldn't retry"
msgstr ""
#: crates/pdfs-gui/src/app/pages/locations.rs:779
#: crates/pdfs-gui/src/app/pages/locations.rs:862
#, rust-format
msgid "{size}, changed {time}"
msgstr ""
#: crates/pdfs-gui/src/app/pages/locations.rs:789
#: crates/pdfs-gui/src/app/pages/locations.rs:872
msgid "The original is gone; only this copy is left"
msgstr ""
#: crates/pdfs-gui/src/app/pages/locations.rs:791
#: crates/pdfs-gui/src/app/pages/locations.rs:874
msgid "Same content as the original"
msgstr ""
#: crates/pdfs-gui/src/app/pages/locations.rs:832
#: crates/pdfs-gui/src/app/pages/locations.rs:915
#, rust-format
msgid ""
"“{name}” was changed here and elsewhere at the same time.\n"
@@ -2689,7 +2745,7 @@ msgid ""
"Whatever is not kept goes to Trash, where it can be restored."
msgstr ""
#: crates/pdfs-gui/src/app/pages/locations.rs:844
#: crates/pdfs-gui/src/app/pages/locations.rs:927
#, rust-format
msgid ""
"The original “{name}” no longer exists; only the copy is left ({copy}).\n"
@@ -2697,180 +2753,180 @@ msgid ""
"Keep the copy to give it the original name back."
msgstr ""
#: crates/pdfs-gui/src/app/pages/locations.rs:850
#: crates/pdfs-gui/src/app/pages/locations.rs:933
msgid "Resolve Conflict"
msgstr ""
#: crates/pdfs-gui/src/app/pages/locations.rs:855
#: crates/pdfs-gui/src/app/pages/locations.rs:938
msgid "Name for the copy, if keeping both"
msgstr ""
#: crates/pdfs-gui/src/app/pages/locations.rs:862
#: crates/pdfs-gui/src/app/pages/locations.rs:945
msgid "Keep Original"
msgstr ""
#: crates/pdfs-gui/src/app/pages/locations.rs:863
#: crates/pdfs-gui/src/app/pages/locations.rs:946
msgid "Keep Both"
msgstr ""
#: crates/pdfs-gui/src/app/pages/locations.rs:865
#: crates/pdfs-gui/src/app/pages/locations.rs:948
msgid "Keep Copy"
msgstr ""
#: crates/pdfs-gui/src/app/pages/locations.rs:922
#: crates/pdfs-gui/src/app/pages/locations.rs:928
#: crates/pdfs-gui/src/app/pages/locations.rs:1005
#: crates/pdfs-gui/src/app/pages/locations.rs:1011
msgid "Couldn't resolve the conflict"
msgstr ""
#: crates/pdfs-gui/src/app/pages/locations.rs:971
#: crates/pdfs-gui/src/app/pages/locations.rs:1054
msgid "Reading this computer's Proton Drive locations."
msgstr ""
#: crates/pdfs-gui/src/app/pages/locations.rs:992
#: crates/pdfs-gui/src/app/pages/locations.rs:1075
msgid "Unavailable"
msgstr ""
#: crates/pdfs-gui/src/app/pages/locations.rs:1075
#: crates/pdfs-gui/src/app/pages/locations.rs:1158
msgid "No folders yet"
msgstr ""
#: crates/pdfs-gui/src/app/pages/locations.rs:1077
#: crates/pdfs-gui/src/app/pages/locations.rs:1160
msgid "The Proton Drive service hasn't reported its folder yet."
msgstr ""
#: crates/pdfs-gui/src/app/pages/locations.rs:1100
#: crates/pdfs-gui/src/app/pages/locations.rs:1183
#, rust-format
msgid "{path} · {state}"
msgstr ""
#: crates/pdfs-gui/src/app/pages/locations.rs:1143
#: crates/pdfs-gui/src/app/pages/locations.rs:1226
msgid "Read-only"
msgstr ""
#: crates/pdfs-gui/src/app/pages/locations.rs:1159
#: crates/pdfs-gui/src/app/pages/locations.rs:1242
msgid "Open in Files"
msgstr ""
#: crates/pdfs-gui/src/app/pages/locations.rs:1164
#: crates/pdfs-gui/src/app/pages/locations.rs:1247
msgid "Change Location…"
msgstr ""
#: crates/pdfs-gui/src/app/pages/locations.rs:1216
#: crates/pdfs-gui/src/app/pages/locations.rs:1299
msgid "Choose whether this folder keeps a full copy on this computer"
msgstr ""
#: crates/pdfs-gui/src/app/pages/locations.rs:1232
#: crates/pdfs-gui/src/app/pages/locations.rs:1315
msgid "Keep every file on this computer and in Proton Drive."
msgstr ""
#: crates/pdfs-gui/src/app/pages/locations.rs:1237
#: crates/pdfs-gui/src/app/pages/locations.rs:1320
msgid "Keep the files in Proton Drive and download each one when you open it."
msgstr ""
#. Translators: a folder mode: files are kept in Proton Drive and fetched when opened.
#: crates/pdfs-gui/src/app/pages/locations.rs:1291
#: crates/pdfs-gui/src/app/pages/locations.rs:1374
msgctxt "folder mode"
msgid "Online only"
msgstr ""
#. Translators: a folder mode: a full copy is kept on this computer.
#: crates/pdfs-gui/src/app/pages/locations.rs:1294
#: crates/pdfs-gui/src/app/pages/locations.rs:1377
msgctxt "folder mode"
msgid "Synced"
msgstr ""
#: crates/pdfs-gui/src/app/pages/locations.rs:1305
#: crates/pdfs-gui/src/app/pages/locations.rs:1388
msgid "Sync Now"
msgstr ""
#: crates/pdfs-gui/src/app/pages/locations.rs:1309
#: crates/pdfs-gui/src/app/pages/locations.rs:1392
msgid "Resume Syncing"
msgstr ""
#: crates/pdfs-gui/src/app/pages/locations.rs:1311
#: crates/pdfs-gui/src/app/pages/locations.rs:1394
msgid "Pause Syncing"
msgstr ""
#: crates/pdfs-gui/src/app/pages/locations.rs:1322
#: crates/pdfs-gui/src/app/pages/locations.rs:1405
msgid "Stop Syncing…"
msgstr ""
#: crates/pdfs-gui/src/app/pages/locations.rs:1331
#: crates/pdfs-gui/src/app/pages/locations.rs:1414
msgid "Make Folder Online Only?"
msgstr ""
#. Translators: {path} is a local folder path.
#: crates/pdfs-gui/src/app/pages/locations.rs:1333
#: crates/pdfs-gui/src/app/pages/locations.rs:1416
#, rust-format
msgid ""
"Files in {path} will be removed from this computer and kept in Proton Drive "
"only. Each file downloads again when you open it."
msgstr ""
#: crates/pdfs-gui/src/app/pages/locations.rs:1336
#: crates/pdfs-gui/src/app/pages/locations.rs:1419
msgid "Make Online Only"
msgstr ""
#: crates/pdfs-gui/src/app/pages/locations.rs:1372
#: crates/pdfs-gui/src/app/pages/locations.rs:1455
#, rust-format
msgid ""
"Every file in {path} will download to this computer and stay synced. {free} "
"is free on this disk."
msgstr ""
#: crates/pdfs-gui/src/app/pages/locations.rs:1377
#: crates/pdfs-gui/src/app/pages/locations.rs:1460
#, rust-format
msgid "Every file in {path} will download to this computer and stay synced."
msgstr ""
#: crates/pdfs-gui/src/app/pages/locations.rs:1382
#: crates/pdfs-gui/src/app/pages/locations.rs:1465
msgid "Download Folder?"
msgstr ""
#: crates/pdfs-gui/src/app/pages/locations.rs:1386
#: crates/pdfs-gui/src/app/pages/locations.rs:1469
msgid "Download"
msgstr ""
#: crates/pdfs-gui/src/app/pages/locations.rs:1410
#: crates/pdfs-gui/src/app/pages/locations.rs:1493
msgid "Couldn't pause the folder"
msgstr ""
#: crates/pdfs-gui/src/app/pages/locations.rs:1411
#: crates/pdfs-gui/src/app/pages/locations.rs:1494
msgid "Couldn't resume the folder"
msgstr ""
#: crates/pdfs-gui/src/app/pages/locations.rs:1417
#: crates/pdfs-gui/src/app/pages/locations.rs:1500
msgid "Folder paused"
msgstr ""
#: crates/pdfs-gui/src/app/pages/locations.rs:1418
#: crates/pdfs-gui/src/app/pages/locations.rs:1501
msgid "Folder resumed"
msgstr ""
#: crates/pdfs-gui/src/app/pages/locations.rs:1442
#: crates/pdfs-gui/src/app/pages/locations.rs:1446
#: crates/pdfs-gui/src/app/pages/locations.rs:1525
#: crates/pdfs-gui/src/app/pages/locations.rs:1529
msgid "Couldn't sync"
msgstr ""
#: crates/pdfs-gui/src/app/pages/locations.rs:1472
#: crates/pdfs-gui/src/app/pages/locations.rs:1555
msgid "Shared folder"
msgstr ""
#: crates/pdfs-gui/src/app/pages/locations.rs:1474
#: crates/pdfs-gui/src/app/pages/locations.rs:1557
msgid "Going online only"
msgstr ""
#: crates/pdfs-gui/src/app/pages/locations.rs:1475
#: crates/pdfs-gui/src/app/pages/locations.rs:1558
msgid "Switching to synced"
msgstr ""
#: crates/pdfs-gui/src/app/pages/locations.rs:1485
#: crates/pdfs-gui/src/app/pages/locations.rs:1568
msgctxt "state"
msgid "paused"
msgstr ""
#. Translators: a folder's files can't be opened right now.
#: crates/pdfs-gui/src/app/pages/locations.rs:1496
#: crates/pdfs-gui/src/app/pages/locations.rs:1579
msgid "not available"
msgstr ""
@@ -5281,10 +5337,6 @@ msgstr ""
msgid "Couldn't save that version"
msgstr ""
#: crates/pdfs-gui/src/app/widgets/versions_dialog.rs:351
msgid "That location isn't a local file."
msgstr ""
#: crates/pdfs-gui/src/app/widgets/versions_dialog.rs:358
msgid "Version saved"
msgstr ""
+180 -119
View File
@@ -5,7 +5,7 @@ msgid ""
msgstr ""
"Project-Id-Version: proton-drive-linux 2.1.0\n"
"Report-Msgid-Bugs-To: https://github.com/narrrl/proton-drive-linux/issues\n"
"POT-Creation-Date: 2026-09-29 00:18+0200\n"
"POT-Creation-Date: 2026-10-04 03:16+0200\n"
"PO-Revision-Date: 2026-09-23 12:00+0200\n"
"Last-Translator: Proton Drive for Linux contributors\n"
"Language-Team: Polish\n"
@@ -66,7 +66,7 @@ msgstr "%A, %-d %B %Y, %H:%M"
#: crates/pdfs-gui/src/app/pages/browser.rs:1217
#: crates/pdfs-gui/src/app/pages/browser.rs:2090
#: crates/pdfs-gui/src/app/pages/browser.rs:2167
#: crates/pdfs-gui/src/app/pages/locations.rs:1471
#: crates/pdfs-gui/src/app/pages/locations.rs:1554
#: crates/pdfs-gui/src/app/pages/shared_by_me.rs:252
#: crates/pdfs-gui/src/app/pages/trash.rs:191 crates/pdfs-gui/src/prompt.rs:171
msgid "My files"
@@ -272,9 +272,9 @@ msgstr ""
#: crates/pdfs-gui/src/app/pages/devices.rs:979
#: crates/pdfs-gui/src/app/pages/devices.rs:1031
#: crates/pdfs-gui/src/app/pages/devices.rs:1075
#: crates/pdfs-gui/src/app/pages/locations.rs:860
#: crates/pdfs-gui/src/app/pages/locations.rs:1335
#: crates/pdfs-gui/src/app/pages/locations.rs:1385
#: crates/pdfs-gui/src/app/pages/locations.rs:943
#: crates/pdfs-gui/src/app/pages/locations.rs:1418
#: crates/pdfs-gui/src/app/pages/locations.rs:1468
#: crates/pdfs-gui/src/app/pages/login.rs:312
#: crates/pdfs-gui/src/app/pages/photos.rs:2055
#: crates/pdfs-gui/src/app/pages/shared.rs:946
@@ -478,8 +478,8 @@ msgstr "Nic w ostatnim dzienniku nie pasuje do tego filtru."
#: crates/pdfs-gui/src/app/pages/activity.rs:186
#: crates/pdfs-gui/src/app/pages/browser.rs:281
#: crates/pdfs-gui/src/app/pages/devices.rs:114
#: crates/pdfs-gui/src/app/pages/locations.rs:183
#: crates/pdfs-gui/src/app/pages/locations.rs:680
#: crates/pdfs-gui/src/app/pages/locations.rs:184
#: crates/pdfs-gui/src/app/pages/locations.rs:685
#: crates/pdfs-gui/src/app/pages/photos.rs:465
#: crates/pdfs-gui/src/app/pages/shared.rs:183
#: crates/pdfs-gui/src/app/pages/shared_by_me.rs:94
@@ -520,8 +520,8 @@ msgstr "Opcje widoku"
#: crates/pdfs-gui/src/app/pages/browser.rs:2635
#: crates/pdfs-gui/src/app/pages/browser.rs:2639
#: crates/pdfs-gui/src/app/pages/devices.rs:325
#: crates/pdfs-gui/src/app/pages/locations.rs:191
#: crates/pdfs-gui/src/app/pages/locations.rs:970
#: crates/pdfs-gui/src/app/pages/locations.rs:192
#: crates/pdfs-gui/src/app/pages/locations.rs:1053
#: crates/pdfs-gui/src/app/pages/shared.rs:422
#: crates/pdfs-gui/src/app/pages/shared_by_me.rs:347
#: crates/pdfs-gui/src/app/pages/trash.rs:284
@@ -1036,7 +1036,7 @@ msgstr ""
#. Translators: {name} is the file the conflicting copy was made from.
#: crates/pdfs-gui/src/app/pages/activity_text.rs:346
#: crates/pdfs-gui/src/app/pages/locations.rs:795
#: crates/pdfs-gui/src/app/pages/locations.rs:878
#, rust-format
msgid "Differs from {name}"
msgstr "Różni się od {name}"
@@ -1237,11 +1237,12 @@ msgstr "Nie można wczytać albumów"
#: crates/pdfs-gui/src/app/pages/devices.rs:884
#: crates/pdfs-gui/src/app/pages/devices.rs:1120
#: crates/pdfs-gui/src/app/pages/duplicates.rs:220
#: crates/pdfs-gui/src/app/pages/locations.rs:535
#: crates/pdfs-gui/src/app/pages/locations.rs:710
#: crates/pdfs-gui/src/app/pages/locations.rs:929
#: crates/pdfs-gui/src/app/pages/locations.rs:1427
#: crates/pdfs-gui/src/app/pages/locations.rs:1447
#: crates/pdfs-gui/src/app/pages/locations.rs:536
#: crates/pdfs-gui/src/app/pages/locations.rs:769
#: crates/pdfs-gui/src/app/pages/locations.rs:793
#: crates/pdfs-gui/src/app/pages/locations.rs:1012
#: crates/pdfs-gui/src/app/pages/locations.rs:1510
#: crates/pdfs-gui/src/app/pages/locations.rs:1530
#: crates/pdfs-gui/src/app/pages/photo_viewer.rs:1425
#: crates/pdfs-gui/src/app/pages/photos.rs:1420
#: crates/pdfs-gui/src/app/pages/photos.rs:2140
@@ -2207,7 +2208,7 @@ msgid "Add Folder to Sync"
msgstr "Dodaj katalog do synchronizacji"
#: crates/pdfs-gui/src/app/pages/devices.rs:686
#: crates/pdfs-gui/src/app/pages/locations.rs:1440
#: crates/pdfs-gui/src/app/pages/locations.rs:1523
msgid "Syncing folder…"
msgstr "Synchronizowanie katalogu…"
@@ -2572,20 +2573,20 @@ msgstr[2] "Przenieś {n} zdjęć do kosza"
msgid "Keep"
msgstr "Zachowaj"
#: crates/pdfs-gui/src/app/pages/locations.rs:125
#: crates/pdfs-gui/src/app/pages/locations.rs:126
msgid "Add Folder"
msgstr "Dodaj katalog"
#: crates/pdfs-gui/src/app/pages/locations.rs:130
#: crates/pdfs-gui/src/app/pages/locations.rs:131
msgid "Back a local folder up to this computer's Proton Drive device"
msgstr ""
"Kopia zapasowa lokalnego katalogu w urządzeniu tego komputera w Proton Drive"
#: crates/pdfs-gui/src/app/pages/locations.rs:140
#: crates/pdfs-gui/src/app/pages/locations.rs:141
msgid "Conflicts"
msgstr "Konflikty"
#: crates/pdfs-gui/src/app/pages/locations.rs:142
#: crates/pdfs-gui/src/app/pages/locations.rs:143
msgid ""
"Files changed in two places at once. Both versions were kept; choose which "
"one stays."
@@ -2593,7 +2594,7 @@ msgstr ""
"Pliki zmienione w dwóch miejscach jednocześnie. Zachowano obie wersje; "
"należy wybrać, która pozostanie."
#: crates/pdfs-gui/src/app/pages/locations.rs:158
#: crates/pdfs-gui/src/app/pages/locations.rs:159
msgid ""
"Synced folders keep a full copy on this computer. Online-only folders fetch "
"each file when you open it."
@@ -2601,36 +2602,36 @@ msgstr ""
"Katalogi synchronizowane przechowują pełną kopię na tym komputerze. Katalogi "
"tylko online pobierają każdy plik przy jego otwarciu."
#: crates/pdfs-gui/src/app/pages/locations.rs:169
#: crates/pdfs-gui/src/app/pages/locations.rs:170
msgid "About Sync Modes"
msgstr "Informacje o trybach synchronizacji"
#: crates/pdfs-gui/src/app/pages/locations.rs:178
#: crates/pdfs-gui/src/app/pages/locations.rs:179
#: crates/pdfs-gui/src/prompt.rs:65
msgid "Folders"
msgstr "Katalogi"
#: crates/pdfs-gui/src/app/pages/locations.rs:213
#: crates/pdfs-gui/src/app/pages/locations.rs:214
msgctxt "sync view"
msgid "Overview"
msgstr "Przegląd"
#: crates/pdfs-gui/src/app/pages/locations.rs:219
#: crates/pdfs-gui/src/app/pages/locations.rs:220
msgctxt "sync view"
msgid "Folders"
msgstr "Katalogi"
#: crates/pdfs-gui/src/app/pages/locations.rs:225
#: crates/pdfs-gui/src/app/pages/locations.rs:226
msgctxt "sync view"
msgid "History"
msgstr "Historia"
#: crates/pdfs-gui/src/app/pages/locations.rs:232
#: crates/pdfs-gui/src/app/pages/locations.rs:233
#: crates/pdfs-gui/src/app/pages/shared.rs:210
msgid "Review"
msgstr "Przejrzyj"
#: crates/pdfs-gui/src/app/pages/locations.rs:363
#: crates/pdfs-gui/src/app/pages/locations.rs:364
#, rust-format
msgid "{n} change couldn't be uploaded"
msgid_plural "{n} changes couldn't be uploaded"
@@ -2638,7 +2639,7 @@ msgstr[0] "Nie można wysłać zmian: {n}"
msgstr[1] "Nie można wysłać zmian: {n}"
msgstr[2] "Nie można wysłać zmian: {n}"
#: crates/pdfs-gui/src/app/pages/locations.rs:369
#: crates/pdfs-gui/src/app/pages/locations.rs:370
#, rust-format
msgid "{n} file was changed in two places at once"
msgid_plural "{n} files were changed in two places at once"
@@ -2646,93 +2647,93 @@ msgstr[0] "Pliki zmienione w dwóch miejscach jednocześnie: {n}"
msgstr[1] "Pliki zmienione w dwóch miejscach jednocześnie: {n}"
msgstr[2] "Pliki zmienione w dwóch miejscach jednocześnie: {n}"
#: crates/pdfs-gui/src/app/pages/locations.rs:374
#: crates/pdfs-gui/src/app/pages/locations.rs:375
msgid "Some files need your attention"
msgstr "Niektóre pliki wymagają uwagi"
#: crates/pdfs-gui/src/app/pages/locations.rs:391
#: crates/pdfs-gui/src/app/pages/locations.rs:392
msgid "Checking…"
msgstr "Sprawdzanie…"
#: crates/pdfs-gui/src/app/pages/locations.rs:419
#: crates/pdfs-gui/src/app/pages/locations.rs:420
msgid "Pause for 1 Hour"
msgstr "Wstrzymaj na 1 godzinę"
#: crates/pdfs-gui/src/app/pages/locations.rs:423
#: crates/pdfs-gui/src/app/pages/locations.rs:424
msgid "Pause for 8 Hours"
msgstr "Wstrzymaj na 8 godzin"
#: crates/pdfs-gui/src/app/pages/locations.rs:427
#: crates/pdfs-gui/src/app/pages/locations.rs:428
msgid "Pause for 24 Hours"
msgstr "Wstrzymaj na 24 godziny"
#: crates/pdfs-gui/src/app/pages/locations.rs:431
#: crates/pdfs-gui/src/app/pages/locations.rs:467
#: crates/pdfs-gui/src/app/pages/locations.rs:432
#: crates/pdfs-gui/src/app/pages/locations.rs:468
msgctxt "verb"
msgid "Pause"
msgstr "Wstrzymaj"
#: crates/pdfs-gui/src/app/pages/locations.rs:435
#: crates/pdfs-gui/src/app/pages/locations.rs:472
#: crates/pdfs-gui/src/app/pages/locations.rs:436
#: crates/pdfs-gui/src/app/pages/locations.rs:473
msgid "Stop uploading until you resume. Files still open as usual."
msgstr ""
"Wstrzymuje wysyłanie do czasu wznowienia. Pliki nadal otwierają się "
"normalnie."
#: crates/pdfs-gui/src/app/pages/locations.rs:437
#: crates/pdfs-gui/src/app/pages/locations.rs:438
msgid "Pause for a while"
msgstr "Wstrzymaj na jakiś czas"
#: crates/pdfs-gui/src/app/pages/locations.rs:465
#: crates/pdfs-gui/src/app/pages/locations.rs:466
msgctxt "verb"
msgid "Resume"
msgstr "Wznów"
#: crates/pdfs-gui/src/app/pages/locations.rs:470
#: crates/pdfs-gui/src/app/pages/locations.rs:471
msgid "Upload everything that waited while sync was paused"
msgstr "Wysyła wszystko, co czekało podczas wstrzymania synchronizacji"
#: crates/pdfs-gui/src/app/pages/locations.rs:518
#: crates/pdfs-gui/src/app/pages/locations.rs:519
msgid "Couldn't pause sync"
msgstr "Nie można wstrzymać synchronizacji"
#: crates/pdfs-gui/src/app/pages/locations.rs:520
#: crates/pdfs-gui/src/app/pages/locations.rs:521
msgid "Couldn't resume sync"
msgstr "Nie można wznowić synchronizacji"
#: crates/pdfs-gui/src/app/pages/locations.rs:526
#: crates/pdfs-gui/src/app/pages/locations.rs:527
msgid "Sync resumed"
msgstr "Wznowiono synchronizację"
#: crates/pdfs-gui/src/app/pages/locations.rs:527
#: crates/pdfs-gui/src/app/pages/locations.rs:528
msgid "Sync paused until you resume"
msgstr "Wstrzymano synchronizację do czasu wznowienia"
#: crates/pdfs-gui/src/app/pages/locations.rs:528
#: crates/pdfs-gui/src/app/pages/locations.rs:529
#: crates/pdfs-gui/src/app/pages/status.rs:1323 crates/pdfs-gui/src/main.rs:237
msgid "Sync paused"
msgstr "Wstrzymano synchronizację"
#: crates/pdfs-gui/src/app/pages/locations.rs:546
#: crates/pdfs-gui/src/app/pages/locations.rs:547
msgid "Retry All"
msgstr "Ponów wszystko"
#: crates/pdfs-gui/src/app/pages/locations.rs:548
#: crates/pdfs-gui/src/app/pages/locations.rs:549
msgid "Try every failed change again now"
msgstr "Ponawia teraz wszystkie nieudane zmiany"
#: crates/pdfs-gui/src/app/pages/locations.rs:553
#: crates/pdfs-gui/src/app/pages/locations.rs:554
msgid "Waiting to Upload"
msgstr "Oczekujące na wysłanie"
#: crates/pdfs-gui/src/app/pages/locations.rs:555
#: crates/pdfs-gui/src/app/pages/locations.rs:614
#: crates/pdfs-gui/src/app/pages/locations.rs:556
#: crates/pdfs-gui/src/app/pages/locations.rs:615
msgid "Changes made on this computer that are not on Proton Drive yet."
msgstr ""
"Zmiany wprowadzone na tym komputerze, których jeszcze nie ma w Proton Drive."
#. Translators: {shown} is how many rows are listed (50), {n} the total number of queued changes.
#: crates/pdfs-gui/src/app/pages/locations.rs:612
#: crates/pdfs-gui/src/app/pages/locations.rs:613
#, rust-format
msgid ""
"Changes made on this computer that are not on Proton Drive yet. Showing the "
@@ -2750,56 +2751,56 @@ msgstr[2] ""
"Zmiany wprowadzone na tym komputerze, których jeszcze nie ma w Proton Drive. "
"Wyświetlanie pierwszych {shown} z {n}."
#: crates/pdfs-gui/src/app/pages/locations.rs:629
#: crates/pdfs-gui/src/app/pages/locations.rs:630
msgid "Upload changes"
msgstr "Wysłanie zmian"
#: crates/pdfs-gui/src/app/pages/locations.rs:630
#: crates/pdfs-gui/src/app/pages/locations.rs:631
msgid "Upload new file"
msgstr "Wysłanie nowego pliku"
#: crates/pdfs-gui/src/app/pages/locations.rs:631
#: crates/pdfs-gui/src/app/pages/locations.rs:632
msgid "Create folder"
msgstr "Utworzenie katalogu"
#: crates/pdfs-gui/src/app/pages/locations.rs:632
#: crates/pdfs-gui/src/app/pages/locations.rs:633
msgid "Rename or move"
msgstr "Zmiana nazwy lub przeniesienie"
#: crates/pdfs-gui/src/app/pages/locations.rs:633
#: crates/pdfs-gui/src/app/pages/locations.rs:634
msgid "Move to trash"
msgstr "Przeniesienie do kosza"
#. Translators: a queued change of an unknown kind.
#: crates/pdfs-gui/src/app/pages/locations.rs:635
#: crates/pdfs-gui/src/app/pages/locations.rs:636
msgctxt "noun"
msgid "Change"
msgstr "Zmiana"
#: crates/pdfs-gui/src/app/pages/locations.rs:638
#: crates/pdfs-gui/src/app/pages/locations.rs:639
msgid "waiting for the app writing it to finish"
msgstr "oczekiwanie, aż zapisujący program skończy"
#. Translators: {time} is when the next attempt happens, such as "14:30".
#: crates/pdfs-gui/src/app/pages/locations.rs:641
#: crates/pdfs-gui/src/app/pages/locations.rs:642
#, rust-format
msgid "retrying {time}"
msgstr "ponowienie {time}"
#: crates/pdfs-gui/src/app/pages/locations.rs:643
#: crates/pdfs-gui/src/app/pages/locations.rs:644
msgid "waiting for sync to resume"
msgstr "oczekiwanie na wznowienie synchronizacji"
#: crates/pdfs-gui/src/app/pages/locations.rs:644
#: crates/pdfs-gui/src/app/pages/locations.rs:645
msgid "up next"
msgstr "następne w kolejce"
#: crates/pdfs-gui/src/app/pages/locations.rs:648
#: crates/pdfs-gui/src/app/pages/locations.rs:649
#, rust-format
msgid "{action} · {state}"
msgstr "{action} · {state}"
#: crates/pdfs-gui/src/app/pages/locations.rs:655
#: crates/pdfs-gui/src/app/pages/locations.rs:660
#, rust-format
msgid "Failed {n} time: {error}"
msgid_plural "Failed {n} times: {error}"
@@ -2807,33 +2808,97 @@ msgstr[0] "Niepowodzenie {n} raz: {error}"
msgstr[1] "Niepowodzenie {n} razy: {error}"
msgstr[2] "Niepowodzenie {n} razy: {error}"
#: crates/pdfs-gui/src/app/pages/locations.rs:681
#: crates/pdfs-gui/src/app/pages/locations.rs:686
msgid "Retry now"
msgstr "Ponów teraz"
#: crates/pdfs-gui/src/app/pages/locations.rs:700
#: crates/pdfs-gui/src/app/pages/locations.rs:697
msgid "Export"
msgstr "Eksportuj"
#: crates/pdfs-gui/src/app/pages/locations.rs:698
msgid "Save a copy of this file's content elsewhere"
msgstr "Zapisz kopię zawartości tego pliku w innym miejscu"
#: crates/pdfs-gui/src/app/pages/locations.rs:719
msgid ""
"Your Proton Drive storage is full. Free up space or upgrade your plan, and "
"this change uploads on its own."
msgstr ""
"Miejsce w Proton Drive jest pełne. Zwolnij miejsce lub wybierz większy plan, "
"a ta zmiana zostanie wysłana sama."
#: crates/pdfs-gui/src/app/pages/locations.rs:722
msgid ""
"You can no longer change this on Proton Drive. Ask the owner for edit "
"access, or export the file to keep your version."
msgstr ""
"Nie możesz już zmieniać tego w Proton Drive. Poproś właściciela o prawo do "
"edycji lub wyeksportuj plik, aby zachować swoją wersję."
#: crates/pdfs-gui/src/app/pages/locations.rs:725
msgid ""
"The folder this change belongs in is gone from Proton Drive. Export the file "
"to keep your version."
msgstr ""
"Katalogu, do którego należy ta zmiana, nie ma już w Proton Drive. "
"Wyeksportuj plik, aby zachować swoją wersję."
#: crates/pdfs-gui/src/app/pages/locations.rs:728
msgid ""
"Proton Drive's limit on items in a folder or on folder depth is reached. "
"Make room in the folder, then retry."
msgstr ""
"Osiągnięto limit Proton Drive dotyczący liczby elementów w katalogu lub "
"głębokości katalogów. Zrób miejsce w katalogu, a potem ponów."
#: crates/pdfs-gui/src/app/pages/locations.rs:731
msgid "Proton Drive refused this change. It stays queued and is tried again."
msgstr ""
"Proton Drive odrzucił tę zmianę. Pozostaje w kolejce i zostanie ponowiona."
#: crates/pdfs-gui/src/app/pages/locations.rs:741
msgid "Export File"
msgstr "Eksport pliku"
#: crates/pdfs-gui/src/app/pages/locations.rs:750
#: crates/pdfs-gui/src/app/pages/locations.rs:764
#: crates/pdfs-gui/src/app/pages/locations.rs:768
msgid "Couldn't export the file"
msgstr "Nie można wyeksportować pliku"
#: crates/pdfs-gui/src/app/pages/locations.rs:751
#: crates/pdfs-gui/src/app/widgets/versions_dialog.rs:351
msgid "That location isn't a local file."
msgstr "To położenie nie jest lokalnym plikiem."
#: crates/pdfs-gui/src/app/pages/locations.rs:762
msgid "File exported"
msgstr "Wyeksportowano plik"
#: crates/pdfs-gui/src/app/pages/locations.rs:783
msgid "Retrying now…"
msgstr "Ponawianie…"
#: crates/pdfs-gui/src/app/pages/locations.rs:705
#: crates/pdfs-gui/src/app/pages/locations.rs:709
#: crates/pdfs-gui/src/app/pages/locations.rs:788
#: crates/pdfs-gui/src/app/pages/locations.rs:792
msgid "Couldn't retry"
msgstr "Nie można ponowić"
#: crates/pdfs-gui/src/app/pages/locations.rs:779
#: crates/pdfs-gui/src/app/pages/locations.rs:862
#, rust-format
msgid "{size}, changed {time}"
msgstr "{size}, zmieniono {time}"
#: crates/pdfs-gui/src/app/pages/locations.rs:789
#: crates/pdfs-gui/src/app/pages/locations.rs:872
msgid "The original is gone; only this copy is left"
msgstr "Oryginał już nie istnieje; pozostała tylko ta kopia"
#: crates/pdfs-gui/src/app/pages/locations.rs:791
#: crates/pdfs-gui/src/app/pages/locations.rs:874
msgid "Same content as the original"
msgstr "Ta sama zawartość co oryginał"
#: crates/pdfs-gui/src/app/pages/locations.rs:832
#: crates/pdfs-gui/src/app/pages/locations.rs:915
#, rust-format
msgid ""
"“{name}” was changed here and elsewhere at the same time.\n"
@@ -2850,7 +2915,7 @@ msgstr ""
"\n"
"To, co nie zostanie zachowane, trafi do kosza, skąd można to przywrócić."
#: crates/pdfs-gui/src/app/pages/locations.rs:844
#: crates/pdfs-gui/src/app/pages/locations.rs:927
#, rust-format
msgid ""
"The original “{name}” no longer exists; only the copy is left ({copy}).\n"
@@ -2861,110 +2926,110 @@ msgstr ""
"\n"
"Zachowanie kopii przywróci jej oryginalną nazwę."
#: crates/pdfs-gui/src/app/pages/locations.rs:850
#: crates/pdfs-gui/src/app/pages/locations.rs:933
msgid "Resolve Conflict"
msgstr "Rozwiąż konflikt"
#: crates/pdfs-gui/src/app/pages/locations.rs:855
#: crates/pdfs-gui/src/app/pages/locations.rs:938
msgid "Name for the copy, if keeping both"
msgstr "Nazwa kopii, jeśli zachowane zostaną obie"
#: crates/pdfs-gui/src/app/pages/locations.rs:862
#: crates/pdfs-gui/src/app/pages/locations.rs:945
msgid "Keep Original"
msgstr "Zachowaj oryginał"
#: crates/pdfs-gui/src/app/pages/locations.rs:863
#: crates/pdfs-gui/src/app/pages/locations.rs:946
msgid "Keep Both"
msgstr "Zachowaj oba"
#: crates/pdfs-gui/src/app/pages/locations.rs:865
#: crates/pdfs-gui/src/app/pages/locations.rs:948
msgid "Keep Copy"
msgstr "Zachowaj kopię"
#: crates/pdfs-gui/src/app/pages/locations.rs:922
#: crates/pdfs-gui/src/app/pages/locations.rs:928
#: crates/pdfs-gui/src/app/pages/locations.rs:1005
#: crates/pdfs-gui/src/app/pages/locations.rs:1011
msgid "Couldn't resolve the conflict"
msgstr "Nie można rozwiązać konfliktu"
#: crates/pdfs-gui/src/app/pages/locations.rs:971
#: crates/pdfs-gui/src/app/pages/locations.rs:1054
msgid "Reading this computer's Proton Drive locations."
msgstr "Odczytywanie położeń Proton Drive tego komputera."
#: crates/pdfs-gui/src/app/pages/locations.rs:992
#: crates/pdfs-gui/src/app/pages/locations.rs:1075
msgid "Unavailable"
msgstr "Niedostępne"
#: crates/pdfs-gui/src/app/pages/locations.rs:1075
#: crates/pdfs-gui/src/app/pages/locations.rs:1158
msgid "No folders yet"
msgstr "Brak katalogów"
#: crates/pdfs-gui/src/app/pages/locations.rs:1077
#: crates/pdfs-gui/src/app/pages/locations.rs:1160
msgid "The Proton Drive service hasn't reported its folder yet."
msgstr "Usługa Proton Drive nie zgłosiła jeszcze swojego katalogu."
#: crates/pdfs-gui/src/app/pages/locations.rs:1100
#: crates/pdfs-gui/src/app/pages/locations.rs:1183
#, rust-format
msgid "{path} · {state}"
msgstr "{path} · {state}"
#: crates/pdfs-gui/src/app/pages/locations.rs:1143
#: crates/pdfs-gui/src/app/pages/locations.rs:1226
msgid "Read-only"
msgstr "Tylko do odczytu"
#: crates/pdfs-gui/src/app/pages/locations.rs:1159
#: crates/pdfs-gui/src/app/pages/locations.rs:1242
msgid "Open in Files"
msgstr "Otwórz w Plikach"
#: crates/pdfs-gui/src/app/pages/locations.rs:1164
#: crates/pdfs-gui/src/app/pages/locations.rs:1247
msgid "Change Location…"
msgstr "Zmień położenie…"
#: crates/pdfs-gui/src/app/pages/locations.rs:1216
#: crates/pdfs-gui/src/app/pages/locations.rs:1299
msgid "Choose whether this folder keeps a full copy on this computer"
msgstr "Wybierz, czy ten katalog przechowuje pełną kopię na tym komputerze"
#: crates/pdfs-gui/src/app/pages/locations.rs:1232
#: crates/pdfs-gui/src/app/pages/locations.rs:1315
msgid "Keep every file on this computer and in Proton Drive."
msgstr "Przechowuj każdy plik na tym komputerze i w Proton Drive."
#: crates/pdfs-gui/src/app/pages/locations.rs:1237
#: crates/pdfs-gui/src/app/pages/locations.rs:1320
msgid "Keep the files in Proton Drive and download each one when you open it."
msgstr "Przechowuj pliki w Proton Drive i pobieraj każdy przy jego otwarciu."
#. Translators: a folder mode: files are kept in Proton Drive and fetched when opened.
#: crates/pdfs-gui/src/app/pages/locations.rs:1291
#: crates/pdfs-gui/src/app/pages/locations.rs:1374
msgctxt "folder mode"
msgid "Online only"
msgstr "Tylko online"
#. Translators: a folder mode: a full copy is kept on this computer.
#: crates/pdfs-gui/src/app/pages/locations.rs:1294
#: crates/pdfs-gui/src/app/pages/locations.rs:1377
msgctxt "folder mode"
msgid "Synced"
msgstr "Synchronizowany"
#: crates/pdfs-gui/src/app/pages/locations.rs:1305
#: crates/pdfs-gui/src/app/pages/locations.rs:1388
msgid "Sync Now"
msgstr "Synchronizuj teraz"
#: crates/pdfs-gui/src/app/pages/locations.rs:1309
#: crates/pdfs-gui/src/app/pages/locations.rs:1392
msgid "Resume Syncing"
msgstr "Wznów synchronizację"
#: crates/pdfs-gui/src/app/pages/locations.rs:1311
#: crates/pdfs-gui/src/app/pages/locations.rs:1394
msgid "Pause Syncing"
msgstr "Wstrzymaj synchronizację"
#: crates/pdfs-gui/src/app/pages/locations.rs:1322
#: crates/pdfs-gui/src/app/pages/locations.rs:1405
msgid "Stop Syncing…"
msgstr "Zatrzymaj synchronizację…"
#: crates/pdfs-gui/src/app/pages/locations.rs:1331
#: crates/pdfs-gui/src/app/pages/locations.rs:1414
msgid "Make Folder Online Only?"
msgstr "Oznaczyć katalog jako tylko online?"
#. Translators: {path} is a local folder path.
#: crates/pdfs-gui/src/app/pages/locations.rs:1333
#: crates/pdfs-gui/src/app/pages/locations.rs:1416
#, rust-format
msgid ""
"Files in {path} will be removed from this computer and kept in Proton Drive "
@@ -2973,11 +3038,11 @@ msgstr ""
"Pliki w {path} zostaną usunięte z tego komputera i będą przechowywane tylko "
"w Proton Drive. Każdy plik zostanie ponownie pobrany przy otwarciu."
#: crates/pdfs-gui/src/app/pages/locations.rs:1336
#: crates/pdfs-gui/src/app/pages/locations.rs:1419
msgid "Make Online Only"
msgstr "Oznacz jako tylko online"
#: crates/pdfs-gui/src/app/pages/locations.rs:1372
#: crates/pdfs-gui/src/app/pages/locations.rs:1455
#, rust-format
msgid ""
"Every file in {path} will download to this computer and stay synced. {free} "
@@ -2986,61 +3051,61 @@ msgstr ""
"Każdy plik w {path} zostanie pobrany na ten komputer i pozostanie "
"synchronizowany. Wolne miejsce na tym dysku: {free}."
#: crates/pdfs-gui/src/app/pages/locations.rs:1377
#: crates/pdfs-gui/src/app/pages/locations.rs:1460
#, rust-format
msgid "Every file in {path} will download to this computer and stay synced."
msgstr ""
"Każdy plik w {path} zostanie pobrany na ten komputer i pozostanie "
"synchronizowany."
#: crates/pdfs-gui/src/app/pages/locations.rs:1382
#: crates/pdfs-gui/src/app/pages/locations.rs:1465
msgid "Download Folder?"
msgstr "Pobrać katalog?"
#: crates/pdfs-gui/src/app/pages/locations.rs:1386
#: crates/pdfs-gui/src/app/pages/locations.rs:1469
msgid "Download"
msgstr "Pobierz"
#: crates/pdfs-gui/src/app/pages/locations.rs:1410
#: crates/pdfs-gui/src/app/pages/locations.rs:1493
msgid "Couldn't pause the folder"
msgstr "Nie można wstrzymać katalogu"
#: crates/pdfs-gui/src/app/pages/locations.rs:1411
#: crates/pdfs-gui/src/app/pages/locations.rs:1494
msgid "Couldn't resume the folder"
msgstr "Nie można wznowić katalogu"
#: crates/pdfs-gui/src/app/pages/locations.rs:1417
#: crates/pdfs-gui/src/app/pages/locations.rs:1500
msgid "Folder paused"
msgstr "Wstrzymano katalog"
#: crates/pdfs-gui/src/app/pages/locations.rs:1418
#: crates/pdfs-gui/src/app/pages/locations.rs:1501
msgid "Folder resumed"
msgstr "Wznowiono katalog"
#: crates/pdfs-gui/src/app/pages/locations.rs:1442
#: crates/pdfs-gui/src/app/pages/locations.rs:1446
#: crates/pdfs-gui/src/app/pages/locations.rs:1525
#: crates/pdfs-gui/src/app/pages/locations.rs:1529
msgid "Couldn't sync"
msgstr "Nie można zsynchronizować"
#: crates/pdfs-gui/src/app/pages/locations.rs:1472
#: crates/pdfs-gui/src/app/pages/locations.rs:1555
msgid "Shared folder"
msgstr "Udostępniony katalog"
#: crates/pdfs-gui/src/app/pages/locations.rs:1474
#: crates/pdfs-gui/src/app/pages/locations.rs:1557
msgid "Going online only"
msgstr "Przechodzenie w tryb tylko online"
#: crates/pdfs-gui/src/app/pages/locations.rs:1475
#: crates/pdfs-gui/src/app/pages/locations.rs:1558
msgid "Switching to synced"
msgstr "Przełączanie na synchronizację"
#: crates/pdfs-gui/src/app/pages/locations.rs:1485
#: crates/pdfs-gui/src/app/pages/locations.rs:1568
msgctxt "state"
msgid "paused"
msgstr "wstrzymany"
#. Translators: a folder's files can't be opened right now.
#: crates/pdfs-gui/src/app/pages/locations.rs:1496
#: crates/pdfs-gui/src/app/pages/locations.rs:1579
msgid "not available"
msgstr "niedostępne"
@@ -5568,10 +5633,6 @@ msgstr "Zapisanie wersji"
msgid "Couldn't save that version"
msgstr "Nie można zapisać tej wersji"
#: crates/pdfs-gui/src/app/widgets/versions_dialog.rs:351
msgid "That location isn't a local file."
msgstr "To położenie nie jest lokalnym plikiem."
#: crates/pdfs-gui/src/app/widgets/versions_dialog.rs:358
msgid "Version saved"
msgstr "Zapisano wersję"
+181 -119
View File
@@ -5,7 +5,7 @@ msgid ""
msgstr ""
"Project-Id-Version: proton-drive-linux 2.1.0\n"
"Report-Msgid-Bugs-To: https://github.com/narrrl/proton-drive-linux/issues\n"
"POT-Creation-Date: 2026-09-29 00:18+0200\n"
"POT-Creation-Date: 2026-10-04 03:16+0200\n"
"PO-Revision-Date: 2026-09-23 12:00+0200\n"
"Last-Translator: Proton Drive for Linux contributors\n"
"Language-Team: Portuguese (Brazil)\n"
@@ -64,7 +64,7 @@ msgstr "%A, %-d de %B de %Y, %H:%M"
#: crates/pdfs-gui/src/app/pages/browser.rs:1217
#: crates/pdfs-gui/src/app/pages/browser.rs:2090
#: crates/pdfs-gui/src/app/pages/browser.rs:2167
#: crates/pdfs-gui/src/app/pages/locations.rs:1471
#: crates/pdfs-gui/src/app/pages/locations.rs:1554
#: crates/pdfs-gui/src/app/pages/shared_by_me.rs:252
#: crates/pdfs-gui/src/app/pages/trash.rs:191 crates/pdfs-gui/src/prompt.rs:171
msgid "My files"
@@ -267,9 +267,9 @@ msgstr ""
#: crates/pdfs-gui/src/app/pages/devices.rs:979
#: crates/pdfs-gui/src/app/pages/devices.rs:1031
#: crates/pdfs-gui/src/app/pages/devices.rs:1075
#: crates/pdfs-gui/src/app/pages/locations.rs:860
#: crates/pdfs-gui/src/app/pages/locations.rs:1335
#: crates/pdfs-gui/src/app/pages/locations.rs:1385
#: crates/pdfs-gui/src/app/pages/locations.rs:943
#: crates/pdfs-gui/src/app/pages/locations.rs:1418
#: crates/pdfs-gui/src/app/pages/locations.rs:1468
#: crates/pdfs-gui/src/app/pages/login.rs:312
#: crates/pdfs-gui/src/app/pages/photos.rs:2055
#: crates/pdfs-gui/src/app/pages/shared.rs:946
@@ -473,8 +473,8 @@ msgstr "Nada no registro recente corresponde a este filtro."
#: crates/pdfs-gui/src/app/pages/activity.rs:186
#: crates/pdfs-gui/src/app/pages/browser.rs:281
#: crates/pdfs-gui/src/app/pages/devices.rs:114
#: crates/pdfs-gui/src/app/pages/locations.rs:183
#: crates/pdfs-gui/src/app/pages/locations.rs:680
#: crates/pdfs-gui/src/app/pages/locations.rs:184
#: crates/pdfs-gui/src/app/pages/locations.rs:685
#: crates/pdfs-gui/src/app/pages/photos.rs:465
#: crates/pdfs-gui/src/app/pages/shared.rs:183
#: crates/pdfs-gui/src/app/pages/shared_by_me.rs:94
@@ -512,8 +512,8 @@ msgstr "Opções de exibição"
#: crates/pdfs-gui/src/app/pages/browser.rs:2635
#: crates/pdfs-gui/src/app/pages/browser.rs:2639
#: crates/pdfs-gui/src/app/pages/devices.rs:325
#: crates/pdfs-gui/src/app/pages/locations.rs:191
#: crates/pdfs-gui/src/app/pages/locations.rs:970
#: crates/pdfs-gui/src/app/pages/locations.rs:192
#: crates/pdfs-gui/src/app/pages/locations.rs:1053
#: crates/pdfs-gui/src/app/pages/shared.rs:422
#: crates/pdfs-gui/src/app/pages/shared_by_me.rs:347
#: crates/pdfs-gui/src/app/pages/trash.rs:284
@@ -1016,7 +1016,7 @@ msgstr ""
#. Translators: {name} is the file the conflicting copy was made from.
#: crates/pdfs-gui/src/app/pages/activity_text.rs:346
#: crates/pdfs-gui/src/app/pages/locations.rs:795
#: crates/pdfs-gui/src/app/pages/locations.rs:878
#, rust-format
msgid "Differs from {name}"
msgstr "Difere de {name}"
@@ -1203,11 +1203,12 @@ msgstr "Não foi possível carregar os álbuns"
#: crates/pdfs-gui/src/app/pages/devices.rs:884
#: crates/pdfs-gui/src/app/pages/devices.rs:1120
#: crates/pdfs-gui/src/app/pages/duplicates.rs:220
#: crates/pdfs-gui/src/app/pages/locations.rs:535
#: crates/pdfs-gui/src/app/pages/locations.rs:710
#: crates/pdfs-gui/src/app/pages/locations.rs:929
#: crates/pdfs-gui/src/app/pages/locations.rs:1427
#: crates/pdfs-gui/src/app/pages/locations.rs:1447
#: crates/pdfs-gui/src/app/pages/locations.rs:536
#: crates/pdfs-gui/src/app/pages/locations.rs:769
#: crates/pdfs-gui/src/app/pages/locations.rs:793
#: crates/pdfs-gui/src/app/pages/locations.rs:1012
#: crates/pdfs-gui/src/app/pages/locations.rs:1510
#: crates/pdfs-gui/src/app/pages/locations.rs:1530
#: crates/pdfs-gui/src/app/pages/photo_viewer.rs:1425
#: crates/pdfs-gui/src/app/pages/photos.rs:1420
#: crates/pdfs-gui/src/app/pages/photos.rs:2140
@@ -2148,7 +2149,7 @@ msgid "Add Folder to Sync"
msgstr "Adicionar pasta à sincronização"
#: crates/pdfs-gui/src/app/pages/devices.rs:686
#: crates/pdfs-gui/src/app/pages/locations.rs:1440
#: crates/pdfs-gui/src/app/pages/locations.rs:1523
msgid "Syncing folder…"
msgstr "Sincronizando pasta…"
@@ -2508,20 +2509,20 @@ msgstr[1] "Mover {n} fotos para a lixeira"
msgid "Keep"
msgstr "Manter"
#: crates/pdfs-gui/src/app/pages/locations.rs:125
#: crates/pdfs-gui/src/app/pages/locations.rs:126
msgid "Add Folder"
msgstr "Adicionar pasta"
#: crates/pdfs-gui/src/app/pages/locations.rs:130
#: crates/pdfs-gui/src/app/pages/locations.rs:131
msgid "Back a local folder up to this computer's Proton Drive device"
msgstr ""
"Fazer backup de uma pasta local no dispositivo Proton Drive deste computador"
#: crates/pdfs-gui/src/app/pages/locations.rs:140
#: crates/pdfs-gui/src/app/pages/locations.rs:141
msgid "Conflicts"
msgstr "Conflitos"
#: crates/pdfs-gui/src/app/pages/locations.rs:142
#: crates/pdfs-gui/src/app/pages/locations.rs:143
msgid ""
"Files changed in two places at once. Both versions were kept; choose which "
"one stays."
@@ -2529,7 +2530,7 @@ msgstr ""
"Arquivos alterados em dois lugares ao mesmo tempo. Ambas as versões foram "
"mantidas; escolha qual permanece."
#: crates/pdfs-gui/src/app/pages/locations.rs:158
#: crates/pdfs-gui/src/app/pages/locations.rs:159
msgid ""
"Synced folders keep a full copy on this computer. Online-only folders fetch "
"each file when you open it."
@@ -2537,136 +2538,136 @@ msgstr ""
"Pastas sincronizadas mantêm uma cópia completa neste computador. Pastas "
"somente online baixam cada arquivo quando você o abre."
#: crates/pdfs-gui/src/app/pages/locations.rs:169
#: crates/pdfs-gui/src/app/pages/locations.rs:170
msgid "About Sync Modes"
msgstr "Sobre os modos de sincronização"
#: crates/pdfs-gui/src/app/pages/locations.rs:178
#: crates/pdfs-gui/src/app/pages/locations.rs:179
#: crates/pdfs-gui/src/prompt.rs:65
msgid "Folders"
msgstr "Pastas"
#: crates/pdfs-gui/src/app/pages/locations.rs:213
#: crates/pdfs-gui/src/app/pages/locations.rs:214
msgctxt "sync view"
msgid "Overview"
msgstr "Visão geral"
#: crates/pdfs-gui/src/app/pages/locations.rs:219
#: crates/pdfs-gui/src/app/pages/locations.rs:220
msgctxt "sync view"
msgid "Folders"
msgstr "Pastas"
#: crates/pdfs-gui/src/app/pages/locations.rs:225
#: crates/pdfs-gui/src/app/pages/locations.rs:226
msgctxt "sync view"
msgid "History"
msgstr "Histórico"
#: crates/pdfs-gui/src/app/pages/locations.rs:232
#: crates/pdfs-gui/src/app/pages/locations.rs:233
#: crates/pdfs-gui/src/app/pages/shared.rs:210
msgid "Review"
msgstr "Revisar"
#: crates/pdfs-gui/src/app/pages/locations.rs:363
#: crates/pdfs-gui/src/app/pages/locations.rs:364
#, rust-format
msgid "{n} change couldn't be uploaded"
msgid_plural "{n} changes couldn't be uploaded"
msgstr[0] "Não foi possível enviar {n} alteração"
msgstr[1] "Não foi possível enviar {n} alterações"
#: crates/pdfs-gui/src/app/pages/locations.rs:369
#: crates/pdfs-gui/src/app/pages/locations.rs:370
#, rust-format
msgid "{n} file was changed in two places at once"
msgid_plural "{n} files were changed in two places at once"
msgstr[0] "{n} arquivo foi alterado em dois lugares ao mesmo tempo"
msgstr[1] "{n} arquivos foram alterados em dois lugares ao mesmo tempo"
#: crates/pdfs-gui/src/app/pages/locations.rs:374
#: crates/pdfs-gui/src/app/pages/locations.rs:375
msgid "Some files need your attention"
msgstr "Alguns arquivos precisam da sua atenção"
#: crates/pdfs-gui/src/app/pages/locations.rs:391
#: crates/pdfs-gui/src/app/pages/locations.rs:392
msgid "Checking…"
msgstr "Verificando…"
#: crates/pdfs-gui/src/app/pages/locations.rs:419
#: crates/pdfs-gui/src/app/pages/locations.rs:420
msgid "Pause for 1 Hour"
msgstr "Pausar por 1 hora"
#: crates/pdfs-gui/src/app/pages/locations.rs:423
#: crates/pdfs-gui/src/app/pages/locations.rs:424
msgid "Pause for 8 Hours"
msgstr "Pausar por 8 horas"
#: crates/pdfs-gui/src/app/pages/locations.rs:427
#: crates/pdfs-gui/src/app/pages/locations.rs:428
msgid "Pause for 24 Hours"
msgstr "Pausar por 24 horas"
#: crates/pdfs-gui/src/app/pages/locations.rs:431
#: crates/pdfs-gui/src/app/pages/locations.rs:467
#: crates/pdfs-gui/src/app/pages/locations.rs:432
#: crates/pdfs-gui/src/app/pages/locations.rs:468
msgctxt "verb"
msgid "Pause"
msgstr "Pausar"
#: crates/pdfs-gui/src/app/pages/locations.rs:435
#: crates/pdfs-gui/src/app/pages/locations.rs:472
#: crates/pdfs-gui/src/app/pages/locations.rs:436
#: crates/pdfs-gui/src/app/pages/locations.rs:473
msgid "Stop uploading until you resume. Files still open as usual."
msgstr ""
"Interrompe os envios até você retomar. Os arquivos continuam abrindo "
"normalmente."
#: crates/pdfs-gui/src/app/pages/locations.rs:437
#: crates/pdfs-gui/src/app/pages/locations.rs:438
msgid "Pause for a while"
msgstr "Pausar por um tempo"
#: crates/pdfs-gui/src/app/pages/locations.rs:465
#: crates/pdfs-gui/src/app/pages/locations.rs:466
msgctxt "verb"
msgid "Resume"
msgstr "Retomar"
#: crates/pdfs-gui/src/app/pages/locations.rs:470
#: crates/pdfs-gui/src/app/pages/locations.rs:471
msgid "Upload everything that waited while sync was paused"
msgstr "Enviar tudo o que aguardou enquanto a sincronização estava pausada"
#: crates/pdfs-gui/src/app/pages/locations.rs:518
#: crates/pdfs-gui/src/app/pages/locations.rs:519
msgid "Couldn't pause sync"
msgstr "Não foi possível pausar a sincronização"
#: crates/pdfs-gui/src/app/pages/locations.rs:520
#: crates/pdfs-gui/src/app/pages/locations.rs:521
msgid "Couldn't resume sync"
msgstr "Não foi possível retomar a sincronização"
#: crates/pdfs-gui/src/app/pages/locations.rs:526
#: crates/pdfs-gui/src/app/pages/locations.rs:527
msgid "Sync resumed"
msgstr "Sincronização retomada"
#: crates/pdfs-gui/src/app/pages/locations.rs:527
#: crates/pdfs-gui/src/app/pages/locations.rs:528
msgid "Sync paused until you resume"
msgstr "Sincronização pausada até você retomar"
#: crates/pdfs-gui/src/app/pages/locations.rs:528
#: crates/pdfs-gui/src/app/pages/locations.rs:529
#: crates/pdfs-gui/src/app/pages/status.rs:1323 crates/pdfs-gui/src/main.rs:237
msgid "Sync paused"
msgstr "Sincronização pausada"
#: crates/pdfs-gui/src/app/pages/locations.rs:546
#: crates/pdfs-gui/src/app/pages/locations.rs:547
msgid "Retry All"
msgstr "Tentar todos novamente"
#: crates/pdfs-gui/src/app/pages/locations.rs:548
#: crates/pdfs-gui/src/app/pages/locations.rs:549
msgid "Try every failed change again now"
msgstr "Tentar novamente agora todas as alterações que falharam"
#: crates/pdfs-gui/src/app/pages/locations.rs:553
#: crates/pdfs-gui/src/app/pages/locations.rs:554
msgid "Waiting to Upload"
msgstr "Aguardando envio"
#: crates/pdfs-gui/src/app/pages/locations.rs:555
#: crates/pdfs-gui/src/app/pages/locations.rs:614
#: crates/pdfs-gui/src/app/pages/locations.rs:556
#: crates/pdfs-gui/src/app/pages/locations.rs:615
msgid "Changes made on this computer that are not on Proton Drive yet."
msgstr ""
"Alterações feitas neste computador que ainda não estão no Proton Drive."
#. Translators: {shown} is how many rows are listed (50), {n} the total number of queued changes.
#: crates/pdfs-gui/src/app/pages/locations.rs:612
#: crates/pdfs-gui/src/app/pages/locations.rs:613
#, rust-format
msgid ""
"Changes made on this computer that are not on Proton Drive yet. Showing the "
@@ -2681,89 +2682,154 @@ msgstr[1] ""
"Alterações feitas neste computador que ainda não estão no Proton Drive. "
"Mostrando as primeiras {shown} de {n}."
#: crates/pdfs-gui/src/app/pages/locations.rs:629
#: crates/pdfs-gui/src/app/pages/locations.rs:630
msgid "Upload changes"
msgstr "Enviar alterações"
#: crates/pdfs-gui/src/app/pages/locations.rs:630
#: crates/pdfs-gui/src/app/pages/locations.rs:631
msgid "Upload new file"
msgstr "Enviar novo arquivo"
#: crates/pdfs-gui/src/app/pages/locations.rs:631
#: crates/pdfs-gui/src/app/pages/locations.rs:632
msgid "Create folder"
msgstr "Criar pasta"
#: crates/pdfs-gui/src/app/pages/locations.rs:632
#: crates/pdfs-gui/src/app/pages/locations.rs:633
msgid "Rename or move"
msgstr "Renomear ou mover"
#: crates/pdfs-gui/src/app/pages/locations.rs:633
#: crates/pdfs-gui/src/app/pages/locations.rs:634
msgid "Move to trash"
msgstr "Mover para a lixeira"
#. Translators: a queued change of an unknown kind.
#: crates/pdfs-gui/src/app/pages/locations.rs:635
#: crates/pdfs-gui/src/app/pages/locations.rs:636
msgctxt "noun"
msgid "Change"
msgstr "Alteração"
#: crates/pdfs-gui/src/app/pages/locations.rs:638
#: crates/pdfs-gui/src/app/pages/locations.rs:639
msgid "waiting for the app writing it to finish"
msgstr "aguardando o aplicativo que o está gravando terminar"
#. Translators: {time} is when the next attempt happens, such as "14:30".
#: crates/pdfs-gui/src/app/pages/locations.rs:641
#: crates/pdfs-gui/src/app/pages/locations.rs:642
#, rust-format
msgid "retrying {time}"
msgstr "nova tentativa {time}"
#: crates/pdfs-gui/src/app/pages/locations.rs:643
#: crates/pdfs-gui/src/app/pages/locations.rs:644
msgid "waiting for sync to resume"
msgstr "aguardando a sincronização ser retomada"
#: crates/pdfs-gui/src/app/pages/locations.rs:644
#: crates/pdfs-gui/src/app/pages/locations.rs:645
msgid "up next"
msgstr "a seguir"
#: crates/pdfs-gui/src/app/pages/locations.rs:648
#: crates/pdfs-gui/src/app/pages/locations.rs:649
#, rust-format
msgid "{action} · {state}"
msgstr "{action} · {state}"
#: crates/pdfs-gui/src/app/pages/locations.rs:655
#: crates/pdfs-gui/src/app/pages/locations.rs:660
#, rust-format
msgid "Failed {n} time: {error}"
msgid_plural "Failed {n} times: {error}"
msgstr[0] "Falhou {n} vez: {error}"
msgstr[1] "Falhou {n} vezes: {error}"
#: crates/pdfs-gui/src/app/pages/locations.rs:681
#: crates/pdfs-gui/src/app/pages/locations.rs:686
msgid "Retry now"
msgstr "Tentar novamente agora"
#: crates/pdfs-gui/src/app/pages/locations.rs:700
#: crates/pdfs-gui/src/app/pages/locations.rs:697
msgid "Export"
msgstr "Exportar"
#: crates/pdfs-gui/src/app/pages/locations.rs:698
msgid "Save a copy of this file's content elsewhere"
msgstr "Salvar uma cópia do conteúdo deste arquivo em outro lugar"
#: crates/pdfs-gui/src/app/pages/locations.rs:719
msgid ""
"Your Proton Drive storage is full. Free up space or upgrade your plan, and "
"this change uploads on its own."
msgstr ""
"Seu armazenamento do Proton Drive está cheio. Libere espaço ou mude para um "
"plano maior, e esta alteração será enviada sozinha."
#: crates/pdfs-gui/src/app/pages/locations.rs:722
msgid ""
"You can no longer change this on Proton Drive. Ask the owner for edit "
"access, or export the file to keep your version."
msgstr ""
"Você não pode mais alterar isto no Proton Drive. Peça ao proprietário "
"permissão de edição ou exporte o arquivo para manter a sua versão."
#: crates/pdfs-gui/src/app/pages/locations.rs:725
msgid ""
"The folder this change belongs in is gone from Proton Drive. Export the file "
"to keep your version."
msgstr ""
"A pasta à qual esta alteração pertence não está mais no Proton Drive. "
"Exporte o arquivo para manter a sua versão."
#: crates/pdfs-gui/src/app/pages/locations.rs:728
msgid ""
"Proton Drive's limit on items in a folder or on folder depth is reached. "
"Make room in the folder, then retry."
msgstr ""
"O limite do Proton Drive de itens em uma pasta ou de profundidade de pastas "
"foi atingido. Libere espaço na pasta e tente novamente."
#: crates/pdfs-gui/src/app/pages/locations.rs:731
msgid "Proton Drive refused this change. It stays queued and is tried again."
msgstr ""
"O Proton Drive recusou esta alteração. Ela continua na fila e será tentada "
"novamente."
#: crates/pdfs-gui/src/app/pages/locations.rs:741
msgid "Export File"
msgstr "Exportar arquivo"
#: crates/pdfs-gui/src/app/pages/locations.rs:750
#: crates/pdfs-gui/src/app/pages/locations.rs:764
#: crates/pdfs-gui/src/app/pages/locations.rs:768
msgid "Couldn't export the file"
msgstr "Não foi possível exportar o arquivo"
#: crates/pdfs-gui/src/app/pages/locations.rs:751
#: crates/pdfs-gui/src/app/widgets/versions_dialog.rs:351
msgid "That location isn't a local file."
msgstr "Esse local não é um arquivo local."
#: crates/pdfs-gui/src/app/pages/locations.rs:762
msgid "File exported"
msgstr "Arquivo exportado"
#: crates/pdfs-gui/src/app/pages/locations.rs:783
msgid "Retrying now…"
msgstr "Tentando novamente…"
#: crates/pdfs-gui/src/app/pages/locations.rs:705
#: crates/pdfs-gui/src/app/pages/locations.rs:709
#: crates/pdfs-gui/src/app/pages/locations.rs:788
#: crates/pdfs-gui/src/app/pages/locations.rs:792
msgid "Couldn't retry"
msgstr "Não foi possível tentar novamente"
#: crates/pdfs-gui/src/app/pages/locations.rs:779
#: crates/pdfs-gui/src/app/pages/locations.rs:862
#, rust-format
msgid "{size}, changed {time}"
msgstr "{size}, alterado em {time}"
#: crates/pdfs-gui/src/app/pages/locations.rs:789
#: crates/pdfs-gui/src/app/pages/locations.rs:872
msgid "The original is gone; only this copy is left"
msgstr "O original não existe mais; só resta esta cópia"
#: crates/pdfs-gui/src/app/pages/locations.rs:791
#: crates/pdfs-gui/src/app/pages/locations.rs:874
msgid "Same content as the original"
msgstr "Mesmo conteúdo que o original"
#: crates/pdfs-gui/src/app/pages/locations.rs:832
#: crates/pdfs-gui/src/app/pages/locations.rs:915
#, rust-format
msgid ""
"“{name}” was changed here and elsewhere at the same time.\n"
@@ -2780,7 +2846,7 @@ msgstr ""
"\n"
"O que não for mantido vai para a lixeira, de onde pode ser restaurado."
#: crates/pdfs-gui/src/app/pages/locations.rs:844
#: crates/pdfs-gui/src/app/pages/locations.rs:927
#, rust-format
msgid ""
"The original “{name}” no longer exists; only the copy is left ({copy}).\n"
@@ -2791,111 +2857,111 @@ msgstr ""
"\n"
"Mantenha a cópia para devolver a ela o nome original."
#: crates/pdfs-gui/src/app/pages/locations.rs:850
#: crates/pdfs-gui/src/app/pages/locations.rs:933
msgid "Resolve Conflict"
msgstr "Resolver conflito"
#: crates/pdfs-gui/src/app/pages/locations.rs:855
#: crates/pdfs-gui/src/app/pages/locations.rs:938
msgid "Name for the copy, if keeping both"
msgstr "Nome da cópia, se mantiver ambos"
#: crates/pdfs-gui/src/app/pages/locations.rs:862
#: crates/pdfs-gui/src/app/pages/locations.rs:945
msgid "Keep Original"
msgstr "Manter original"
#: crates/pdfs-gui/src/app/pages/locations.rs:863
#: crates/pdfs-gui/src/app/pages/locations.rs:946
msgid "Keep Both"
msgstr "Manter ambos"
#: crates/pdfs-gui/src/app/pages/locations.rs:865
#: crates/pdfs-gui/src/app/pages/locations.rs:948
msgid "Keep Copy"
msgstr "Manter cópia"
#: crates/pdfs-gui/src/app/pages/locations.rs:922
#: crates/pdfs-gui/src/app/pages/locations.rs:928
#: crates/pdfs-gui/src/app/pages/locations.rs:1005
#: crates/pdfs-gui/src/app/pages/locations.rs:1011
msgid "Couldn't resolve the conflict"
msgstr "Não foi possível resolver o conflito"
#: crates/pdfs-gui/src/app/pages/locations.rs:971
#: crates/pdfs-gui/src/app/pages/locations.rs:1054
msgid "Reading this computer's Proton Drive locations."
msgstr "Lendo os locais do Proton Drive deste computador."
#: crates/pdfs-gui/src/app/pages/locations.rs:992
#: crates/pdfs-gui/src/app/pages/locations.rs:1075
msgid "Unavailable"
msgstr "Indisponível"
#: crates/pdfs-gui/src/app/pages/locations.rs:1075
#: crates/pdfs-gui/src/app/pages/locations.rs:1158
msgid "No folders yet"
msgstr "Nenhuma pasta ainda"
#: crates/pdfs-gui/src/app/pages/locations.rs:1077
#: crates/pdfs-gui/src/app/pages/locations.rs:1160
msgid "The Proton Drive service hasn't reported its folder yet."
msgstr "O serviço do Proton Drive ainda não informou sua pasta."
#: crates/pdfs-gui/src/app/pages/locations.rs:1100
#: crates/pdfs-gui/src/app/pages/locations.rs:1183
#, rust-format
msgid "{path} · {state}"
msgstr "{path} · {state}"
#: crates/pdfs-gui/src/app/pages/locations.rs:1143
#: crates/pdfs-gui/src/app/pages/locations.rs:1226
msgid "Read-only"
msgstr "Somente leitura"
#: crates/pdfs-gui/src/app/pages/locations.rs:1159
#: crates/pdfs-gui/src/app/pages/locations.rs:1242
msgid "Open in Files"
msgstr "Abrir em Arquivos"
#: crates/pdfs-gui/src/app/pages/locations.rs:1164
#: crates/pdfs-gui/src/app/pages/locations.rs:1247
msgid "Change Location…"
msgstr "Alterar local…"
#: crates/pdfs-gui/src/app/pages/locations.rs:1216
#: crates/pdfs-gui/src/app/pages/locations.rs:1299
msgid "Choose whether this folder keeps a full copy on this computer"
msgstr "Escolher se esta pasta mantém uma cópia completa neste computador"
#: crates/pdfs-gui/src/app/pages/locations.rs:1232
#: crates/pdfs-gui/src/app/pages/locations.rs:1315
msgid "Keep every file on this computer and in Proton Drive."
msgstr "Manter todos os arquivos neste computador e no Proton Drive."
#: crates/pdfs-gui/src/app/pages/locations.rs:1237
#: crates/pdfs-gui/src/app/pages/locations.rs:1320
msgid "Keep the files in Proton Drive and download each one when you open it."
msgstr ""
"Manter os arquivos no Proton Drive e baixar cada um quando você o abrir."
#. Translators: a folder mode: files are kept in Proton Drive and fetched when opened.
#: crates/pdfs-gui/src/app/pages/locations.rs:1291
#: crates/pdfs-gui/src/app/pages/locations.rs:1374
msgctxt "folder mode"
msgid "Online only"
msgstr "Somente online"
#. Translators: a folder mode: a full copy is kept on this computer.
#: crates/pdfs-gui/src/app/pages/locations.rs:1294
#: crates/pdfs-gui/src/app/pages/locations.rs:1377
msgctxt "folder mode"
msgid "Synced"
msgstr "Sincronizada"
#: crates/pdfs-gui/src/app/pages/locations.rs:1305
#: crates/pdfs-gui/src/app/pages/locations.rs:1388
msgid "Sync Now"
msgstr "Sincronizar agora"
#: crates/pdfs-gui/src/app/pages/locations.rs:1309
#: crates/pdfs-gui/src/app/pages/locations.rs:1392
msgid "Resume Syncing"
msgstr "Retomar sincronização"
#: crates/pdfs-gui/src/app/pages/locations.rs:1311
#: crates/pdfs-gui/src/app/pages/locations.rs:1394
msgid "Pause Syncing"
msgstr "Pausar sincronização"
#: crates/pdfs-gui/src/app/pages/locations.rs:1322
#: crates/pdfs-gui/src/app/pages/locations.rs:1405
msgid "Stop Syncing…"
msgstr "Parar de sincronizar…"
#: crates/pdfs-gui/src/app/pages/locations.rs:1331
#: crates/pdfs-gui/src/app/pages/locations.rs:1414
msgid "Make Folder Online Only?"
msgstr "Tornar a pasta somente online?"
#. Translators: {path} is a local folder path.
#: crates/pdfs-gui/src/app/pages/locations.rs:1333
#: crates/pdfs-gui/src/app/pages/locations.rs:1416
#, rust-format
msgid ""
"Files in {path} will be removed from this computer and kept in Proton Drive "
@@ -2904,11 +2970,11 @@ msgstr ""
"Os arquivos em {path} serão removidos deste computador e mantidos somente no "
"Proton Drive. Cada arquivo é baixado novamente quando você o abre."
#: crates/pdfs-gui/src/app/pages/locations.rs:1336
#: crates/pdfs-gui/src/app/pages/locations.rs:1419
msgid "Make Online Only"
msgstr "Tornar somente online"
#: crates/pdfs-gui/src/app/pages/locations.rs:1372
#: crates/pdfs-gui/src/app/pages/locations.rs:1455
#, rust-format
msgid ""
"Every file in {path} will download to this computer and stay synced. {free} "
@@ -2917,61 +2983,61 @@ msgstr ""
"Todos os arquivos em {path} serão baixados para este computador e "
"continuarão sincronizados. Há {free} livres neste disco."
#: crates/pdfs-gui/src/app/pages/locations.rs:1377
#: crates/pdfs-gui/src/app/pages/locations.rs:1460
#, rust-format
msgid "Every file in {path} will download to this computer and stay synced."
msgstr ""
"Todos os arquivos em {path} serão baixados para este computador e "
"continuarão sincronizados."
#: crates/pdfs-gui/src/app/pages/locations.rs:1382
#: crates/pdfs-gui/src/app/pages/locations.rs:1465
msgid "Download Folder?"
msgstr "Baixar a pasta?"
#: crates/pdfs-gui/src/app/pages/locations.rs:1386
#: crates/pdfs-gui/src/app/pages/locations.rs:1469
msgid "Download"
msgstr "Baixar"
#: crates/pdfs-gui/src/app/pages/locations.rs:1410
#: crates/pdfs-gui/src/app/pages/locations.rs:1493
msgid "Couldn't pause the folder"
msgstr "Não foi possível pausar a pasta"
#: crates/pdfs-gui/src/app/pages/locations.rs:1411
#: crates/pdfs-gui/src/app/pages/locations.rs:1494
msgid "Couldn't resume the folder"
msgstr "Não foi possível retomar a pasta"
#: crates/pdfs-gui/src/app/pages/locations.rs:1417
#: crates/pdfs-gui/src/app/pages/locations.rs:1500
msgid "Folder paused"
msgstr "Pasta pausada"
#: crates/pdfs-gui/src/app/pages/locations.rs:1418
#: crates/pdfs-gui/src/app/pages/locations.rs:1501
msgid "Folder resumed"
msgstr "Pasta retomada"
#: crates/pdfs-gui/src/app/pages/locations.rs:1442
#: crates/pdfs-gui/src/app/pages/locations.rs:1446
#: crates/pdfs-gui/src/app/pages/locations.rs:1525
#: crates/pdfs-gui/src/app/pages/locations.rs:1529
msgid "Couldn't sync"
msgstr "Não foi possível sincronizar"
#: crates/pdfs-gui/src/app/pages/locations.rs:1472
#: crates/pdfs-gui/src/app/pages/locations.rs:1555
msgid "Shared folder"
msgstr "Pasta compartilhada"
#: crates/pdfs-gui/src/app/pages/locations.rs:1474
#: crates/pdfs-gui/src/app/pages/locations.rs:1557
msgid "Going online only"
msgstr "Tornando somente online"
#: crates/pdfs-gui/src/app/pages/locations.rs:1475
#: crates/pdfs-gui/src/app/pages/locations.rs:1558
msgid "Switching to synced"
msgstr "Passando para sincronizada"
#: crates/pdfs-gui/src/app/pages/locations.rs:1485
#: crates/pdfs-gui/src/app/pages/locations.rs:1568
msgctxt "state"
msgid "paused"
msgstr "pausada"
#. Translators: a folder's files can't be opened right now.
#: crates/pdfs-gui/src/app/pages/locations.rs:1496
#: crates/pdfs-gui/src/app/pages/locations.rs:1579
msgid "not available"
msgstr "indisponível"
@@ -5465,10 +5531,6 @@ msgstr "Salvar versão"
msgid "Couldn't save that version"
msgstr "Não foi possível salvar essa versão"
#: crates/pdfs-gui/src/app/widgets/versions_dialog.rs:351
msgid "That location isn't a local file."
msgstr "Esse local não é um arquivo local."
#: crates/pdfs-gui/src/app/widgets/versions_dialog.rs:358
msgid "Version saved"
msgstr "Versão salva"