Files
obsidian-livesync/src/common/messagesYAML/en.yaml
T
2026-07-31 07:14:14 +01:00

2438 lines
137 KiB
YAML

", please select the option that best describes the current state of your Vault. The application will then check your files in the most appropriate way based on your selection.":
", please select the option that best describes the current state of your
Vault. The application will then check your files in the most appropriate
way based on your selection."
(Active): (Active)
(BETA) Always overwrite with a newer file: (BETA) Always overwrite with a newer file
(Beta) Use ignore files: (Beta) Use ignore files
(Days passed, 0 to disable automatic-deletion): (Days passed, 0 to disable automatic-deletion)
(e.g., after editing many files whilst offline): (e.g., after editing many files whilst offline)
(e.g., immediately after restoring on another computer, or having recovered from a backup):
(e.g., immediately after restoring on another computer, or having recovered
from a backup)
(e.g., setting up for the first time on a new smartphone, starting from a clean slate):
(e.g., setting up for the first time on a new smartphone, starting from a
clean slate)
(ex. Read chunks online) If this option is enabled, LiveSync reads chunks online directly instead of replicating them locally. Increasing Custom chunk size is recommended.:
(ex. Read chunks online) If this option is enabled, LiveSync reads chunks
online directly instead of replicating them locally. Increasing Custom chunk
size is recommended.
(MB) If this is set, changes to local and remote files that are larger than this will be skipped. If the file becomes smaller again, a newer one will be used.:
(MB) If this is set, changes to local and remote files that are larger than
this will be skipped. If the file becomes smaller again, a newer one will be
used.
(Mega chars): (Mega chars)
(Missing): (Missing)
(Not recommended) If set, credentials will be stored in the file.: (Not recommended) If set, credentials will be stored in the file.
(Obsolete) Use an old adapter for compatibility: (Obsolete) Use an old adapter for compatibility
(RegExp) Empty to sync all files. Set filter as a regular expression to limit synchronising files.:
(RegExp) Empty to sync all files. Set filter as a regular expression to limit
synchronising files.
(RegExp) If this is set, any changes to local and remote files that match this will be skipped.:
(RegExp) If this is set, any changes to local and remote files that match this
will be skipped.
"↑: Overwrite Remote": "↑: Overwrite Remote"
"↓: Overwrite Local": "↓: Overwrite Local"
"⇅: Use newer": "⇅: Use newer"
+1 week: +1 week
⚠️ Important Notice: ⚠️ Important Notice
⚠️ Please Confirm the Following: ⚠️ Please Confirm the Following
✔ SELECT: ✔ SELECT
✔ SYNC: ✔ SYNC
✔ WATCH: ✔ WATCH
📡 Off: 📡 Off
📡 On: 📡 On
🔴 Disconnected: 🔴 Disconnected
🕵️ Diag: 🕵️ Diag
🗑 Delete: 🗑 Delete
🟢 Connected: 🟢 Connected
${count} issue(s) detected!: ${count} issue(s) detected!
Accept: Accept
Accept in session: Accept in session
ACCEPTED: ACCEPTED
ACCEPTED (in session): ACCEPTED (in session)
Access Key: Access Key
Access Key ID: Access Key ID
Action: Action
Activate: Activate
Active Remote Configuration: Active Remote Configuration
Add default patterns: Add default patterns
Add new connection: Add new connection
AddOn Module (ConfigSync) has not been loaded. This is very unexpected situation. Please report this issue.:
AddOn Module (ConfigSync) has not been loaded. This is very unexpected
situation. Please report this issue.
AddOn Module (HiddenFileSync) has not been loaded. This is very unexpected situation. Please report this issue.:
AddOn Module (HiddenFileSync) has not been loaded. This is very unexpected
situation. Please report this issue.
Advanced: Advanced
Advanced Settings: Advanced Settings
After restarting, the data on this device will be uploaded to the server as the 'master copy'. Please be aware that any unintended data currently on the server will be completely overwritten.:
After restarting, the data on this device will be uploaded to the server as
the 'master copy'. Please be aware that any unintended data currently on the
server will be completely overwritten.
After restarting, the database on this device will be rebuilt using data from the server. If there are any unsynchronised files in this vault, conflicts may occur with the server data.:
After restarting, the database on this device will be rebuilt using data
from the server. If there are any unsynchronised files in this vault,
conflicts may occur with the server data.
After that, synchronise to a brand new vault on each other device with the new remote one by one.:
After that, synchronise to a brand new vault on each other device with the
new remote one by one.
All checks passed successfully!: All checks passed successfully!
All the same or non-existent: All the same or non-existent
Allow in session: Allow in session
Allow permanently: Allow permanently
Also, please note that if you are using Peer-to-Peer synchronization, this configuration will be used when you switch to other methods and connect to a remote server in the future.:
Also, please note that if you are using Peer-to-Peer synchronization, this
configuration will be used when you switch to other methods and connect to a
remote server in the future.
Always prompt merge conflicts: Always prompt merge conflicts
Analyse: Analyse
Analyse database usage: Analyse database usage
Analyse database usage and generate a TSV report for diagnosis yourself. You can paste the generated report with any spreadsheet you like.:
Analyse database usage and generate a TSV report for diagnosis yourself. You
can paste the generated report with any spreadsheet you like.
Apply All Selected: Apply All Selected
Apply Latest Change if Conflicting: Apply Latest Change if Conflicting
Apply preset configuration: Apply preset configuration
Apply the settings: Apply the settings
Ask a passphrase at every launch: Ask a passphrase at every launch
Auto Connect: Auto Connect
Auto Start P2P Connection: Auto Start P2P Connection
Automatic: Automatic
Automatically Sync all files when opening Obsidian.: Automatically Sync all files when opening Obsidian.
Available Peers: Available Peers
Back: Back
Back to non-configured: Back to non-configured
Batch database update: Batch database update
Batch limit: Batch limit
Batch size: Batch size
Batch size of on-demand fetching: Batch size of on-demand fetching
Before v0.17.16, we used an old adapter for the local database. Now the new adapter is preferred. However, it needs local database rebuilding. Please disable this toggle when you have enough time. If leave it enabled, also while fetching from the remote database, you will be asked to disable this.:
Before v0.17.16, we used an old adapter for the local database. Now the new
adapter is preferred. However, it needs local database rebuilding. Please
disable this toggle when you have enough time. If leave it enabled, also while
fetching from the remote database, you will be asked to disable this.
Broadcasting?: Broadcasting?
Bucket Name: Bucket Name
by resetting the remote, you will be informed on other devices.: by resetting the remote, you will be informed on other devices.
Cancel: Cancel
Changing the encryption algorithm will prevent access to any data previously encrypted with a different algorithm. Ensure that all your devices are configured to use the same algorithm to maintain access to your data.:
Changing the encryption algorithm will prevent access to any data previously
encrypted with a different algorithm. Ensure that all your devices are
configured to use the same algorithm to maintain access to your data.
Changing this setting requires migrating existing data (a bit time may be taken) and restarting Obsidian. Please make sure to back up your data before proceeding.:
Changing this setting requires migrating existing data (a bit time may be
taken) and restarting Obsidian. Please make sure to back up your data before
proceeding.
Check: Check
Check and convert non-path-obfuscated files: Check and convert non-path-obfuscated files
Check for documents that have not been converted to path-obfuscated IDs and convert them if necessary.:
Check for documents that have not been converted to path-obfuscated IDs and
convert them if necessary.
Checking connection... Please wait.: Checking connection... Please wait.
Chunks: Chunks
Close: Close
Close & Disconnect: Close & Disconnect
Close this dialog: Close this dialog
"Closed:": "Closed:"
cmdConfigSync:
showCustomizationSync: Show Customization sync
Comma separated `.gitignore, .dockerignore`: Comma separated `.gitignore, .dockerignore`
Command: Command
Communicating: Communicating
Compare file: Compare file
Compare the content of files between on local database and storage. If not matched, you will be asked which one you want to keep.:
Compare the content of files between on local database and storage. If not
matched, you will be asked which one you want to keep.
Compatibility (Conflict Behaviour): Compatibility (Conflict Behaviour)
Compatibility (Database structure): Compatibility (Database structure)
Compatibility (Internal API Usage): Compatibility (Internal API Usage)
Compatibility (Metadata): Compatibility (Metadata)
Compatibility (Remote Database): Compatibility (Remote Database)
Compatibility (Trouble addressed): Compatibility (Trouble addressed)
Compute revisions for chunks: Compute revisions for chunks
Configuration: Configuration
Configuration Encryption: Configuration Encryption
Configure: Configure
Configure And Change Remote: Configure And Change Remote
Configure E2EE: Configure E2EE
Configure Remote: Configure Remote
Connect: Connect
"Connected to Signaling Server (as Peer ID: ${peerId})": "Connected to Signaling Server (as Peer ID: ${peerId})"
"Connected:": "Connected:"
Connection Settings: Connection Settings
"Connection:": "Connection:"
Continue anyway: Continue anyway
Copy: Copy
Copy Report to clipboard: Copy Report to clipboard
CouchDB Configuration: CouchDB Configuration
CouchDB Connection Tweak: CouchDB Connection Tweak
Create P2P remote: Create P2P remote
Cross-platform: Cross-platform
"Current adapter: {adapter}": "Current adapter: {adapter}"
Custom Headers: Custom Headers
Customization Sync: Customization Sync
Customization Sync (Beta3): Customization Sync (Beta3)
Data Compression: Data Compression
Data to Copy: Data to Copy
Database -> Storage: Database -> Storage
Database Adapter: Database Adapter
Database Name: Database Name
Database suffix: Database suffix
Date: Date
Default: Default
Delay conflict resolution of inactive files: Delay conflict resolution of inactive files
Delay merge conflict prompt for inactive files.: Delay merge conflict prompt for inactive files.
Delete: Delete
Delete all customization sync data: Delete all customization sync data
Delete all data on the remote server.: Delete all data on the remote server.
Delete All of: Delete All of
Delete local database to reset or uninstall Self-hosted LiveSync: Delete local database to reset or uninstall Self-hosted LiveSync
Delete old metadata of deleted files on start-up: Delete old metadata of deleted files on start-up
Delete Remote Configuration: Delete Remote Configuration
Delete remote configuration '{name}'?: Delete remote configuration '{name}'?
Delete remote configuration '${name}'?: Delete remote configuration '${name}'?
DENIED: DENIED
DENIED (in session): DENIED (in session)
Deny: Deny
Deny in session: Deny in session
Deny permanently: Deny permanently
Deselect all: Deselect all
desktop: desktop
Detected Peers: Detected Peers
Developer: Developer
device name: device name
Device name: Device name
Device name to identify the device. Please use shorter one for the stable peer detection, i.e., "iphone-16" or "macbook-2021".:
Device name to identify the device. Please use shorter one for the stable
peer detection, i.e., "iphone-16" or "macbook-2021".
Device Peer ID: Device Peer ID
"Devices:": "Devices:"
Diagnostic RTCPeerConnection is enabled: Diagnostic RTCPeerConnection is enabled
dialog:
yourLanguageAvailable:
_value: >-
Self-hosted LiveSync had translations for your language, so the %{Display
language} setting was enabled.
Note: Not all messages are translated. We are waiting for your
contributions!
Note 2: If you create an Issue, **please revert to %{lang-def}** and then
take screenshots, messages and logs. This can be done in the setting
dialogue.
May you find it easy to use!
btnRevertToDefault: Keep %{lang-def}
Title: " Translation is available!"
Diff: Diff
Different: Different
Disables all synchronization and restart.: Disables all synchronization and restart.
Disables logging, only shows notifications. Please disable if you report an issue.:
Disables logging, only shows notifications. Please disable if you report an
issue.
Disconnect: Disconnect
Dismiss: Dismiss
Display Language: Display Language
Display name: Display name
Do not check configuration mismatch before replication: Do not check configuration mismatch before replication
Do not keep metadata of deleted files.: Do not keep metadata of deleted files.
Do not split chunks in the background: Do not split chunks in the background
Do not use internal API: Do not use internal API
Doctor:
Button:
DismissThisVersion: No, and do not ask again until the next release
Fix: Fix it
FixButNoRebuild: Fix it but no rebuild
No: No
Skip: Leave it as is
Yes: Yes
Dialogue:
Main: >-
Hi! Config Doctor has been activated because of ${activateReason}!
And, unfortunately some configurations were detected as potential
problems.
Please be assured. Let's solve them one by one.
To let you know ahead of time, we will ask you about the following items.
${issues}
Shall we get started?
MainFix: |-
## ${name}
| Current | Ideal |
|:---:|:---:|
| ${current} | ${ideal} |
**Recommendation Level:** ${level}
### Why this has been detected?
${reason}
${note}
Fix this to the ideal value?
Title: Self-hosted LiveSync Config Doctor
TitleAlmostDone: Almost done!
TitleFix: Fix issue ${current}/${total}
Level:
Must: Must
Necessary: Necessary
Optional: Optional
Recommended: Recommended
Message:
NoIssues: No issues detected!
RebuildLocalRequired: Attention! A local database rebuild is required to apply this!
RebuildRequired: Attention! A rebuild is required to apply this!
SomeSkipped: We left some issues as is. Shall I ask you again on next startup?
RULES:
E2EE_V02500:
REASON: The End-to-End Encryption has got now more robust and faster. Also
because, the previous E2EE was found to be compromised in a re-conducted
code review. It should be applied as soon as possible. Really apologises
for your inconvenience. And, this setting is not forward compatible. All
synchronised devices must be updated to v0.25.0 or higher. Rebuilds are
not required and will be converted from the new transfer to the new
format, However, it is recommended to rebuild whenever possible.
Document History: Document History
Duplicate: Duplicate
Duplicate remote: Duplicate remote
E2EE Configuration: E2EE Configuration
Edge case addressing (Behaviour): Edge case addressing (Behaviour)
Edge case addressing (Database): Edge case addressing (Database)
Edge case addressing (Processing): Edge case addressing (Processing)
Emergency restart: Emergency restart
Enable advanced features: Enable advanced features
Enable customization sync: Enable customization sync
Enable Developers' Debug Tools.: Enable Developers' Debug Tools.
Enable edge case treatment features: Enable edge case treatment features
Enable P2P Replicator: Enable P2P Replicator
Enable poweruser features: Enable poweruser features
Enable this if your Object Storage doesn't support CORS: Enable this if your Object Storage doesn't support CORS
Enable this option to automatically apply the most recent change to documents even when it conflicts:
Enable this option to automatically apply the most recent change to documents
even when it conflicts
Enabled: Enabled
Enabling end-to-end encryption ensures that your data is encrypted on your device before being sent to the remote server. This means that even if someone gains access to the server, they won't be able to read your data without the passphrase. Make sure to remember your passphrase, as it will be required to decrypt your data on other devices.:
Enabling end-to-end encryption ensures that your data is encrypted on your
device before being sent to the remote server. This means that even if
someone gains access to the server, they won't be able to read your data
without the passphrase. Make sure to remember your passphrase, as it will be
required to decrypt your data on other devices.
Encrypt contents on the remote database. If you use the plugin's synchronization feature, enabling this is recommended.:
Encrypt contents on the remote database. If you use the plugin's
synchronization feature, enabling this is recommended.
Encrypting sensitive configuration items: Encrypting sensitive configuration items
Encryption Algorithm: Encryption Algorithm
Encryption phassphrase. If changed, you should overwrite the server's database with the new (encrypted) files.:
Encryption phassphrase. If changed, you should overwrite the server's database
with the new (encrypted) files.
End-to-End Encryption: End-to-End Encryption
Endpoint URL: Endpoint URL
Enhance chunk size: Enhance chunk size
Enter a folder prefix (optional): Enter a folder prefix (optional)
Enter Setup URI: Enter Setup URI
Enter TURN credential: Enter TURN credential
Enter TURN username: Enter TURN username
Enter your Access Key ID: Enter your Access Key ID
Enter your Bucket Name: Enter your Bucket Name
Enter your database name: Enter your database name
Enter your JWT Key ID: Enter your JWT Key ID
Enter your JWT secret or private key: Enter your JWT secret or private key
Enter your JWT Subject (CouchDB Username): Enter your JWT Subject (CouchDB Username)
Enter your passphrase: Enter your passphrase
Enter your password: Enter your password
Enter your Region (e.g., us-east-1, auto for R2): Enter your Region (e.g., us-east-1, auto for R2)
Enter your Secret Access Key: Enter your Secret Access Key
Enter your username: Enter your username
"Error during connection test: ${reason}": "Error during connection test: ${reason}"
"Error during testAndFixSettings: ${reason}": "Error during testAndFixSettings: ${reason}"
Experimental Settings: Experimental Settings
Export: Export
"Failed to connect to the server: ${reason}": "Failed to connect to the server: ${reason}"
Failed to connect to the server. Please check your settings.: Failed to connect to the server. Please check your settings.
"Failed to connect to the signalling relay: ${reason}": "Failed to connect to the signalling relay: ${reason}"
Failed to create replicator instance.: Failed to create replicator instance.
Failed to parse Setup-URI.: Failed to parse Setup-URI.
"Failed:": "Failed:"
Fetch: Fetch
Fetch chunks on demand: Fetch chunks on demand
Fetch database with previous behaviour: Fetch database with previous behaviour
Fetch remote settings: Fetch remote settings
FETCHING: FETCHING
Fetching status...: Fetching status...
File integrity: File integrity
File to resolve conflict: File to resolve conflict
File to view History: File to view History
Filename: Filename
"Final Confirmation: Overwrite Server Data with This Device's Files": "Final Confirmation: Overwrite Server Data with This Device's Files"
Fix: Fix
Flag and restart: Flag and restart
Flagged Selective: Flagged Selective
Folder Prefix: Folder Prefix
For HS256/HS512 algorithms, provide the shared secret key. For ES256/ES512 algorithms, provide the pkcs8 PEM-formatted private key.:
For HS256/HS512 algorithms, provide the shared secret key. For ES256/ES512
algorithms, provide the pkcs8 PEM-formatted private key.
Forces the file to be synced when opened.: Forces the file to be synced when opened.
Fresh Start Wipe: Fresh Start Wipe
Furthermore, if conflicts are already present in the server data, they will be synchronised to this device as they are, and you will need to resolve them locally.:
Furthermore, if conflicts are already present in the server data, they will
be synchronised to this device as they are, and you will need to resolve
them locally.
Garbage Collection V3 (Beta): Garbage Collection V3 (Beta)
Gathering information...: Gathering information...
Generate Random ID: Generate Random ID
Group ID: Group ID
Handle files as Case-Sensitive: Handle files as Case-Sensitive
Have you created a backup before proceeding?: Have you created a backup before proceeding?
Hidden file synchronization have been temporarily disabled. Please enable them after the fetching, if you need them.:
Hidden file synchronization have been temporarily disabled. Please enable
them after the fetching, if you need them.
Hidden Files: Hidden Files
Hide completely: Hide completely
Hide not applicable items: Hide not applicable items
Higher (${local} > ${remote}): Higher (${local} > ${remote})
Highlight diff: Highlight diff
How to display network errors when the sync server is unreachable.: How to display network errors when the sync server is unreachable.
However, This should not be enabled if you want to increase your secrecy more.:
However, This should not be enabled if you want to increase your secrecy
more.
I am setting up a new server for the first time / I want to reset my existing server.:
I am setting up a new server for the first time / I want to reset my
existing server.
I am unable to create a backup of my Vault.: I am unable to create a backup of my Vault.
I am unable to create a backup of my Vaults.: I am unable to create a backup of my Vaults.
I have created a backup of my Vault.: I have created a backup of my Vault.
I understand that all changes made on other smartphones or computers possibly could be lost.:
I understand that all changes made on other smartphones or computers
possibly could be lost.
I understand that other devices will no longer be able to synchronise, and will need to be reset the synchronisation information.:
I understand that other devices will no longer be able to synchronise, and
will need to be reset the synchronisation information.
I understand that this action is irreversible once performed.: I understand that this action is irreversible once performed.
I understand the risks and will proceed without a backup.: I understand the risks and will proceed without a backup.
I Understand, Overwrite Server: I Understand, Overwrite Server
If "Auto Start P2P Connection" is enabled, the P2P connection will be started automatically when the plug-in launches.:
If "Auto Start P2P Connection" is enabled, the P2P connection will be
started automatically when the plug-in launches.
If disabled(toggled), chunks will be split on the UI thread (Previous behaviour).:
If disabled(toggled), chunks will be split on the UI thread (Previous
behaviour).
If enabled per-filed efficient customization sync will be used. We need a small migration when enabling this. And all devices should be updated to v0.23.18. Once we enabled this, we lost a compatibility with old versions.:
If enabled per-filed efficient customization sync will be used. We need a
small migration when enabling this. And all devices should be updated to
v0.23.18. Once we enabled this, we lost a compatibility with old versions.
If enabled, chunks will be split into no more than 100 items. However, dedupe is slightly weaker.:
If enabled, chunks will be split into no more than 100 items. However, dedupe
is slightly weaker.
If enabled, newly created chunks are temporarily kept within the document, and graduated to become independent chunks once stabilised.:
If enabled, newly created chunks are temporarily kept within the document, and
graduated to become independent chunks once stabilised.
If enabled, the ⛔ icon will be shown inside the status instead of the file warnings banner. No details will be shown.:
If enabled, the ⛔ icon will be shown inside the status instead of the file
warnings banner. No details will be shown.
If enabled, the file under 1kb will be processed in the UI thread.: If enabled, the file under 1kb will be processed in the UI thread.
If enabled, the notification of hidden files change will be suppressed.: If enabled, the notification of hidden files change will be suppressed.
If this enabled, all chunks will be stored with the revision made from its content. (Previous behaviour):
If this enabled, all chunks will be stored with the revision made from its
content. (Previous behaviour)
If this enabled, All files are handled as case-Sensitive (Previous behaviour).: If this enabled, All files are handled as case-Sensitive (Previous behaviour).
If this enabled, chunks will be split into semantically meaningful segments. Not all platforms support this feature.:
If this enabled, chunks will be split into semantically meaningful segments.
Not all platforms support this feature.
If this is set, changes to local files which are matched by the ignore files will be skipped. Remote changes are determined using local ignore files.:
If this is set, changes to local files which are matched by the ignore files
will be skipped. Remote changes are determined using local ignore files.
If this option is enabled, PouchDB will hold the connection open for 60 seconds, and if no change arrives in that time, close and reopen the socket, instead of holding it open indefinitely. Useful when a proxy limits request duration but can increase resource usage.:
If this option is enabled, PouchDB will hold the connection open for 60
seconds, and if no change arrives in that time, close and reopen the socket,
instead of holding it open indefinitely. Useful when a proxy limits request
duration but can increase resource usage.
If you cannot avoid CORS issues, you might want to try this option. It uses Obsidian's internal API to communicate with the CouchDB server. Not compliant with web standards, but works. Note that this might break in future Obsidian versions.:
If you cannot avoid CORS issues, you might want to try this option. It uses
Obsidian's internal API to communicate with the CouchDB server. Not
compliant with web standards, but works. Note that this might break in
future Obsidian versions.
If you cannot avoid CORS issues, you might want to try this option. It uses Obsidian's internal API to communicate with the S3 server. Not compliant with web standards, but works. Note that this might break in future Obsidian versions.:
If you cannot avoid CORS issues, you might want to try this option. It uses
Obsidian's internal API to communicate with the S3 server. Not compliant
with web standards, but works. Note that this might break in future Obsidian
versions.
If you have unsynchronised changes in your Vault on this device, they will likely diverge from the server's versions after the reset. This may result in a large number of file conflicts.:
If you have unsynchronised changes in your Vault on this device, they will
likely diverge from the server's versions after the reset. This may result
in a large number of file conflicts.
If you reached the payload size limit when using IBM Cloudant, please decrease batch size and batch limit to a lower value.:
If you reached the payload size limit when using IBM Cloudant, please decrease
batch size and batch limit to a lower value.
If you understand the risks and still wish to proceed, select so.: If you understand the risks and still wish to proceed, select so.
If you want to store the data in a specific folder within the bucket, you can specify a folder prefix here. Otherwise, leave it blank to store data at the root of the bucket.:
If you want to store the data in a specific folder within the bucket, you
can specify a folder prefix here. Otherwise, leave it blank to store data at
the root of the bucket.
If you want to use `LiveSync`, you should broadcast changes. All `watching` peers which detects this will start the replication for fetching.:
If you want to use `LiveSync`, you should broadcast changes. All `watching`
peers which detects this will start the replication for fetching.
Ignore: Ignore
Ignore files: Ignore files
Ignore patterns: Ignore patterns
Import connection: Import connection
IMPORTANT: IMPORTANT
In most cases, you should stick with the default algorithm (${algorithm}), This setting is only required if you have an existing Vault encrypted in a different format.:
In most cases, you should stick with the default algorithm (${algorithm}),
This setting is only required if you have an existing Vault encrypted in a
different format.
In this scenario, Self-hosted LiveSync will recreate metadata for every file and deliberately generate conflicts. Where the file content is identical, these conflicts will be resolved automatically.:
In this scenario, Self-hosted LiveSync will recreate metadata for every file
and deliberately generate conflicts. Where the file content is identical,
these conflicts will be resolved automatically.
"Incoming:": "Incoming:"
Incubate Chunks in Document: Incubate Chunks in Document
Initial Action: Initial Action
Initialise all journal history, On the next sync, every item will be received and sent.:
Initialise all journal history, On the next sync, every item will be received
and sent.
Initialise journal received history. On the next sync, every item except this device sent will be downloaded again.:
Initialise journal received history. On the next sync, every item except this
device sent will be downloaded again.
Initialise journal sent history. On the next sync, every item except this device received will be sent again.:
Initialise journal sent history. On the next sync, every item except this
device received will be sent again.
Interval (sec): Interval (sec)
INVERTED: INVERTED
"Issue detection log:": "Issue detection log:"
It is strongly advised to create a backup before proceeding. Continuing without a backup may lead to data loss.:
It is strongly advised to create a backup before proceeding. Continuing
without a backup may lead to data loss.
Just for a minute, please!: Just for a minute, please!
JWT (JSON Web Token) authentication allows you to securely authenticate with the CouchDB server using tokens. Ensure that your CouchDB server is configured to accept JWTs and that the provided key and settings match the server's configuration. Incidentally, I have not verified it very thoroughly.:
JWT (JSON Web Token) authentication allows you to securely authenticate with
the CouchDB server using tokens. Ensure that your CouchDB server is
configured to accept JWTs and that the provided key and settings match the
server's configuration. Incidentally, I have not verified it very
thoroughly.
JWT Algorithm: JWT Algorithm
JWT Expiration Duration (minutes): JWT Expiration Duration (minutes)
JWT Key: JWT Key
JWT Key ID (kid): JWT Key ID (kid)
JWT Subject (sub): JWT Subject (sub)
K:
exp: Experimental
long_p2p_sync: "%{title_p2p_sync}"
P2P: "%{Peer}-to-%{Peer}"
Peer: Peer
ScanCustomization: Scan customization
short_p2p_sync: P2P Sync
title_p2p_sync: Peer-to-Peer Sync
Keep empty folder: Keep empty folder
lang_def: Default
lang-de: Deutsche
lang-def: "%{lang_def}"
lang-es: Español
lang-fr: Français
lang-he: Hebrew
lang-ja: 日本語
lang-ko: 한국어
lang-ru: Русский
lang-zh: 简体中文
lang-zh-tw: 繁體中文
Later: Later
"Limit: {datetime} ({timestamp})": "Limit: {datetime} ({timestamp})"
live: live
LiveSync could not handle multiple vaults which have same name without different prefix, This should be automatically configured.:
LiveSync could not handle multiple vaults which have same name without
different prefix, This should be automatically configured.
liveSyncReplicator:
beforeLiveSync: Before LiveSync, start OneShot once...
cantReplicateLowerValue: We can't replicate more lower value.
checkingLastSyncPoint: Looking for the point last synchronized point.
couldNotConnectTo: |-
Could not connect to ${uri} : ${name}
(${db})
couldNotConnectToRemoteDb: "Could not connect to remote database: ${d}"
couldNotConnectToServer: The connection to the remote has been prevented, or failed.
couldNotConnectToURI: Could not connect to ${uri}:${dbRet}
couldNotMarkResolveRemoteDb: Could not mark resolve remote database.
liveSyncBegin: LiveSync begin...
lockRemoteDb: Lock remote database to prevent data corruption
markDeviceResolved: Mark this device as 'resolved'.
oneShotSyncBegin: OneShot Sync begin... (${syncMode})
remoteDbCorrupted: Remote database is newer or corrupted, make sure to latest
version of self-hosted-livesync installed
remoteDbCreatedOrConnected: Remote Database Created or Connected
remoteDbDestroyed: Remote Database Destroyed
remoteDbDestroyError: "Something happened on Remote Database Destroy:"
remoteDbMarkedResolved: Remote database has been marked resolved.
replicationClosed: Replication closed
replicationInProgress: Replication is already in progress
retryLowerBatchSize: Retry with lower batch size:${batch_size}/${batches_limit}
unlockRemoteDb: Unlock remote database to prevent data corruption
mismatchedTweakDetected: Some mismatches have been detected in the configuration between devices. Running a manual replication will attempt to resolve this issue.
liveSyncSetting:
errorNoSuchSettingItem: "No such setting item: ${key}"
originalValue: "Original: ${value}"
valueShouldBeInRange: The value should ${min} < value < ${max}
liveSyncSettings:
btnApply: Apply
Local Database Tweak: Local Database Tweak
Local only: Local only
Lock: Lock
Lock Server: Lock Server
Lock the remote server to prevent synchronization with other devices.: Lock the remote server to prevent synchronization with other devices.
logPane:
autoScroll: Auto scroll
logWindowOpened: Log window opened
pause: Pause
title: Self-hosted LiveSync Log
wrap: Wrap
Lower (${local} < ${remote}): Lower (${local} < ${remote})
Maintenance Commands: Maintenance Commands
Maintenance mode: Maintenance mode
Maximum delay for batch database updating: Maximum delay for batch database updating
Maximum file size: Maximum file size
Maximum Incubating Chunk Size: Maximum Incubating Chunk Size
Maximum Incubating Chunks: Maximum Incubating Chunks
Maximum Incubation Period: Maximum Incubation Period
MB (0 to disable).: MB (0 to disable).
Memory cache: Memory cache
Memory cache size (by total characters): Memory cache size (by total characters)
Memory cache size (by total items): Memory cache size (by total items)
Merge: Merge
Minimum delay for batch database updating: Minimum delay for batch database updating
Minimum interval for syncing: Minimum interval for syncing
Mixed: Mixed
moduleCheckRemoteSize:
logCheckingStorageSizes: Checking storage sizes
logCurrentStorageSize: "Remote storage size: ${measuredSize}"
logExceededWarning: "Remote storage size: ${measuredSize} exceeded ${notifySize}"
logThresholdEnlarged: Threshold has been enlarged to ${size}MB
msgConfirmRebuild: This may take a bit of a long time. Do you really want to
rebuild everything now?
msgDatabaseGrowing: |
**Your database is getting larger!** But do not worry, we can address it now. The time before running out of space on the remote storage.
| Measured size | Configured size |
| --- | --- |
| ${estimatedSize} | ${maxSize} |
> [!MORE]-
> If you have been using it for many years, there may be unreferenced chunks - that is, garbage - accumulating in the database. Therefore, we recommend rebuilding everything. It will probably become much smaller.
>
> If the volume of your vault is simply increasing, it is better to rebuild everything after organizing the files. Self-hosted LiveSync does not delete the actual data even if you delete it to speed up the process. It is roughly [documented](https://github.com/vrtmrz/obsidian-livesync/blob/main/docs/tech_info.md).
>
> If you don't mind the increase, you can increase the notification limit by 100MB. This is the case if you are running it on your own server. However, it is better to rebuild everything from time to time.
>
> [!WARNING]
> If you perform rebuild everything, make sure all devices are synchronised. The plug-in will merge as much as possible, though.
msgSetDBCapacity: >
We can set a maximum database capacity warning, **to take action before
running out of space on the remote storage**.
Do you want to enable this?
> [!MORE]-
> - 0: Do not warn about storage size.
> This is recommended if you have enough space on the remote storage
especially you have self-hosted. And you can check the storage size and
rebuild manually.
> - 800: Warn if the remote storage size exceeds 800MB.
> This is recommended if you are using fly.io with 1GB limit or IBM
Cloudant.
> - 2000: Warn if the remote storage size exceeds 2GB.
If we have reached the limit, we will be asked to enlarge the limit step by
step.
noticeExceeded: Remote storage size is ${measuredSize}, above the configured
${notifySize} notification threshold. {HERE}
noticeNotConfigured: Remote storage size notifications are not configured.
{HERE}
option2GB: 2GB (Standard)
option800MB: 800MB (Cloudant, fly.io)
optionAskMeLater: Ask me later
optionDismiss: Dismiss
optionIncreaseLimit: increase to ${newMax}MB
optionNoWarn: No, never warn please
optionReview: Review options
optionRebuildAll: Rebuild Everything Now
titleDatabaseSizeLimitExceeded: Remote storage size exceeded the limit
titleDatabaseSizeNotify: Setting up database size notification
moduleInputUIObsidian:
defaultTitleConfirmation: Confirmation
defaultTitleSelect: Select
optionNo: No
optionYes: Yes
moduleLiveSyncMain:
logAdditionalSafetyScan: Additional safety scan...
logLoadingPlugin: Loading plugin...
logPluginInitCancelled: Plugin initialisation was cancelled by a module
logPluginVersion: Self-hosted LiveSync v${manifestVersion} ${packageVersion}
logReadChangelog: LiveSync has updated, please read the changelog!
logSafetyScanCompleted: Additional safety scan completed
logSafetyScanFailed: Additional safety scan has failed on a module
logUnloadingPlugin: Unloading plugin...
logVersionUpdate: LiveSync has been updated, In case of breaking updates, all
automatic synchronization has been temporarily disabled. Ensure that all
devices are up to date before enabling.
msgScramEnabled: >
Self-hosted LiveSync has been configured to ignore some events. Is this
correct?
| Type | Status | Note |
|:---:|:---:|---|
| Storage Events | ${fileWatchingStatus} | Every modification will be
ignored |
| Database Events | ${parseReplicationStatus} | Every synchronised change
will be postponed |
Do you want to resume them and restart Obsidian?
> [!DETAILS]-
> These flags are set by the plug-in while rebuilding, or fetching. If the
process ends abnormally, it may be kept unintended.
> If you are not sure, you can try to rerun these processes. Make sure to
back your vault up.
optionKeepLiveSyncDisabled: Keep LiveSync disabled
optionResumeAndRestart: Resume and restart Obsidian
titleScramEnabled: Scram Enabled
moduleLocalDatabase:
logWaitingForReady: Waiting for ready...
moduleLog:
showLog: Show Log
moduleMigration:
docUri: https://github.com/vrtmrz/obsidian-livesync/blob/main/README.md#how-to-use
fix0256:
buttons:
checkItLater: Check it later
DismissForever: I have fixed it, and do not ask again
fix: Fix
message: >
Due to a recent bug (in v0.25.6), some files may not have been saved
correctly in the sync database.
We have scanned our files and found some that need to be fixed.
**Files ready to be fixed:**
${files}
These files have size-matched original file on the storage, and are likely
to be recoverable.
We can use them to fix the database, please click the "Fix" button below
to fix them.
${messageUnrecoverable}
If you want to run it again, you can do so from Hatch.
messageUnrecoverable: >
**Files cannot be fixed on this device:**
${filesNotRecoverable}
These files have inconsistent metadata, and cannot be fixed on this device
(mostly we cannot determine which is correct).
To restore them, please check your other devices (also by this feature) or
restore them manually from a backup.
title: Broken files has been detected
insecureChunkExist:
buttons:
fetch: I already rebuilt the remote. Fetch from the remote
later: I will do it later
rebuild: Rebuild Everything
laterMessage: We strongly recommend to treat this as soon as possible!
message: >
Some chunks are not securely stored and are not encrypted in databases.
**Please rebuild the database to fix this issue**.
If your Remote Database is not configured with SSL, or using less-secure
credentials, **you are at risk of exposing sensitive data**.
Note: Please upgrade your Self-hosted LiveSync v0.25.6 or higher on all
your devices, and back your vault up surely.
Note2: Rebuild Everything and Fetch consumes a bit of time and traffic,
please do it in off-peak hours and ensure a stable network connection.
title: Insecure chunks found!
logBulkSendCorrupted: Send chunks in bulk has been enabled, however, this
feature had been corrupted. Sorry for your inconvenience. Automatically
disabled.
logFetchRemoteTweakFailed: Failed to fetch remote tweak values
logLocalDatabaseNotReady: Something went wrong! The local database is not ready
logMigratedSameBehaviour: Migrated to db:${current} with the same behaviour as before
logMigrationFailed: Migration failed or cancelled from ${old} to ${current}
logRedflag2CreationFail: Failed to create redflag2
logRemoteTweakUnavailable: Could not get remote tweak values
logSetupCancelled: The setup has been cancelled, Self-hosted LiveSync waiting for your setup!
msgFetchRemoteAgain: >-
As you may already know, the self-hosted LiveSync has changed its default
behaviour and database structure.
And thankfully, with your time and efforts, the remote database appears to
have already been migrated. Congratulations!
However, we need a bit more. The configuration of this device is not
compatible with the remote database. We will need to fetch the remote
database again. Should we fetch from the remote again now?
___Note: We cannot synchronise until the configuration has been changed and
the database has been fetched again.___
___Note2: The chunks are completely immutable, we can fetch only the
metadata and difference.___
msgInitialSetup: >-
Your device has **not been set up yet**. Let me guide you through the setup
process.
Please keep in mind that every dialogue content can be copied to the
clipboard. If you need to refer to it later, you can paste it into a note in
Obsidian. You can also translate it into your language using a translation
tool.
First, do you have **Setup URI**?
Note: If you do not know what it is, please refer to the
[documentation](${URI_DOC}).
msgRecommendSetupUri: >-
We strongly recommend that you generate a set-up URI and use it.
If you do not have knowledge about it, please refer to the
[documentation](${URI_DOC}) (Sorry again, but it is important).
How do you want to set it up manually?
msgSinceV02321: >-
Since v0.23.21, the self-hosted LiveSync has changed the default behaviour
and database structure. The following changes have been made:
1. **Case sensitivity of filenames**
The handling of filenames is now case-insensitive. This is a beneficial change for most platforms, other than Linux and iOS, which do not manage filename case sensitivity effectively.
(On These, a warning will be displayed for files with the same name but different cases).
2. **Revision handling of the chunks**
Chunks are immutable, which allows their revisions to be fixed. This change will enhance the performance of file saving.
___However, to enable either of these changes, both remote and local
databases need to be rebuilt. This process takes a few minutes, and we
recommend doing it when you have ample time.___
- If you wish to maintain the previous behaviour, you can skip this process
by using `${KEEP}`.
- If you do not have enough time, please choose `${DISMISS}`. You will be
prompted again later.
- If you have rebuilt the database on another device, please select
`${DISMISS}` and try synchronizing again. Since a difference has been
detected, you will be prompted again.
optionAdjustRemote: Adjust to remote
optionDecideLater: Decide it later
optionEnableBoth: Enable both
optionEnableFilenameCaseInsensitive: "Enable only #1"
optionEnableFixedRevisionForChunks: "Enable only #2"
optionHaveSetupUri: Yes, I have
optionKeepPreviousBehaviour: Keep previous behaviour
optionManualSetup: Set it up all manually
optionNoAskAgain: No, please ask again
optionNoSetupUri: No, I do not have
optionRemindNextLaunch: Remind me at the next launch
optionSetupViaP2P: Use %{short_p2p_sync} to set up
optionSetupWizard: Take me into the setup wizard
optionYesFetchAgain: Yes, fetch again
titleCaseSensitivity: Case Sensitivity
titleRecommendSetupUri: Recommendation to use Setup URI
titleWelcome: Welcome to Self-hosted LiveSync
moduleObsidianMenu:
replicate: Replicate
More actions: More actions
"Mostly Complete: Decision Required": "Mostly Complete: Decision Required"
Move remotely deleted files to the trash, instead of deleting.: Move remotely deleted files to the trash, instead of deleting.
My remote server is already set up. I want to join this device.: My remote server is already set up. I want to join this device.
Name: Name
Network warning style: Network warning style
NEW: NEW
New Remote: New Remote
Newer (${diff}): Newer (${diff})
No checks have been performed yet.: No checks have been performed yet.
No Connection: No Connection
No devices available. Waiting for other devices to connect...: No devices available. Waiting for other devices to connect...
No Items.: No Items.
No limit configured: No limit configured
NO PREVIEW: NO PREVIEW
Non-Synchronising files: Non-Synchronising files
Normal Files: Normal Files
Not all messages have been translated. And, please revert to "Default" when reporting errors.:
Not all messages have been translated. And, please revert to "Default" when
reporting errors.
Not configured: Not configured
Not now: Not now
Note that the Group ID is not limited to the generated format; you can use any string as the Group ID.:
Note that the Group ID is not limited to the generated format; you can use
any string as the Group ID.
Note that you can generate a new Setup URI by running the "Copy settings as a new Setup URI" command in the command palette.:
Note that you can generate a new Setup URI by running the "Copy settings as
a new Setup URI" command in the command palette.
Notify all setting files: Notify all setting files
Notify customized: Notify customized
Notify when other device has newly customized.: Notify when other device has newly customized.
Notify when the estimated remote storage size exceeds on start up: Notify when the estimated remote storage size exceeds on start up
Number of batches to process at a time. Defaults to 40. Minimum is 2. This along with batch size controls how many docs are kept in memory at a time.:
Number of batches to process at a time. Defaults to 40. Minimum is 2. This
along with batch size controls how many docs are kept in memory at a time.
Number of changes to sync at a time. Defaults to 50. Minimum is 2.: Number of changes to sync at a time. Defaults to 50. Minimum is 2.
Obfuscate Properties: Obfuscate Properties
Obfuscating properties (e.g., path of file, size, creation and modification dates) adds an additional layer of security by making it harder to identify the structure and names of your files and folders on the remote server. This helps protect your privacy and makes it more difficult for unauthorized users to infer information about your data.:
Obfuscating properties (e.g., path of file, size, creation and modification
dates) adds an additional layer of security by making it harder to identify
the structure and names of your files and folders on the remote server. This
helps protect your privacy and makes it more difficult for unauthorized
users to infer information about your data.
obsidianLiveSyncSettingTab:
btnApply: Apply
btnCheck: Check
btnCopy: Copy
btnDisable: Disable
btnDiscard: Discard
btnEnable: Enable
btnFix: Fix
btnGotItAndUpdated: I got it and updated.
btnNext: Next
btnStart: Start
btnTest: Test
btnUse: Use
buttonFetch: Fetch
buttonNext: Next
defaultLanguage: Default
descConnectSetupURI: This is the recommended method to set up Self-hosted
LiveSync with a Setup URI.
descCopySetupURI: Perfect for setting up a new device!
descEnableLiveSync: Only enable this after configuring either of the above two
options or completing all configuration manually.
descFetchConfigFromRemote: Fetch necessary settings from already configured remote server.
descManualSetup: Not recommended, but useful if you don't have a Setup URI
descTestDatabaseConnection: Open database connection. If the remote database is
not found and you have permission to create a database, the database will be
created.
descValidateDatabaseConfig: Checks and fixes any potential issues with the database config.
errAccessForbidden: ❗ Access forbidden.
errCannotContinueTest: We could not continue the test.
errCorsCredentials: ❗ cors.credentials is wrong
errCorsNotAllowingCredentials: ❗ CORS is not allowing credentials
errCorsOrigins: ❗ cors.origins is wrong
errEnableCors: ❗ httpd.enable_cors is wrong
errEnableCorsChttpd: ❗ chttpd.enable_cors is wrong
errMaxDocumentSize: ❗ couchdb.max_document_size is low)
errMaxRequestSize: ❗ chttpd.max_http_request_size is low)
errMissingWwwAuth: ❗ httpd.WWW-Authenticate is missing
errRequireValidUser: ❗ chttpd.require_valid_user is wrong.
errRequireValidUserAuth: ❗ chttpd_auth.require_valid_user is wrong.
labelDisabled: "⏹️ : Disabled"
labelEnabled: "🔁 : Enabled"
levelAdvanced: " (Advanced)"
levelEdgeCase: " (Edge Case)"
levelPowerUser: " (Power User)"
linkOpenInBrowser: Open in browser
linkPageTop: Page Top
linkTipsAndTroubleshooting: Tips and Troubleshooting
linkTroubleshooting: /docs/troubleshooting.md
logCannotUseCloudant: This feature cannot be used with IBM Cloudant.
logCheckingConfigDone: Checking configuration done
logCheckingConfigFailed: Checking configuration failed
logCheckingDbConfig: Checking database configuration
logCheckPassphraseFailed: |-
ERROR: Failed to check passphrase with the remote server:
${db}.
logConfiguredDisabled: "Configured synchronization mode: DISABLED"
logConfiguredLiveSync: "Configured synchronization mode: LiveSync"
logConfiguredPeriodic: "Configured synchronization mode: Periodic"
logCouchDbConfigFail: "CouchDB Configuration: ${title} failed"
logCouchDbConfigSet: "CouchDB Configuration: ${title} -> Set ${key} to ${value}"
logCouchDbConfigUpdated: "CouchDB Configuration: ${title} successfully updated"
logDatabaseConnected: Database connected
logEncryptionNoPassphrase: You cannot enable encryption without a passphrase
logEncryptionNoSupport: Your device does not support encryption.
logErrorOccurred: An error occurred!!
logEstimatedSize: "Estimated size: ${size}"
logPassphraseInvalid: Passphrase is not valid, please fix it.
logPassphraseNotCompatible: "ERROR: Passphrase is not compatible with the remote
server! Please check it again!"
logRebuildNote: Syncing has been disabled, fetch and re-enabled if desired.
logSelectAnyPreset: Select any preset.
logServerConfigurationCheck: obsidianLiveSyncSettingTab.logServerConfigurationCheck
msgAreYouSureProceed: Are you sure to proceed?
msgChangesNeedToBeApplied: Changes need to be applied!
msgConfigCheck: --Config check--
msgConfigCheckFailed: The configuration check has failed. Do you want to continue anyway?
msgConnectionCheck: --Connection check--
msgConnectionProxyNote: If you're having trouble with the Connection-check (even
after checking config), please check your reverse proxy configuration.
msgCurrentOrigin: "Current origin: ${origin}"
msgDiscardConfirmation: Do you really want to discard existing settings and databases?
msgDone: --Done--
msgEnableCors: Set httpd.enable_cors
msgEnableCorsChttpd: Set chttpd.enable_cors
msgEnableEncryptionRecommendation: We recommend enabling End-To-End Encryption,
and Path Obfuscation. Are you sure you want to continue without encryption?
msgFetchConfigFromRemote: Do you want to fetch the config from the remote server?
msgGenerateSetupURI: All done! Do you want to generate a setup URI to set up other devices?
msgIfConfigNotPersistent: If the server configuration is not persistent (e.g.,
running on docker), the values here may change. Once you are able to
connect, please update the settings in the server's local.ini.
msgInvalidPassphrase: Your encryption passphrase might be invalid. Are you sure
you want to continue?
msgNewVersionNote: Here due to an upgrade notification? Please review the
version history. If you're satisfied, click the button. A new update will
prompt this again.
msgNonHTTPSInfo: Configured as non-HTTPS URI. Be warned that this may not work
on mobile devices.
msgNonHTTPSWarning: Cannot connect to non-HTTPS URI. Please update your config and try again.
msgNotice: ---Notice---
msgObjectStorageWarning: >-
WARNING: This feature is a Work In Progress, so please keep in mind the
following:
- Append only architecture. A rebuild is required to shrink the storage.
- A bit fragile.
- When first syncing, all history will be transferred from the remote. Be
mindful of data caps and slow speeds.
- Only differences are synced live.
If you run into any issues, or have ideas about this feature, please create
a issue on GitHub.
I appreciate you for your great dedication.
msgOriginCheck: "Origin check: ${org}"
msgRebuildRequired: >-
Rebuilding Databases are required to apply the changes.. Please select the
method to apply the changes.
<details>
<summary>Legends</summary>
| Symbol | Meaning |
|: ------ :| ------- |
| ⇔ | Up to Date |
| ⇄ | Synchronise to balance |
| ⇐,⇒ | Transfer to overwrite |
| ⇠,⇢ | Transfer to overwrite from other side |
</details>
## ${OPTION_REBUILD_BOTH}
At a glance: 📄 ⇒¹ 💻 ⇒² 🛰️ ⇢ⁿ 💻 ⇄ⁿ⁺¹ 📄
Reconstruct both the local and remote databases using existing files from
this device.
This causes a lockout other devices, and they need to perform fetching.
## ${OPTION_FETCH}
At a glance: 📄 ⇄² 💻 ⇐¹ 🛰️ ⇔ 💻 ⇔ 📄
Initialise the local database and reconstruct it using data fetched from the
remote database.
This case includes the case which you have rebuilt the remote database.
## ${OPTION_ONLY_SETTING}
Store only the settings. **Caution: This may lead to data corruption**;
database reconstruction is generally necessary.
msgSelectAndApplyPreset: Please select and apply any preset item to complete the wizard.
msgSetCorsCredentials: Set cors.credentials
msgSetCorsOrigins: Set cors.origins
msgSetMaxDocSize: Set couchdb.max_document_size
msgSetMaxRequestSize: Set chttpd.max_http_request_size
msgSetRequireValidUser: Set chttpd.require_valid_user = true
msgSetRequireValidUserAuth: Set chttpd_auth.require_valid_user = true
msgSettingModified: The setting "${setting}" was modified from another device.
Click {HERE} to reload settings. Click elsewhere to ignore changes.
msgSettingsUnchangeableDuringSync: These settings are unable to be changed
during synchronization. Please disable all syncing in the "Sync Settings" to
unlock.
msgSetWwwAuth: Set httpd.WWW-Authenticate
nameApplySettings: Apply Settings
nameConnectSetupURI: Connect with Setup URI
nameCopySetupURI: Copy the current settings to a Setup URI
nameDisableHiddenFileSync: Disable Hidden files sync
nameDiscardSettings: Discard existing settings and databases
nameEnableHiddenFileSync: Enable Hidden files sync
nameEnableLiveSync: Enable LiveSync
nameHiddenFileSynchronization: Hidden file synchronization
nameManualSetup: Manual Setup
nameTestConnection: Test Connection
nameTestDatabaseConnection: Test Database Connection
nameValidateDatabaseConfig: Validate Database Configuration
okAdminPrivileges: ✔ You have administrator privileges.
okCorsCredentials: ✔ cors.credentials is ok.
okCorsCredentialsForOrigin: CORS credentials OK
okCorsOriginMatched: ✔ CORS origin OK
okCorsOrigins: ✔ cors.origins is ok.
okEnableCors: ✔ httpd.enable_cors is ok.
okEnableCorsChttpd: ✔ chttpd.enable_cors is ok.
okMaxDocumentSize: ✔ couchdb.max_document_size is ok.
okMaxRequestSize: ✔ chttpd.max_http_request_size is ok.
okRequireValidUser: ✔ chttpd.require_valid_user is ok.
okRequireValidUserAuth: ✔ chttpd_auth.require_valid_user is ok.
okWwwAuth: ✔ httpd.WWW-Authenticate is ok.
optionApply: Apply
optionCancel: Cancel
optionCouchDB: CouchDB
optionDisableAllAutomatic: Disable all automatic
optionFetchFromRemote: Fetch from Remote
optionHere: HERE
optionLiveSync: LiveSync
optionMinioS3R2: Minio,S3,R2
optionOkReadEverything: OK, I have read everything.
optionOnEvents: On events
optionPeriodicAndEvents: Periodic and on events
optionPeriodicWithBatch: Periodic w/ batch
optionRebuildBoth: Rebuild Both from This Device
optionSaveOnlySettings: (Danger) Save Only Settings
panelChangeLog: Change Log
panelGeneralSettings: General Settings
panelPrivacyEncryption: Privacy & Encryption
panelRemoteConfiguration: Remote Configuration
panelSetup: Setup
serverVersion: "Server info: ${info}"
titleActiveRemoteServer: Active Remote Server
titleAppearance: Appearance
titleConflictResolution: Conflict resolution
titleCongratulations: Congratulations!
titleCouchDB: CouchDB
titleDeletionPropagation: Deletion Propagation
titleEncryptionNotEnabled: Encryption is not enabled
titleEncryptionPassphraseInvalid: Encryption Passphrase Invalid
titleExtraFeatures: Enable extra and advanced features
titleFetchConfig: Fetch Config
titleFetchConfigFromRemote: Fetch config from remote server
titleFetchSettings: Fetch Settings
titleHiddenFiles: Hidden Files
titleLogging: Logging
titleMinioS3R2: Minio,S3,R2
titleNotification: Notification
titleOnlineTips: Online Tips
titleQuickSetup: Quick Setup
titleRebuildRequired: Rebuild Required
titleRemoteConfigCheckFailed: Remote Configuration Check Failed
titleRemoteServer: Remote Server
titleReset: Reset
titleSetupOtherDevices: To setup other devices
titleSynchronizationMethod: Synchronization Method
titleSynchronizationPreset: Synchronization Preset
titleSyncSettings: Sync Settings
titleSyncSettingsViaMarkdown: Sync Settings via Markdown
titleUpdateThinning: Update Thinning
warnCorsOriginUnmatched: ⚠ CORS Origin is unmatched ${from}->${to}
warnNoAdmin: ⚠ You do not have administrator privileges.
Of course, we can back up the data before proceeding.: Of course, we can back up the data before proceeding.
Off: Off
Ok: Ok
Old Algorithm: Old Algorithm
Older (${diff}): Older (${diff})
Older fallback (Slow, W/O WebAssembly): Older fallback (Slow, W/O WebAssembly)
On: On
On the source device, from the command palette, run the 'Show settings as a QR code' command.:
On the source device, from the command palette, run the 'Show settings as a
QR code' command.
On the source device, open Obsidian.: On the source device, open Obsidian.
On this device, please keep this Vault open.: On this device, please keep this Vault open.
On this device, switch to the camera app or use a QR code scanner to scan the displayed QR code.:
On this device, switch to the camera app or use a QR code scanner to scan
the displayed QR code.
Open: Open
Open connection: Open connection
Open P2P Setup...: Open P2P Setup...
Open the dialog: Open the dialog
Other files: Other files
Overwrite: Overwrite
Overwrite patterns: Overwrite patterns
Overwrite remote: Overwrite remote
Overwrite remote with local DB and passphrase.: Overwrite remote with local DB and passphrase.
Overwrite Server Data with This Device's Files: Overwrite Server Data with This Device's Files
P2P:
AskPassphraseForDecrypt: The remote peer shared the configuration. Please input
the passphrase to decrypt the configuration.
AskPassphraseForShare: The remote peer requested this device configuration.
Please input the passphrase to share the configuration. You can ignore the
request by cancelling this dialogue.
DisabledButNeed: "%{title_p2p_sync} is disabled. Do you really want to enable it?"
FailedToOpen: Failed to open P2P connection to the signalling server.
NoAutoSyncPeers: No auto-sync peers found. Please set peers on the %{long_p2p_sync} pane.
NoKnownPeers: No peers has been detected, waiting incoming other peers...
Note:
description: >2-
This replicator allows us to synchronise our vault with other devices
using a peer-to-peer connection. We can use this to synchronise our vault
with our other devices without using a cloud service.
This replicator is based on Trystero. It also uses a signalling server to
establish a connection between devices. The signalling server is used to
exchange connection information between devices. It does (or,should) not
know or store any of our data.
The signalling server can be hosted by anyone. This is just a Nostr relay.
For the sake of simplicity and checking the behaviour of the replicator,
an instance of the signalling server is hosted by vrtmrz. You can use the
experimental server provided by vrtmrz, or you can use any other server.
By the way, even if the signalling server does not store our data, it can
see the connection information of some of our devices. Please be aware of
this. Also, be cautious when using the server provided by someone else.
important_note: Peer-to-Peer Replicator.
important_note_sub: This feature is still on the bleeding edge. Please be aware
that ensure your data is backed up before using this feature. And, we
would be so happy if you could contribute to the development of this
feature.
Summary: What is this feature? (and some important notes, please read once)
NotEnabled: "%{title_p2p_sync} is not enabled. We cannot open a new connection."
P2PReplication: "%{P2P} Replication"
PaneTitle: "%{long_p2p_sync}"
ReplicatorInstanceMissing: P2P Sync replicator is not found, possibly not have
been configured or enabled.
SeemsOffline: Peer ${name} seems offline, skipped.
SyncAlreadyRunning: P2P Sync is already running.
SyncCompleted: P2P Sync completed.
SyncStartedWith: P2P Sync with ${name} have been started.
P2P Configuration: P2P Configuration
P2P Status: P2P Status
paneMaintenance:
markDeviceResolvedAfterBackup: paneMaintenance.markDeviceResolvedAfterBackup
remoteLockedAndDeviceNotAccepted: paneMaintenance.remoteLockedAndDeviceNotAccepted
remoteLockedResolvedDevice: paneMaintenance.remoteLockedResolvedDevice
unlockDatabaseReady: paneMaintenance.unlockDatabaseReady
Passphrase: Passphrase
Passphrase is required.: Passphrase is required.
Passphrase of sensitive configuration items: Passphrase of sensitive configuration items
password: password
Password: Password
Paste a connection string: Paste a connection string
Path: Path
Path Obfuscation: Path Obfuscation
Patterns to match files for overwriting instead of merging: Patterns to match files for overwriting instead of merging
Patterns to match files for syncing: Patterns to match files for syncing
"Peer ID:": "Peer ID:"
Peer to Peer Replicator: Peer to Peer Replicator
Peer-to-Peer Synchronisation: Peer-to-Peer Synchronisation
Peers: Peers
Per-file-saved customization sync: Per-file-saved customization sync
Perform: Perform
Perform cleanup: Perform cleanup
Perform Garbage Collection: Perform Garbage Collection
Perform Garbage Collection to remove unused chunks and reduce database size.: Perform Garbage Collection to remove unused chunks and reduce database size.
Periodic Sync interval: Periodic Sync interval
PERMANENT: PERMANENT
Pick a file to resolve conflict: Pick a file to resolve conflict
Pick a file to show history: Pick a file to show history
Please be aware that the End-to-End Encryption passphrase is not validated until the synchronisation process actually commences. This is a security measure designed to protect your data.:
Please be aware that the End-to-End Encryption passphrase is not validated
until the synchronisation process actually commences. This is a security
measure designed to protect your data.
Please configure your end-to-end encryption settings.: Please configure your end-to-end encryption settings.
Please enter the CouchDB server information below.: Please enter the CouchDB server information below.
Please enter the details required to connect to your S3/MinIO/R2 compatible object storage service.:
Please enter the details required to connect to your S3/MinIO/R2 compatible
object storage service.
Please enter the Peer-to-Peer Synchronisation information below.: Please enter the Peer-to-Peer Synchronisation information below.
Please enter the Setup URI that was generated during server installation or on another device, along with the vault passphrase.:
Please enter the Setup URI that was generated during server installation or
on another device, along with the vault passphrase.
Please follow the steps below to import settings from your existing device.: Please follow the steps below to import settings from your existing device.
PLEASE NOTE: PLEASE NOTE
Please select an active P2P remote configuration to change P2P sync targets.: Please select an active P2P remote configuration to change P2P sync targets.
Please select the button below to restart and proceed to the data fetching confirmation.:
Please select the button below to restart and proceed to the data fetching
confirmation.
Please select the button below to restart and proceed to the final confirmation.:
Please select the button below to restart and proceed to the final
confirmation.
Please select your situation.: Please select your situation.
Please set device name to identify this device. This name should be unique among your devices. While not configured, we cannot enable this feature.:
Please set device name to identify this device. This name should be unique
among your devices. While not configured, we cannot enable this feature.
Please set this device name: Please set this device name
Please understand that this is intended behaviour.: Please understand that this is intended behaviour.
Plugins: Plugins
Prepare the 'report' to create an issue: Prepare the 'report' to create an issue
Presets: Presets
Prevent fetching configuration from server: Prevent fetching configuration from server
Proceed: Proceed
Proceed to the next step.: Proceed to the next step.
Process small files in the foreground: Process small files in the foreground
Property Encryption: Property Encryption
PureJS fallback (Fast, W/O WebAssembly): PureJS fallback (Fast, W/O WebAssembly)
Purge all download/upload cache.: Purge all download/upload cache.
Purge all journal counter: Purge all journal counter
Rebuild local and remote database with local files.: Rebuild local and remote database with local files.
Rebuilding Operations (Remote Only): Rebuilding Operations (Remote Only)
Recovery and Repair: Recovery and Repair
Recreate all: Recreate all
Recreate missing chunks for all files: Recreate missing chunks for all files
RedFlag:
Fetch:
Method:
Desc: >-
How do you want to fetch?
- %{RedFlag.Fetch.Method.FetchSafer}.
**Low Traffic**, **High CPU**, **Low Risk**
Recommended if ...
- Files possibly inconsistent
- Files were not so much
- %{RedFlag.Fetch.Method.FetchSmoother}.
**Low Traffic**, **Moderate CPU**, **Low to Moderate Risk**
Recommended if ...
- Files probably consistent
- You have a lot of files.
- %{RedFlag.Fetch.Method.FetchTraditional}.
**High Traffic**, **Low CPU**, **Low to Moderate Risk**
>[!INFO]- Details
> ## %{RedFlag.Fetch.Method.FetchSafer}.
> **Low Traffic**, **High CPU**, **Low Risk**
> This option first creates a local database using existing local files
before fetching data from the remote source.
> If matching files exist both locally and remotely, only the
differences between them will be transferred.
> However, files present in both locations will initially be handled as
conflicted files. They will be resolved automatically if they are not
actually conflicted, but this process may take time.
> This is generally the safest method, minimizing data loss risk.
> ## %{RedFlag.Fetch.Method.FetchSmoother}.
> **Low Traffic**, **Moderate CPU**, **Low to Moderate Risk** (depending
operation)
> This option first creates chunks from local files for the database,
then fetches data. Consequently, only chunks missing locally are
transferred. However, all metadata is taken from the remote source.
> Local files are then compared against this metadata at launch. The
content considered newer will overwrite the older one (by modified
time). This outcome is then synchronised back to the remote database.
> This is generally safe if local files are genuinely the latest
timestamp. However, it can cause problems if a file has a newer
timestamp but older content (like the initial `welcome.md`).
> This uses less CPU and faster than
"%{RedFlag.Fetch.Method.FetchSafer}", but it may lead to data loss if
not used carefully.
> ## %{RedFlag.Fetch.Method.FetchTraditional}.
> **High Traffic**, **Low CPU**, **Low to Moderate Risk** (depending
operation)
> All things will be fetched from the remote.
> Similar to the %{RedFlag.Fetch.Method.FetchSmoother}, but all chunks
are fetched from the remote source.
> This is the most traditional way to fetch, typically consuming the
most network traffic and time. It also carries a similar risk of
overwriting remote files to the '%{RedFlag.Fetch.Method.FetchSmoother}'
option.
> However, it is often considered the most stable method because it is
the longest-established and most straightforward approach.
FetchSafer: Create a local database once before fetching
FetchSmoother: Create local file chunks before fetching
FetchTraditional: Fetch everything from the remote
Title: How do you want to fetch?
FetchRemoteConfig:
Buttons:
Cancel: No, use local settings
Fetch: Yes, fetch and apply remote settings
Message: Do you want to fetch and apply remotely stored preference settings to
the device?
Title: Fetch Remote Configuration
Reduces storage space by discarding all non-latest revisions. This requires the same amount of free space on the remote server and the local client.:
Reduces storage space by discarding all non-latest revisions. This requires
the same amount of free space on the remote server and the local client.
Reducing the frequency with which on-disk changes are reflected into the DB: Reducing the frequency with which on-disk changes are reflected into the DB
Refresh: Refresh
Region: Region
Relay settings: Relay settings
Reload: Reload
Remediation: Remediation
Remediation Setting Changed: Remediation Setting Changed
Remote Database Tweak (In sunset): Remote Database Tweak (In sunset)
Remote Databases: Remote Databases
Remote name: Remote name
Remote only: Remote only
Remote server type: Remote server type
Remote Type: Remote Type
Rename: Rename
Replicate now: Replicate now
Replicating: Replicating
Replicating...: Replicating...
Replicator:
Dialogue:
Locked:
Action:
Dismiss: Cancel for reconfirmation
Fetch: Reset Synchronisation on This Device
Unlock: Unlock the remote database
Message:
_value: >
Remote database is locked. This is due to a rebuild on one of the
terminals.
The device is therefore asked to withhold the connection to avoid
database corruption.
There are three options that we can do:
- %{Replicator.Dialogue.Locked.Action.Fetch}
The most preferred and reliable way. This will dispose the local database once, and reset all synchronisation information from the remote database again, In most case, we can perform this safely. However, it takes some time and should be done in stable network.
- %{Replicator.Dialogue.Locked.Action.Unlock}
This method can only be used if we are already reliably synchronised by other replication methods. This does not simply mean that we have the same files. If you are not sure, you should avoid it.
- %{Replicator.Dialogue.Locked.Action.Dismiss}
This will cancel the operation. And we will asked again on next request.
Fetch: Fetch all has been scheduled. Plug-in will be restarted to perform it.
Unlocked: The remote database has been unlocked. Please retry the operation.
Title: Locked
Message:
Cleaned: Database cleaning up is in process. replication has been cancelled
InitialiseFatalError: No replicator is available, this is the fatal error.
Pending: Some file events are pending. Replication has been cancelled.
SomeModuleFailed: Replication has been cancelled by some module failure
VersionUpFlash: An update has been detected. Please open the Settings dialogue
and check the Change Log. Replication has been cancelled.
Requires restart of Obsidian: Requires restart of Obsidian
Requires restart of Obsidian.: Requires restart of Obsidian.
Rerun Onboarding Wizard: Rerun Onboarding Wizard
Rerun the onboarding wizard to set up Self-hosted LiveSync again.: Rerun the onboarding wizard to set up Self-hosted LiveSync again.
Rerun Wizard: Rerun Wizard
Resend: Resend
Resend all chunks to the remote.: Resend all chunks to the remote.
Reset: Reset
Reset all: Reset all
Reset all journal counter: Reset all journal counter
Reset and Resume Synchronisation: Reset and Resume Synchronisation
Reset journal received history: Reset journal received history
Reset journal sent history: Reset journal sent history
Reset notification threshold and check the remote database usage: Reset notification threshold and check the remote database usage
Reset received: Reset received
Reset sent history: Reset sent history
Reset Synchronisation information: Reset Synchronisation information
Reset Synchronisation on This Device: Reset Synchronisation on This Device
Reset the remote storage size threshold and check the remote storage size again.:
Reset the remote storage size threshold and check the remote storage size
again.
Resolve All: Resolve All
Resolve all conflicted files: Resolve all conflicted files
Resolve All conflicted files by the newer one: Resolve All conflicted files by the newer one
"Resolve all conflicted files by the newer one. Caution: This will overwrite the older one, and cannot resurrect the overwritten one.":
"Resolve all conflicted files by the newer one. Caution: This will overwrite
the older one, and cannot resurrect the overwritten one."
Restart and Fetch Data: Restart and Fetch Data
Restart and Initialise Server: Restart and Initialise Server
Restart Now: Restart Now
Restarting Obsidian is strongly recommended. Until restart, some changes may not take effect, and display may be inconsistent. Are you sure to restart now?:
Restarting Obsidian is strongly recommended. Until restart, some changes may
not take effect, and display may be inconsistent. Are you sure to restart now?
Restore or reconstruct local database from remote.: Restore or reconstruct local database from remote.
Rev: Rev
Revert changes: Revert changes
Revoke: Revoke
Room ID: Room ID
"Room ID suffix:": "Room ID suffix:"
Run Doctor: Run Doctor
S3/MinIO/R2 Configuration: S3/MinIO/R2 Configuration
Same: Same
Same or local only: Same or local only
Save and Apply: Save and Apply
Save settings to a markdown file. You will be notified when new settings arrive. You can set different files by the platform.:
Save settings to a markdown file. You will be notified when new settings
arrive. You can set different files by the platform.
Saving will be performed forcefully after this number of seconds.: Saving will be performed forcefully after this number of seconds.
Scan changes: Scan changes
Scan changes on customization sync: Scan changes on customization sync
Scan customization automatically: Scan customization automatically
Scan customization before replicating.: Scan customization before replicating.
Scan customization every 1 minute.: Scan customization every 1 minute.
Scan customization periodically: Scan customization periodically
Scan for Broken files: Scan for Broken files
Scan for hidden files before replication: Scan for hidden files before replication
Scan hidden files periodically: Scan hidden files periodically
Scan QR Code: Scan QR Code
Schedule and Restart: Schedule and Restart
Scram Switches: Scram Switches
Scram!: Scram!
Seconds, 0 to disable: Seconds, 0 to disable
Seconds. Saving to the local database will be delayed until this value after we stop typing or saving.:
Seconds. Saving to the local database will be delayed until this value after
we stop typing or saving.
Secret Access Key: Secret Access Key
Secret Key: Secret Key
Select active P2P remote: Select active P2P remote
Select All Shiny: Select All Shiny
Select Flagged Shiny: Select Flagged Shiny
Select P2P remote...: Select P2P remote...
Select the database adapter to use.: Select the database adapter to use.
Selecting this option will result in the current data on this device being used to initialise the server. Any existing data on the server will be completely overwritten.:
Selecting this option will result in the current data on this device being
used to initialise the server. Any existing data on the server will be
completely overwritten.
Selecting this option will result in this device joining the existing server. You need to fetching the existing synchronisation data from the server to this device.:
Selecting this option will result in this device joining the existing
server. You need to fetching the existing synchronisation data from the
server to this device.
Selective: Selective
Send: Send
Send chunks: Send chunks
SENDING: SENDING
Server URI: Server URI
SESSION: SESSION
Setting:
GenerateKeyPair:
Desc: >+
We have generated a key pair!
Note: This key pair will never be shown again. Please save it in a safe
place. If you have lost it, you need to generate a new key pair.
Note 2: The public key is in spki format, and the Private key is in pkcs8
format. For the sake of convenience, newlines are converted to `\n` in
public key.
Note 3: The public key should be configured in the remote database, and
the private key should be configured in local devices.
>[!FOR YOUR EYES ONLY]-
> <div class="sls-keypair">
>
> ### Public Key
> ```
${public_key}
> ```
>
> ### Private Key
> ```
${private_key}
> ```
>
> </div>
>[!Both for copying]-
>
> <div class="sls-keypair">
>
> ```
${public_key}
${private_key}
> ```
>
> </div>
Title: New key pair has been generated!
TroubleShooting:
_value: TroubleShooting
Doctor:
_value: Setting Doctor
Desc: Detects non optimal settings. (Same as during migration)
ScanBrokenFiles:
_value: Scan for broken files
Desc: Scans for files that are not stored correctly in the database.
SettingTab:
Message:
AskRebuild: Your changes require fetching from the remote database. Do you want
to proceed?
Setup:
Apply:
Buttons:
ApplyAndFetch: Apply and Fetch
ApplyAndMerge: Apply and Merge
ApplyAndRebuild: Apply and Rebuild
Cancel: Discard and Cancel
OnlyApply: Only Apply
Message: >-
The new configuration is ready. Let us proceed to apply it.
There are several ways to apply this:
- Apply and Fetch
Configure this device as a new client. After applying, synchronise from the remote server.
- Apply and Merge
Configure on a device that already has the file. It processes the local files and transfers the differences. Conflicts may arise.
- Apply and Rebuild
Rebuild the remote using local files. This is typically done if the server becomes corrupted or we wish to start from scratch.
Other devices will be locked and required to re-fetch.
- Only Apply
Apply only. Conflicts may arise if a rebuild is required.
Title: Apply new configuration from the ${method}
WarningRebuildRecommended: "NOTE: after adjusting the settings, it has been
determined that a rebuild is required; Just Import is not recommended."
Doctor:
Buttons:
No: No, please use the settings in the URI as is
Yes: Yes, please consult the doctor
Message: >-
Self-hosted LiveSync has gradually become longer in history and some
recommended settings have changed.
Now, setup is a very good time to do this.
Do you want to run Doctor to check if the imported settings are optimal
compared to the latest state?
Title: Do you want to consult the doctor?
FetchRemoteConf:
Buttons:
Fetch: Yes, please fetch the configuration
Skip: No, please use the settings in the URI
Message: >-
If we have already synchronised once with another device, the remote
database stores the suitable configuration values between the synchronised
devices. The plug-in would like to retrieve them for robust configuration.
However, we have to make sure the one thing. Are we currently in a
situation where we can access the network safely and retrieve the
settings?
Note: Mostly, you are safe to do this, that your remote database is hosted
with a SSL certificate, and your network is not compromised.
Title: Fetch configuration from remote database?
QRCode: >-
We have generated a QR code to transfer the settings. Please scan the QR
code with your phone or other device.
Note: The QR code is not encrypted, so be careful to open this.
>[!FOR YOUR EYES ONLY]-
> <div class="sls-qr">${qr_image}</div>
ShowQRCode:
_value: Show QR code
Desc: Show QR code to transfer the settings.
RemoteE2EE:
Title: End-to-End Encryption
Guidance: Please configure your end-to-end encryption settings.
LabelEncrypt: End-to-End Encryption
PlaceholderPassphrase: Enter your passphrase
StronglyRecommendedTitle: Strongly Recommended
StronglyRecommendedLine1: Enabling end-to-end encryption ensures that your data is encrypted on your device before being sent to the remote server. This means that even if someone gains access to the server, they won't be able to read your data without the passphrase. Make sure to remember your passphrase, as it will be required to decrypt your data on other devices.
StronglyRecommendedLine2: Also, please note that if you are using Peer-to-Peer synchronization, this configuration will be used when you switch to other methods and connect to a remote server in the future.
MultiDestinationWarning: This setting must be the same even when connecting to multiple synchronisation destinations.
LabelObfuscateProperties: Obfuscate Properties
ObfuscatePropertiesDesc: Obfuscating properties (e.g., path of file, size, creation and modification dates) adds an additional layer of security by making it harder to identify the structure and names of your files and folders on the remote server. This helps protect your privacy and makes it more difficult for unauthorized users to infer information about your data.
AdvancedTitle: Advanced
LabelEncryptionAlgorithm: Encryption Algorithm
DefaultAlgorithmDesc: In most cases, you should stick with the default algorithm (${algorithm}). This setting is only required if you have an existing Vault encrypted in a different format.
AlgorithmWarning: Changing the encryption algorithm will prevent access to any data previously encrypted with a different algorithm. Ensure that all your devices are configured to use the same algorithm to maintain access to your data.
PassphraseValidationLine1: Please be aware that the End-to-End Encryption passphrase is not validated until the synchronisation process actually commences. This is a security measure designed to protect your data.
PassphraseValidationLine2: Therefore, we ask that you exercise extreme caution when configuring server information manually. If an incorrect passphrase is entered, the data on the server will become corrupted. Please understand that this is intended behaviour.
ButtonProceed: Proceed
ButtonCancel: Cancel
UseSetupURI:
Title: Enter Setup URI
GuidanceLine1: Please enter the Setup URI that was generated during server installation or on another device, along with the vault passphrase.
GuidanceLine2: Note that you can generate a new Setup URI by running the "Copy settings as a new Setup URI" command in the command palette.
LabelSetupURI: Setup URI
ValidInfo: The Setup URI is valid and ready to use.
InvalidInfo: The Setup URI is invalid. Please check it and try again.
LabelPassphrase: Vault passphrase
PlaceholderPassphrase: Enter your vault passphrase
ErrorPassphraseRequired: Please enter the vault passphrase.
ErrorFailedToParse: Failed to parse the Setup URI. Please check the URI and passphrase.
ButtonProceed: Test Settings and Continue
ButtonCancel: Cancel
ScanQRCode:
Title: Scan QR Code
Guidance: Please follow the steps below to import settings from your existing device.
Step1: On this device, please keep this Vault open.
Step2: On the source device, open Obsidian.
Step3: On the source device, from the command palette, run the 'Show settings as a QR code' command.
Step4: On this device, switch to the camera app or use a QR code scanner to scan the displayed QR code.
ButtonClose: Close this dialog
"Please enable 'Compute revisions for chunks' in settings to use Garbage Collection.": Please enable 'Compute revisions for chunks' in settings to use Garbage Collection.
"Please disable 'Read chunks online' in settings to use Garbage Collection.": Please disable 'Read chunks online' in settings to use Garbage Collection.
"Setup Complete: Preparing to Fetch Synchronisation Data": "Setup Complete: Preparing to Fetch Synchronisation Data"
"Setup Complete: Preparing to Initialise Server": "Setup Complete: Preparing to Initialise Server"
"Setup URI dialog cancelled.": Setup URI dialog cancelled.
"Please select 'Cancel' explicitly to cancel this operation.": Please select 'Cancel' explicitly to cancel this operation.
"Failed to connect to remote for compaction.": Failed to connect to remote for compaction.
"Failed to connect to remote for compaction. ${reason}": Failed to connect to remote for compaction. ${reason}
"Compaction in progress on remote database...": Compaction in progress on remote database...
"Compaction on remote database timed out.": Compaction on remote database timed out.
"Compaction on remote database completed successfully.": Compaction on remote database completed successfully.
"Compaction on remote database failed.": Compaction on remote database failed.
"Failed to start one-shot replication before Garbage Collection. Garbage Collection Cancelled.": Failed to start one-shot replication before Garbage Collection. Garbage Collection Cancelled.
"Cancel Garbage Collection": Cancel Garbage Collection
"No connected device information found. Cancelling Garbage Collection.": No connected device information found. Cancelling Garbage Collection.
Setup-URI: Setup-URI
Signaling Server Connection: Signaling Server Connection
Signalling Status: Signalling Status
Skip and close: Skip and close
Snippets: Snippets
Start Broadcasting: Start Broadcasting
Start change-broadcasting on Connect: Start change-broadcasting on Connect
Start Sync & Close: Start Sync & Close
Stat: Stat
Stats: Stats
Stop ⚡: Stop ⚡
Stop Broadcasting: Stop Broadcasting
Strongly Recommended: Strongly Recommended
Sync: Sync
Sync once: Sync once
Syncing...: Syncing...
Test Settings and Continue: Test Settings and Continue
The connection to the server has been configured successfully. As the next step,:
The connection to the server has been configured successfully. As the next
step,
The files in this Vault are almost identical to the server's.: The files in this Vault are almost identical to the server's.
"The following accepted nodes are missing its node information:\n- ${missingNodes}\n\nThis indicates that they have not been connected for some time or have been left on an older version.\nIt is preferable to update all devices if possible. If you have any devices that are no longer in use, you can clear all accepted nodes by locking the remote once.":
|-
The following accepted nodes are missing its node information:
- ${missingNodes}
This indicates that they have not been connected for some time or have been left on an older version.
It is preferable to update all devices if possible. If you have any devices that are no longer in use, you can clear all accepted nodes by locking the remote once.
"Ignore and Proceed": Ignore and Proceed
"Node Information Missing": Node Information Missing
"Garbage Collection cancelled by user.": Garbage Collection cancelled by user.
"Proceeding with Garbage Collection, ignoring missing nodes.": Proceeding with Garbage Collection, ignoring missing nodes.
"Proceed Garbage Collection": Proceed Garbage Collection
"> [!INFO]- The connected devices have been detected as follows:\n${devices}": |-
> [!INFO]- The connected devices have been detected as follows:
${devices}
"Device": Device
"Node ID": Node ID
"Obsidian version": Obsidian version
"Plug-in version": Plug-in version
"Progress": Progress
"Some devices have differing progress values (max: ${maxProgress}, min: ${minProgress}).\nThis may indicate that some devices have not completed synchronisation, which could lead to conflicts. Strongly recommend confirming that all devices are synchronised before proceeding.":
|-
Some devices have differing progress values (max: ${maxProgress}, min: ${minProgress}).
This may indicate that some devices have not completed synchronisation, which could lead to conflicts. Strongly recommend confirming that all devices are synchronised before proceeding.
"All devices have the same progress value (${progress}). Your devices seem to be synchronised. And be able to proceed with Garbage Collection.": All devices have the same progress value (${progress}). Your devices seem to be synchronised. And be able to proceed with Garbage Collection.
"Garbage Collection Confirmation": Garbage Collection Confirmation
"Proceeding with Garbage Collection.": Proceeding with Garbage Collection.
"Garbage Collection: Scanned ${scanned} / ~${docCount}": |-
Garbage Collection: Scanned ${scanned} / ~${docCount}
"Garbage Collection: Scanning completed. Total chunks: ${totalChunks}, Used chunks: ${usedChunks}": |-
Garbage Collection: Scanning completed. Total chunks: ${totalChunks}, Used chunks: ${usedChunks}
"Garbage Collection: Found ${unusedChunks} unused chunks to delete.": |-
Garbage Collection: Found ${unusedChunks} unused chunks to delete.
"Garbage Collection completed. Deleted chunks: ${deletedChunks} / ${totalChunks}. Time taken: ${seconds} seconds.": |-
Garbage Collection completed. Deleted chunks: ${deletedChunks} / ${totalChunks}. Time taken: ${seconds} seconds.
"Failed to start replication after Garbage Collection.": Failed to start replication after Garbage Collection.
Should we keep folders that don't have any files inside?: Should we keep folders that don't have any files inside?
Should we only check for conflicts when a file is opened?: Should we only check for conflicts when a file is opened?
Should we prompt you about conflicting files when a file is opened?: Should we prompt you about conflicting files when a file is opened?
Should we prompt you for every single merge, even if we can safely merge automatcially?:
Should we prompt you for every single merge, even if we can safely merge
automatcially?
Show full banner: Show full banner
Show history: Show history
Show icon only: Show icon only
Show only notifications: Show only notifications
Show status as icons only: Show status as icons only
Show status icon instead of file warnings banner: Show status icon instead of file warnings banner
Show status inside the editor: Show status inside the editor
Show status on the status bar: Show status on the status bar
Show verbose log. Please enable if you report an issue.: Show verbose log. Please enable if you report an issue.
Starts synchronisation when a file is saved.: Starts synchronisation when a file is saved.
Stop reflecting database changes to storage files.: Stop reflecting database changes to storage files.
Stop watching for file changes.: Stop watching for file changes.
Storage -> Database: Storage -> Database
Suppress notification of hidden files change: Suppress notification of hidden files change
Suspend database reflecting: Suspend database reflecting
Suspend file watching: Suspend file watching
Switch to IDB: Switch to IDB
Switch to IndexedDB: Switch to IndexedDB
Sync after merging file: Sync after merging file
Sync automatically after merging files: Sync automatically after merging files
Sync Mode: Sync Mode
Sync on Editor Save: Sync on Editor Save
Sync on File Open: Sync on File Open
Sync on Save: Sync on Save
Sync on Startup: Sync on Startup
Synchronising files: Synchronising files
Syncing: Syncing
Target patterns: Target patterns
Testing only - Resolve file conflicts by syncing newer copies of the file, this can overwrite modified files. Be Warned.:
Testing only - Resolve file conflicts by syncing newer copies of the file,
this can overwrite modified files. Be Warned.
The delay for consecutive on-demand fetches: The delay for consecutive on-demand fetches
The Group ID and passphrase are used to identify your group of devices. Make sure to use the same Group ID and passphrase on all devices you want to synchronise.:
The Group ID and passphrase are used to identify your group of devices. Make
sure to use the same Group ID and passphrase on all devices you want to
synchronise.
The Hash algorithm for chunk IDs: The Hash algorithm for chunk IDs
The IndexedDB adapter often offers superior performance in certain scenarios, but it has been found to cause memory leaks when used with LiveSync mode. When using LiveSync mode, please use IDB adapter instead.:
The IndexedDB adapter often offers superior performance in certain scenarios,
but it has been found to cause memory leaks when used with LiveSync mode. When
using LiveSync mode, please use IDB adapter instead.
the latest synchronisation data will be downloaded from the server to this device.:
the latest synchronisation data will be downloaded from the server to this
device.
the local database, that is to say the synchronisation information, must be reconstituted.:
the local database, that is to say the synchronisation information, must be
reconstituted.
The maximum duration for which chunks can be incubated within the document. Chunks exceeding this period will graduate to independent chunks.:
The maximum duration for which chunks can be incubated within the document.
Chunks exceeding this period will graduate to independent chunks.
The maximum number of chunks that can be incubated within the document. Chunks exceeding this number will immediately graduate to independent chunks.:
The maximum number of chunks that can be incubated within the document. Chunks
exceeding this number will immediately graduate to independent chunks.
The maximum total size of chunks that can be incubated within the document. Chunks exceeding this size will immediately graduate to independent chunks.:
The maximum total size of chunks that can be incubated within the document.
Chunks exceeding this size will immediately graduate to independent chunks.
The minimum interval for automatic synchronisation on event.: The minimum interval for automatic synchronisation on event.
The remote is already set up, and the configuration is compatible (or got compatible by this operation).:
The remote is already set up, and the configuration is compatible (or got
compatible by this operation).
The Setup-URI does not appear to be valid. Please check that you have copied it correctly.:
The Setup-URI does not appear to be valid. Please check that you have copied
it correctly.
The Setup-URI is valid and ready to use.: The Setup-URI is valid and ready to use.
the single, authoritative master copy: the single, authoritative master copy
the synchronisation data on the server will be built based on the current data on this device.:
the synchronisation data on the server will be built based on the current
data on this device.
Themes: Themes
There is a way to resolve this on other devices.: There is a way to resolve this on other devices.
There may be differences between the files in this Vault and the server.: There may be differences between the files in this Vault and the server.
Therefore, we ask that you exercise extreme caution when configuring server information manually. If an incorrect passphrase is entered, the data on the server will become corrupted.:
Therefore, we ask that you exercise extreme caution when configuring server
information manually. If an incorrect passphrase is entered, the data on the
server will become corrupted.
This can isolate your connections between devices. Use the same Room ID for the same devices.:
This can isolate your connections between devices. Use the same Room ID for
the same devices.
This device: This device
This device name: This device name
This is an extremely powerful operation. We strongly recommend that you copy your Vault folder to a safe location.:
This is an extremely powerful operation. We strongly recommend that you copy
your Vault folder to a safe location.
This passphrase will not be copied to another device. It will be set to `Default` until you configure it again.:
This passphrase will not be copied to another device. It will be set to
`Default` until you configure it again.
This password is used to encrypt the connection. Use something long enough.: This password is used to encrypt the connection. Use something long enough.
This procedure will first delete all existing synchronisation data from the server. Following this, the server data will be completely rebuilt, using the current state of your Vault on this device (including its local database) as:
This procedure will first delete all existing synchronisation data from the
server. Following this, the server data will be completely rebuilt, using
the current state of your Vault on this device (including its local
database) as
This setting must be the same even when connecting to multiple synchronisation destinations.:
This setting must be the same even when connecting to multiple
synchronisation destinations.
This Vault is empty, or contains only new files that are not on the server.: This Vault is empty, or contains only new files that are not on the server.
This will rebuild the local database on this device using the most recent data from the server. This action is designed to resolve synchronisation inconsistencies and restore correct functionality.:
This will rebuild the local database on this device using the most recent
data from the server. This action is designed to resolve synchronisation
inconsistencies and restore correct functionality.
This will recreate chunks for all files. If there were missing chunks, this may fix the errors.:
This will recreate chunks for all files. If there were missing chunks, this
may fix the errors.
To minimise the creation of new conflicts: To minimise the creation of new conflicts
Transfer Tweak: Transfer Tweak
TURN Credential: TURN Credential
TURN server settings are only necessary if you are behind a strict NAT or firewall that prevents direct P2P connections. In most cases, you can leave these fields blank.:
TURN server settings are only necessary if you are behind a strict NAT or
firewall that prevents direct P2P connections. In most cases, you can leave
these fields blank.
TURN Server URLs (comma-separated): TURN Server URLs (comma-separated)
TURN Username: TURN Username
TweakMismatchResolve:
Action:
Dismiss: Dismiss
UseConfigured: Use configured settings
UseMine: Update remote database settings
UseMineAcceptIncompatible: Update remote database settings but keep as is
UseMineWithRebuild: Update remote database settings and rebuild again
UseRemote: Apply settings to this device
UseRemoteAcceptIncompatible: Apply settings to this device, but and ignore incompatibility
UseRemoteWithRebuild: Apply settings to this device, and fetch again
EnableAutoAcceptCompatible: Enable auto-accept
DisableAutoAcceptCompatible: Disable auto-accept
Message:
AutoAcceptCompatibleUndefined: >-
It appears that the settings differ for each device.
You can now automatically apply compatible changes to these configurations.
Would you like to enable this `auto-accept` setting?
Main: >-
The settings in the remote database are as follows. These values are
configured by other devices, which are synchronised with this device at
least once.
If you want to use these settings, please select
%{TweakMismatchResolve.Action.UseConfigured}.
If you want to keep the settings of this device, please select
%{TweakMismatchResolve.Action.Dismiss}.
${table}
>[!TIP]
> If you want to synchronise all settings, please use `Sync settings via
markdown` after applying minimal configuration with this feature.
${additionalMessage}
MainTweakResolving: |-
Your configuration has not been matched with the one on the remote server.
Following configuration should be matched:
${table}
Let us know your decision.
${additionalMessage}
UseRemote:
WarningRebuildRecommended: >-
>[!NOTICE]
> Some changes are compatible but may consume extra storage and transfer
volumes. A rebuild is recommended. However, a rebuild may not be
performed at present, but may be implemented in future maintenance.
> ***Please ensure that you have time and are connected to a stable
network to apply!***
WarningRebuildRequired: >-
>[!WARNING]
> Some remote configurations are not compatible with the local database
of this device. Rebuilding the local database will be required.
> ***Please ensure that you have time and are connected to a stable
network to apply!***
WarningIncompatibleRebuildRecommended: >-
>[!NOTICE]
> We have detected that some of the values are different to make
incompatible the local database with the remote database.
> Some changes are compatible but may consume extra storage and transfer
volumes. A rebuild is recommended. However, a rebuild may not be performed
at present, but may be implemented in future maintenance.
> If you want to rebuild, it takes a few minutes or more. **Make sure it
is safe to perform it now.**
WarningIncompatibleRebuildRequired: >-
>[!WARNING]
> We have detected that some of the values are different to make
incompatible the local database with the remote database.
> Either local or remote rebuilds are required. Both of them takes a few
minutes or more. **Make sure it is safe to perform it now.**
remoteUpdated: The configuration stored remotely has been updated.
mineUpdated: The device configuration have been adjusted.
Table:
_value: |+
| Value name | This device | On Remote |
|: --- |: ---- :|: ---- :|
${rows}
Row: "| ${name} | ${self} | ${remote} |"
Title:
_value: Configuration Mismatch Detected
TweakResolving: Configuration Mismatch Detected
UseRemoteConfig: Use Remote Configuration
AutoAcceptCompatible: Auto-Accept Available
Unique name between all synchronized devices. To edit this setting, please disable customization sync once.:
Unique name between all synchronized devices. To edit this setting, please
disable customization sync once.
Unless you are certain, selecting this options is bit dangerous. It assumes that the server configuration is compatible with this device. If this is not the case, data loss may occur. Please ensure you know what you are doing.:
Unless you are certain, selecting this options is bit dangerous. It assumes
that the server configuration is compatible with this device. If this is not
the case, data loss may occur. Please ensure you know what you are doing.
Updating list...: Updating list...
URL: URL
Use a custom passphrase: Use a custom passphrase
Use Custom HTTP Handler: Use Custom HTTP Handler
Use Diagnostic RTCPeerConnection for statistics: Use Diagnostic RTCPeerConnection for statistics
Use dynamic iteration count: Use dynamic iteration count
Use internal API: Use internal API
Use Internal API: Use Internal API
Use JWT Authentication: Use JWT Authentication
Use Path-Style Access: Use Path-Style Access
Use Random Number: Use Random Number
Use Segmented-splitter: Use Segmented-splitter
Use splitting-limit-capped chunk splitter: Use splitting-limit-capped chunk splitter
Use the trash bin: Use the trash bin
Use timeouts instead of heartbeats: Use timeouts instead of heartbeats
Use vrtmrz's relay: Use vrtmrz's relay
username: username
Username: Username
Verbose Log: Verbose Log
Verify all: Verify all
Verify and repair all files: Verify and repair all files
Warning! This will have a serious impact on performance. And the logs will not be synchronised under the default name. Please be careful with logs; they often contain your confidential information.:
Warning! This will have a serious impact on performance. And the logs will not
be synchronised under the default name. Please be careful with logs; they
often contain your confidential information.
WATCHING: WATCHING
We can not use "/" to the device name: We can not use "/" to the device name
We can use only Secure (HTTPS) connections on Obsidian Mobile.: We can use only Secure (HTTPS) connections on Obsidian Mobile.
We cannot change the device name while this feature is enabled. Please disable this feature to change the device name.:
We cannot change the device name while this feature is enabled. Please disable
this feature to change the device name.
We have to configure the device name: We have to configure the device name
We recommend that you copy your Vault folder to a safe location. This will provide a safeguard in case a large number of conflicts arise, or if you accidentally synchronise with an incorrect destination.:
We recommend that you copy your Vault folder to a safe location. This will
provide a safeguard in case a large number of conflicts arise, or if you
accidentally synchronise with an incorrect destination.
When you save a file in the editor, start a sync automatically: When you save a file in the editor, start a sync automatically
Write credentials in the file: Write credentials in the file
Write logs into the file: Write logs into the file
xxhash32 (Fast but less collision resistance): xxhash32 (Fast but less collision resistance)
xxhash64 (Fastest): xxhash64 (Fastest)
"Welcome to Self-hosted LiveSync": "Welcome to Self-hosted LiveSync"
"We will now guide you through a few questions to simplify the synchronisation setup.": "We will now guide you through a few questions to simplify the synchronisation setup."
"First, please select the option that best describes your current situation.": "First, please select the option that best describes your current situation."
"I am setting this up for the first time": "I am setting this up for the first time"
"(Select this if you are configuring this device as the first synchronisation device.) This option is suitable if you are new to LiveSync and want to set it up from scratch.": "(Select this if you are configuring this device as the first synchronisation device.) This option is suitable if you are new to LiveSync and want to set it up from scratch."
"I am adding a device to an existing synchronisation setup": "I am adding a device to an existing synchronisation setup"
"(Select this if you are already using synchronisation on another computer or smartphone.) This option is suitable if you are new to LiveSync and want to set it up from scratch.": "(Select this if you are already using synchronisation on another computer or smartphone.) This option is suitable if you are new to LiveSync and want to set it up from scratch."
"Yes, I want to set up a new synchronisation": "Yes, I want to set up a new synchronisation"
"Yes, I want to add this device to my existing synchronisation": "Yes, I want to add this device to my existing synchronisation"
"No, please take me back": "No, please take me back"
"Device Setup Method": "Device Setup Method"
"You are adding this device to an existing synchronisation setup.": "You are adding this device to an existing synchronisation setup."
"Please select a method to import the settings from another device.": "Please select a method to import the settings from another device."
"Use a Setup URI (Recommended)": "Use a Setup URI (Recommended)"
"Paste the Setup URI generated from one of your active devices.": "Paste the Setup URI generated from one of your active devices."
"Scan a QR Code (Recommended for mobile)": "Scan a QR Code (Recommended for mobile)"
"Scan the QR code displayed on an active device using this device's camera.": "Scan the QR code displayed on an active device using this device's camera."
"Enter the server information manually": "Enter the server information manually"
"Configure the same server information as your other devices again, manually, very advanced users only.": "Configure the same server information as your other devices again, manually, very advanced users only."
"Proceed with Setup URI": "Proceed with Setup URI"
"I know my server details, let me enter them": "I know my server details, let me enter them"
"Please select an option to proceed": "Please select an option to proceed"
"Connection Method": "Connection Method"
"We will now proceed with the server configuration.": "We will now proceed with the server configuration."
"How would you like to configure the connection to your server?": "How would you like to configure the connection to your server?"
"A Setup URI is a single string of text containing your server address and authentication details. Using a URI, if one was generated by your server installation script, provides a simple and secure configuration.": "A Setup URI is a single string of text containing your server address and authentication details. Using a URI, if one was generated by your server installation script, provides a simple and secure configuration."
"This is an advanced option for users who do not have a URI or who wish to configure detailed settings.": "This is an advanced option for users who do not have a URI or who wish to configure detailed settings."
"Enter Server Information": "Enter Server Information"
"Please select the type of server to which you are connecting.": "Please select the type of server to which you are connecting."
"Continue to CouchDB setup": "Continue to CouchDB setup"
"Continue to S3/MinIO/R2 setup": "Continue to S3/MinIO/R2 setup"
"Continue to Peer-to-Peer only setup": "Continue to Peer-to-Peer only setup"
"This is the most suitable synchronisation method for the design. All functions are available. You must have set up a CouchDB instance.": "This is the most suitable synchronisation method for the design. All functions are available. You must have set up a CouchDB instance."
"S3/MinIO/R2 Object Storage": "S3/MinIO/R2 Object Storage"
"Synchronisation utilising journal files. You must have set up an S3/MinIO/R2 compatible object storage.": "Synchronisation utilising journal files. You must have set up an S3/MinIO/R2 compatible object storage."
"Peer-to-Peer only": "Peer-to-Peer only"
"This feature enables direct synchronisation between devices. No server is required, but both devices must be online at the same time for synchronisation to occur, and some features may be limited. Internet connection is only required to signalling (detecting peers) and not for data transfer.": "This feature enables direct synchronisation between devices. No server is required, but both devices must be online at the same time for synchronisation to occur, and some features may be limited. Internet connection is only required to signalling (detecting peers) and not for data transfer."
Ui:
Common:
Signal:
Caution: CAUTION
Danger: DANGER
Notice: NOTICE
Warning: WARNING
Settings:
Advanced:
LocalDatabaseTweak: Local Database Tweak
MemoryCache: Memory Cache
TransferTweak: Transfer Tweak
Common:
Analyse: Analyse
Back: Back
Check: Check
Configure: Configure
Continue: Continue
Delete: Delete
Fetch: Fetch
Lock: Lock
Merge: Merge
Open: Open
Overwrite: Overwrite
Perform: Perform
ResetAll: Reset all
ResolveAll: Resolve All
Scan: Scan
Send: Send
Use: Use
VerifyAll: Verify all
CustomizationSync:
OpenDesc: Open the dialog
Panel: Customization Sync
WarnChangeDeviceName: We cannot change the device name while this feature is enabled. Please disable this feature to change the device name.
WarnSetDeviceName: Please set device name to identify this device. This name should be unique among your devices. While not configured, we cannot enable this feature.
Hatch:
AnalyseDatabaseUsage: Analyse database usage
AnalyseDatabaseUsageDesc: Analyse database usage and generate a TSV report for diagnosis yourself. You can paste the generated report with any spreadsheet you like.
BackToNonConfigured: Back to non-configured
ConvertNonObfuscated: Check and convert non-path-obfuscated files
ConvertNonObfuscatedDesc: Check the local database for files that were stored without path obfuscation and convert them when needed.
CopyIssueReport: Copy Report to clipboard
DatabaseLabel: "Database: ${details}"
DatabaseToStorage: Database -> Storage
DeleteCustomizationSyncData: Delete all customization sync data
GeneratedReport: Generated report
Missing: Missing
ModifiedSize: "Modified: ${modified}, Size: ${size}"
ModifiedSizeActual: "Modified: ${modified}, Size: ${size} (actual size: ${actualSize})"
PrepareIssueReport: Prepare the 'report' to create an issue
RecreateAll: Recreate all
RecreateMissingChunks: Recreate missing chunks for all files
RecreateMissingChunksDesc: This will recreate chunks for all files. If there were missing chunks, this may fix the errors.
RecoveryAndRepair: Recovery and Repair
ResetPanel: Reset
ResetRemoteUsage: Reset notification threshold and check the remote database usage
ResetRemoteUsageDesc: Reset the remote storage size threshold and check the remote storage size again.
ResolveAllConflictedFiles: Resolve all conflicted files by the newer one
ResolveAllConflictedFilesDesc: "Resolve all conflicted files by the newer one. Caution: This will overwrite the older one, and cannot resurrect the overwritten one."
RunDoctor: Run Doctor
ScanBrokenFiles: Scan for broken files
ScramSwitches: Scram Switches
ShowHistory: Show history
StorageLabel: "Storage: ${details}"
StorageToDatabase: Storage -> Database
VerifyAndRepairAllFiles: Verify and repair all files
VerifyAndRepairAllFilesDesc: Compare the content of files between the local database and storage. If they do not match, you will be asked which one to keep.
Maintenance:
Cleanup: Perform cleanup
CleanupDesc: Reduces storage space by discarding all non-latest revisions. This requires the same amount of free space on the remote server and the local client.
DeleteLocalDatabase: Delete local database to reset or uninstall Self-hosted LiveSync
EmergencyRestart: Emergency restart
EmergencyRestartDesc: Disable all synchronisation and restart.
FreshStartWipe: Fresh Start Wipe
FreshStartWipeDesc: Delete all data on the remote server.
GarbageCollection: Garbage Collection V3 (Beta)
GarbageCollectionAction: Perform Garbage Collection
GarbageCollectionDesc: Perform Garbage Collection to remove unused chunks and reduce database size.
LockServer: Lock Server
LockServerDesc: Lock the remote server to prevent synchronisation with other devices.
OverwriteServerData: Overwrite Server Data with This Device's Files
OverwriteServerDataDesc: Rebuild the local and remote database with files from this device.
OverwriteRemote: Overwrite remote
OverwriteRemoteDesc: Overwrite remote with local DB and passphrase.
PurgeAllJournalCounter: Purge all journal counter
PurgeAllJournalCounterDesc: Purge all download and upload caches.
RebuildingOperations: Rebuilding Operations (Remote Only)
Reset: Reset
ResetAllJournalCounter: Reset all journal counter
ResetAllJournalCounterDesc: Initialise all journal history. On the next sync, every item will be received and sent again.
ResetJournalReceived: Reset journal received history
ResetJournalReceivedDesc: Initialise journal received history. On the next sync, every item except those sent by this device will be downloaded again.
ResetReceived: Reset received
ResetJournalSent: Reset journal sent history
ResetJournalSentDesc: Initialise journal sent history. On the next sync, every item except those received by this device will be sent again.
ResetLocalSyncInfo: Reset Synchronisation information
ResetLocalSyncInfoDesc: Restore or reconstruct local database from remote.
ResetSentHistory: Reset sent history
ResetThisDevice: Reset Synchronisation on This Device
Resend: Resend
ResendDesc: Resend all chunks to the remote.
ScheduleAndRestart: Schedule and Restart
Scram: Scram!
SendChunks: Send chunks
Syncing: Syncing
WarningLockedReadyAction: I am ready, unlock the database
WarningLockedReadyText: To prevent unwanted vault corruption, the remote database has been locked for synchronisation. (This device is marked as 'resolved'.) When all your devices are marked as 'resolved', unlock the database. This warning will continue to appear until replication confirms the device is resolved.
WarningLockedResolveAction: I have made a backup, mark this device as resolved
WarningLockedResolveText: The remote database is locked for synchronisation to prevent vault corruption because this device is not marked as 'resolved'. Please back up your vault, reset the local database, and select 'Mark this device as resolved'. This warning will persist until replication confirms the device is resolved.
WriteRedFlagAndRestart: Flag and restart
Patches:
CompatibilityConflict: Compatibility (Conflict Behaviour)
CompatibilityDatabase: Compatibility (Database structure)
CompatibilityInternalApi: Compatibility (Internal API Usage)
CompatibilityMetadata: Compatibility (Metadata)
CompatibilityRemote: Compatibility (Remote Database)
CompatibilityTrouble: Compatibility (Trouble addressed)
CurrentAdapter: "Current adapter: ${adapter}"
DatabaseAdapter: Database Adapter
DatabaseAdapterDesc: Select the database adapter to use.
EdgeCaseBehaviour: Edge case addressing (Behaviour)
EdgeCaseDatabase: Edge case addressing (Database)
EdgeCaseProcessing: Edge case addressing (Processing)
IndexedDbWarning: The IndexedDB adapter often offers superior performance in certain scenarios, but it has been found to cause memory leaks when used with LiveSync mode. When using LiveSync mode, please use the IDB adapter instead.
MigrationWarning: Changing this setting requires migrating existing data, which may take some time, and restarting Obsidian. Please make sure to back up your data before proceeding.
MigratingToIdb: Migrating all data to IDB...
MigratingToIndexedDb: Migrating all data to IndexedDB...
MigrationIdbCompleted: Migration to IDB completed. Obsidian will be restarted with the new configuration immediately.
MigrationIdbCompletedFollowUp: Migration to IDB completed. Please switch the adapter and restart Obsidian.
MigrationIndexedDbCompleted: Migration to IndexedDB completed. Obsidian will be restarted with the new configuration immediately.
MigrationIndexedDbCompletedFollowUp: Migration to IndexedDB completed. Please switch the adapter and restart Obsidian.
OperationToIdb: to IDB
OperationToIndexedDb: to IndexedDB
Remediation: Remediation
RemediationChanged: Remediation Setting Changed
RemediationNoLimit: No limit configured
RemediationRestartLater: Later
RemediationRestartMessage: Restarting Obsidian is strongly recommended. Until restart, some changes may not take effect, and the display may be inconsistent. Are you sure you want to restart now?
RemediationRestartNow: Restart Now
RemediationRestarting: Remediation setting changed. Restarting Obsidian...
RemediationSuffixChanged: Suffix has been changed. Reopening database...
RemediationWithValue: "Limit: ${date} (${timestamp})"
RemoteDatabaseSunset: Remote Database Tweak (In sunset)
SwitchToIDB: Switch to IDB
SwitchToIndexedDb: Switch to IndexedDB
PowerUsers:
ConfigurationEncryption: Configuration Encryption
ConnectionTweak: CouchDB Connection Tweak
ConnectionTweakDesc: If you reached the payload size limit when using IBM Cloudant, please decrease batch size and batch limit to a lower value.
Default: Default
Developer: Developer
EncryptSensitiveConfig: Encrypt sensitive configuration items
PromptPassphraseEveryLaunch: Ask for a passphrase at every launch
UseCustomPassphrase: Use a custom passphrase
Remote:
Activate: Activate
ActiveSuffix: " (Active)"
AddConnection: Add new connection
AddRemoteDefaultName: New Remote
ConfigureAndChangeRemote: Configure and change remote
ConfigureE2EE: Configure E2EE
ConfigureRemote: Configure Remote
DeleteRemoteConfirm: "Delete remote configuration '${name}'?"
DeleteRemoteTitle: Delete Remote Configuration
DisplayName: Display name
DuplicateRemote: Duplicate remote
DuplicateRemoteSuffix: "${name} (Copy)"
E2EEConfiguration: E2EE Configuration
Export: Export
FetchRemoteSettings: Fetch remote settings
ImportConnection: Import connection
ImportConnectionPrompt: Paste a connection string
ImportedCouchDb: Imported CouchDB
ImportedRemote: Remote
MoreActions: More actions
PeerToPeerPanel: Peer-to-Peer Synchronisation
RemoteConfigurationPrefix: Remote configuration
RemoteDatabases: Remote Databases
RemoteName: Remote name
RemoteNameCouchDb: "CouchDB ${host}"
RemoteNameP2P: "P2P ${room}"
RemoteNameS3: "S3 ${bucket}"
Rename: Rename
Selector:
AddDefaultPatterns: Add default patterns
CrossPlatform: Cross-platform
Default: Default
HiddenFiles: Hidden Files
IgnorePatterns: Ignore patterns
NonSynchronisingFiles: Non-Synchronising files
NonSynchronisingFilesDesc: (RegExp) If this is set, any changes to local and remote files that match this will be skipped.
NormalFiles: Normal Files
OverwritePatterns: Overwrite patterns
OverwritePatternsDesc: Patterns to match files for overwriting instead of merging
SynchronisingFiles: Synchronising files
SynchronisingFilesDesc: (RegExp) Empty to sync all files. Set a regular expression filter to limit synchronised files.
TargetPatterns: Target patterns
TargetPatternsDesc: Patterns to match files for syncing
Setup:
RerunWizardButton: Rerun Wizard
RerunWizardDesc: Rerun the onboarding wizard to set up Self-hosted LiveSync again.
RerunWizardName: Rerun Onboarding Wizard
SyncSettings:
Merge: Merge
Fetch: Fetch
Overwrite: Overwrite
SetupWizard:
Common:
Back: No, please take me back
Cancel: Cancel
ProceedSelectOption: Please select an option to proceed
Invitation:
Start: Start setup
Intro:
ExistingOption: I am adding a device to an existing synchronisation setup
ExistingOptionDesc: Select this if you are already using synchronisation on another computer or smartphone. Use this option to connect this device to that existing setup.
NewOption: I am setting this up for the first time
NewOptionDesc: Select this if you are configuring this device as the first synchronisation device.
ProceedExisting: Yes, I want to add this device to my existing synchronisation
ProceedNew: Yes, I want to set up a new synchronisation
Question: First, please select the option that best describes your current situation.
Title: Welcome to Self-hosted LiveSync
Guidance: We will now guide you through a few questions to simplify the synchronisation setup.
SelectExisting:
Guidance: You are adding this device to an existing synchronisation setup.
ManualOption: Configure a remote manually
ManualOptionDesc: Configure the same remote as your other devices again manually. This is intended only for advanced users.
ProceedManual: Proceed with manual configuration
ProceedQr: Scan the QR code displayed on an active device using this device's camera.
ProceedSetupUri: Proceed with Setup URI
Question: Please select a method to import the settings from another device.
QrOption: Scan a QR Code (Recommended for mobile)
QrOptionDesc: Scan the QR code displayed on an active device using this device's camera.
SetupUriOption: Use a Setup URI (Recommended)
SetupUriOptionDesc: Paste the Setup URI generated from one of your active devices.
Title: Device Setup Method
SelectNew:
Guidance: We will now configure the synchronisation connection.
ManualOption: Configure a remote manually
ManualOptionDesc: This is an advanced option for users who do not have a Setup URI or who want to configure detailed settings. You can also use it for P2P synchronisation instead of CouchDB or S3-compatible Object Storage.
ProceedManual: Proceed with manual configuration
ProceedSetupUri: Proceed with Setup URI
Question: How would you like to configure this synchronisation connection?
SetupUriOption: Use a Setup URI (Recommended)
SetupUriOptionDesc: A Setup URI is a single string containing connection and authentication details. When one is available from a setup script, it provides a simple and secure configuration method.
Title: Connection Method
OutroAskUserMode:
CompatibleOption: The remote is already set up, and the configuration is compatible (or became compatible through this operation).
CompatibleOptionDesc: Unless you are certain, selecting this option is risky. It assumes the server configuration is compatible with this device. If that is not the case, data loss may occur. Please make sure you understand the consequences.
ExistingOption: My remote server is already set up. I want to join this device.
ExistingOptionDesc: Selecting this option will make this device join the existing server. You need to fetch the existing synchronisation data from the server to this device.
Guidance: The connection to the server has been configured successfully. As the next step, the local database, in other words the synchronisation information, must be rebuilt.
NewOption: I am setting up a new server for the first time / I want to reset my existing server.
NewOptionDesc: Selecting this option will initialise the server using the current data on this device. Any existing data on the server will be completely overwritten.
ProceedApplySettings: Apply the settings
ProceedNext: Proceed to the next step.
Question: Please select your situation.
Title: "Mostly Complete: Decision Required"
OutroNewUser:
GuidancePrimary: The connection to the server has been configured successfully. As the next step, the synchronisation data on the server will be built from the current data on this device.
GuidanceWarning: After restarting, the data on this device will be uploaded to the server as the master copy. Please note that any unintended data currently on the server will be completely overwritten.
Important: IMPORTANT
Proceed: Restart and Initialise Server
Question: Please select the button below to restart and proceed to the final confirmation.
Title: "Setup Complete: Preparing to Initialise Server"
OutroNewP2PUser:
GuidanceNotice: P2P has no central server copy to overwrite. This step prepares only this device; keep it online when another device fetches its initial data.
GuidancePrimary: The peer-to-peer connection has been configured successfully. Next, the local LiveSync database will be built from the current files in this Vault.
Important: PLEASE NOTE
Proceed: Restart and Prepare This Device
Question: Please select the button below to restart and proceed to the local initialisation confirmation.
Title: "Setup Complete: Preparing This P2P Device"
RebuildEverythingP2P:
ConfirmLocalReset: I understand that this resets only this device's local synchronisation database.
ConfirmLocalResetNote: The files currently in this Vault are used to rebuild it.
ConfirmTitle: "⚠️ Please Confirm the Following"
Guidance: This procedure will discard the local LiveSync database on this device and rebuild it from the current files in this Vault. It does not delete or overwrite data on another device.
Note: Keep this device online after initialisation so that another device can fetch the Vault from it.
Proceed: I Understand, Prepare This Device
Title: "Final Confirmation: Prepare This Device for P2P"
SetupRemote:
BucketOption: S3-compatible Object Storage
BucketOptionDesc: Synchronisation using journal files. You must already have an S3-compatible Object Storage service set up, such as Amazon S3, MinIO, or Cloudflare R2.
CouchDbOptionDesc: This is the most suitable synchronisation method for the current design. All features are available. You must already have a CouchDB instance set up.
Guidance: Select the remote type for this synchronisation setup.
P2POption: Peer-to-Peer (P2P)
P2POptionDesc: This enables direct synchronisation between devices. No server is required, but both devices must be online at the same time and some features may be limited. Internet connectivity is required only for signalling, not for data transfer.
ProceedBucket: Continue to Object Storage setup
ProceedCouchDb: Continue to CouchDB setup
ProceedP2P: Continue to P2P setup
Title: Choose a synchronisation remote
You can configure in the Obsidian Plugin Settings.: You can configure in the Obsidian Plugin Settings.
You should create a new synchronisation destination and rebuild your data there.:
You should create a new synchronisation destination and rebuild your data
there.
You should perform this operation only in exceptional circumstances, such as when the server data is completely corrupted, when changes on all other devices are no longer needed, or when the database size has become unusually large in comparison to the Vault size.:
You should perform this operation only in exceptional circumstances, such as
when the server data is completely corrupted, when changes on all other
devices are no longer needed, or when the database size has become unusually
large in comparison to the Vault size.