feat: sync notebooks between devices via a synced folder (Issue #49, stage 1)
- Storage location setting: the notebooks can be moved into a folder kept in sync by Nextcloud, Google Drive, Syncthing etc. (subfolder `ink-notes`); existing notebooks are copied there if it is still empty, the originals stay. - Changes from other devices are taken over while everything local is saved: changed pages are reloaded, new/removed/reordered pages and titles come in through the manifest. A page file still being synced is retried later instead of being set aside as damaged. - Conflict copies made by sync clients become pages of their own. - `.opened_by.json` marks the device that has a notebook open; opening a notebook open elsewhere shows a warning. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
1 parent
41ee32e1f7
commit
9b34e30475
13 files changed
+976
-9
No files matched your search
@@ -464,4 +464,24 @@ pub const EN: &[(&str, &str)] = &[
|
||||
("📄 Importieren (PDF, Xournal++, Rnote, Saber) …", "📄 Import (PDF, Xournal++, Rnote, Saber) …"),
|
||||
("Keine Saber-Datei", "Not a Saber file"),
|
||||
("Saber-Datei zu alt: bitte in einem aktuellen Saber öffnen und neu speichern", "Saber file too old: please open it in a current Saber and save it again"),
|
||||
("Die Notizbücher liegen bereits dort", "The notebooks are already there"),
|
||||
("Konfliktkopien als eigene Seiten übernommen: {count}", "Conflict copies added as separate pages: {count}"),
|
||||
("Speicherort geändert, {count} Notizbücher kopiert", "Storage location changed, {count} notebooks copied"),
|
||||
("Speicherort geändert: {path}", "Storage location changed: {path}"),
|
||||
("Speicherort nicht nutzbar: {err}", "Storage location not usable: {err}"),
|
||||
("Änderungen von einem anderen Gerät übernommen", "Changes from another device taken over"),
|
||||
("⚠ Auch auf '{device}' geöffnet – Änderungen dort können deine überschreiben", "⚠ Also open on '{device}' – changes there may overwrite yours"),
|
||||
("⚠ Gerade auf '{device}' geöffnet – Änderungen dort können deine überschreiben", "⚠ Just opened on '{device}' – changes there may overwrite yours"),
|
||||
("Konfliktkopie", "Conflict copy"),
|
||||
("Konfliktkopie: {title}", "Conflict copy: {title}"),
|
||||
("Die Notizbücher liegen dann im Unterordner „ink-notes“ des gewählten Ordners, z. B. im Nextcloud- oder Google-Drive-Ordner. Ist er noch leer, werden die vorhandenen Notizbücher dorthin kopiert; die alten bleiben erhalten.", "The notebooks are then kept in the subfolder “ink-notes” of the chosen folder, e.g. in your Nextcloud or Google Drive folder. If it is still empty, the existing notebooks are copied there; the old ones are kept."),
|
||||
("Keine Unterordner", "No subfolders"),
|
||||
("SPEICHERORT", "STORAGE LOCATION"),
|
||||
("Speicherort wählen", "Choose storage location"),
|
||||
("Standard", "Default"),
|
||||
("Z. B. einen Nextcloud- oder Google-Drive-Ordner wählen, um die Notizbücher mit anderen Geräten abzugleichen", "E.g. choose a Nextcloud or Google Drive folder to sync the notebooks with other devices"),
|
||||
("Zurück zum Standard-Speicherort", "Back to the default storage location"),
|
||||
("✔ Diesen Ordner wählen", "✔ Choose this folder"),
|
||||
("📁 Ändern …", "📁 Change …"),
|
||||
("📁 Speicherort wählen", "📁 Choose storage location"),
|
||||
];
|
||||
Reference in new issue
Block a user